[Joonas] became frustrated with cheap but crappy MIDI to USB converters, and the better commercial ones were beyond his budget. He used a Teensy LC to build one for himself and it did the job quite well. But he needed several converters, and using the Teensy LC was going to cost him a lot more than he was willing to spend. With some tinkering, he was able to build one using an Adafruit Pro Trinket which has onboard hardware UART (but no USB). This lack of USB support was a deal killer for him, so after hunting some more he settled on a clone of the Sparkfun Pro Micro. Based on the ATmega32U4, these clones were just right for his application, and the cheapest to boot. He reckons it cost him about $5 to build each of his cheap USB MIDI adapters which receive notes and pedal data from the keyboard’s MIDI OUT and transmit them to a computer
Besides the Pro Micro clone, the only other parts he used are a generic opto-coupler, a couple of resistors and a MIDI connector. After testing his simple circuit on a bread board, he managed to squeeze it all inside an old USB dongle housing, stuffing it in dead-bug style.
The heavy lifting is all done in the firmware, for which [Joonas] used LUFA — the Lightweight USB Framework for AVR’s. He wrote his own code to handle MIDI (UART) to USB MIDI messages conversion. The interesting part is his use of a 32.15 kbps baud rate even though the MIDI specification requires 31.25 kbps. He found that a slightly higher baud rate fixes a problem in the AVR USART implementation which tends to miss consecutive bytes due to the START edge not being detected. Besides this, his code is limited in functionality to only handle a few messages, mainly for playing a piano, and does not have full-fledged MIDI capabilities.
We’ve featured several of [Joonas]’s hacks here over the years, the most recent being the Beaglebone Pin-Toggling Torture Test and from earlier, How to Turn A PC On With a Knock And An ATTiny.
There’s a great number toys in the world, many of which make all manner of pleasant or annoying noises for the entertainment of children. If you’re a musician, these toys may be of interest due to their unique or interesting sounds. However, due to their design being aimed at play rather than performance, it may be difficult to actually use the toy as a musical instrument. One way around this is to record the sounds of the toy into a sampler, but it’s not the only way. [little-scale] is here to demonstrate how to MIDI interface your toys.
[little-scale] starts out by discussing the many ways in which one can interface with a toy. The article discusses how a simple button can be replaced with a relay, or a multiplexer, and be interfaced to all manner of other devices to control the toy. This is demonstrated by using a mobile phone toy which makes sounds when buttons are pressed.
A Teensy 3.6 is used to run the show, acting as a USB-MIDI interface so the toy can be controlled by music software like Abelton. It’s connected to the toy’s buttons through a multiplexer. The toy’s speaker is cut off and used as an audio output instead, allowing the toy to be easily connected to other audio hardware for performance or recording. It’s also fed through a digital pot so MIDI commands can control the volume. A resistor is used to control pitch in the toy, so this too was replaced with a digital pot as well, to allow sample pitch to be controlled.
The project is incredibly well documented, with [little-scale] first tearing down the toy and highlighting the points of interest, before stepping through each stage of interfacing the toy to the digital world. We’ve seen some of [little-scale]’s work before, too – namely, this MIDI DAC for controlling vintage synthesizers. Video after the break. Continue reading “How To MIDI Interface Your Toys”
A lot of classic synthesizers rely on analog control voltages to vary parameters; this is a problem for the modern musician who may want to integrate such hardware with a MIDI setup. For just this problem, [little-scale] has built a MIDI-controllable DAC for generating control voltages.
It’s a simple enough build – a Teensy 2 is used to speak USB MIDI to a laptop. This allows the DAC to be used with just about any modern MIDI capable software. The Teensy then controls a Microchip MCP4922 over SPI to generate the requisite control voltages. [little-scale]’s video covers the basic assembly of the hardware on a breadboard, and goes on to demonstrate its use with a performance using the MIDI DAC to control a Moog Mother 32 synth. [little-scale] has also made the code available, making it easy to spin up your own.
We can see this project being indispensable to electronic musicians working with banks of modular synths, making it much easier to tie them in with automation in their DAW of choice. This isn’t the first MIDI interfacing hack we’ve seen either – check out this setup to interface an iPad to guitar pedals.
Continue reading “MIDI DAC For Vintage Synth Hacks”