fix(tci): send the sensor subscription in both cases

Two rounds of fixes and the SunSDR's meters are still silent. The one remaining
difference from the protocol document is the case: its examples read
TX_SENSORS_ENABLE:true,200; and ours went out lower-case. Every other command
works lower-case, but nothing proves this newer path does — a case-insensitive
server ignores the duplicate, a sensitive one finally hears it.
This commit is contained in:
2026-08-28 22:54:44 +02:00
parent 8acfda4e42
commit e4828482c4
+8 -1
View File
@@ -466,9 +466,16 @@ func (t *TCI) SetTXAudioSource(src string) {
// "ready", because a subscription sent during the server's initial dump can be // "ready", because a subscription sent during the server's initial dump can be
// dropped. 200 ms is the rate the protocol's own examples use. // dropped. 200 ms is the rate the protocol's own examples use.
func (t *TCI) subscribeSensors(when string) { func (t *TCI) subscribeSensors(when string) {
// Both cases, deliberately. Every other command this backend sends works in
// lower case, but the meters stayed silent on a real SunSDR through two
// rounds of fixes — and the protocol document's own examples are upper case
// (TX_SENSORS_ENABLE:true,200;). A server that is case-insensitive ignores
// the duplicate; one that is not finally hears the subscription.
e1 := t.send("rx_sensors_enable:true,200;") e1 := t.send("rx_sensors_enable:true,200;")
e2 := t.send("tx_sensors_enable:true,200;") e2 := t.send("tx_sensors_enable:true,200;")
debugLog.Printf("TCI: sensor subscription sent (%s): rx=%v tx=%v", when, e1, e2) _ = t.send("RX_SENSORS_ENABLE:true,200;")
_ = t.send("TX_SENSORS_ENABLE:true,200;")
debugLog.Printf("TCI: sensor subscription sent (%s, both cases): rx=%v tx=%v", when, e1, e2)
} }
func (t *TCI) send(cmd string) error { func (t *TCI) send(cmd string) error {