Tonex One Controller: An open-source controller and display interface for the IK Multimedia Tonex One and Tonex Pedal
- Hardware Mod
- Connections
- Wired Footswitches not supported - onboard
- Wired Footswitches - external
- Wired Midi
This hardware platform uses this Waveshare 7" or 4.3" (not B) LCD board.
IMPORTANT NOTE: these two Waveshare boards can be made to work, but they are less featured than the other platforms and require some more advanced skills to make them work. This info is here for those that insist on using it. It is strongly recommended to use a different platform (like the 4.3B) for the full set of features.
Feature Limitations:
- Wired footswitched not supported
- Limited number of Amp skins due to 8 MB flash (4.3B has 16 MB flash)
- Wired Midi is input only, not support for Midi output/thru
https://www.waveshare.com/esp32-s3-touch-lcd-7.htm?sku=27078
https://www.waveshare.com/esp32-s3-touch-lcd-4.3.htm?sku=25948
These modules provide the microcontroller, dual USB ports (one for power input, one for the pedal), LCD display, and a capacitive touch screen.
USB Host support on these boards requires a small modification.
- 4.3": Resistor R19 needs to be removed.
- 7": Resistor R115 needs to be removed.
Note: the controller code relies on the Tonex One pedal being set to Stomp mode. Code is in place to do this automatically.
- Connect the first USB-C port (marked as USB) on the Waveshare board to the ToneX One USB-C port
- Connect the second USB-C port (marked as UART) to a USB-C 5 volt power supply.
- Switch on the power supply
- The Waveshare board USB port will power the Tonex One
- Optional: for the Bluetooth Client version of code, switch on a M-Vave Chocolate Midi pedal (https://www.cuvave.com/productinfo/724103.html). After a few seconds it should connect and the Bluetooth icon should change from gray to blue
- Optional: for the Bluetooth Server version of code, the controller will be available as a peripheral for you to connect to via a Bluetooth Midi device. The Bluetooth icon should change from gray to blue when connected.
Directly wired footswitches are not supported on these boards due to a lack on available input pins.
Starting from firmware version 1.0.8.2, with the use of an additional PCB, up to 16 footswitches can be connected.
The footswitch must be a "momentary" type that is only has its contacts closed when it is pressed.
The additional PCB must use the "SX1509" chip. The recommeded one is the Sparkfun SX1509 breakout board:
https://www.sparkfun.com/sparkfun-16-output-i-o-expander-breakout-sx1509.html
NOTE: other types of IO expander boards that use different chips are not supported and will not function. It must contain the SX1509 chip.
The SX1509 PCB has a selectable address system. This must be set correctly in order for the board to function with the controller.
- Using a sharp knife, carefully cut the thin tracks between the pads as shown below
- Use solder to bridge the pads as shown below
- This sets the SX1509 adress to "11" which avoids conflicting with other parts on the controller boards

The common pin of each footswitch must connect to the SX1509 ground pins. The labels "0", "1" etc are the individual switch inputs. Footswitch 1 connected to input 0. Footswitch 2 to input 1 etc.
Multiple modes are supported, configured using the web configuration.

Note: Wired Midi is disabled by default. If it is enabled without the proper hardware (detailed below) being fitted, you may get "phantom" preset changes, due to the serial input "floating".
Only enable wired Midi when hardware is connected!
Refer here for details on how to enable it, and set the Midi channel:
https://github.com/Builty/TonexOneController/blob/main/WebConfiguration.md
Wired Midi is supported on all platforms. A extra PCB is required for all platforms, an "Adafruit Midi FeatherWing kit", for US$7.
https://www.adafruit.com/product/4740
This Midi board supports both 5-pin DIN sockets (included in kit) and 3.5mm jacks (not included in kit.)
Midi Featherwing:
