wright-group / yaqc-cmds

A qt-based graphical client for yaq with a focus on coherent multidimensional spectroscopy in the Wright Group.
MIT License
7 stars 4 forks source link

Yaqc-cmds thinks delay motor is busy when it is not. New inability to set delay stage motors in yaqc-cmds removes a common workaround #417

Open DLafayetteII opened 2 years ago

DLafayetteII commented 2 years ago

For motors like our filter wheels and delay stages, there are instances where all of the daemons are non-busy, but yaqc-cmds continues to report busy. The workaround in the past has been to go to the advanced tab of the hardware in yaqc-cmds and hit set on a motor, causing the motor to realize that it actually is not busy.

Now that delay stage set commands have moved to yaqc-cmds, I encounter instances where yaqc-cmds reports that a delay is busy, despite the daemons and yaqc-qtpy reporting that the device is ready and able to receive and execute commands. Because there is no set command in the advanced tab, the only way for me to convince yaqc-cmds that the motor is not busy is the give a home command through yaqc-cmds. The home command does fulfill the function of re-establishing yaqc-cmds' knowledge of the motor status, but requires a lot more human waiting time than in the past. Can we get set motor commands back into yaqc-cmds, despite the redundancy with yaqc-qtpy, at least while the issue producing their need persists?

DLafayetteII commented 2 years ago

Similar to how you can set filter wheels in either yaqc-cmds or yaqc-qtpy.

DLafayetteII commented 2 years ago

I'll add that this is the same approach we use to get an OPA back from busy after homing.