Go Down

Topic: Using MIDIUSB with Aurdino Uno (Read 796 times) previous topic - next topic

CP30

I want to use the library MIDIUSB using my Aurdino Uno. I've understood that in its default state, the Aurdino Uno can't send out information through the USB port, and that this is something that you have to take care of by updating/modifying the firmware, shorting pins, plugging and unplugging the Aurdino, et cetera.

I've tried to follow along a couple guides on how to do this, but all of them are extremely confusing and unstructured. Can anyone give som guidance on how to proceed?

(I'm on MacOS 10.13 by the way.)

Grumpy_Mike

Quote
I've tried to follow along a couple guide
All the information is there, but it is a complex and messy process and quite unnecessary process. Do your self a favour get an Arduino model that supports USB MIDI directly.

TheKikGen

You want to use the MIDIUSB library or use MIDI over USB on the Uno ?
For the second option , as said, it is not out of the box, but really not difficult...

1/ Your Arduino must be the one with the ATMEGA8U (and not the CH340)

2/ You need to flash a new firmware in the ATMEGA8U that will replace the standard Arduino one, and will allow your Uno to understand Midi, and appears as a MIDI interface on your computer when connected to USB.

To do that you can use another Arduino connected to the ICSP2 connector of the target.
Check that : https://www.arduino.cc/en/Tutorial/ArduinoISP

or you can buy an inexpensive USBASP programmer :http://www.fischl.de/usbasp/

You will find a ready to flash USB MIDI HEX file here : https://github.com/TheKikGen/USBMidiKliK

This is my own USB to MIDI converter source code. It is a dual firmware, meaning that you can boot your Uno in Midi mode or standard mode by grounding a specific pin. This avoids to reflash the std firmware again for sketch updates.

Then open a command line prompt, and use the avrdude utility , for example, with the USBASP :

avrdude.exe  -c usbasp -P usb -b 19200 -p m16u2  -U flash:w:USBMidiKliK_dual.hex:i
Done !




Go Up