Recently it has become apparent that veto logic through all the PLC systems needs to be reviewed. I think the initial documentation for the PMPS did not really focus on veto logic and so it wasn't consistently implemented. Additionally, many of the veto devices have only recently been added.
Bill Schlotter reported that during some beamtime on the K line the undulators were set to an unusually high K value. This put them out of our current setting for active range (PMPS Photon Energy) so no seed undulator could be found, resulting in a calculation for eV of 0. The actual effective eV was around 600eV. The photon energy bitmask was then set to 2#0000_0000_0000_0001 which was inaccurate and problematic as it circumvented some faults. To fix this issue I changed the bitmask logic so a value of zero will result in the current photon energy bitmask being set to 2#1111_1111_1111_1111.
We have been planning for a while to have the RIXS optics PLC send its mono grating pitch values directly to the LCLS2 DAQ. This was deployed this PAMM, through a joint effort between Zachary L Lentz, Christopher Ford, Margaret Ghaly, and Jyoti, Joshi. The encoder can be selected in the DAQ, at which point it will send triggers directly to the PLC, which responds appropriately up to 60Hz. The plan was to respond appropriately up to 120Hz, but this issue was not caught until nearly the end of the PAMM. There will be follow-up work to get this to work properly at 120Hz.
Margaret Ghalynoticed that the x-down terminal on MR1K2 had an overcurrent warning. Zachary L Lentz joined in and noticed that the terminal had a "short circuit" error. Sameen Yunus investigated more closely with a multimeter and confirmed the short-circuit, and that it was on the terminal side (the motor seemed fine). The next day, after some thought, Margaret Ghaly went into the FEE ready to replace the terminal, but we found that everything worked again with no errors once the phase pins from the motor cable were removed and re-inserted. We tested a lot in this state to make sure things were really OK because we didn't quite believe it, but we ended up running with no swaps. We are continuing to watch this but it seems fine.
Zachary L Lentz fixed a bug on all the common components where under specific race conditions the states function block could get stuck in the "finishing" state, causing a permanent "BPTM timeout" fast fault. This has been resolved, deployed, and tested.
Margaret Ghaly implemented a states selector block for the FEE HOMS mirrors Y-motors, complete with PMPS support and eV request states. Zachary L Lentz assisted in the debug. Now we can tell at a glance in the screen which coating the Y motor is at. Further work was requested to also automatically set the pitch on a coating state move, but this has not yet been implemented.
Jyoti, Joshi noticed some problems with getting PVs into RIX. Zachary L Lentz fixed some configuration issues preventing the optics PVs from reaching RIX and also a separate issue resulting in duplicated PVs, and Omar Quijano fixed a switch configuration issue preventing many of the RIX operator machines from communicating with the gateways at all.