Closed prjemian closed 1 month ago
We found this yesterday when applying an external trigger signal from our SoftGlue FPGA to an area detector. Both devices must be triggered simultaneously. The FPGA needs a trigger value of "1!"
.
All current ophyd uses of the trigger_value
show 1
in every case. Must have been an assumption that has worked so far. With this new FPGA code, the assumption breaks.
Time to use the supplied value. This commit (for the APS XPCS instrument) implements the change locally.
NOTE: In the case of the XPCS FPGA's trigger signal, the Component should also include string=True
.
It looks like the bug is there from the first implementation in f5d5c46240cd1a2a13d1a00d5481a76ee4cb9337 from 2015 🤯
The docstring in the
Device
code says a Component maybe marked as the Signal to use from the.trigger()
method by setting the Component'strigger_value
kwarg.When it comes time to actually use that signal, the provided value is ignored and a
1
is sent: https://github.com/bluesky/ophyd/blob/5df3f5694f5c4c0ac049f0e601512f220e85744b/ophyd/device.py#L1460From https://github.com/aps-8id-dys/bluesky/issues/99