The user interface on CTR2-Mini is pretty simple. There’s just a rotary encoder and the few buttons built into the Wio Terminal. Normally this works out pretty well, but there are times when you just want to press a button to execute a function, say to send a CW buffer or change keyer speed, for example.

That’s the reasoning behind adding function keypad support in v1.03. I wanted programmable function buttons on my new SO2R controller so I changed the Remote PTT input on the Mini from a digital input to an analog input and built a function keypad using a resistor ladder. The keypad connects to the Remote PTT jack on the back of the Mini (next to the RJ45 jack).

NOTE: This option is not available on Flex-only versions of CTR2-Mini because they don’t have the necessary hardware to support it.

Resistor Ladders

For those of you that aren’t familiar with a resistor ladder, it’s simply two wires with an assortment of resistors and push button switches in parallel. When you press one switch the resistor connected to it pulls the 10K ohm pull-up resistor on the Remote PTT analog input to ground. The Mini reads the resulting voltage change and determines which button was pressed.

It’s very simple, but not foolproof. For instance, if you press more than one switch at the same time all bets are off as to what voltage the Mini will see and what function it will execute (of the programmed functions). Knowing this, just press one button and you’ll be fine.


The schematic for the function keypad is shown below. I used a New Age S3A-401210 enclosure I had laying around but you can build it into anything, even an infamous Altoids box. The buttons are from Amazon but you can use any momentary button you like.

I used a combination of standard 1/4 watt through-hole resistors to build my keypad as shown below. The resistor values do not have to match the values shown below. If you deviate from the values listed just recalibrate your key pad using the Recalibrate Buttons option described next.

Recalibrating Function Buttons

One of the drawbacks to the resistive ladder approach is that the exact voltage presented to the Wio when each button is pressed will vary depending on the tolerance of the resistors used. To compound this problem the CTR2-Mini SO2R Controller presents different voltages than a standalone Mini for each button.

To eliminate these problems a special Recalibrate Buttons option has been added to the Function Buttons menu. The default settings should work with a standalone Mini using the circuit above. If you use different resistors and get erratic responses to button presses, or use the SO2R controller, you should recalibrate the buttons.

To do this, simply select the Recalibrate Buttons option and press each button, starting with F1 in sequence. Once you get to F5 the program will save the new settings in the initialization file for future use.

NOTE: Always start with F1 and continue to F5 in sequence otherwise the calibration will fail. If you build a keypad with only 3 or 4 buttons just press the last button twice to skip the higher buttons in the sequence.


Construction is not critical. Use whatever you have laying around. What is critical though is that you must use a shielded cable between the keypad and the Mini. Keep it as short as possible. The input to the Wio Terminal is high-impedance so it can easily pick up RF from your transmitter. The 100nF (.1 uF) cap on the keypad and another 10nF (.01uF) cap in the Mini should keep the RF out but if not, toroids are your friends.

Here’s a look at the inside of my keypad. You can install a 3.5mm phone jack in the keypad like I did and use a 3.5mm to 3.5mm jumper cable between it and the Mini. Or, just cut a 3.5mm jumper cable in half and hardwire the bare end to the keypad.

Setting up the Function Buttons

The Function Buttons menu can be found in the the Config menu. This menu displays the five function buttons along with their assigned functions. The 6th button’s function is fixed. It can be momentary PTT, latching PTT, or Straight Key, depending on the Rmt setting in the Keyer menu.

To change a function simply click on the menu item for that button and select a new function from the list.

There are 18 functions currently available. You decide which ones you want to use. More may be added in the future if it makes sense. The current functions include:

  • Open the TxMsg menu so you can select from the available messages (long-pressing the 5-way switch on the Wio does the same thing)
  • Select from CW messages 1 through 6 to immediately send (message #1 is the repeat buffer – it resends the last message buffer)
  • Open the RIT display (if your radio supports it)
  • Open the Keyer Speed display
  • Toggle the Zero Digits mode. When on all of the frequency digits below the tuning digit are automatically zeroed on the Mini and on the radio. This is handy when you want to tune to an exact frequency.
  • Restore the last frequency back to the current VFO. Up to 10 previous frequencies are remembered.
  • Push the current frequency and mode to a second Mini when the two Minis are operating in Basic Sync mode.
  • Pull the current frequency and mode from a second Mini when in Basic Sync mode.
  • Open the special Radio menu. This is only available for Flex, PCR1000, and Yaesu FTdx101 radios.
  • Mimic the [A] button (left button on the Wio)
  • Mimic the [B] button (middle button on the Wio)
  • Mimic the [C] button (right button on the Wio)
  • Open the Antenna Switch Controller menu

Assigning the [A], [B], and [C] buttons to the keypad allows you to navigate the menu structure from the keypad.

I hope that give you an idea of what this new feature does. I’m not planning on building these for sale because they are simple enough that anyone should be able to put one together. If you have any questions or suggestions please contact me. I’m good on too.

73, Lynn, KU7Q