Process
In the ideation process, I explored the availability of the sensors and came up with Photocell and Tile switch, which suits the most with the project's goal. For the output, besides LED and notifications, I also considered the Piezo Buzzer. However, I rejected using it since it tends to give too intrusive feedback for this context.
Most of the challenges occur with the sensor or switch that I have never used before, a tile switch. It happens to be too sensitive to any small movement; therefore, I learned more about the need to debounce, and the result is satisfactory. Another challenge is to give the right condition in publishing the event for IFTTT notification to avoid redundancy. I ended up by assigning them true or false in the "already announce" variable.
The overall process
1. Exploration
- Explore controlling RGB LED [Ref 1]
- Explore using the tilt switch (The version without and with debouncing) [Ref 2]
- Explore how to get the local time to monitor the light in every assigned period such as every hour or every 15 seconds in this demonstration [Ref 3]
2. Plan and create the structure of code
3. Gradually complete the circuit and code, function by function
4. Link the device with the IFTTTT platform
5. Create the mock-up of the device from Lego