-
Notifications
You must be signed in to change notification settings - Fork 301
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Driver improvement: QDac sync #558
Driver improvement: QDac sync #558
Conversation
Make it possible to assign sync outputs for voltage ramps.
if chan in [syn[0] for syn in self._syncoutputs]: | ||
syncing = True | ||
sync = [syn[1] for syn in self._syncoutputs if syn[0] == chan][0] | ||
self.write('syn {} {} 0 {}'.format(sync, fg, 10)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is 10 here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
10 ms sync pulse duration.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I suggest making a it variable called sync duration to make this explicit
@@ -438,6 +492,9 @@ def _rampvoltage(self, chan, fg, setvoltage, ramptime): | |||
self.write(funmssg) | |||
self.parameters['ch{:02}_v'.format(chan)]._save_val(setvoltage) | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if you interrupt during this before sync is reset?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then your sync is still assigned.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We've agreed that this is not an issue, due to syncs being overriden by subsequent calls to _ramp_voltage
.
# interrupted | ||
v_start = self.parameters['ch{:02}_v'.format(chan)].get() | ||
log.warning('Cancelled a ramp with a ramptime of ' | ||
'{} s'.format(ramptime)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Make it more explicit that no voltage change is performed
Make sync pulses available
Changes proposed in this pull request:
get
commandTo come:
@jenshnielsen