;

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

My first QSO via Satellite

Finally I made it: my first ever qso in CW via satellite (RS-44). As I only have a free open view of less than 90 deg from my balcony, I have to wait for the right passes, and the time window is usually maximum 10 min.

sat-qso
Setup on the balcony

Using the IC-9700 with the 5 element log. per. antenna on my home brew az/el rotator, I was able to hear my own CW signal from the satellite and manage a qso with E21EJC in Thailand!

Software is Gpredict with Hamlib running on my Mac.

QSO on minute 6:37
CEH epfSRCmWzAurf