Go Down

Topic: MIDI over serial Arduino code (Read 794 times) previous topic - next topic

normaldotcom

I have my arduino set up in windows as a serial midi input device with roland's driver,
I just need the code to generate midi notes over the serial interface. Do you just need
to send some common midi syntax or something? I am unsure of the data i need to send.

thx,
normaldotcom

orphans

Hey,
I'm not familiar with the driver itself, but if you just need to send standard midi data over the serial port then this site has a pretty comprehensive overview of the midi protocol.  Basically you send a single command byte (which says what type of message you are sending) then further bytes describing the message.  You might like to have a look at firmata, which uses a slightly funky implementation of midi messages to communicate to/from the arduino.
Joe

ben

I'm trying to make a midi controller also. For the midi messages I first took a look at the midi out tutorials on the arduino site. For a more thorough description of midi I went to:

http://www.harmony-central.com/MIDI/Doc/doc.html

The problem I face is that arduino isn't recognized as a midi device. I read somewhere that via Max/MSP this problem can be bypassed. However, I'm not familiar with Max/MSP. Therefor I'm very curious what drivers you used to get arduino running as a serial midi input device.

Thanks, ben


appelback

Have you tried just putting the serial communication at 31250 and send some basic MIDI commands. That could be one way of testing it. Sounds interesting that with the Roland driver, is it an emulator just forwarding serial data or is it a driver so that you see the device as a MIDI device?

Check out Tom Igoe's work, http://itp.nyu.edu/physcomp/Labs/MIDIOutput. He has a MIDI jack connected directly to the serial pins of the board (not using the serial to USB), but then you need a MIDI input device on your computer. You should be able to see what data he is sending in the code though. Check out Tod's blog, http://todbot.com/blog/spookyarduino/, also. Found some stuff there ones...

Go Up