Difference between revisions of "ECE434 Spotify Box"
(→Conclusions) |
m |
||
Line 49: | Line 49: | ||
Give step by step instructions on how to install your project. | Give step by step instructions on how to install your project. | ||
+ | |||
+ | https://github.com/kirbyes/ECE434/tree/master/final-project | ||
* Include your [https://github.com/ github] path as a link like this to the read-only git site: [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn]. | * Include your [https://github.com/ github] path as a link like this to the read-only git site: [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn]. |
Revision as of 21:59, 17 November 2020
Embedded Linux Class by Mark A. Yoder
Team members: Aman Bajaj and Eric Kirby
Contents
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 Late Comments: Have a good day. Score: 90/100
(Inline Comment)
Executive Summary
This project is making a device using the Beaglebone which can stream music through spotify. The final result displays a mopidy interface on an LCD screen that can be controlled using buttons as GPIO into the Beaglebone. This is done using Mopidy, specifically the Mopidy-spotify, Mopidy-touchscreen and Mopidy-GPIO extensions. In order to adapt the existing code to our project, we created our own mopidy extension and tailored the code so that it works the way we want it to. The output audio is controlled using PulseAudio and comes out from the USB port through a USB-AUX adapter.
Timeline
- 10/29 - Order Parts
- 11/3 - Receive Parts
- 11/5 - Install necessary packages on Bone
- 11/6 - Play music from Spotify
- 11/9 - Display Pygame on the LCD
- 11/13 - Create an interface for the LCD
- 11/18 - Finish documentation
Packaging
Packaging not really possible as wifi dongle didn't work with spotify
Installation Instructions
Give step by step instructions on how to install your project.
https://github.com/kirbyes/ECE434/tree/master/final-project
- Include your github path as a link like this to the read-only git site: https://github.com/MarkAYoder/gitLearn.
- 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
First, make sure that a speaker or headphones are plugged in to the aux port of the USB-AUX adapter. Plug in the beaglebone, upon startup it should run the program. Use the buttons to navigate around the touch screen (up, left, down, right and enter are the buttons). Once you find the song that you want, you can play it and it should come out of the speaker/headphones!
Highlights
Here is where you brag about what your project can do.
Include a YouTube demo the audio description.
Theory of Operation
The user interacts with the LCD touchscreen, which uses the Mopidy-Touchscreen extension that has already been written. When the user selects a song, a request is sent to spotify using the Mopidy-Spotify extension. Once the data returns, the song begins to play, and the audio output is handled using the PulseAudio package.
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
One really cool thing that could be done is adding a voice recognition component to the project so that it works similar to Alexa where a user can speak to it and request a song. This could be done using the Mopidy-Headless extension and adapting it with open source voice recognition.
Conclusions
A lot of this project was adapting previous work that had been done, which made it rather smooth. It would have been interesting to create our own user interface, but we didn't really see the point in doing so as it is much easier to adapt work that has been done (yay open source!). As mentioned in the future work section, it would be really cool to adapt the project to use voice recognition, and even cooler if we could get it to work with playlists (a feature that Mopidy doesn't support).
Embedded Linux Class by Mark A. Yoder