BBB MIDI .wav trigger

Hello All,

I am new to BBB and wondered if anyone might be able to point me in the right direction for a school project I am working on.
I would like to have a single serial input to the BBB which triggers audio files to play. The incoming serial line will be MIDI information
from a MIDI drum controller (edrum kit) I have built. The BBB will have to mix a maybe 6 files together.

I have the BBB rev C with Debian pre-installed. Where on earth do I start? I know I will be dealing with ALSA and JACK.
I have found software called SDDM which is a open source Linux drum machine, however I believe this software may not be
compatible with eLinux? Not sure about this.

I own a behringer uca-222 which I have heard can be used with the BBB through its USB port. I would like to use the uca-222 for
audio playback and the headphone jack as well if I can get it working.

Please, any help is greatly appreciated

Not sure what your goals are, but are you aware that the SparkFun WAV Trigger will do this without any programming? Play and mix up to 14 stereo 16-bit 44.1kHz WAV files from microSD card, and supports MIDI protocol on a serial control port.

Hi Robert,

I have seen all the great work you have done on the Wav Trigger, I even talked with you about it over on the Sparkfun forums. I am currently planning on using the Wav Trigger as a backup since our instructor will want us to do as least some some coding. I have switched from using the Tiva C dev board to now using the BBB after seeing the specs on the Wav Trigger and comparing them to the Tiva C’s specs. It seems the Tiva C may be a little under powered. Also I like that the BBB can use a USB soundcard, whereas before I had planned on just using PWM to drive the speakers.

I have seen a tutorial on using Csound with the BBB that may help me. I am still interested in using this SDDM Linux drum software, but I don’t see that anyone has ever used it with the BBB. I have yet to really get into using the BBB, but my team and I are ready to dive into the process of figuring out how to make something work.


You could use Python to write your own code which interfaces with standard USB midi devices and plays audio…there is a learning curve there for sure. I tried getting this working for a while, but MIDI and python was too wishy-washy for me (PyGame was one option, but is being re-tooled internally… PyMidi was one option but was more of a sequencer thing and not for reading button control data)… I finally got something working, but then I found this next option…

I was excited to find this tutorial recently which explains how to get PureData running on a BBB:

I was able to get PD running on my BBB and then use my Rocktron All Access midi foot controller → USB midi interface → BBB with PD → USB audio interface → Speakers to trigger my audio songs. It works great!!

Thanks Steve! That sounds very promising. I am starting to read through the tutorial now and thinking about what changes to make to suit my needs.

Can you tell me some about how you use your setup? I wondered if your sounds are stored on microSD. Also, are you able to boot your BBB with the
pedal and sound card connected and simply start jamming?



  1. yes, the sounds are on uSD card. I stopped using the built-in 2GB of eMMC because the Debian image causes it to be 100% full so you cant even do an apt-get update and you especially cant save WAV files! If you have the 4GB eMMC version, you could run everything from the eMMC including the sounds.
  2. I do boot with all of the USB devices connected because hot-plugging USB is questionable on embedded linux sometimes. I did not take the time yet to figure out how to launch the PD application during boot…so I have been manually launching it from another computer via SSH command line.

Good Luck!


Were there any special steps on the BBB to get MIDI or audio storage on the SD Card working with your setup?


Not sure about “special steps”, but in general, as long as your Midi device is present when you do “lsusb”, then PureData should be able to recognize it and use it in the PD setup… and for the uSD card, just make sure to expand your root file system to use the full space on the uSD card…then copy the WAV files onto your uSD card.