Teensy 3.2 midi foot controller not recognized in DAW

Hi there,

some time ago I started a little project, a midi foot switch controller and with the help of Grumpy_Mike I made it work (–> https://forum.arduino.cc/index.php?topic=378142.0 ). I hadunfortunately bought the wrong board, an arduino pro micro, which had the disadvantages of having to use programs like hairless midi and loopMidi to make it being recognized as also some latency issues.

So now I started the project again with 17 instead of 9 buttons now and a Teensy 3.2 board. The code is the following:

boolean buttonLast[17];
const byte switchPin = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17};
const byte noteToSend = {36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52};
boolean button;

void setup() {
for(int i=0; i< 18; i++){
pinMode(switchPin*, INPUT_PULLUP);*
buttonLast = HIGH;
void loop(){
* for(int i =0; i<17; i++){*
_ button = digitalRead(switchPin*);
if (button == HIGH && buttonLast == LOW) {
buttonLast = button;
if (button == LOW && buttonLast == HIGH) {
buttonLast = button;

void sendNote(byte message, byte note, byte velocity){
* Serial.write(message);*
* Serial.write(note);*
* Serial.write(velocity);*
* delay (5);*
So I press the button to enter program mode on the teensy, and upload the code. teensyduino is running by the way and everything looks fine. In the arduino software I choose the Teeny 3.2/3.1 board and choose “Midi” as usb type.
OK, so I unplug the teensy, plug it in and it is recognized in “Teensy Midi” in Windows.
Only problem is: It is not beeing recognized in any DAW. I have Sonar, but also bitwig and the looper program Mobius for which I actually have built that controller. They recognize the device “Teensy Midi”, but I don’t get any Input from it, no button works.
Does anyone have an idea?
Thank you so much already!!!

and by the way the Serial Monitor is showing what should show up...

Once you have compiled the sketch with Tools|USB Type|MIDI, the Serial device doesn't exist in your sketch. Open the example, File|Examples|Teensy|USB_MIDI|Buttons. This shows how to use the Bounce library to debounce and read buttons and also how to use the usbMIDI device properly to send note on and off messages. The usbMIDI device is what you need to use for the PC programs to see the MIDI notes being sent through the "Teensy MIDI" connection.

And you might be better off posting questions about Teensy on the PJRC Forum since it is specifically for the Teensy.


Thanks for that answer, I did not realize there were examples in the Arduino software btw, nice!

But I want to understand what is going wrong in my case. The code that worked before on the pro micro board just doesn't seem to work on the Teensy. Or no, I actually guess that the code is OK, but that I am doing something else wrong.

I am not using hairlessMidi oder loopMidi, but that the purpose of using a Teensy 3.2 instead, also.

As I said, I get the same output from the Teensy in the Serial Monitor, but I just don't get any Midi data in a DAW. I just downloaded Midi OX for that case, but also there I don't get any signal while pressing one of the buttons.

I did not realize that this might be the wrong forum for issues with a Teensy, but as I have started that project and made it happen in the first place with a micro pro board with the help of the community and especially Grumpy_Mike from this forum, and I just want basically replace the boards for the same project, I think it is not the wrong place here to ask this question.

I hope someone can help me with this issue, and would be really thankful for that!

Re-read the first sentence of my previous message. Or I can rephrase it as "the way your code uses Teensy MIDI is WRONG". Read and understand the Button example. Better yet, compile it and run it. Use Midi_Ox to monitor the Teensy MIDI connection and then ground any one of pins 0 to 11. That should cause MIDI-Ox to see a MIDI note on when you ground a button and a note off when you remove the wire from the pin.

I don't care if you post here, but it is quite likely that there are a lot more Teensy users on the Teensy forum who can help you.


Well I compiled the example code for buttons...unfortunately that is also not working. The hardware seems to be correct at least.

No idea now where to go...

I've just finished tryign the Buttons example with a T3.2. When you first run the button code with USB MIDI, Windows should try to install the Teensy USB midi driver. Once it has done that, then open Midi-Ox, choose Options|MIDI Devices and in the MIDI Inputs pane of the MIDI Devices dialog, there should be a Teensy MIDI device. CLick on it and then click OK. Now ground one of the pins and you should see the note on and note off messages.


BTW. How do you know the hardware is correct?


Use File > Examples > Teensy > USB_MIDI > Buttons for a working example.

AndiH1213: No idea now where to go...

Run the example. For "hardware", simply touch a wire between GND and pin 0, or 1, or 2, etc.