ECE434 Project - AvailabilityDisplay
Embedded Linux Class by Mark A. Yoder
Team members: Luke D Clinton] [User:Hydezc|Zach A Hyde
I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!
00 Executive Summary 00 Packaging 00 Installation Instructions 00 User Instructions 00 Highlights 00 Theory of Operation 00 Work Breakdown 00 Future Work/Conclusions 00 Hackster.io 00 Demo/Poster 00 Late Comments: Have a good day. Score: (Inline Comment)
Executive SummaryPicture that summarizes the project. <Insert Picture Here Once We Learn How> We are using Blynk, LCD screen, Led Matrix, and a button in order to create a status display with a functioning doorbell. When someone presses the button, the owner will get a notification on the device they have connected to the program through Blynk. The user can also adjust there current status, ie: busy or available, and what class they are in, by pressing labeled virtual buttons on the Blynk app. We have also teamed up with one of our mechanical engineering colluges, Thaniel Heath, In order to make am enclosure for the project. We are disallowed from using certain API on the ROSE-HULMAN network because it could lead to breaches in privacy. Because of this issue, we pivoted away from automatically reading the users teams status. The user now has full manual control. While we had to stray from our original concept some, our final product is still a good proof of concept. There are some advantages to fully control, but it qwould have been nice to be able to have automatic teams status detection. This would have made the final product even easier to use.
PackagingWe have made a 3d printed package that we can mount on walls.
Installation InstructionsInstall Blynk. https://elinux.org/EBC_Exercise_35_Blynk This link explains how to setup Blynk. The user also needs to install JSON using pip3 on Linux. Then the user can clone this git repository: https://github.com/hydezc/ECE434StatusDisplay. Once this repository is cloned and pulled, the user should be all good to go.
User InstructionsOnce everything is installed, how do you use the program? Give details here, so if you have a long user manual, link to it here.
HighlightsThis project is very nice for ensuring that you will not be walked in on during important meetings that may be discussing sensitive information. The current plan is for this to update automatically when you join a teams meeting with some form of manual override.
Theory of OperationWe have a Blynk program that is constantly running;. When someone hits the button on the project, it sends a Blynk notification to the user, and gives the visitor a visual display that the doorbell has been rung. On the Blynk app, There are buttons that will send different messages to the LCD screen that is connected to the bone. The messages are json files used to display which class, or not in a class, the the user is in. There are different buttons for each class. In order to change the classes available to be displayed, the user must edit the json files that have the classes in them. When updating the status from available to a class, the LED matrix will change to red to indicate that the user is busy. In order to connect the Beaglebone to the internet without connecting it to a computer, we are using a USB wifi adapter.
Work BreakdownResearch teams hooks | Luke Clinton Research Microsoft Graph API | Zach Hyde Contacted EIT about access to Microsoft Graph API (Denied) | Zach Hyde Research Bluetooth Modules for Manual Override Alternative | Zach Hyde Luke Clinton
Possible ImprovementsIn the future, we could potentially try this with Zoom or Teams web hooks in order to automatically display the users status. in order to do that, we would have to have access to a directory that could cause a potentially privacy breach with how the Rose-Hulman system is set up.
ConclusionsThe availability display works through user control via the blynk app. Visitors can ring the "doorbell" in order to notify that the user that they are at the door. the doorbell is a phone notification through the Blynk app.
Embedded Linux Class by Mark A. Yoder