(BUG) Rotator Control Disengaging Due To Error Counter
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 22/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- c
- 领域
- desktop-dev
调研方向
Start with rot_ctrl_timeout_cb and the MAX_ERROR_COUNT check, then trace how gtk-rot-ctrl.c returns false from set_pos and get_pos on RPRT -5 errors. The reporter links commit b56d77d as the likely cause. Reproducing needs a rotctld or Yaesu GS-232B setup, so a simulated rotator is the practical route. Done means either the error counter no longer disengages intermittent timeouts, or a user option to disable auto-disconnect exists and is documented.
由索引模型根据 Issue 内容生成。
描述
Gpredict: 2.3
OS: Ubuntu 16.04.4 LTS
Rotator Control: Yarsu G-5500 az-el rotator with the Yaesu GS-232B PC interface
Hi All,
We've noticed a bug where the engage button does not remain selected when trying to connect to use the rot controller. When using version 2.2.1, we see the following in the error log:
2022/07/19 13:44:58|3|sat_log_init: Session started
2022/07/19 13:44:58|4|sat_cfg_load: Everything OK.
2022/07/19 13:45:29|1|gtk-rot-ctrl.c:386: rotctld returned error -5 with az 92.963905 el 0.000000(RPRT -5)
2022/07/19 13:45:33|1|gtk-rot-ctrl.c:386: rotctld returned error -5 with az 92.963905 el 0.000000(RPRT -5)
2022/07/19 13:45:36|1|gtk-rot-ctrl.c:386: rotctld returned error -5 with az 92.963905 el 0.000000(RPRT -5)
2022/07/19 13:45:40|1|gtk-rot-ctrl.c:386: rotctld returned error -5 with az 92.963905 el 0.000000(RPRT -5)
2022/07/19 13:45:44|1|gtk-rot-ctrl.c:386: rotctld returned error -5 with az 92.963905 el 0.000000(RPRT -5)
However, when using a newer version, we see the following:
2022/07/19 13:48:52|3|sat_log_init: Session started
2022/07/19 13:48:52|4|sat_cfg_load: Everything OK.
2022/07/19 13:49:19|1|gtk-rot-ctrl.c:322: rotctld returned error (RPRT -5)
2022/07/19 13:49:33|1|gtk-rot-ctrl.c:385: rotctld returned error -5 with az 131.777359 el 0.000000(RPRT -5)
2022/07/19 13:49:37|1|gtk-rot-ctrl.c:1180: rotctld returned error -5 with stop-cmd (RPRT -5)
2022/07/19 13:49:38|1|gtk-rot-ctrl.c:385: rotctld returned error -5 with az 131.777359 el 0.000000(RPRT -5)
2022/07/19 13:49:45|1|gtk-rot-ctrl.c:322: rotctld returned error (RPRT -5)
2022/07/19 13:50:03|1|gtk-rot-ctrl.c:385: rotctld returned error -5 with az 92.999634 el 0.000000(RPRT -5)
2022/07/19 13:50:06|1|gtk-rot-ctrl.c:1180: rotctld returned error -5 with stop-cmd (RPRT -5)
2022/07/19 13:50:08|1|gtk-rot-ctrl.c:385: rotctld returned error -5 with az 92.999634 el 0.000000(RPRT -5)
2022/07/19 13:50:11|1|rot_ctrl_timeout_cb: MAX_ERROR_COUNT (5) reached. Disengaging device!
We believe the issue is associated with this commit, which has set_pos and get_pos return false when there is an issue with the rotator control, causing some error counter to reach its limit and disengage the control. In previous versions, these errors were simply logged and the rotator control was allowed to remain engaged.
The hamlib rotctld daemon message log contained the following:
read_string(): Timed out 0.400445 seconds after 0 chars
write_block(): TX 2 bytes
0000 53 0d S.
read_string(): Timed out 0.400619 seconds after 0 chars
write_block(): TX 2 bytes
0000 53 0d S.
read_string(): Timed out 0.400483 seconds after 0 chars
write_block(): TX 2 bytes
0000 53 0d S.
read_string(): Timed out 0.400576 seconds after 0 chars
rotctl(d): p '' '' '' ''
It is worth noting that these timeouts occur intermittently and do not prevent the useful operation of the rotator control. A possible solution to this might be to include an option to disable the auto-disconnect-on-error-count-maximum-exceeded “feature”.
Thanks all for any help on this issue.
- 主要语言
- C
- 星标
- 1.2k
- 派生
- 305
- 平均合并
- 8 小时 48 分钟
- 30 天内合并 PR
- 3
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
csete/gpredict 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 82/100
-
bug
难度 2/5 1-3 小时 新手友好度 76/100
-
难度 2/5 1 小时以内 新手友好度 60/100
-
难度 2/5 1-3 小时 新手友好度 68/100
-
难度 4/5 3-5 天 新手友好度 78/100
相似的 Issue
-
Go device SDK: Whisper transcriber keeps buffering and transcribing audio appended after Stop()可能已有人在做 @apoorvdarshan 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 84/100
BasedHardware/omi#22770 ·
维护者通常 1 天内回复
-
enhancement
难度 2/5 1-3 小时 新手友好度 78/100
EchoTools/nevr-runtime#698 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
FujiNetWIFI/fujinet-firmware#2079 ·
维护者通常 1 天内回复
-
area:ci area:runtime-vm bug
难度 2/5 1-3 小时 新手友好度 78/100
InauguralSystems/EigenScript#1859 ·
维护者通常 1 天内回复
-
bug Official Image release/25.12 Supported Device target/kirkwood
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复