Wednesday, October 26, 2022

GA-800 Active loop receive antenna

I purchased a small (26cm) active loop antenna called a GA-800.  So far quite impressed. 


The bottom part has a re-chargeable battery with USB-C charging.


Interesting to note that for best reception in a window, the plane of the loop should face out.


Reception with the loop is significantly stronger than when using the whip antenna on the radio.

The loop can be separated from the power base part if desired. I'm sure it would work even better in a remote configuration.

Friday, October 21, 2022

BOM re-branding work

The re-branding of the BOM to The Bureau of Meteorology, hereinafter to be referred to The Bureau is reported to be costing $220,000. But what about all of us developers who use their excellent APIs? My little K index reporter used to look like this during startup:


Never fear, we've pulled the team in and made the necessary changes:


But of course the website and api URL domain names still have "bom" in them so we're standing by for any breaking changes. ;-)

Thursday, October 20, 2022

Appeared on ABC RN's Download This Show

I was a guest again this week on Marc Fennell's "Download This Show" on ABC RN. 

As I no longer live in Sydney I'm a remote guest and this week my audio is a little weird as we used FaceTime audio to get me there.

Alex Jones must pay Sandy Hook families nearly $1 billion for hoax claims made on his conspiracy news service Infowars. Will it help to deconstruct one of the most potent engines of misinformation in the history of media?

And what is the point of going to work in an office if you’re just going to spend the day on video calls? 

If you don't catch it on air, you can listen here.

Uncivil Wars - How contempt is corroding democracy

I've just read the essay by Waleed Aly and Scott Stephens in issue 87 of the Quarterly Essay. I wish I'd read this before we made the program. 

The authors argue that treating people with whom we disagree with contempt rather than trying to see the world from the best version of their point of view hinders proper debate and, by extension, undermines democracy.

Recently I've interacted with several people who believe that COVID vaccination is some sort of conspiracy that ranges from being motivated by money making all the way up to a deliberate plan to kill people. I must admit I have sometimes treated people with contempt, not requiring serious debate.

Aly & Stephens have shown me the error of my ways and I will try to do better.

Sunday, October 09, 2022

HanRongDa HRD-747 receives 2m FM quite well

This radio promises very wide coverage and while it is disappointing as an HF receiver, it is a passable receiver of narrow band FM on the 2m band.


I'm still figuring out how to operate this thing but so far I wouldn't recommend it for short wave.

Friday, October 07, 2022

Built a Gate Dip Oscillator (GDO) from Heckits.

A GDO is a useful little test instrument for finding the resonance of a tuned circuit. These tuned circuits might be in a VFO or perhaps a trap for an antenna. Many years ago I had a commercial version that was quite large and had a large tuning dial. (The plug-in coils deteriorated over the years). Recently I ordered a modern version in kit form from HecKits.

The instructions are good although I found that the board deviates slightly from the image in the instructions and, as there are no component overlays, it can be a little tricky to figure out where each component goes.


The board went together quite smoothly, with just a little head scratching. Clearly there are a few changes since the manual was written but all worked on first power up for me. The kit comes with the lowest frequency coil pre-wound, which makes it easy to test.


In the end the kit all worked and fits into a nice compact case. I made one error in that I reversed pin 1 and 3 in a coil I wound and consequently had trouble getting it to oscillate. It didn't take long to figure out the problem and reverse them.


As well as finding resonance in tuned circuits, this device is a handy small signal generator. The kit isn't cheap - US$100 plus some extra postage to me. My kit came with some spare multi-turn pots for some reason.

Tuesday, October 04, 2022

Flyhal FX1 drone battery hacking

To get a line over high branches here I've been using a cheap but decent drone out of China called a Flyhal FX1. They are about AU$300 but seem to have gone up in price since I purchased.

I've used it quite successfully to inspect the roof and solar panels. The camera isn't great. It's 4K but not very clear. Live video is sent back over Wifi which doesn't have good range but I tend to fly just by eye anyhow.

Here's some video of me using it to raise a line over a tree:


As a result of this activity, the drone has suffered damage from a few heavy landings. One arm broke and has been glued a few times.

Today, for some reason, the battery pack will no longer charge. It has convenient USB-C charging and a set of LEDs to show what it's up to. Now the LEDs just all flash together and it doesn't charge. I pulled the battery pack apart and it seems that the 12V is simply connected to the far left and far right pins so a standard Lipo battery connector was soldered in place.


A 3S battery can be connected and held in place with velcro or rubber bands and the drone appears to power up as normal.


As I write this I haven't flown it yet (the glue on the broken arm is still setting). I'll update this post when I do take it up. Update: It looks like two other pins are needed to measure the battery level. I tried to fly but the controller thinks the drone is flat.

Sunday, October 02, 2022

SDR++ server mode (also using spyserver)

One of the most impressive recent bits of SDR software is the open source SDR++ (often spelt sdrpp).

It's very responsive when used locally, I think it rivals SDR#, and has a very interesting feature called server mode.

Put simply, you get it working with your SDR hardware then run the app on the command line as:

sdrpp -server

Then you run another instance of the app on your network and connect to the sdrpp server. Here's a snippet of it running here:


Over the network is is very responsive (both server and client machines here are connected over Wifi).


Note that the last official release doesn't have this feature in it, you need to get a nightly build.

I've also been using SDR++ as a remote client to an AirSpy HF+ shared with spyserver. This works very well.


I think this is the best macOS SDR client I've used so far. Here's a recording of me tuning around 20m at 17:00 local time. 



Friday, September 30, 2022

QDX is an excellent digital modes transmitter (and very good on receive).

Recently I've been tinkering with antennas here and one of the resonant dipoles I put up is for 20m. I normally run digital modes on the IC-7300 which conveniently connects to a linux computer via a single USB cable but thought I'd get out the QDX again.

The QDX from QRP Labs is an excellent little transceiver for travel or portable operation. It's a bit hard to compare reception as conditions change so frequently but my impression is that it's almost (but not quite) as good as the IC-7300.

What is astonishing is how good the transmit is. On a single 2 minute transmit over just now on 20m I was spotted by 79 stations all over the world.


Here's the graph of spots over a 24 hour period.


The little triangles on the graph are transmit spots. This is a new feature of WSPR Watch that should be in the App Store (free) in a few days.

The reason that QDX transmissions are so well decoded is, I think, because it does direct frequency generation by measuring the audio frequency rather than mixing the audio up to RF. It's a very pure signal.

All over the world on a pocket sized transceiver.


I wrote a small review for the Macedon Ranges Radio club here by the way.

Tuesday, September 27, 2022

Solar K Index display from BOM using ESP32

There is significant solar activity at the moment. This activity changes radio propagation quite a bit for bad and good. One of the measures is called the K Index. I've been having good success with the little TTGO ESP32 + LCD boards and today created some code to fetch and display the K index.


This site has a good explanation which I reproduce here.

The K index is computed once every three hours (eight times a day) and the values can range from 0 to 9, with 0 being inactive, and 9 representing an extreme severe storm condition. The values are quadi-logarithmic.

K = 0 Inactive

K = 1 Very quiet

K = 2 Quiet

K = 3 Unsettled

K = 4 Active

K = 5 Minor storm

K = 6 Major storm

K = 7 Severe storm

K = 8 Very severe storm

K = 9 Extremely severe storm

Also, from here:

"The K-index, and by extension the Planetary K-index, are used to characterize the magnitude of geomagnetic storms. Kp is an excellent indicator of disturbances in the Earth's magnetic field and is used by SWPC to decide whether geomagnetic alerts and warnings need to be issued for users who are affected by these disturbances.

The principal users affected by geomagnetic storms are the electrical power grid, spacecraft operations, users of radio signals that reflect off of or pass through the ionosphere, and observers of the aurora."

To get the current value for Australia, in an easily machine readable form, I turned to our fantastic Space Weather Service of the Bureau of Meteorology. They have an API for this and other data documented here. Note that to use the API you must register with your email address and get an API key to use in requests.

There's not a lot to the code. It is built with the Arduino tool chain and uses the built-in esp32 http library and uses ArduinoJson to extract the figures. 

#include <WiFi.h>

#include <WiFiMulti.h>

#include <HTTPClient.h>

#include <ArduinoJson.h>

#include <ArduinoJson.hpp>

#include <TFT_eSPI.h>

#include <TFT_eWidget.h>

const char *kWifiNetwork = "SSID";

const char *kWifiPassword = "PASSWORD";

const char * API_KEY = "PUT YOUR API KEY HERE";

TFT_eSPI tft = TFT_eSPI();

WiFiMulti wifiMulti;

void setup() {

  Serial.begin(115200);

  while (!Serial) {

    ; // wait for serial port to connect. Needed for native USB port only

  }

  Serial.println("Starting...");

  wifiMulti.addAP(kWifiNetwork, kWifiPassword);

  tft.begin();

  tft.setRotation(3);

  tft.fillScreen(TFT_BLACK);

  tft.drawString("Starting", 10, 10, 4);

}

void loop() {  

// wait for WiFi connection

  if((wifiMulti.run() == WL_CONNECTED)) {

    tft.fillScreen(TFT_BLACK);

    tft.drawString("Connecting", 10, 10, 4);

      HTTPClient http;

      http.begin("https://sws-data.sws.bom.gov.au/api/v1/get-k-index"); //HTTP

      http.addHeader("Content-Type", "application/json");

      String payload = "{\"api_key\": \"" + String(API_KEY) + "\", \"options\": {\"location\": \"Australian region\"}}";

      Serial.println(payload);

      int httpCode = http.POST(payload);

      Serial.println(httpCode);

      // httpCode will be negative on error

      if(httpCode > 0) {

          // HTTP header has been send and Server response header has been handled

          // file found at server

          if(httpCode == HTTP_CODE_OK) {

              String payload = http.getString();

              // https://arduinojson.org

              DynamicJsonDocument doc(1024);

              DeserializationError error = deserializeJson(doc, payload);

              // Test if parsing succeeds.

              if (error) {

                Serial.print(F("deserializeJson() failed: "));

                Serial.println(error.f_str());

                return;

              }

              Serial.println("Deserialised OK");

              Serial.println(payload);              

              long k_index = doc["data"][0]["index"];

              const char*  analysis_time = doc["data"][0]["analysis_time"];

              Serial.printf("K Index = %ld\n", k_index);

              Serial.printf("analysis time = %s\n", analysis_time);

              Serial.println("Serial print OK");

              tft.fillScreen(TFT_BLACK);

              tft.drawString("K Index", 10, 10, 4);

              tft.drawString(String(k_index), 90, 30, 8);

              tft.drawString(analysis_time, 5, 120, 2);

            if (error) {

              Serial.printf("Json error");

            return;

            }


          } else {

            tft.fillScreen(TFT_BLACK);

            tft.drawString("Http error", 10, 10, 4);

            Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());

          }

      http.end();

      }

  }

  delay(200000);

}

It varies during the day and I believe if K hits 5 things start getting serious.




All credit to the good folks at the BOM for making this easy and free to access.

Thursday, September 22, 2022

You can't beat a resonant dipole antenna

I'm a big fan of the Off Centre Fed Dipole. With a 4:1 balun and two lengths of wire you get multiple bands with good resonance. Recently I put up a dipole cut for 40m and could switch between the OCFD and the 40m dipole and it was clear that the dipole performed better.

The weather has been cold here but spring has arrived and I took down the OCFD and replaced it with a dipole cut for 80m. Resonance looks pretty good, if a bit narrow.


I used this dipole on the weekly Macedon Ranges Amateur Radio club net and other stations commented on how good, and improved, my signal was.

The antenna support tree has lots of space to hang baluns so I've now put up dipoles cut for 40m and 20m.


It's quite an effort tuning these antennas. Hoisting up, measuring, trimming, hoisting... but in the end I've got each of the antennas resonant in their bands. 

I use plastic egg insulators and fold the wire ends back and hold them in place with cable ties. This makes it easy to adjust the lengths as required for tuning.


The dead tree is a very handy support.


Getting lines over high branches can be a challenge. Dallas, VK3EB, was a great help with his big squid pole. I've also used a drone and most recently an arborist's throw weight.

Tonight I'm trying out 20m by running WSPR and performance seems excellent.


So far my antennas are all facing East-West and I think the next step is to have some dipoles facing North-South.

I was talking with Stephen, VK2BLQ, about all this and he said "you can't beat a resonant dipole".

Saturday, September 17, 2022

mcHF transceiver shown by David VK3DKR

David, VK3DKR, brought along the compact home built mcHF transceiver to the latest Macedon Ranges Amateur Radio club meeting today.


The radio is impressive and David reports excellent receiver performance and good reports of the transmissions when used on SOTA activations. Here's a brief snippet:


The amazingly good reception with just a clip lead antenna can be explained...

I used a HackRF to record a slab of the 40m band during the recent RD contest on my home antenna and then played back that recording into a whip antenna for David to receive.

Record:

hackrf_transfer -r capture  -f 7037000 -l 40

Play:

hackrf_transfer -t capture -f 7037000 -x 47 -R

On playback, the -x turns up the transmit power and the -R makes it loop when it reaches the end of the IQ recording. Note that the files get big quickly and my recording was over 3GB.

This is a terrific way to demonstrate a receiver when there isn't a good antenna available. 

Incidentally, my sincere thanks to David for thoughtfully bringing along a few J310 FETs which I mentioned on our club net I was waiting for. Very kind of you!

After 90 years who needs the ABC?

My view is that in this age of people getting their news from sites that optimise for engagement over facts, a source like the ABC is more vital than ever as part of a healthy democracy.

It was my pleasure to say a few words about the role of ABC Alumni at an event at Ballarat organised by ABC Friends Victoria.

We cut a beautiful cake, sang happy (90th) birthday and then heard from Matthew Ricketson the co-author if the excellent new book "Who needs the ABC?".

The ABC is under constant attack from the hard right, who think that the free market is the answer to everything and from some commercial media who think that the ABC prevents them from making larger profits.

Ricketson and Mullins' new book is a well researched defence of the ABC that knocks many of the oft-repeated arguments on the head with simple data and logic.

ABC Friends Victoria is a fantastic branch of ABC Friends. It is my pleasure to help them in any way I can.

Sunday, September 11, 2022

Dr Duino Explorer Arduino review

For prototyping new projects where an Arduino is to be connected with common peripherals, the Dr Duino Explorer board looks very useful. It's a good board with lots of useful components but the documentation is infuriating and there are attempts to up sell the purchaser at every step.


As you can see, there's LEDs, buttons, potentiometers, a light dependent resistor, a 128x64 OLED display, a bluetooth interface board, an ultrasonic range sensor (off board) and a row of eight NeoPixel RGB LEDs. Also there's a variable output power regulator.

In contrast to most other Arduino related products, visiting the DrDuino web site does not give you access to the construction or user manual. There is a link called Downloads but it tells you to go back and look in your spam folder for the instructions on how to log in to the site.


To get this basic information you must log in to the "exclusive" portal. Everything is strangely slow. Have you ever seen this on a modern web site?


I had to log in twice and it turns out that the site (Powered by KARTRA) is not compatible with the standard settings in modern browsers including Chrome and Safari. They suggest changing the default settings to re-enable third party cookies.

To be fair, the instructions are very detailed. What I found frustrating is that you have to step through them on the web site, one screen at a time. You are prevented from, for example, accessing the schematic until you've gone through every page up to that point.

In the end I visited each page and copied the content into a document which I could read on a tablet while constructing.

At several points during the construction DrDuino tries to sell you things such as PCB holder and side cutters with:

And... because you're a Dr.Duino customer, NO FULL PRICE FOR YOU!

There is a library to go with the board but I couldn't find it. It's not in the downloads area. Dr Duino happily uses libraries made by Adafruit but declines to share any work they've done with others. This seems counter to the norms of open source.

Anyhow, I don't want to be too negative. The board is good quality and has handy features on it. Construction went well for me and the OLED display and NeoPixel strip worked with the Adafruit libraries' examples unmodified.

Incidentally, I notice that despite all the security theatre, the link to the schematic seems to work even if you aren't logged in. Duh. 

Nuts and Volts has a good review that is quite informative - better in fact that Dr Duino's own documentation.

Guido, if you're listening, here are my suggestions to improve this product:

  • Make a single document manual that people can freely download. 
  • Put your "library" code up on GitHub (I'm pretty sure open source licenses you're using require this anyhow).
  • Sack Kartra unless they can get their authentication to work with default settings in Chrome and Safari.
  • Sack Kartra for stuffing up basic security on things like access to the schematic.
  • Don't assume users are running Microsoft Windows.
  • Tone down the "NO FULL PRICE FOR YOU" stuff.
  • The Arduino UNO clone supplied does not work out of the box on Ubuntu 22.04 by the way but there are solutions out there to fix this. (The serial chip collides with a brail device).

Saturday, September 03, 2022

WTF Adobe - so many processes!

My wife had to install Adobe Acrobat on a shared Mac for her Uni work and I'm astonished at all of the processes this has added to the system. 

Adobe CEF Helper (GPU)

Adobe CEF Helper (Renderer)

AdobelPCBroker

AdobeCRDaemon

AdobeCRDaemon

AdobeCRDaemon

AdobeCRDaemon

Adobe Desktop Service

Adobe CEF Helper (Renderer)

Adobe CEF Helper

com.adobe.acc.installer.v2

Adobe Desktop Service Networking

CCXProcess

CCLibrary

Creative Cloud

Creative Cloud Helper

Creative Cloud Helper

Creative Cloud Helper Networking

Creative Cloud Networking

Creative Cloud Helper Networking

Core Sync

Core Sync Helper

My guess is that there's even more that I didn't recognise in Activity Monitor. The processes seem mostly idle but it's hard to understand why they are all required for something that just views and does some proprietary editing of PDF documents.

Most annoying is that in my account I now have a menubar button (no, it's not a menu) that if clicked asks me to log in to Creative Cloud. I hate you Adobe.


Friday, September 02, 2022

ESP32 with 2.8 inch LCD display

I wrote recently about a little ESP32 board with a tiny LCD display from Lilygo that worked "out of the box" for me.

Another board from AliExpress, with a larger 2.8 inch display, gave me a lot of trouble before I got it going.

Described as "ESP32 Arduino LVGL WIFI&Bluetooth Development Board 2.8" 240*320 Smart Display Screen 2.8inch LCD TFT Module With Touch WROOM"

The board has an ILI9341 display board bonded to the PCB and connected via an SPI interface.

After trying all sorts of combinations of pins for the SPI interface, and having the screen remain dark, I shone a torch obliquely at the screen and found that it was working fine but without the backlight was not visible.

Switching to MicroPython makes experimenting a bit easier. I used this ili9341 python library and with the generous help of the author rdagger, figured out that the backlight is connected to GPIO pin 21.

Here's how I set it up for drawing:

from ili9341 import Display

from machine import Pin, SPI

Pin(21, Pin.OUT).on()

spi = SPI(1, baudrate=40000000, sck=Pin(14), mosi=Pin(13))

display = Display(spi, dc=Pin(2), cs=Pin(15), rst=Pin(12))

display.draw_text8x8(0, 0, 'Built-in', color565(255, 0, 255))

As mentioned in other posts, I'm currently using these things to monitor solar power generation so I can time the use of high energy appliances with the sun hitting the panels here. A device like this, that can use internet services has all sorts of applications and a larger screen could be handy.

Tuesday, August 30, 2022

Creality Ender 3 v2 3D printer with just enough Blender

My sister Jane once asked for a horse because "everyone in her class has a horse". 

Sometimes it feels that way with 3D printers. Several people have recommended the Creality Ender-3 printer as a good starter model. I ordered the Ender-3 v2 and paid AU$360. (Excellent value).

What arrived was a well packed kit. The base is already put together but you need to do the rest.


They do supply everything including tools such as hex keys, screwdriver, spanners and even side-cutters (which are used to cut filament). I was a bit daunted by the process but took my time and it came together.

STL files can be loaded from a micro-SD card. They supply a card but my printer wouldn't read it for some reason. I formatted another card FAT32 and that worked fine. I was unsure that I'd got the base level enough but my first print, the Chinese cat you see below came out impressively well:

As you can see from my early prints here, my first use for a 3D printer is to make tuning knobs for radios. (Oh, and toys for the grandson).

There are many pre-made models ready to slice and print at Thingaverse, Thangs, Printables and others but I want to be able to design my own.

I scanned my face with the iOS app "3d Scanner App", exported to STL, imported in to Blender to tidy up and printed it:

Blender

Blender is open source software that works well on Linux, macOS, and yes, even Windows I hear.

It is amazing and capable of high quality 3D rendering and animation. Much more than I need.

Just enough Blender skills took a few days but now I can add objects, size them and punch holes in them with other objects. The trick here is to use a boolean between the main shape and the shape that will be the hole.


There are many videos on how to do things in Blender but I found the official tutorial from the BlenderFoundation YouTube channel was excellent.

The trick to making holes in objects is shown in this video on booleans.

Blender can export to STL or OBJ. I use the Creality slicer to produce gcode for the printer.

So far, my only failed print was a Millennium Falcon model that had a large overhang and ended up as a pile of hair. I have a great deal to learn but it is amazing technology.

Lilygo TTGO ESP32 board draws a graph of power from Enphase solar

Little "Arduino" projects around here often require a display and connection to the internet. ESP32 based boards are an obvious choice but which one? There are lots about but often the documentation is difficult to use and may be only available in Chinese.

I've found a board that has the features I need and has excellent documentation. Mine come from AliExpress stores and sell for about $15.

My latest project draws a nice graph of our solar generation and power consumption.


No credit is due to me, I'm just using the excellent work of others. My code is here.

Briefly, it pulls JSON data from the web server in the Enphase solar controller and keeps two arrays of past values which it plots.

The Arduino IDE version 2 is getting really good and I notice it now has a debugger but it only works with a few ARM based boards. I have ordered an Arduino Zero to try it out.

I had some errors in my maths (which is pretty terrible) and it takes a long time to debug if you have to print to serial, build and download, run to see what it says. The debugger allows setting breakpoints and inspecting variables.

One thing I find odd about the Arduino IDE is that it builds every time, even if I haven't edited a file. If I build to check syntax and then click Run it builds again. Surely they are using make or CMake which would compare the built binary's modification date with the source code and only compile the files that have changed?

Monday, August 15, 2022

Experimental remote operation of an IC-705

I founds some wonderful macOS SwiftUI code by Mark Erbaugh that implements the Icom remote access code. He's got the basics going and I've enhanced it just a bit with tuning controls and mode buttons. Today I managed to port it to iOS. Here's a video showing the basics.


My enhancements to the macOS version are here.

Mark's version is here.

He builds on top of Kappanhang here and WFView here.

Open source software is a wonderful thing.


Friday, July 29, 2022

New open source SDR available from HFSignals - sBitx

I've been following the progress of an open source SDR transceiver, the T41-EP, from Albert Peter and Jack Purdum for some time. It's a great contribution but the author's understanding of how open source normally works is a little unusual.

By contrast, Ashhar Farhan, VU2ESE, of HFSignals, exemplifies best practice. 

HFSignals new SDR transceiver, the sBitx, is available to early adopters. The radio has a large graphical touch screen that shows a waterfall. Inside there is a standard Raspberry Pi which is set up as the software development environment - great idea!

Here's my video of unboxing the sBitx, tuning around and having a not great first contact.


Later, on a different (more resonant) antenna, I did not have RF feedback trouble. It might be that the SWR is quite critical. The operation manual says "At times, with high enough gain and high SWR, RF can get into the mic and cause self-oscillations. Monitor the modulation on the display if you are setting the mic above 50 to be sure that it doesn’t happen."

"The sBitx is a 40 watts, fully open source, high performance HF SDR transceiver with in-built popular modes like the FT8, RTTY, PSK31, etc."

Design paper.

The source code and circuit diagrams are here on GitHub.

Operating manual.

Assembly manual.





There is discussion about the sBitx in the Bitx20 group (which should probably be re-named).

Having a computer inside that can be internet connected opens up all sorts of interesting possibilities for this platform.

Update

Since the original unboxing video, where audio stopped, I have updated the software to 1.1 and that problem hasn't re-occurred.

On the RF feedback... I was using my off centre fed dipole. Reading the ARRL Handbook I saw that command mode suppression on the feed line is "essential". This has now been added. I guess my normal (commercial) radio is more forgiving.

Wednesday, July 27, 2022

QDX with Fldigi on Ubuntu 22.04

The QDX works brilliantly with WSJT-X but I have struggled to get it working with Fldigi on Linux.

I'm pleased to report that I just had an Olivia 8/250 contact over a distance of 732km with VK2BLQ using Fldigi on Ubuntu 22.04.

Thanks to KJ7LVZ for the tip to install Pulse Audio Volume Control (from the Ubuntu App Store). That let me adjust and monitor send and receive audio levels.

In Fldigi I set the audio devices both to "pulse".

In the QDX settings I set the audio cycles to 1 (down from 480) as suggested by G3SPL. The larger number of samples is fine for slow changing modes like WSPR or FT8 but not good for fast modes like Olivia. Also I increased the receive gain to 75, up from 60 (I think), so I could see something on the waterfall in Fldigi.


Here's the Pulse Audio Volume Control window:


While I'm here, I've been using `screen /dev/ttyACM0` to configure the QDX but it's difficult to send ^Q as that's used for XON/XOFF. The trick is to type ^AQ. Hans, it might be good if there was another key to exit a menu than ^Q as I think many serial terminals might use ^Q for flow control.