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 radio control apps and with Windows apps such as Thetis for the Apache Labs ANAN and Hermes-Lite 2 SDR radios (among others). CTR2-MIDI provides a physical tuning knob, CW paddle/straight key/PTT switch interface, 8 encoder controls, and up to 48 button controls (in Extended Button mode).
February 13, 2026: v2.01.00a
- No firmware changes – just updated the manuals included in the zip file with information about using ESPConnect to flash firmware into CTR2-MIDI
February 4, 2026: v2.01.00
- Added HID support for RemoteTx. Using CTR2-MIDI as a controller for RemoteTx is a game-changer!
- RemoteTx is only supported on the CTR2-MIDI (ESP32-S3) hardware. CTR2-Micro (ESP32-C3) hardware does not have the hardware for USB HID.
NOTE: CTR2-MIDI must be in MIDI mode (not Flex WiFi mode) to use it with RemoteTx
- RemoteTx is only supported on the CTR2-MIDI (ESP32-S3) hardware. CTR2-Micro (ESP32-C3) hardware does not have the hardware for USB HID.
- Fixed a bug that blocked saving changes to Map 2 in MIDI mode.
One BIN File instead of four
Starting with v2.00.00, the firmware is distributed as a single BIN file. Just map the CTR2-MIDI.bin file into EspressIF Flash Download tool and set the starting address to 0x0.
Instructions for flashing firmware to CTR2-MIDI and CTR2-Micro hardware can be found in the CTR2-MIDI Operation Manual under Appendix C.
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 is for the CTR2-Micro controller.
NOTE: This hardware does not support the new HID control mode for RemoteTx.

NOTE: If the Download button doesn’t appear, click the hyperlinked file name to download the zip file.
Flashing the Firmware into CTR2-MIDI
The New Way
ESPConnect is a new open source tool that greatly simplifies the process of flashing firmware to ESP32 processors. It’s a browser-based tool that runs in Chrome, Edge, and Opera browsers on either a PC or a Mac (sorry, Linux is not supported). I’ve updated the operation manuals with information on using this tool.
The Old Way
I highly recommend using ESPConnect to flash firmware. But, if you’re already familiar with the EspressIF Flash Download tool, you can still use that.
The firmware zip file includes a copy of both the CTR2-MIDI Operation Manual and CTR2-MIDI Flex WiFi Operation Manual in addition to the script file for Mac/Linux users. App maps and Excel worksheets to document your knob and button assignments can be found on the CTR2-MIDI Operation Manuals page.
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
December 26, 2025: v2.00.02
- Refined the paddle debounce code again to eliminate random code elements while keying
- Fixed a bug in the Flex WiFi menu that blocked connecting to WiFi (option G)
- Light the red (Tx) LED in MIDI mode even when Bluetooth is not connected (not lighting on USB MIDI connection)
November 10, 2025: v2.00.01
- Fixed a bug in the Flex WiFi mode’s keyer code that was causing random code elements to be added when using cheap (noisy) paddles
- Fixed the Flex WiFi mode’s keyer’s Bug mode so it works properly now
November 3, 2025: v2.00.00
New Flex WiFi mode
CTR2-MIDI v2.00.00 firmware now includes a Flex WiFi mode. In this mode, CTR2-MIDI can connect directly to your Flex radio using your WiFi network. This mode does not require a 3rd-party app to control your radio and it works with any version of SmartSDR, including Windows versions. The Flex WiFi mode includes a built-in keyer so you can send CW over the network connection. Individual knob and button function assignments can be easily modified using terminal program such as Putty or Tera Term.
Export/Import
Another addition to v2.00.00 firmware is the Export/Import functions. These functions allow you to export a backup of all of your unit’s settings to a file on your PC and import them back in. This is great if you use your CTR2-MIDI with multiple apps, or run the Flex WiFi mode on different LANs.
An Operation Manual for each mode
There are two operation manuals available; one for the normal MIDI mode and one for the Flex WiFi mode. These manuals are included in the firmware zip files. You can also download them here.
As always, CTR2-MIDI firmware can run on both CTR2-MIDI and CTR2-Micro hardware. Just download the version for the hardware you want to install it on.
February 2, 2025 – v1.02.01: Minor update
This is the last version version of v1.xx firmware. It adds the WheelB-r MIDI control type. This type reverses the direction of the tuning knob and is primarily used with the PI HPSDR app which handles MIDI wheel controls differently than Thetis and other Windows control apps. I also added speed tuning to WheelB and WheelB-r MIDI controls. This is a minor update and you only need to install it if you need the WheelB-r option or want speed tuning in the WheelB controls.
v1.02.00 – September 30, 2024: Major Update
v1.02.00 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.
v1.01.00 – April 24, 2024
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.
v1.00.05 – March 26, 2024: 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
v1.00.04 – March 23, 2024
- 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
v1.00.03 – March 10, 2024:
- Initial release of CTR2-MIDI firmware for both ESP32-C3 (for CTR2-Micro) and ESP32-S3 (for CTR2-MIDI) processors.