Connecting a Teensy with USB MIDI Freezes Electra.One

Hey!

HW 2.10 - CTRL V2 2.1.7

I am currently working on a simple Sample Player using a Teensy 4.1. As I am just developing, its just the Teensy with an Audio Shield, using USB Midi with the computer and it works fine. The Teensy is built with USB_MIDI built_flag, so it does not send any other data then MIDI. As its a Sample-Player, all it does with the USB MIDI is waiting for incoming MIDI Messages. No Data is sent.
Now I wanted to test, how it interacts with an Elektron Devices and wanted to use the Electra.One to play the Bridge between DIN MIDI and USB Midi.
When I Plugin the Teensy to the USB Host Port, the Display shows it as TEENSY MIDI, so the initial handshake seems to work.
After that, the device freezes. With “freezes” I mean: It does not respond to anything I do on it other than reboot by plugging out and in Power. Neither Buttons, nor Knobs or Touchscreen responds. Screen displays the State it did before it freezed.

When I connect it to the Electra.One Console App, and watch for any messages, there is none after

325685 Assigning new MIDI1 device to midiBus 0: Teensy MIDI

When I play MIDI from the Syntakt to MIDI 1 IN, and then connect the Teensy, the MIDI Log continues to show a bunch of MIDI Messages (Clock and some Note On and Offs) again and again, that previously came from the the Syntakt, even if I stop playing on it. So somehow it seems as if it is stuck in a Loop.

As it instantly freezes, as soon as I connect the Teensy, I am not able to do anything on the USB Host-Page, even if I enter it before I connect the Teensy.

The Patch on the Electra is a simple "Send some MIDI CC to MIDI 1 OUT.

first thing id check is its not a power related issue… try a powered usb hub.
( its quite likely not, but it’ll have you running around in circles if it is !)

I guess, you’re saying your teensy ‘app’ works perfectly when the E1 is not sitting in the middle?!
id be tempted to really test this with a few different midi host, so that you know 100% its only the E1 that has the issue … otherwise again, you’ll be chasing your tail.
i.e. usb midi can be a bit fickle, and some hosts (esp computers) are pretty tolerant of ‘bad devices’ … and then others are not so easy going.
obviously its important to know it really is the E1, before you spend hours trying to ‘fix’ the E1.

once you know its the E1 (and teensy combo) , its tricky to know how to proceed otherwise.
what I would do is build/create a version of the e1 firmware with some more debugging in it - as I fear its going to be a lower level issue than the e1 midi app.

Id usually help, but I don’t have time, as Im preparing stuff for Superbooth - which is only a couple of weeks away, and a bunch of other stuff on the back burner for when I return… this time of year is always busy :slight_smile:

1 Like

Hey!

Good luck with Superbooth preparation and have tons of fun there!

I tried connecting it to several devices, but everything I own with USB-Host Capabilities are somewhat Computer Driven (MAC, PC, Mod X, Fates (Norns clone)), so this might all fall under the “MIDI Implementation might be buddy” category. iPhone and iPad are also okay with it being connected to Camera-Adapter.

Maybe I find my Axoloti somewhere, dunno where it is, but it should have a Host-Port, if I remember correctly.

At the end, its not the most important bug, as I plan to move to DIN MIDI later on anyways. Would just have been awesome to have Electra work as bridge here.

1 Like

Totally forgot, that I owe a RK006. Works fine with it being USB MIDI Host. First Non-Computer.

Hi @Uija!

Unfortunately, I do not have T4.1 around now, I tried to compile one of the Teensy MIDI examples on it and seem to work fine. “Teensy MIDI” device recognized and communicates with E1, no freeze.

If you upload, eg, inputRead.ino example script, do you get a freeze too?

1 Like

Tried it. Worked. Moved Example Code to PlatformIO, Worked. Reuploaded my Code for the 1000th time, Worked. As I have not changed the code within the last 36h, I don’t know, why :frowning:
Thanks for taking your time and letting me try again!

1 Like

unfortunately, these things happen… the joy of coding and testing :wink: