Homemade Midi Cable

Has anyone had any luck with making their own Midi In/Out to USB? Unless there is some sort of inline hardware it doesnt seem like that far fetched of an idea. Thanks in advance!

MIDI and USB are two totally separate serial bus standards. USB uses bidirectional differential signals, whereas MIDI uses unidirectional single-ended signals IIRC. The protocols are completely different.

Thus, any MIDI to USB connection will have in-line hardware. It could be done with a single chip (most of the complication would be in satisfying the USB serial engine requirements), but I don’t know of any such chip available to the general public in one-off quantities.

You need both hardware and software. Not worth your time as you can buy them ready made: http://shop.store.yahoo.com/rehobothmusic/yammidtousbc.html

How bout parallel or serial?

I don’t understand the problem. You have a computer which does not have a MIDI port? I would be surprised if your computer did not have this port somewhere. Your easiest and cheapest option is to get a card with a MIDI port. Trying to build your own adapter would require building hardware and software. You can get an audio or other card with a MIDI/game port for a few dollars. You’ll need the drivrs for it.

Well my roommate found a USB to MIDI In/Out cable…but it was $50. I just thought that there was some cheaper way of making one. I guess it’s not as easy to make and adapter for this as it is to say make one for my TI-89, lol. Thanks for the help though!

Here are some midi interface schematics. Though I didn’t see any USB versions, the serial and pararellel port versions look pretty simple:
http://www.harmony-central.com/MIDI/interface.html
http://home.concepts-ict.nl/~nctnico/midi.htm

Antonius Block, www.digikey.com sells to the general public in ‘one-off’ quantities. They have a nice seclection of USB controller ICs from like $5-10. This project could also be done with an Atmel microcontroller, but then you’d have to program the chip. Also www.newark.com is good.

rayray I think most people use a simple cable which connects through the sound card’s joystick port. If you don’t have one, you can probably get one for $10 if you froogle for it. But what fun is that :wink:

I’m familiar with the USB controllers available from Digikey, Eleusis. However, AFAIK any of those would require programming of the microcontroller EEPROM.This requires a fairly extensive knowledge of the USB protocol, as well as the ability to write a driver for the OS (most likely Windows of some flavor) on the host PC end. I would be willing to bet that rayray5884 does not have extensive experience in embedded systems programming, or he would not have asked the question that he did in the OP.

What I meant in my earlier reply is that I don’t believe that you can buy small quantities of the preprogrammed microcontrollers used in the $50 USB <-> MIDI interfaces that sailor and rayray5884’s roommate found.

If one really wanted to build a USB<->MIDI interface just for the challenge, but without wishing to learn embedded systems programming, my guess is that the best bet would be the FT245BM USB microcontroller from FTDI. This is available in unit quantities for $5.75 from Saelig. One would still need to write a (relatively simple) Windows application to bit-bang data to and from the FDTI chip, which appears to the OS as a virtual serial port. This is still considerably more complicated than the simple wiring job that I think the OP was hoping for.

I was referring mainly to the AN2131SC EZ-USB, which (from the datasheet):

I read this to mean all the programming could be done via the usb cable without needing to flash the chip before use. I could very well be wrong there.

My limited knowledge, however, didn’t stop me from building a USB infrared receiver for my HTPC. Igor was cool enough to share his design and his software with the world.

My point mainly being that it’s likely the design work has already been done and drivers written and released for free by hobbiests. If not for USB, then even cheaper (though perhaps dodgier) through the serial port as per links in my first post.