Teensyduino Midi-USB Programing

So here's the deal,

I had been running my midi controller on the arduino using code from http://www.instructables.com/id/Arcade-Button-MIDI-Controller/ and it was awesome. However, I had the arduino on the side and all ugly looking so i got a teensy++. With this there is more expandability and usb to midi instead of serial, but also a little confusion. I'm not new to arduino like programing but for some reason midi has got me stumped.

My big question is if anyone out there has used the teensyduino for usb midi, i'm not looking for someone to write the code for me just to help explain how to set it all up.

Here is what the makers of teensyduino give to run with:
http://pjrc.com/teensy/td_midi.html
with no examples.

This is what i have for reading one of the buttons, i still need that channel, but i'm not sure what that is lol.

if (digitalRead(PIN_D3)) {
    
  } else {
    usbMIDI.sendNoteOn(60, 127, 
  }

oh and the buttons are on pull-up resistors (low is pressed, high is released)

Thanks a lot of any help!

just a quick addition,

this is the code i have so far, clearly not working lol.

void setup()
{
  pinMode(PIN_D3, INPUT_PULLUP);
  pinMode(PIN_D4, INPUT_PULLUP);
  pinMode(PIN_D5, INPUT_PULLUP);
  pinMode(PIN_D6, INPUT_PULLUP);
  pinMode(PIN_D7, INPUT_PULLUP);
  pinMode(PIN_E0, INPUT_PULLUP);
  pinMode(PIN_E1, INPUT_PULLUP);
  pinMode(PIN_C0, INPUT_PULLUP);
  pinMode(PIN_C1, INPUT_PULLUP);
  pinMode(PIN_C2, INPUT_PULLUP);
  pinMode(PIN_C3, INPUT_PULLUP);
  pinMode(PIN_C4, INPUT_PULLUP);
}

void readbuttons()
{
  if (digitalRead(PIN_D3)) {
    usbMIDI.sendNoteOff(60, 127, 01);
  } else {
    usbMIDI.sendNoteOn(60, 127, 01);
  }
  if (digitalRead(PIN_D4)) {
    usbMIDI.sendNoteOff(61, 127, 01);
  } else {
    usbMIDI.sendNoteOn(61, 127, 01);
  }
  if (digitalRead(PIN_D5)) {
    usbMIDI.sendNoteOff(62, 127, 01);
  } else {
    usbMIDI.sendNoteOn(62, 127, 01);
  }
  if (digitalRead(PIN_D6)) {
    usbMIDI.sendNoteOff(63, 127, 01);
  } else {
    usbMIDI.sendNoteOn(63, 127, 01);
  }
  if (digitalRead(PIN_D7)) {
    usbMIDI.sendNoteOff(64, 127, 01);
  } else {
    usbMIDI.sendNoteOn(64, 127, 01);
  }
  if (digitalRead(PIN_E0)) {
    usbMIDI.sendNoteOff(65, 127, 01);
  } else {
    usbMIDI.sendNoteOn(65, 127, 01);
  }
  if (digitalRead(PIN_E1)) {
    usbMIDI.sendNoteOff(66, 127, 01);
  } else {
    usbMIDI.sendNoteOn(66, 127, 01);
  }
  if (digitalRead(PIN_C0)) {
    usbMIDI.sendNoteOff(67, 127, 01);
  } else {
    usbMIDI.sendNoteOn(67, 127, 01);
  }
  if (digitalRead(PIN_C1)) {
    usbMIDI.sendNoteOff(68, 127, 01);
  } else {
    usbMIDI.sendNoteOn(68, 127, 01);
  }
  if (digitalRead(PIN_C2)) {
    usbMIDI.sendNoteOff(69, 127, 01);
  } else {
    usbMIDI.sendNoteOn(69, 127, 01);
  }
  if (digitalRead(PIN_C3)) {
    usbMIDI.sendNoteOff(70, 127, 01);
  } else {
    usbMIDI.sendNoteOn(70, 127, 01);
  }
  if (digitalRead(PIN_C4)) {
    usbMIDI.sendNoteOff(71, 127, 01);
  } else {
    usbMIDI.sendNoteOn(71, 127, 01);
  }
}

void loop()
{
  readbuttons;
}

like always, any help would be greatly appricated.

I think you need to use usbMIDI.send_now(); to actually send the midi notes.

Also think your code may be sending repeat messages - it is more polite to send messages if they are different from the preceding one. Sometimes this is taken care of automatically but don't think Teensy does it.

Saying that I can't get XP to recognise my teensy as a midi device at all! Works with OSX but nogo for me.