Difference between revisions of "ECE434 Project - AvailabilityDisplay"

From eLinux.org
Jump to: navigation, search
m
m
 
(11 intermediate revisions by one other user not shown)
Line 1: Line 1:
[[Category:ECE497 |PT]]
 
 
[[Category:ECE434Fall2020 |PT]]
 
[[Category:ECE434Fall2020 |PT]]
 
{{YoderHead}}
 
{{YoderHead}}
Line 26: Line 25:
  
 
<span>(Inline Comment)</span>
 
<span>(Inline Comment)</span>
 +
 +
<pre style="color:black">
  
 
== Executive Summary ==
 
== Executive Summary ==
  
 
Picture that summarizes the project.
 
Picture that summarizes the project.
  <Insert Picture Here Once We Learn How>
+
<gallery>
 
+
20201116 165933.jpg|Available
Give two sentence intro to the project.
+
20201116 170333.jpg|Available with doorbell
Displays whether the user is in a available or unavailable to people outside their room.
+
20201116 170425.jpg|Busy
 +
20201116 170434.jpg|Busy DoorBell
 +
</gallery>
  
Give two sentences telling what works.
+
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.  
Our knowledge of Blynk and the LED Matrix allows us to use them independently.
 
  
Give two sentences telling what isn't working.
 
We are disallowed from using certain API on the ROSE-HULMAN  network because it could lead to breaches in privacy.
 
Although we are looking to use it on a network outside of ROSE-HULMAN for a proof of concept
 
  
End with a two sentence conclusion.
+
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.
As for now, We have mostly done research for the project. We would like to have an API to be able to view availability, whether that is  teams or zoom etc., We need to figure out the physical physical side of this project so that it will display and have a robust case for protection and mounting
 
  
 +
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.
  
 
== Packaging ==
 
== Packaging ==
Considering 3D printed packaging for protection and mount-ability on walls.
+
We have made a 3d printed package that we can mount on walls.
  
 
== Installation Instructions ==
 
== Installation Instructions ==
  
Install Blynk. https://elinux.org/EBC_Exercise_35_Blynk This link explains how to setup blynk.
+
Install 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 Instructions ==
 
== User Instructions ==
  
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.
+
The User must connect to the project via blynk. Once that is done, the user can control what class they are currently in and their availability status by the respectively labeled buttons on the Blynk app. When a visitor is at the door. They activate the doorbell by pressing the button on the the front of the project. When the doorbell is activated, the user will git a notification on their phone from the Blynk app.
  
 
== Highlights ==
 
== Highlights ==
Line 63: Line 63:
 
== Theory of Operation ==
 
== Theory of Operation ==
  
We plan on using a Blynk program to be able to constantly pull for updates on your teams status. When that status changes, the software will send an update to a display to accurately display your current availability. There will be buttons that can provide a manual override to this system. This will allow for status to be set by the user.  
+
We 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 Breakdown ==
 
== Work Breakdown ==
Line 73: Line 73:
  
  
== Future Work ==
+
== Possible Improvements ==
  
In the future we need to:
+
In 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.
write the code that will pull from Teams/Zoom to get the User's Status
 
Make the manual override using Blynk or Bluetooth
 
Design/manufacture the packaging
 
Look into adding a doorbell
 
  
 
== Conclusions ==
 
== Conclusions ==
  
Its sad that we cant use graphs :( A possible addition could be a doorbell.
+
The 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.  
  
 
{{YoderFoot}}
 
{{YoderFoot}}

Latest revision as of 12:49, 8 April 2021

thumb‎ Embedded Linux Class by Mark A. Yoder


Team members: Luke D Clinton] [User:Hydezc|Zach A Hyde

Grading Template

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 Summary

Picture that summarizes the project. 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.

Packaging

We have made a 3d printed package that we can mount on walls.

Installation Instructions

Install 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 Instructions

The User must connect to the project via blynk. Once that is done, the user can control what class they are currently in and their availability status by the respectively labeled buttons on the Blynk app. When a visitor is at the door. They activate the doorbell by pressing the button on the the front of the project. When the doorbell is activated, the user will git a notification on their phone from the Blynk app.

Highlights

This 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 Operation

We 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 Breakdown

Research 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 Improvements

In 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.

Conclusions

The 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.
thumb‎ Embedded Linux Class by Mark A. Yoder