;

Foot switch and CW Keyer for wfview

Wfview is a program to remotely control Icom radios. You can find more information on https://wfview.org/.

As I do not have space for my own radio shack and my IC-7610 is located in the living room beside the balcony door, my IC-9700 in the guestroom near to the window, I use wfwiew since a couple of months to operate both radios from my (small) computer desk.

In order to make operation more convenient, I wanted to use my foot switch as PTT. An Arduino micro can emulate a USB keyboard. In wfview PTT is switched using ctrl-t (transmit) and ctrl-r (receive). A simple program on the Arduino micro can do this:

#include <AceButton.h>
using namespace ace_button;
#include <Keyboard.h>

#define LED_BUILTIN 17

const int BUTTON_PIN = 2;
const int LED_ON = LOW;
const int LED_OFF = HIGH;

AceButton button(BUTTON_PIN);

void handleEvent(AceButton*, uint8_t, uint8_t);

void setup() {
  // put your setup code here, to run once:
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(BUTTON_PIN, INPUT_PULLUP);
  Keyboard.begin();
  button.setEventHandler(handleEvent);
  digitalWrite(LED_BUILTIN, LED_OFF);
  TXLED1;
}

void loop() {
  // put your main code here, to run repeatedly:
  button.check();
  TXLED1;
}

void handleEvent(AceButton* /*button*/, uint8_t eventType,
                 uint8_t /*buttonState*/) {
  switch (eventType) {
    case AceButton::kEventPressed:
      digitalWrite(LED_BUILTIN, LED_ON);
      // ctrl-T
      Keyboard.press(0x80);
      Keyboard.press('t');
      Keyboard.releaseAll();
      break;
    case AceButton::kEventReleased:
      // compensates for network latency
      delay(250);
      digitalWrite(LED_BUILTIN, LED_OFF);
      // ctrl-R
      Keyboard.press(0x80);
      Keyboard.press('r');
      Keyboard.releaseAll();
      break;
  }
}

I have built-in the controller in a small 3D printed housing with a 1/4″ jack plug.

My foot switch solution for wfview

It works like a charm! A similar solution is possible to use a CW keyer (for example K3NG). I open the CQRLOG CW window and input my CW from the keyer to be converted back to text and sent to my IC-7610.

K3NG Keyer with Arduino Micro
CW setup

Leave a Reply

Your email address will not be published.

17 + 17 =

This site uses Akismet to reduce spam. Learn how your comment data is processed.