Shop OBEX P1 Docs P2 Docs Learn Events
Midi Output — Parallax Forums

Midi Output

Spork FrogSpork Frog Posts: 212
edited 2009-04-09 13:35 in Propeller 1
Recently I've been playing around some with MIDI and the propeller and trying to do full communication with a synth... I've run into a small issue. I've assembled the circuit from this thread. I've successfully gotten MIDI input to work, but I'm having troubles with the output stage.

I'm trying to have the Prop send three byte packets, $90 $3C $40 once every second, which should be striking middle C on the keyboard once every second. However, my keyboard seems to be having issues. The only thing I've done successfully is gotten my controller to lock up.

I am using a Yamaha 76-key keyboard which may or may not be at fault. I know my cable is good. Can anyone offer me any guidance or tell me if I'm on the right track? Or, has anyone successfully gotten MIDI output from the Prop yet?

EDIT: For MIDI communications I'm simply using FullDuplexSerial

Comments

  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2009-04-09 02:56
    Spork Frog said...
    Or, has anyone successfully gotten MIDI output from the Prop yet?

    I did last summer. I was doing midi out to a little Synth unit I have here and was also using the TV text broadcast feature to display the notes being played on a TV. I did not use any type of input device I started with a simple program to programically send the note on info and got the output working first. Then I worked on the display part.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob

  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2009-04-09 03:25
    I just had a look at the old files but I have about 5 versions and allot of hacks in them so I don't know which one worked in the end or exactly what I was experimenting with each at the time but if you are still stuck by late weekend I can try the files again and post additional info.

    I don't want to point you in the wrong direction so for now take this info (below) with a grain of salt until I get to play with this again and see what works.

    
    1.  Parts of what I used:
    
     OBJ
    
      text : "tv_text"
      out : "FullDuplexSerial"
      
    2. 'MIDI OUT
       out.start(4,7,%0100,31250)  ////// out.start(9,7,%0000,31250) The out.start on the right probably didn't work.
    
    3.   /// I had a few like this in a repeat loop with different note values so that it would play a scale but you only need one to test.
          out.tx(144)
           out.tx(55)
           out.tx(127)
           waitcnt(Delay + cnt)    
           text.str(string(13,$C,2,"Note 55 Sent",$C,4))         
    
    



    Sorry I can't be more help at this time but that's from the first few weeks that I had the prop and I was hacking everything.
    turn.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob

    Post Edited (Bob Lawrence (VE1RLL)) : 4/9/2009 3:58:44 AM GMT
  • AribaAriba Posts: 2,690
    edited 2009-04-09 04:59
    Spork Frog

    Which one, of the two circuit in that thread do you use?
    For the first one, you need to invert the TX signal (mode %0010 at FullDuplexSerial start).

    You can try to connect your MIDI IN and MIDI OUT with the MIDI cable, and write a test code, which sends something out.
    Then display the hexnumbers received at MIDI in.

    Andy
  • SSteveSSteve Posts: 808
    edited 2009-04-09 05:17
    This is a stab in the dark, but don't forget to intersperse Note Off messages ($80 $3C $40 or $90 $3C $00) with the Note Ons.

    Also, you can use MIDI-OX (www.midiox.com/) to see what you are sending out. If you have a Mac, you can use MIDI Monitor (www.snoize.com/MIDIMonitor/).

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    OS-X: because making Unix user-friendly was easier than debugging Windows

    links:
    My band's website
    Our album on the iTunes Music Store
  • Spork FrogSpork Frog Posts: 212
    edited 2009-04-09 13:35
    Changing the status bits in FullDuplexSerial did the trick. Thanks everyone
Sign In or Register to comment.