Releases: SOTAmat/SOTAcat
Releases · SOTAmat/SOTAcat
v260215.1853
Highlights
This is the first GitHub-hosted release of SOTAcat firmware, covering all development since the project's inception. The firmware has evolved from a basic KX2/KX3 CAT controller into a full-featured SOTA/POTA activation and chasing companion.
Major Features
Multi-Radio Support
- KH1 support — full driver abstraction for the Elecraft KH1, including CW keyer and volume control
- Radio driver refactoring — clean driver interface supporting KX2, KX3, and KH1 with per-radio capabilities
- ATU tune button with KX2/KX3 auto-detection
Completely Redesigned Web UI
- Tab-based interface — SOTA spots, POTA spots, Chase, Spot (RUN), QRX, Settings, and About pages
- Mobile-first touch design with high-contrast layout optimized for field use
- Click-to-edit VFO frequency display with band-colored frequency column
- Chase page — unified SOTA/POTA chasing with mode/band filters, SSB+CW combo filter, compact mode, smart auto-refresh, sorted columns, frozen headers, and own-spots pinned to top
- RUN (Spot) page — CW macro buttons, SMS spotting, PoLo deep links, TX toggle, callsign/macro loading
- QRX page — radio setup utilities, activation reference section, nearest-SOTA button, reference auto-formatting, Setup PoLo Operation button
- WebSDR/KiwiSDR integration — tune both your radio and a WebSDR simultaneously
- Connection loss detection with overlay UI
- VFO license privilege indicators (T/G/E) with Novice and Advanced class support
Note: PoLo deep-link features (Setup PoLo Operation, PoLo buttons on Chase/Spot pages) require a forthcoming update to Ham2K PoLo that is not yet released.
Networking & WiFi
- Three WiFi SSIDs — connect to up to three access points (e.g., home, Android hotspot, iPhone hotspot)
- Parallel AP + STA mode — SOTAcat runs its own access point while simultaneously connecting to a hotspot
- mDNS in both AP and STA modes for reliable
sotacat.localdiscovery - Per-STA IP pinning — stable .200 IP address on hotspot connections
- WiFi RSSI indicator in the UI replacing battery voltage display
- Disabled WiFi aggregation to resolve ADDBA errors with Android hotspots
- Gzip compression for web assets, reducing transfer sizes
OTA & Firmware Updates
- Over-the-air firmware updates — upload new firmware via the web UI without USB
- Automatic version checking against GitHub Releases
- ESP Web Tools support — one-click browser-based flashing via merged binary
FT8
- FT8 power readback verification on KX radios
- Improved FT8 timing and watchdog handling (increased timeout 5s → 20s)
- Quicker abort of in-progress FT8 sessions
CW Keyer
- CW macro buttons with configurable messages
- KH1 CW keyer support with full ASCII-to-Morse conversion
- Visual feedback for valid/invalid keyer text length
GPS & Location
- Browser geolocation via HTTPS bridge for GitHub Pages
- GPS persistence in localStorage and NVRAM
- Locality display via OpenStreetMap geocoding
- Location override — manually set your apparent location
Spot Management
- SMS spotting from the Spot page
- QRT spot handling — flag QRT in SOTA, filter QRT from chase by default
- Spot caching in localStorage for offline access
- Mode filtering — SSB, CW, FM, AM, data modes with combo filters
- Band filter toggle on chase page
- Selectable refresh rates with smart auto-refresh
- Distance column in SOTA/POTA lists
- ZLOTA reference links in chase table
Settings & Configuration
- Persistent settings via NVS (non-volatile storage)
- Radio clock sync button
- WiFi help popup with setup guidance
- Password visibility toggle (eye icon)
- Callsign setting via web UI
- Save & Reboot button for WiFi changes
Hardware Support
- K5EM custom PCB support (hardware rev 0.3)
- MAX17260 battery monitor with smart battery info (voltage, current, state of charge)
- Battery charging indicator in UI
- Inactivity auto-shutdown with configurable threshold
Developer Experience
- Makefile for common build/upload/test/release tasks
- Integration test suite with Python
- Playwright UI test suite with mock API server for offline development
make github-releasetarget for automated release creation- Firmware version checks via GitHub Releases API
New Contributors
- @poynting made their first contribution in #27
- @frye made their first contribution in #64
- @flymustangs contributed KH1 keyer and volume support
Full Changelog: https://github.com/SOTAmat/SOTAcat/commits/v260215.1853