Week 5

Week 5


This week, much work was put into the project. Albert met with Joseph Appeah, a prejunior who has been serving as our mentor for this project. Joseph explained that to create the module, we would not actually have to use the spectrum shield at all. Instead, the MIDI is supposed to connect to a DAW (Digital Audio Workstation), in our case Reaper. The traditional purpose of a DAW is to edit, produce, and record audio files, but for our purpose, it is to retrieve input from the MIDI controller and turn that input into data. In theory, after the Reaper retrieves the MIDI input, it will communicate with Processing, a Java based language. The processing code that we wrote (with Joseph's guidance) is supposed to take the data, and send it to Arduino IDE, a language that communicates with the Arduino microcontroller. 

Our MIDI Controller

While meeting with Joseph, we intended to set up the MIDI with Reaper and then send the data to Processing. While this sounds straightforward, it wasn't so simple. The issue arose when we tried to run the processing script. To communicate with the MIDI, processing needs to have a certain library that can allow it to recieve the data. Unfortunately, the library we wanted to use, Promidi, has been discontinued for the newer versions of Processing, making communication between the two programs seemingly not possible. After spending several hours with Joseph trying to fix the issue, we realize that we have a few possible courses of action:

1) Continue looking for a way to configure Promidi and Processing.
2) Use online resources to try and find another library.
3) Abandon the MIDI-->DAW-->Processing-->Arduino approach and begin looking into using other methods to produce the module.

In regards to the last option, the other method in mind would be to use a Raspberry Pi, which is like the Arduino but far more powerful and versatile. Joseph has mentioned this option as an alternative. We may have to resort to this option if no more progress is made within the next week. A decision will probably made during our next meeting with Joseph. 

In any engineering project, unexpected problems will arise and roadblocks will exist. The purpose of this class is to teach us how to deal with these problems and how to properly solve any issues that come about. The issues we are experiencing are only minor roadblocks that can be overcome, we just need to put in the effort to make our module successful. 


For the upcoming week, we intend with Joseph again at least once, hopefully twice or three times. At our next meeting we will decide whether we want to continue attempting to solve our problem through our initial design or attempt to use a Raspberry Pi. 







1 comment:

  1. It's awesome that you figured out how to bridge the devices. Keep up the good work.

    ReplyDelete