HIDUINO: Your Arduino is Now A MIDI Interface

[Dimitri Diakopoulos] dropped into our tip line to let us know his HIDUINO project. The HIDUINO is a set of firmware for the ATmega8u2 used in the new revisions of the Arduino  (Uno, and Mega2560 for example).  Once the HIDUINO is loaded your Arduino can show up as any HID compliant device you wish, no extra drivers necessary. This means that using this firmware, music software such as Max, Ableton, Reaktor etc can read and write MIDI directly to/from the Arduino. Currently the project is for direct USB-MIDI communication but could be altered to act as a variety of HID devices.

Flashing the ATmega8u2 with your own device type or name requires a bit of work on the developers part like owning an ISP programmer, soldering header pins to the board, and re-flashing the ATmega8u2 every time you want to load new code into the Arduino. Users without an ISP can still flash HIDUINO using Atmel’s FLIP software (Windows) or the DFU programmer (Mac OS X and Linux) and a precompiled HIDUINO firmware. They still have to solder a jumper on the underside of the board to use the DFU bootloader.

This firmware could certainly benefit anyone building an Arduinome , Joystick, or any variety of devices that users simply want to interface to a PC without additional software.

A guide for ISP flashing can be found at [Dimitri]‘s site.

AVR ISP programming via Arduino

ardunio avr isp programming

We found this Arduino AVR ISP programmer particularly interesting. AVR microcontrollers can utilize an interface called In-System-Programming. ISP allows the chip to be programmed or reprogrammed while in an actual circuit via a pin header. Atmel’s solution is the AVR ISP MKII programing tool. The MKII can also be reprogrammed just as an AVR. The difference here is that most people are not likely to modify the MKII to be used as anything but a programmer. On the other hand if you already have the Arduino, fetch the avr.isp.03 firmware and AVRdude. Then program a device, for example an ATtiny13 using the Ardunio as the programmer. All the project information is provided under the CC BY-NC-SA 3.0 license. On a related note we covered a Microcontroller cheat sheet which covers AVR devices and ISP pinouts.