You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add waittime device. I cannot seem to find it within i05 localstation, but it is a common scannable within GDA. It's very simple, add to dodal.devices.waittime.py and make a Device that is Movable but the move just calls await asyncio.sleep(time). However, we need the can syntax to support moving to this position for the scan.
been to the beamline, the object uses gdascripts.pd.time_pds.waittimeClass2
classwaittimeClass2(ScannableMotionBase):
'''waittimeClass - waits for elapsed time. Use as dummy counter in scans etc'''def__init__(self, name):
self.setName(name);
self.setInputNames(['Time'])
self.Units=['sec'];
self.setOutputFormat(['%6.2f'])
self.setLevel(7)
self.timer=tictoc()
self.waitfortime=0self.currenttime=self.timer()
defrawAsynchronousMoveTo(self,waittime):
self.currenttime=self.timer()
self.waitfortime=self.currenttime+waittimedefrawGetPosition(self):
return0.defisBusy(self):
ifself.timer()<self.waitfortime:
return1else:
return0
We can achieve this in dodal using soft signal for the time to wait and should be the hinted signal. It should implement Movable protocol and sleeps for x amount of time of soft signal. It should be Triggerable and also sleep for x amount of time
Activity
[-]`waittime`[/-][+]i05 - add `waittime` device[/+]oliwenmandiamond commentedon Nov 10, 2026
been to the beamline, the object uses
gdascripts.pd.time_pds.waittimeClass2We can achieve this in dodal using soft signal for the time to wait and should be the hinted signal. It should implement Movable protocol and sleeps for x amount of time of soft signal. It should be
Triggerableand also sleep for x amount of time