Native JS8 now decodes reliably off the air, and it gains a complete operating panel — band activity, a waterfall with meters, a real heartbeat control, quiet-spot TX, and clear "where am I in this transmission" feedback. Plus a Windows install fix that was forcing some machines to reboot mid-update.
📻 JS8 now receives
The native JS8 decoder is now anchored to the UTC period boundary, so it actually decodes signals off the air. Earlier builds could transmit fine (and show up on PSKReporter) but decoded nothing — the receive window drifted free of the :00/:15/:30/:45 slot boundaries and synced on nothing. Fixed: JS8 hears the band.
🎛️ A full JS8 operating panel
- Opens on the right band. Starting JS8 now tunes to a JS8 calling frequency — 20m by day, 40m at night (grid-accurate) — instead of sitting on whatever the dial happened to be.
- Heartbeat, split in two. HB sends one heartbeat now, every press; Auto runs the repeating scheduler (attended, with a 30-minute watchdog). Pressing HB confirms the enqueue and the TX badge shows it.
- Band activity view. The center pane shows every decode on the band — directed-to-you traffic highlighted — so a busy band no longer looks like an empty screen. Open a conversation and it becomes that transcript; a "Band" button takes you back.
- Waterfall + meters. A live waterfall with RX/TX offset markers (click to set your TX offset), an S-meter, and an SWR bar, plus an RX-gain slider that doubles as waterfall brightness. Don't want it? A "Hide waterfall" toggle, remembered across sessions.
- Quiet-spot TX. CQ and heartbeat automatically move to the clearest part of the passband before keying, so you don't call on top of someone — the same courtesy FT8 already does. Click the waterfall to pin your own offset instead.
- See your transmission progress. A multi-frame JS8 message now shows "TX 1/3 … 2/3 … 3/3" so a long message doesn't just keep keying with no sense of how far along it is.
- SWR guard you can see. If a bad match aborts a transmission, the JS8 window shows a clear error with a Run ATU button instead of TX silently dying. The main window's TX badge now reads "JS8 TX" (not "JTCAT TX") while you're on JS8.
- Clock-drift warning. JS8 is time-locked, so an off PC clock silently kills decodes — the window now warns when your clock drifts, with one-click resync.
🪵 Logging
JS8 QSOs log correctly as ADIF MODE=MFSK / SUBMODE=JS8 (the form LoTW and QRZ accept), with SNR reports and the times the exchange actually happened. Log a whole conversation from the thread with one click.
🛠️ Reliability
- Windows: no more reboot mid-install. Some machines were forced to reboot partway through an update. A running background helper (the Cloud Tunnel's cloudflared) could hold a file in the install folder locked while the installer tried to replace it. POTACAT now shuts that helper down and waits for it to release before handing off to the installer.
🍎 macOS
macOS is still a manual download for now — grab the latest DMG from this release. Signed builds with automatic updates are coming in an upcoming release.