06/8/20

Chase Bliss Thermae: The missing knob


This time what I wanted to do is create a Time knob for my Thermae pedal, the most wanted control missing in the Thermae due to being so small.

My solution uses Midi clock messages to set the wanted time.

The tricky part is the envelope trigger. Thermae doesn’t accept any midi command to restart the sequence, so the only way I found to sync the interval sequences my music was to engage the pedal just when audio is detected. This is especially useful to get more controlled results when recording for example.

This little box adds:

  • Time select knob, from a few ms to 1s (higher times are more useful with the tap tempo).
  • Two modes (selectable by the switches):
    • Time mode: Select the time with the knob
    • Trigger mode: Knob doesn’t work in this mode. The two buttons add or reduce input audio sensibility.
  • LED to check input trigger in trigger mode.
  • 3.5mm TRS input for incoming audio (trigger)
  • 3.5mm TRS output to connect to Thermae.
  • Toggle slow mode (only in time mode): pressing the two buttons

Midi CC messages:

  • Delay mode:
    • Send the value 248 (decimal) to channel midi #2 (Thermae default). Desired time / 24 is how often you have to send this data to the pedal so it can change the tempo.
  • Disable slow mode: CC #25 = 0
  • Enable slow mode: CC #25 = 127
  • Trigger mode (I ignore midi clock in trigger mode):
    • Disable midi clock: CC #51 = 0
    • Enable midi clock (delay mode): CC #51 = 127
    • Engage pedal: CC #102 = 127

When in trigger mode, I always suppose the pedal is in bypass (not engaged), so if audio is detected the engage pedal message is sent from the box to the pedal via midi.

The commuter is used to physically connect the input audio to the arduino internal analog/digital converter, which also will disconnect the knob in my case (easy fix is use a board with more ADC). Depending on the value read by this converter, we’ll trigger the engage the pedal or not. The LED allows to see easily if the signal was strong enough, but depending on the input instrument (in my case line-level keyboard) the threshold can be trickier to find. I have not tried it with guitars.

Hardware notes:

  • It is necessary an Arduino board with serial pins like UNO or in my case the nodeMCU, but there are many boards that would be ok: https://es.aliexpress.com/item/32824839148.html?spm=a2g0s.9042311.0.0.274263c0kSWu0n
  • Any push buttons or commuters will work, but need pull-up resistors or at least use the INTERNAL_PULLUP flag configured in the input pins of the program.
  • 3.5mm midi output jack is connected to the TX pin of the microcontroller via a 220ohm resistor.

Midi Wiring:

Thermae has a TRS connection. The pedal sleeve pin will go to our 3.5mm sleeve, ring with ring and tip is not connected (it is used for additional footswitch). Remember to use the 220ohm resistor from the ring to the microcontroller TX (transmit) pin.

Example:


I am working on improving some of the current drawbacks like having to choose either delay / trigger, and also the threshold select is not the most comfortable to use, but that will imply changing some of the current components.