MM9SQL's Station Diary

Notes from my ham radio adventures

DXChrono Desktop: Smooth Maps and Logbook Links


It’s been a busy week in the shack, or rather, behind the monitor getting the latest stable version of DXChrono Desktop ready for out the door. I’ve spent a fair bit of time "under the bonnet" on this one, focusing on making the map feel a lot more fluid and adding some of the integration features people have been asking for.

The biggest change is the map itself. You can now zoom in and out using the mouse wheel and drag the world around to see where the greyline is heading. I’ve also tweaked the Maidenhead grid squares; as you zoom in for local work, it’ll now pop up the 4-character squares (like IO87) automatically. It makes the whole experience feel much more interactive when you’re hunting for that next multiplier.

I’ve also added a couple of new logbook options. You can now link your QRZ.com logbook directly, so your recent contacts show up as markers on the map alongside Cloudlog. For those who prefer to keep things offline, there’s now support for local .adif files too.

Other bits and bobs in this release:

  • Watch List: A new widget where you can keep an eye on specific callsigns. If they pop up on the Cluster or PSK Reporter, you’ll see them in their own dedicated panel.
  • PSK Reporter: Added some quick-switch buttons so you can toggle between "who hears me" and "who I hear" without digging through settings.
  • Fixes: Sorted out some oddities with great-circle lines crossing the poles and made sure the Aurora overlay stays pinned where it should be when you’re zooming about.

Going forward, the plan is to settle into a bit of a routine with a new stable release every Wednesday. It keeps the momentum going and means I can get fixes out to you lot a bit faster.

As always, you’ll need to download the new version from the website, extract it, and overwrite your old file. Just make sure you keep your config.yaml so you don't lose all your setup and API keys!

You can grab the update here: https://desktop.dxchrono.com

Full technical notes are over on the Changelog, or just hit the 'I' key in-app to see the new About box.

DXChrono Desktop - Launched


After 2 months of development, I put DXChrono Desktop live and available for purchase today, which kicked my anxiety into high gear. But after some long testing with GM1TGY & GW4VXE, I felt it was ready for prime time, with landing pages built, Stripe set up as I decided to charge for it, and a custom-built licensing system on the work CRMs backend.

DXChrono Desktop brings all the features of the web version to the desktop, with better graphics, dx cluster, psk reporter integration, satellite tracking, and a ton more, all for a one-off fee of £15.00

If you're interested, you can find out more at https://desktop.dxchrono.com

RSGB FT4 Activity Day


Results are out, we came third!

QSO Summary
QSO Summary

Last weekend was the RSGB FT4 Activity Day Contest (it ran over two days). This year, GM1TGY, as GM5G, took part running in the Multi-op two-radio category. This meant the main Kenwood TS890S had all the antennas and ran a Kenwood TS990 all the time on 40m.

Conditions on the higher bands were poor. 15/10m on Saturday never really opened, but 20m and lower were okay, though there were periods when we had just run out of people to work, so maybe a little more activity would have been nice. Sunday morning, however, was very busy towards Asia (Japan, China, Australia) on both 20m & 15m, and that kept us going along with 40m European stations until the end.

We did find that activity on 160m seemed low. I'm not sure if that was conditions, the times we went on the band, or some other unknown reason, but we could have done a lot better numbers-wise there.

Plotted QSOS
Plotted QSOS

DXChrono Desktop on the Raspberry Pi functional


DX Chrono Desktop Running on Raspberry PI 5
DX Chrono Desktop Running on Raspberry PI 5

I have been struggling a bit with Pygame on my Raspberry Pi 5 running Wayland, but last night I finally fixed the last couple of bugs, mostly related to the day/night terminator overlay and I have to say its working really well, currently running it in my shack and also on the shack tv at Charlie GM1TGYs so we shall test for a few days just to make sure its good before we start looking at public release

Cloudlog Dev Update – Widgets, DX Improvements & Lots of Polish


Been a fairly productive few days on the Cloudlog dev branch, mostly focused on performance, usability, and a few long-overdue features.

On Air Widgets (Finally)

One of the nicer additions this week is a proper embeddable “on air” status.

There are now two options:

  • /widgets/on_air/YOURCALL → iframe-style widget
  • /widgets/on_air_image/YOURCALL → SVG badge

The SVG version is probably the most useful. It’s lightweight, updates automatically, and can be dropped into QRZ pages, blogs, or wherever.

It shows:

  • ON AIR / QRT
  • Frequency + mode (or SAT if applicable)

Also spent a bit of time making sure it behaves nicely:

  • Sensible caching (not too aggressive)
  • Dynamic sizing so it doesn’t look awful with longer text
  • Proper sanitisation so nothing explodes in SVG land

DX Highlighting – Much Smarter Now

This has been bugging me for a while.

Previously, Cloudlog would only highlight DX properly if the distance was already stored, which meant perfectly valid QSOs could get ignored.

That’s now fixed.

We now:

  • Fall back to gridsquares (and VUCC grids)
  • Calculate the distance if it’s missing
  • Pick the actual furthest QSO rather than “first one that matches”

Result: more accurate DX highlighting without relying on perfect data.

DX Cluster Improvements

Quite a bit of work went into the cluster side, too.

UI & Behaviour

  • Status is now a proper badge (instead of boring text)
  • Handles connection states better (connecting, reconnecting, etc.)
  • Tooltips now actually make sense

Filtering

  • Added mode filter
  • Added “New DXCC” filter
  • Improved how spots are held until worked status is known

RBN Fixes

Tightened up RBN detection so it stops misclassifying random spots as skimmers.

(That regex was… optimistic.)

Track Band

New option to track the radio band automatically, or turn it off if you prefer manual control.

DX Cluster in the QSO Screen

This is probably the biggest user-facing change.

You can now enable a DX Cluster tab directly inside the QSO interface.

  • Live WebSocket feed
  • Click a spot → fills the QSO form
  • Optional auto-QSY to your radio

It basically removes the need to bounce between pages.

QSO Form – Faster & Less Chatty

Moved a bunch of calculations client-side:

  • Distance
  • Bearing
  • Locator handling

This removes a load of AJAX calls and makes the form feel much more responsive.

Same logic as before, just running in the browser now.

FT8 / FT4 + Band Logic

Updated frequency lists and tightened up band/mode detection.

Should now be a lot more accurate when Cloudlog tries to guess:

  • Mode from frequency
  • Correct band segments

Particularly noticeable on VHF/UHF and some of the edge cases.

General UI / QoL

A mix of smaller improvements:

  • Pagination no longer resets every time the table redraws (finally…)
  • Per-user control over QSO fields & tabs
  • Cleaner contest UI with stats
  • Better handling of manual mode input
  • Fewer JS errors when things aren’t initialised properly

Under the Hood

Bit of housekeeping too:

  • Centralised DXCC checks (less duplication)
  • Removed some questionable direct $_GET usage
  • Reduced unnecessary redraws and DOM work
  • General performance tweaks across the board

Final Thoughts

This release isn’t about one big flashy feature — it’s more about:

  • Making things faster
  • Making things more accurate
  • And removing a bunch of small annoyances

The dev branch is looking pretty solid now, so aiming to get this rolled into a stable release soon™.

More tweaks incoming as always.

BARTG HF RTTY Contest


Last weekend saw the annual BARTG RTTY Contest. Like last year, I took part with Charlie GM1TGY operating as GM5G in the M/S High Power category, one radio. In the same category last year, we came #3, so I had some hope that we might have been able to improve on that, but it wasn't to be.

2 am Saturday, and on the shack's TV running DXChrono, I could see that the aurora was pretty much sitting on top of us. The result was that 80/40m was really slow going. I think most of the night we were on 80m.

Plot of all the QSOs
Plot of all the QSOs

We knew Saturday morning we would have to go QRT as we had just replaced the SPID RAK rotator that turns the EAntenna 59+. It was, for some reason, binding, so tower over. Found the issue: a jubilee clamp was getting caught, stopping full rotation (doh). So we made some modifications and got back on the air around 16:00z. I was optimistic that 15/10m would be open, but the aurora hadn't really shifted. Hence, I ended up sitting on 20m running with a very good rate, but as night drew in and the aurora conditions dived again.

In the end we had run out of people to work around 01:00z so decided to call it and get some sleep rather than work nothing however we was back on air before sunrise around 06:00z the rate however was slow and it was just a matter of jumping between 20/40m looking for QSOs when the rates dropped 15m opened up briefly on Sunday and on 10m I worked just 3V8LL.

As Sunday afternoon progressed, conditions worsened, with more auroral flutter and distorted signals, followed by periods of the bands just going totally dead with no signals to be seen. It stayed in this pattern up until the very end.

That said, the shack was working perfectly, using a Kenwood TS890S (FSK keying), Gemini 1200 amp and our usual selection of antennas

  • EAntenna 59+ (20-10m)
  • 2el Phase for 40m
  • 40m Dipole
  • 80m Quarter-wave Vertical
  • 80m Dipole
  • K9AY for RX

We finished the contest early at midnight after running out of callers, spent over 40 minutes on 80m calling CQ to myself, but we ended up with 534 QSOs, not including Dupes.

Contest Summary
Contest Summary

Maybe next year will be better

Contest lead up


Surprisingly, I managed to get a few solid hours of sleep last night, which should mean I won't feel so shattered during the 2am start of the BARTG Contest on Saturday morning. This morning, I've been putting together contest cheat sheets that Charlie GM1TGY and I use at every event, which include a breakdown of the important rules and last year's results. I'm not keen on the forecast for Aurora activity over the next couple of nights; it could lead to very slow rates and fluttery signals. However, perhaps big antennas and plenty of power will save us.

Thursday activity


It's been surprisingly nice weather in North East Scotland today, although it's only 13°C and we've had bright sunshine. I did, however, notice that hayfever season has started, but it made for a very pleasant walk around the village at lunchtime.

I didn't manage to get on the air until the afternoon when I spotted a Telegram message from Peter G0ABI saying he was doing a POTA on RS-44 in GB-4846. I worked him, plus a few others, then tried SO-50 just before dinner, working F4BFX for the very first time; it's always fun to work a new station.


Total QSOs
8
DXCC
7
Bands
2m
Modes
FM, LSB
Highlight DX:
CN8UN Morocco 2611 km
View QSO List
Date/Time Call Band Mode Country Grid
Expand to load QSO list...

Mid week already and only 1 QSO


It's been one of those weeks where you feel like you have been chasing your tail and not much is getting done; however, it has been reasonably productive. Work-wise, I have been trying to get a client's website finished, ready for launch at the end of March, but at the same time, I have been getting DX Chrono finalised

I've added a dedicated Special Event Station mode with custom features, added N1MM+ support so you can plot contest or DXPedition QSOs in real time, and fixed quite a few macOS bugs. Alongside that, I have been getting the website and documentation ready. I have decided to sell DXChrono Desktop for a one-off fee. I suspect some won't mind, and others will be livid that it's not open source and free, but it will help with the running contests of some of the background services and also helps me buy Molly pup more treats (She has an expensive jumper habit!).

Cloudlog-wise, not a huge amount has changed. Public Diaries have been well received, and today I fixed an issue with eQSL importing, as since I introduced batch importing to speed things up i broke a few things in the process, oops!

Thankfully managed 1 QSO RS-44 this evening, was hoping for some North America on this pass, but only heard two guys having a ragchew, also picked up 2 more on FO-29. However, I am looking forward to taking part in the BARTG RTTY Contest this weekend, especially after missing the ARRL DX SSB after ending up in the hospital.


Total QSOs
3
DXCC
3
Bands
2m
Modes
LSB
Highlight DX:
EB5KT Spain 2035 km
View QSO List
Date/Time Call Band Mode Country Grid
Expand to load QSO list...

Ten-Kon2 released into orbit


Ten-Koh2 was finally released into orbit today, so I have added that to the OscarWatch TLE set at https://tle.oscarwatch.org/amsattwolines.txt

Doppler.SQF line to save the endless asking, which will start soon as it's turned on

TEN-KOH2,435895,145915,USB,LSB,REV,0,0,SSB Transponder

I believe it's just in CW beacon mode for now, so we will have to be patient before we can make QSOs via it

Fairly quiet Wednesday for me, we had some stormy winds overnight but no antenna damage, managed to walk Molly pup around the village in the dry but its been pretty wet this afternoon.

Before lunch, I fixed a bug in Cloudlogs automatic satellite status reporting to AMSAT-Status since they recently changed all the naming, hopefully that won't need doing again. I think Cloudlog is almost stable enough for a release on Friday

RS-44 was quite lively at 14:30 I managed to work HZ1BL, 4L1AX, ER1KW which was a nice surprise, I always do far better working west than east from here.


Total QSOs
9
DXCC
8
Bands
2m
Modes
LSB
Highlight DX:
HZ1BL Saudi Arabia 5423 km
View QSO List
Date/Time Call Band Mode Country Grid
Expand to load QSO list...