As a reflectometry instrument scientist I would like code like the following to work:
g.cset("LINDY_A", 1)
g.cset("LINDY_B", 1)
Where LINDY_A and LINDY_B are two blocks pointing at the status of outputs A & B on the same LINDY ioc.
Currently this has a race condition in the device/ioc/firmware somewhere, which means that the first set is ignored.
A workaround is:
g.cset("LINDY_A", 1)
g.waitfor_time(seconds=5)
g.cset("LINDY_B", 1)
acceptance criteria
There is a "quick-and-easy" solution (@FreddieAkeroyd could you add a bit more detail pls) to add a delay in the db which may resolve this - try this first before debugging further. should be reproducable with an emulator.
discussed in planning 12/06/2025 at 00:12:00
As a reflectometry instrument scientist I would like code like the following to work:
Where
LINDY_AandLINDY_Bare two blocks pointing at the status of outputs A & B on the same LINDY ioc.Currently this has a race condition in the device/ioc/firmware somewhere, which means that the first set is ignored.
A workaround is:
acceptance criteria
There is a "quick-and-easy" solution (@FreddieAkeroyd could you add a bit more detail pls) to add a delay in the db which may resolve this - try this first before debugging further. should be reproducable with an emulator.
discussed in planning 12/06/2025 at 00:12:00