I'm fairly new to MIDI and Linux. I have an Akai MPX8 with a bunch of individual WAV files loaded onto it. The WAV files play well over the existing audio system. The audio files are launched by touching on the of the large pads on the MPX8. I still need this functionality so that someone can play these specific tunes in an ad-hoc manner. Now there's a need to have the WAV files play at a specific date and time. My approach is to use a Raspberry PI-2 with a Linux OS to provide scheduling functionality. At a specific date and time the Raspberry PI-2 would send a Midi signal to the Akai MPX8 to play a specific Kit (which points to a WAV Audio File). 1) What software do I need to accomplish this. Is this a Midi Sequencer? 2) How would Linux launch something at a specific date and time? Does linux have a task / job scheduler? 3) Do you have any recommendations for packages? (Shareware preferred). Thanks for looking at this.


First, create a MIDI file that plays the desired sound. (You need any sequencer for this.)

Then, find out which command you actually need to play it. Use aplaymidi -l to list all ports; call it without -l to play a file:

$ aplaymidi -l
 Port    Client name                      Port name
 40:0    SC-8820                          SC-8820 Part A
$ aplaymidi -p SC-8820 MySound.mid

Note: you could also use amidi to play a asound without having to create a file, if you know the MIDI commands:

$ amidi -l
Dir Device    Name
IO  hw:6,0,0  SC-8820 Part A
$ amidi -p hw:6,0,0 -S "C0 00 90 3C 7F"

However, raw MIDI ports cannot be shared by multiple applications.

You can then give this command to at to schedule it for a specific time:

$ echo "aplaymidi -p SC-8820 /some/where/MySound.mid" | at 12:34
warning: commands will be executed using /bin/sh
job 1 at Mon Jun 22 12:34:00 2015

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.