Difference between revisions of "ECE434 Project: Dancing Fish"
(→Work Breakdown) |
|||
Line 111: | Line 111: | ||
== Work Breakdown == | == Work Breakdown == | ||
− | = Melina = | + | === Melina === |
* LED Matrix Interface | * LED Matrix Interface | ||
* Servo Interface | * Servo Interface | ||
Line 118: | Line 118: | ||
* Setup and Installation Files | * Setup and Installation Files | ||
− | = Eliza = | + | === Eliza === |
* Speaker Interface | * Speaker Interface | ||
* Documentation | * Documentation | ||
Line 124: | Line 124: | ||
* Setup and Installation Files | * Setup and Installation Files | ||
− | = Kurtis = | + | === Kurtis === |
* Youtube-DL Setup | * Youtube-DL Setup | ||
* Fourier Transform Handling | * Fourier Transform Handling |
Revision as of 23:48, 13 November 2021
Embedded Linux Class by Mark A. Yoder
Team members: Eliza Romeu, Melina Ferner, Kurtis VonBargen
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 Not Late Score: 90/100
Executive Summary
This project is making a device using the Beaglebone which can stream any chosen audio. The music will come from a specified youtube video and will be played on a wired speaker. In order to make the music being played more interactive, the device will feature a fish that moves on beat with the music controlled by a servo. Additionally, we will have a sound-activated LED Music spectrum (on two different 8x8 LED Matrices) to reflect the different tones that are being played.
Timeline
10/29 | Order Parts |
11/4 | Install necessary packages on Bone |
11/6 | Create an interface for led Matrices |
11/7 | Create an interface for servo |
11/9 | Play music from youtube on speaker |
11/12 | Create a python file for FFT of music |
11/13 | Combine the interfaces for the completed project |
11/14 | Debugging |
11/17 | Finish documentation |
Packaging
This project uses:
- Beaglebone Black
- Two 8x8 LED Matrices
- RC Servo Motor
- A wired Speaker or Headphones (We used this speaker)
- Any cords needed to attach the speaker to a USB 2 port
- Movable Fish and any materials needed to attach to the servo
There are pictures attached of the packaging that we made for the device.
Installation Instructions
To install the project, ssh into your Beaglebone and follow the instructions below:
1.) Clone this github repository
bone$ git clone https://github.com/rhit-vonbarke/ece434_BigFish
2.) Navigate to the project directory and run install.sh. This only needs to be run the first time that you are running the program.
bone$ bash install.sh
3.) Run setup.sh. This needs to be run every time before you want to run the program
bone$ bash setup.sh
4.) Run the program
bone$
Once you've done the above three steps, you can proceed to the user instructions.
User Instructions
Once the program is running the terminal will prompt you for a Youtube video link. This will be the audio file the program uses so make sure it is entered incorrectly. After this the song should begin playing, the audio visualizer will start, and the fish will begin to dance. All the user needs to do at this point is sit back and enjoy the music.
After the song is finished, if the user wants to listen to a new song, all they have to do is rerun the main program and enter in another Youtube link to listen to.
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
Melina
- LED Matrix Interface
- Servo Interface
- Speaker Interface
- Music playing to work with Audio Processing
- Setup and Installation Files
Eliza
- Speaker Interface
- Documentation
- Music playing to work with Audio Processing
- Setup and Installation Files
Kurtis
- Youtube-DL Setup
- Fourier Transform Handling
- Music playing to work with Audio Processing
- Setup and Installation Files
Future Work
Some additional things that could be done with this project in the future:
- Work to interface the program with streaming services other than Youtube (i.e. Spotify, Apple Music, Pandora, etc.)
- Find ways to play music remotely, unfortunately, the beagle bone black doesn't support Bluetooth but Flask or Blynk would be options
- Add more capabilities related to playing the music like pausing, playing skipping, etc.
- Display the cover of the music video on an LCD or any other device with a screen
Conclusions
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.
Embedded Linux Class by Mark A. Yoder