For a couple years now I've been tinkering with the idea of building my own synth. I have yet to get past the MIDI input stage for this reason: the MIDI coming out of my computer's interface (SB Live MPU dealy) works fine, but inptu coming form my drum machine or midi controller continuously sends erroneous data, consisting of mostly 1's with a couple 0's here and there.
This problem has cropped up in every incarnation of my project. I started with a BasicX chip (slow piece of crap) hooked to an SPI UART (the Max3100 with a 4Mhz crystal) and this same behavior was observed. I then moved on to the Arduino (a Dorkboard). I used the same Max3100 SPI UART and got the same thing. So now I'm using the onboard serial port on the Arduino and am still getting this same behaviour. My computer's MIDI port works great, but my midi controller and drum machine just end up sending a bunch of garbage.
I've also used 3 different kinds of 6N138 opto-isolators and nothing changed (used this circuit:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1159290285/4). I then switched to a PC900 opto-isolator and am still getting the same rubbish. I am using the same circuits that a lot of other people on the net are using without problem, but for some reason I continuously get the same problem. I've even moved my circuit to a different bread board to no avail.
Has anyone successfully gotten MIDI input working with several different devices? Am I falling into some common trap that nobody on the Internet talks about? Any guidence on this issue would be much appreciated.
Thanks,
Justin