feat(icom): a DATA button, native PSK, real watts — and the audio codec

The console gains a DATA mode button (USB-D, what FT8 and friends ride on);
the PSK button now maps to the rigs' native PSK mode (0x12) instead of erroring
as an unknown mode — rigs without one NAK it, exactly as RS-BA1's button does
there. The power meter shows real watts on the IC-7760, whose meter face runs
to 250 W where a 100 W rig's percentage was the watts. The clickable S-meter
gets a pointer cursor so it looks like what it is.

Network audio: rxcodec 0x04 — the experiments on the real 7760 settle the
codec table (0x10 = 16-bit stereo, 0x02 = 8-bit mono, both heard as garble),
and 0x04 is the 16-bit mono the playback path actually plays.
This commit is contained in:
2026-08-29 15:48:26 +02:00
parent bd2edf6624
commit ffbbff80d6
5 changed files with 34 additions and 12 deletions
+4
View File
@@ -131,6 +131,8 @@ const (
ModeFM = 0x05
ModeCWR = 0x07
ModeRTTYR = 0x08
ModePSK = 0x12 // native PSK (IC-7610/7760/7851 class; older rigs NAK it)
ModePSKR = 0x13
)
// Frame builds a complete CI-V frame (preamble … end) for payload, which is the
@@ -306,6 +308,8 @@ func ModeToADIF(m byte, data bool) string {
return "CW"
case ModeRTTY, ModeRTTYR:
return "RTTY"
case ModePSK, ModePSKR:
return "PSK31"
case ModeAM:
return "AM"
case ModeFM: