CTR2-MIDI is a USB and Bluetooth-LE MIDI controller that can be used with Apple iOS and Mac devices running Marcus Roskosch’s (DL8MRE) excellent SmartSDR and SDR-Control software and with Windows apps such as Thetis for the Apache Labs ANAN and Hermes-Lite 2 SDR radios. CTR2-MIDI provides a physical tuning knob, paddle/straight key/PTT switch interface, six dual-function pushbuttons, and 8 encoder controls.


v1.02.00 – September 30, 2024

v1.02 firmware adds many new options based on user input. These new options can be controlled by pressing and holding one of the multi-function buttons then pressing the encoder.

  • Beep mode allows you to change the beeps CTR2-MIDI emits when you press a button or encoder. Press and hold MFB1 then press the encoder to change beep modes. Options include all beeps off, normal beeps, and beep only for long-press actions.
  • Speed (proportional) turning allows you to turn off speed sensitive turning or select from two speeds when using the WheelA control for tuning. Press and hold MFB2 then press the encoder to step through the speed options.
  • Two Encoder Maps are now available. Set up one map for RHR or Marcus’ iOS/MacOS apps and another for Windows apps like Thetis. Press and hold MFB3 then press the encoder to switch maps.
  • The Bluetooth radio can now be turned off if you’re not using BLE MIDI and running CTR2-MIDI from the battery on your iPhone or iPad. This drops the current consumption from 93 mA to 43 mA.
  • A new Reset to Factory Settings option has been added.

CTR2-MIDI firmware runs on both CTR2-MIDI (S3 version) and CTR2-Micro hardware (C3 version). The CTR2-Micro is implementation is limited to three dual-mode pushbuttons and one status LED.

Older versions of the firmware can be downloaded from the Update section at the bottom of this page.

Instructions for flashing firmware to CTR2-MIDI and CTR2-Micro can be found in the CTR2-MIDI Operation Manual under Appendix B.


Download the latest CTR2-MIDI firmware here. Older versions can be found in the Change Log section.


S3 Version for CTR2-MIDI Hardware

The S3 version is for the CTR2-MIDI controller


C3 Version for CTR2-Micro Hardware

The C3 version runs on the CTR2-Micro. If you own a CTR2-Micro you can download this version and use your CTR2-Micro as a Bluetooth-LE MIDI controller in SmartSDR or SDR-Control for iOS. The only difference is that the Micro only supports three dual-mode pushbuttons, only has one status LED, and doesn’t support USB MIDI.

NOTE: If the Download button doesn’t appear, click the hyperlinked file name to download the zip file.


If you’re a Windows user you can download the Flash Downloader program referenced in the Updating Firmware section of the CTR2-Micro Operation Manual for Windows users to update your Micro’s firmware.

If you’re a Linux or Mac user, download the following script and follow the instructions in the Updating Firmware section for Linux and Mac users. I’d like to thank Lou, KI5FTY, for creating this script.

The zip file includes a copy of the CTR2-MIDI Operation Manual and a copy of the MIDI mapping I use on my devices. You can import the CTR2-MIDI.map file into your app by using the Import Map feature in the app’s Import Mapping from iCloud Drive option in the Edit MIDI Controller Map panel. Copy the .map file to the SmartSDR folder on your device.


Firmware Update How-To Video

I’ve posted a firmware update how-to video on YouTube that walks you through the process of updating CTR2-MIDI using the EspressIF Flash Download tool.

Change Log

April 24, 2024: v1.01.00 – Major Update

This update adds USB MIDI functionality to CTR2-MIDI. This means it is now plug and play with most computers and devices that support USB MIDI. This update also adds additional MIDI control types. Select from MIDI Button, SliderA, SliderB, WheelA, and WheelB.

  • SliderB adds audible detents to the slider control. This is handy when controlling RIT or XIT. CTR2-MIDI will beep when the control is centered or hits an upper or lower limit.
  • WheelA adds proportional tuning to SmartSDR and SDR-Control.

March 26, 2024: v1.00.05 – Recommended update

  • Revised ADC read code to minimize false triggers when pressing multi-function buttons (MFBs)
  • Added Show/Hide MFB Counts to terminal interface to aid in troubleshooting MFB problems
  • Updated Troubleshooting section in the Operation Manual to include the No Sidetone solution

March 23, 2024: v1.00.04

  • Flash green LED on S3 firmware when unit is powered up. There is no need to update the firmware if you’re running v1.00.03 “C3” on a CTR2-Micro

March 10, 2024: v1.00.03

  • Initial release of CTR2-MIDI firmware for both ESP32-C3 (for CTR2-Micro) and ESP32-S3 (for CTR2-MIDI) processors.