Have RSSI Reset Task Return its success
@tristpinsm is already working on this.
Since May 13, 2025.
- Dominant language
- Python
- Stars
- 17
- Forks
- 20
- Avg merge
- 1h 22m
- Merged PRs (30d)
- 2
Description
Currently the restart_rssi task in the pysmurf_controller agents returns as soon as it has written the RestartRSSI rogue register. However this does not ensure that rssi lane was properly restarted. @swh76 has suggested there's another register (which hopefully he can reply with here) we can poll which will tell us if it succeeded. I think we should modify the agent with the following logic:
epics.caput(f"smurf_server_s{self.slot}:AMCc:RestartRssi", 1)
state = epics.caget(<our_register_to_check>)
session_data = {"fields": {"rssi_state": state},
"last_updated": time.time()}
session.data.update(session_data)
if state == <good_state>:
return True, "RSSI restarted"
else:
return False, "RSSI restart failed"
Then an ROC will see the task fail in ocs-web in the little output under the button and the return from the caget will get published to session.data which is viewable from the "browser" section of ocs-web. This will help with directions for ROCs. Tagging @BrianJKoopman @tpsatt @swh76 and @tristpinsm for discussion.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.