fix(catshare): stop FT8 dial drift in shared CAT (rigctld freq echo)
A digital app (JTDX/WSJT-X) sharing OpsLog's rig in "Fake It" split follows the dial by polling get_freq. Freq() is the last polled value and lags a set_freq by a poll cycle, so right after a transmission the client read the still-shifted frequency, mistook it for a manual QSY and adopted it — the dial crept down every over and never came back. get_freq now echoes the last commanded frequency until the rig confirms it (or a short deadline passes), closing the race. Backend-agnostic, so it fixes every rig, not just Kenwood.
This commit is contained in:
@@ -1,4 +1,14 @@
|
||||
[
|
||||
{
|
||||
"version": "0.23.5",
|
||||
"date": "",
|
||||
"en": [
|
||||
"CAT sharing (Hamlib rigctld): fixed a slow frequency drift in FT8. With a digital app (JTDX/WSJT-X) sharing OpsLog's rig in \"Fake It\" split, each transmit crept the dial down and never came back. The app follows the dial by polling, and our reply lagged the last tune by a poll cycle, so right after a transmission it read the still-shifted frequency, took it for a manual QSY and adopted it. Reads now echo the last commanded frequency until the rig confirms it — the dial holds. Applies to every backend, not just Kenwood."
|
||||
],
|
||||
"fr": [
|
||||
"Partage CAT (rigctld Hamlib) : dérive lente de fréquence en FT8 corrigée. Avec une app numérique (JTDX/WSJT-X) partageant la radio d'OpsLog en split « Fake It », chaque passage en émission faisait descendre le VFO sans jamais revenir. L'app suit le VFO en l'interrogeant, et notre réponse était en retard d'un cycle sur la dernière syntonisation : juste après une émission elle lisait la fréquence encore décalée, la prenait pour un QSY manuel et l'adoptait. Les lectures renvoient désormais la dernière fréquence commandée jusqu'à confirmation de la radio — le VFO tient. Vaut pour tous les backends, pas seulement Kenwood."
|
||||
]
|
||||
},
|
||||
{
|
||||
"version": "0.23.4",
|
||||
"date": "",
|
||||
|
||||
Reference in New Issue
Block a user