Go Down

Topic: Midi direct via USB? (Read 42204 times) previous topic - next topic



I just posted this related article http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1222793835 a couple days ago.

It seems to me that the most elegant solution for getting our Arduino to to MIDI over USB would be to just have a USBMIDIDriver. Fortunately for OSX users Apple provides a near complete driver. I have started modifying the driver but have hit a wall as far as my knowledge about how drivers work.

I am going to post the project on Google code this weekend and hopefully other more skilled people in the community can get involved and get this thing working.

Once it is finished all one should have to do is install the driver, then plug in your USB Arduino and start sending serial MIDI data.

I really hope we can get this working as it would benefit so many in the community.


Feb 23, 2009, 07:55 am Last Edit: Feb 23, 2009, 08:06 am by TonyMaryana Reason: 1
Hallo evryone , Iam totally newbe , I have try to change to


but Iam still have problem with Roland Serial MIDI Driver Ver.3.2 for Windows XP, when Iam install in my laptop I cant choice for com 4 and this rolland doesnt work because just for com 3, in my case Iam using laptop just using port com 3 and com 4, and for arduino Iam using port com 4, so anybody have solution for my problem ? thanks  


Has anyone tried combatdaves app?

second link down if google combatdave.

I couldn't get it going on XP but it may do the trick for OSX?




would it be possible to post the processing code you mentioned in your post? i'm pretty much a noob in java/processing, but would really like to have my own-built arduino midi controller talk to my daw via usb.


I found this on Google Code:


Maybe it can be of some help?


I'm sure I'm not the first person to do create something like this, but here's a link to the windows application I wrote last night to help with MIDI testing on the Arduino.

It copies all note on, note off and controller data received over the selected serial port (at 38400 baud) to the default MIDI port you configured in Windows control panel. Use it with MidiYoke and you can redirect the stream into a VST synth.

I got tired of soldering up a DIN socket every time I wanted to test.




For you Macies... I believe Kuk was onto something with the modification of the FTDI kext file (page one, sorry if this is too late to be helpful).

I just came across the FTDI technotes for MacOS... ftdichip TN_105
"Adding support for new FTDI Devices to Mac Serial Driver" Document Reference No.: FT_000107 v1.1

It looks like Kuk had the right idea: see section 3.2, it's pretty self-explanatory. My only addition is that at first baud-rate aliasing seems silly. Why not just set the baud rate you want? But it's because of the OS support which defines only specific baud rates which are standard amongst most RS232 devices (based on the standard-specified clock frequencies).

in Linux you get to use setserial to define an alias... which is handy for embedded devices...

You FTDI users are lucky their kext allows this... my PL2303 driver doesn't seem to support it...

I'm trying to do the opposite, I want a standard character device (like /dev/tty.midi) I can use to get raw midi data from my devices...


I haven't seen a link to this:
in all the previous posts, so check this out. Might be interesting... I'll give it a try for communication between my sequencer and a arduino...



Oct 02, 2010, 12:53 pm Last Edit: Oct 02, 2010, 03:40 pm by koolzuurhoudend Reason: 1

im working on a midi controller to control resolume as well.


it worked out quite well.
first is tried serial to midi software s2midi, but i foud out that it generates additional delay because its software that is executed in windows with not a high priority.
too the faders are moved strangely in the receiving software.
when i pull them up fast, they are moved up slowly like there was an maximal increment for the value to rise.

the Roland serial midi driver is much faster.
it worked for me without any bitrate hack.

what i am experiencing now is that the Roland driver works perfekt one time and seems to get stuck in some way the other time.
i have to program the arduino with another bitrate and set it back to 38400 later so get a midi signla in MIDIox.

is there a way to automatically reset the serial port in the code every sartup?


solved it myself:
added: these lines in void setup


everytimes it doesn't work
i push reset on the arduino and voila....it works.



Thanks for this Thread and all researchers! My midi controller finally runs with hacked driver and midiyoke + serial midi app (http://www.spikenzielabs.com/SpikenzieLabs/Serial_MIDI.html) ;-)


Go Up