ECE497 Project Music Synthesizer
Embedded Linux Class by Mark A. Yoder
I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!
00 Executive Summary 00 Installation Instructions 00 User Instructions 00 Highlights 00 Theory of Operation 00 Work Breakdown 00 Future Work 00 Conclusions 00 Demo 00 Late Comments: I'm looking forward to seeing this. Score: 10/100
The goal of this project would be to implement an audio/sound synthesizer on Beaglebone with an interface that user can manipulate the filter easily. It has the ability to deploy LabVIEW codes to Beaglebone Green for software implementations.
If you have some hardware, consider Small Build, Big Execuition for ideas on the final packaging.
Give step by step instructions on how to install your project.
Software requirements: LabVIEW(2014), LINX, Arduino IDE, Linux(ubuntu 18.04)
Hardware requirements: Beaglebone Green/Black(with ethernet), Bare Conductive touch board, 1 micro USB wires, jumper wires, LEDs, push buttons, etc.
1. MAKE SURE you installed LabVIEW 2014(any edition), LINX DOES NOT support later versions. In LabVIEW, navigate to Help-->Activate LabVIEW components(Launch), and in Local Licenses, make sure you have at least 1 development system and "Application Builder" activated. You can also activate other parts on your wish.
2. Go to NI's website and download LINX. Your browser should prompt a message to guide you to the VI Package Manager. In the page that pops up, make sure the number at the top left corner is 2014 and then click "install" below it. "Agree" to all the licensing requirements and close the VI Package Manager after finished. A window should pop up after installation reminding you to restart the LabVIEW because the LabVIEW needs to scan the software add-ons and reload corresponding hardware configuration files, so make sure to restart otherwise you will have trouble locating your hardware later.
3. After rebooting LabVIEW you should be able to find LINX by navigating to Tools-->MakerHub-->LINX and we have all the software that we need for now.
1. Get your bone ready. Run "ifconfig"/Ping google.com to make sure it has Internet access from ethernet port, it has been proven to be the simplest way comparing to wireless or ethernet over USB.
2. Plug your bone in, and navigate to Tools-->MakerHub-->LINX-->LINX Target Configuration, then open it up.
3. Enter the IP address of your bone(default to 192.168.7.2), your username and password. If you watch the video Sam says the user account you enter has to have sudo access, but a normal user would do just fine. Click "connect".
4. Navigate to "Target Info" and see if the "Internet Access" box is checked and Navigate to "Install Software" to install LabVIEW run-time engine 2014. This may take a while.
5. After installation, reboot your Beaglebone and you should be ready to proceed.
For more detailed tutorials and support forum: LINX
All the project files can be found at a public GitHub repo
Users can press pushbuttons to determine which sounds to generate and run LabVIEW VIs to generate them. After generation, the wav files will be stored in the pre-set path. The user can simply open cloud 9 editor and download wav files.
Notes: 1. Make sure to use LabVIEW 2014. 2. Check Linux kernel version when LabVIEW could not process VIs. We had 4.19 and it was not compatible with LINX so we had to switch to 4.9. 3. The way which LINX uses to install LabVIEW was running "dpkg" command. It could potentially mess up the dependencies of packages.
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.
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.
Suggest addition things that could be done with this project.
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