Difference between revisions of "ECE434 Project - MIDI Sequencer"

From eLinux.org
Jump to: navigation, search
(Created page with "PM PM Team members: Gaven Williams, Brendan Perez == Grading Template == I'm using the f...")
 
(Executive Summary)
(3 intermediate revisions by the same user not shown)
Line 28: Line 28:
 
== Executive Summary ==
 
== Executive Summary ==
  
Picture that summarizes the project.
+
We still need a picture that summarizes the project. We will add this when more of the hardware is completed.  
  
Give two sentence intro to the project.
+
Our project is a midi/wav music player. The user can browse through a selection of midi and wav files using an LCD screen and pushbuttons, or put the player in "shuffle" mode.  
  
Give two sentences telling what works.
+
So far, we are able to play any arbitrary wav file and any midi file. The midi files are able to be played with any desired soundfont, or selection of sampled instruments.  
  
Give two sentences telling what isn't working.
+
We need to implement the user interface, which includes the pushbuttons and LCD screen. We are also considering a small box to put the user hardware into.  
  
End with a two sentence conclusion.
+
https://github.com/rhit-perezbe/MIDI-Player
 
 
The sentence count is approximate and only to give an idea of the expected length.
 
  
 
== Packaging ==
 
== Packaging ==
 
If you have hardware, consider [http://cpprojects.blogspot.com/2013/07/small-build-big-execuition.html Small Build, Big Execuition] for ideas on the final packaging.
 
If you have hardware, consider [http://cpprojects.blogspot.com/2013/07/small-build-big-execuition.html Small Build, Big Execuition] for ideas on the final packaging.
 +
 +
We might put the user interface in a small box.
  
 
== Installation Instructions ==
 
== Installation Instructions ==
Line 79: Line 79:
  
 
Suggest addition things that could be done with this project.
 
Suggest addition things that could be done with this project.
 +
 +
== Timeline ==
 +
 +
Fri 27-Jan-2023: BeagleBone playing .wav files
 +
 +
Mon 30-Jan-2023: BeagleBone playing .mid files given a soundfont
 +
 +
Sun 5-Feb-2023: Can stop song playing (kills fluidsynth process)
 +
 +
Mon 6-Feb-2023: Breadboarding user hardware
 +
 +
Tues 7-Feb-2023: Software for user buttons
 +
 +
Fri 10-Feb-2023: Start software for LCD display
 +
 +
Mon 13-Feb-2023: Finalize software for LCD display
 +
 +
Fri 17-Feb-2023: Put together box for user hardware
 +
 +
Sun 19-Feb-2023: Finalize documentation (hackster.io, wiki page, etc)
 +
 +
Wed 22-Feb-2023: Final project DUE
  
 
== Conclusions ==
 
== Conclusions ==

Revision as of 14:48, 5 February 2023


Team members: Gaven Williams, Brendan Perez

Grading Template

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

Add Extras

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

We still need a picture that summarizes the project. We will add this when more of the hardware is completed.

Our project is a midi/wav music player. The user can browse through a selection of midi and wav files using an LCD screen and pushbuttons, or put the player in "shuffle" mode.

So far, we are able to play any arbitrary wav file and any midi file. The midi files are able to be played with any desired soundfont, or selection of sampled instruments.

We need to implement the user interface, which includes the pushbuttons and LCD screen. We are also considering a small box to put the user hardware into.

https://github.com/rhit-perezbe/MIDI-Player

Packaging

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

We might put the user interface in a small box.

Installation Instructions

Give step by step instructions on how to install your 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

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.

Timeline

Fri 27-Jan-2023: BeagleBone playing .wav files

Mon 30-Jan-2023: BeagleBone playing .mid files given a soundfont

Sun 5-Feb-2023: Can stop song playing (kills fluidsynth process)

Mon 6-Feb-2023: Breadboarding user hardware

Tues 7-Feb-2023: Software for user buttons

Fri 10-Feb-2023: Start software for LCD display

Mon 13-Feb-2023: Finalize software for LCD display

Fri 17-Feb-2023: Put together box for user hardware

Sun 19-Feb-2023: Finalize documentation (hackster.io, wiki page, etc)

Wed 22-Feb-2023: Final project DUE

Conclusions

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




thumb‎ Embedded Linux Class by Mark A. Yoder