simonsobs / simonsobs/socs

Have RSSI Reset Task Return its success

Open
#875 0 comments 1 reaction 2 assignees View on GitHub

@tristpinsm is already working on this.

Since May 13, 2025.

enhancement
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.