ECE434 Project - Comrade Candles: Linked Lighting

Team members: Tom Kirchhoffer, T.J. Rutan, and Samuel VanDenburgh

Grading Template
I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!

 09 Executive Summary 09 Packaging 09 Installation Instructions 09 User Instructions 09 Highlights 09 Theory of Operation 09 Work Breakdown 09 Future Work/Conclusions 09 Hackster.io 09 Demo/Poster 00 Not Late

Score: 90/100

Executive Summary
(I left in the instructions so we can see them and edit more accordingly-Sam)

Picture that summarizes the project.

Give two sentence intro to the project. Comrade Candles are a set of customizable led strips that synchronize colors and flashing speeds over the internet, It also has a sound implementation that allows preloaded songs to be played as well. This allows users to have a creative way to communicate and express themselves with a friend so long as both have an internet connection.

Give two sentences telling what works. Using flask and pagekite, we are able to use a Beagle Bone to run python files on another Beagle Bone. Using this concept, we have implemented a way for the lights to change on one Beagle and Match the other, as well as play matching audio files (so long as both Bones have the audio file downloaded).

Give two sentences telling what isn't working. The IR remote input was not ale to be implemented for the project. With the remote and transceiver we chose to use and a lack of libraries to use for decoding signals. We could not find any consistent patterns that distinguished each signal from the remote, making it impossible for us to implement.

End with a two sentence conclusion. Using the method that implemented the comrade candle project, we are able to create a way to synchronize operations on two bones so long as they have the same scripts on them. While this was used for our comrade candle project, there is a vast range of projects such concepts to apply to. The files should also be able to be modifiable to incorporate more than 2 bones as well. The only negative side is pagekite has only a month long trial so a free solution that could last permanently would be preferred and ideal for a user.

The sentence count is approximate and only to give an idea of the expected length.

Packaging
If you have hardware, consider Small Build, Big Execuition for ideas on the final packaging.

Installation Instructions
Give step by step instructions on how to install your project.


 * Github Repository: https://github.com/rutantj/comrade-candles-ECE434.
 * Be sure your README.md is includes an up-to-date and clear description of your project so that someone who comes across you git repository can quickly learn what you did and how they can reproduce it.
 * Include a Makefile for your code if using C.
 * Include any additional packages installed via apt. Include install.sh and setup.sh files.
 * Include kernel mods.
 * If there is extra hardware needed, include links to where it can be obtained.

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.

Consider making it autostart for full credit.

Highlights
Here is where you brag about what your project can do.

Include a YouTube demo the audio description.

Theory of Operation
Give a high level overview of the structure of your software. Are you using GStreamer? Show a diagram of the pipeline. Are you running multiple tasks? Show what they do and how they interact.

Work Breakdown
List the major tasks in your project and who did what.

Also list here what doesn't work yet and when you think it will be finished and who is finishing it.

Future Work
Suggest addition things that could be done with this project.

Conclusions
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.