Hey,
I'm working on a external controller for my Boss DD-500 delay guitar pedal. This pedals has midi capabilities over USB so I want to use the second usb port of the Teensy 3.6 and the USBHost_t36 library to send mostly system exclusive data to the pedal. I use the following code to check if it's working:
I don't receive the data on my pedal, the corresponding parameter does not change. When I use the USBMidi function of the Teensy, send the sysEx-data to my Macbook and forward it via USB to the Boss DD-500, the parameter does change. When I send midi CC-data from the Teensy direct to the pedal with for example
it works as well. So I think there is something wrong with how the sysEx data is sent out of the Teensy via the USB-host library, but I can't see what is going on.
When I enable USBHOST_PRINT_DEBUG in the USBHost_t36 library this is the output:
Does anyone have an idea what can be wrong and how to fix it?
Thanks!
Roald
I'm working on a external controller for my Boss DD-500 delay guitar pedal. This pedals has midi capabilities over USB so I want to use the second usb port of the Teensy 3.6 and the USBHost_t36 library to send mostly system exclusive data to the pedal. I use the following code to check if it's working:
Code:
#include <USBHost_t36.h>
uint8_t buf[] = {0xF0, 0x41, 0x10, 0x00, 0x00, 0x00, 0x4D, 0x12, 0x30, 0x00, 0x10, 0x1F, 0x13, 0x0E, 0xF7}; //this message is a valid message, checked by sending it from Max/MSP to the pedal.
USBHost myusb;
USBHub hub1(myusb);
USBHub hub2(myusb);
MIDIDevice midi01(myusb);
void setup() {
delay(1500);
myusb.begin();
}
void loop() {
midi01.sendSysEx(15,buf,true);
delay(5000);
}
I don't receive the data on my pedal, the corresponding parameter does not change. When I use the USBMidi function of the Teensy, send the sysEx-data to my Macbook and forward it via USB to the Boss DD-500, the parameter does change. When I send midi CC-data from the Teensy direct to the pedal with for example
Code:
midi01.sendControlChange(28,127,11);
When I enable USBHOST_PRINT_DEBUG in the USBHost_t36 library this is the output:
Code:
sizeof Device = 36
sizeof Pipe = 96
sizeof Transfer = 64
power up USBHS PHY
port change: 10001803
connect
begin reset
port change: 10001805
port enabled
end recovery
new_Device: 12 Mbit/sec
new_Pipe
enumeration:
enumeration:
enumeration:
Device Descriptor:
12 01 10 01 00 00 00 40 82 05 B3 01 00 01 01 02 00 01
VendorID = 0582, ProductID = 01B3, Version = 0100
Class/Subclass/Protocol = 0 / 0 / 0
Number of Configurations = 1
enumeration:
enumeration:
Manufacturer: BOSS
enumeration:
Product: DD-500
enumeration:
Config data length = 101
enumeration:
Configuration Descriptor:
09 02 65 00 02 01 00 C0 00
NumInterfaces = 2
ConfigurationValue = 1
09 04 00 00 00 01 01 00 00
Interface = 0
Number of endpoints = 0
Class/Subclass/Protocol = 1 / 1 / 0
09 24 01 00 01 09 00 01 01
09 04 01 00 02 01 03 00 00
Interface = 1
Number of endpoints = 2
Class/Subclass/Protocol = 1 / 3 / 0
07 24 01 00 01 41 00
06 24 02 01 40 00
06 24 02 02 80 00
09 24 03 01 20 01 80 01 00
09 24 03 02 10 01 40 01 00
09 05 03 02 40 00 00 00 00
Endpoint = 3 OUT
Type = Bulk
Max Size = 64
Polling Interval = 0
05 25 01 01 40
09 05 84 02 40 00 00 00 00
Endpoint = 4 IN
Type = Bulk
Max Size = 64
Polling Interval = 0
05 25 01 01 20
enumeration:
USBHub memory usage = 960
USBHub claim_device this=1FFF26E0
USBHub memory usage = 960
USBHub claim_device this=1FFF2AA0
USBHub memory usage = 960
USBHub claim_device this=1FFF2E60
USBHub memory usage = 960
USBHub claim_device this=1FFF3220
Descriptor 4 = INTERFACE
MIDIDevice claim this=1FFF2020
len = 92
Descriptor 36 = ???
Descriptor 4 = INTERFACE
MIDIDevice claim this=1FFF2020
len = 74
Interface is MIDI
type: 36, len: 7
MIDI Header (ignored)
type: 36, len: 6
MIDI IN Jack (ignored)
type: 36, len: 6
MIDI IN Jack (ignored)
type: 36, len: 9
MIDI OUT Jack (ignored)
type: 36, len: 9
MIDI OUT Jack (ignored)
type: 5, len: 9
MIDI Endpoint: 3
tx_size = 64
type: 37, len: 5
MIDI Endpoint Jack Association (ignored)
type: 5, len: 9
MIDI Endpoint: 84
rx_size = 64
type: 37, len: 5
MIDI Endpoint Jack Association (ignored)
new_Pipe
new_Pipe
Descriptor 36 = ???
Descriptor 36 = ???
Descriptor 36 = ???
Descriptor 36 = ???
Descriptor 36 = ???
Descriptor 5 = ENDPOINT
Descriptor 37 = ???
Descriptor 5 = ENDPOINT
Descriptor 37 = ???
MIDIDevice transmit complete
MIDI Data: 04 F0 41 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
MIDIDevice transmit complete
MIDI Data: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
MIDIDevice transmit complete
MIDI Data: 04 4D 12 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
MIDIDevice transmit complete
MIDI Data: 04 00 10 1F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
MIDIDevice transmit complete
MIDI Data: 07 13 0E F7 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Does anyone have an idea what can be wrong and how to fix it?
Thanks!
Roald