![]() ![]() Note that the todoist and requests packagaes must be uplaoded to AWS in order for this script to work. taskBoard.py communicates with the Todoist API to pull the most users tasks, group them by project, organize the tasks by priority, and generates the colors for each room.lambda_function.py is the landing function that parses the request and calls analysis functions.The two scripts used to implement the custom AWS wrapper: Note that the order of the rooms does matter, as the main room (the room whose tasks are displayed at the top of the list) that is specified by the variable main_room is used to index into this list. To change the rooms in the house to match the rooms listed on a user's Todoist account, the values of room_array on line 18 of Todoist.ino can be updated. That token needs to be loaded in the formware, on line 16 of TaskBoard.ino. ![]() To customize the experience to your account and house, the user needs to input their unique Todoist API token, which can be found in settings -> integrations from the Todoist web interface. This mounting system beautifully and securely mounts the map to the wall, leading to a very clean and safe mount. We explored several ideas-including velcro, mounting brackets, and more-but we eventually settled on what is known as the French cleat mounting system. So, we had to implement 74HC595 shift registers with a custom control function, to allow us to control all 5 RGB LEDs.įinding an effective method of mounting the map to a wall also presented a challenge. Adding this intermediary was difficult to implement, as we had never used AWS before, but the results greatly increased the organization and performance of the TaskBoard.Īdditionally, controlling 5 RGB LEDs along with two pushbuttons and the OLED display requires more GPIO pins than are available on the ESP32 microcontroller. Having the ESP32 microcontroller communicate directly with the Todoist API would be stretching the capabilities of the microcontroller, so we implemented a custom python API wrapper running on AWS Lambda that extracts, analyzes, and organizes the relevant tasks from Todoist. To make it completely independent of any external wires, it is powered by an onboard USB power bank. RGB LEDs controlled via a shift register illuminate the map, and an infrared distance sensor wakes up the map from sleep mode when a user is nearby. That ESP32 microcontroller then prints out those tasks on an SSD1306 OLED display so the user can see their most pressing tasks and check them off one by one using two pushbuttons. Using Lambda on Amazon Web Services, we built a custom API wrapper for the Todoist API from which an ESP32 microcontroller, connected to a local network, can retrieve all your most urgent tasks. To reactivate the display and LEDs, the user simply has to wave their hand in front of the board or press one of the two buttons. To save energy, the display and LEDs automatically turns off after no activity has been sensed. Additionally, changing the color codes or text formatting can be done remotely through the AWS console, minimizing the need for firmware updates. Since a majority of the processing occurs in the cloud, multiple TaskBoards can be connected to the same account-such as if a user wishes to have one in each room of their house-and they will all synchronize with no modifications necessary. The TaskBoard also allows you to easily check these tasks off of your Todoist lists with the push of a button. The color of each room is determined by the urgency of the task(s) to be done in that room, allowing you to easily visualize your todo list. TaskBoard syncs with the online reminder service Todoist, printing out your most urgent tasks and illuminating a map of your house according to what tasks need to be done. Its highly customizable user interface and clean integration with external services lends it to a broad range of applications, from doing chores around the house to planning errands around a city. TaskBoard is an extremely versatile task management system that visualizes all of your most pressing tasks. Whether it's reminding you to do everyday chores or motivating you to try new activities, TaskBoard provides a brand new interface-inspired by the popular game "Among Us"-to make performing tasks around the house significantly more fun! What it does When days start to feel monotonous, having a way to transform mundane activities into an interesting, interactive experience is a welcome addition to life at home. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |