-
Notifications
You must be signed in to change notification settings - Fork 321
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
Added fixed frequency readout mode (CW mode) to ZNB driver #2007
Added fixed frequency readout mode (CW mode) to ZNB driver #2007
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2007 +/- ##
==========================================
- Coverage 62.36% 62.23% -0.14%
==========================================
Files 200 200
Lines 26248 26342 +94
==========================================
+ Hits 16370 16394 +24
- Misses 9878 9948 +70 |
@astafan8 We are currently using this fork on 3 (that I know of) measurement setups in Delft (QT3, K1, K2), it has been a very useful addition to the driver! |
@abargerbos @GitJaap thanks for reminding, I'll have a look at it! |
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.
as a first step:
- please go through the todo comments and either removed them if they are not necessary or make the improvements that they suggest if possible
- the example measurement and explanation of how this works, that is in the PR (thanks!), should be added to the example notebook for this instrument. If there's none, feel free to create one (qcodes docs on "writing drivers" explains how to do that)
…frequency_znb_driver
…ap/Qcodes into fixed_frequency_znb_driver
Hi @astafan8, |
@LGruenhaupt thanks for reminding! we'll sync with @Akshita07 and let you know :) |
@LGruenhaupt thank you for reminding. This PR will be merged in the qcodes master the upcoming week. |
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.
Added a few small comments. This will also need full types for all the new functions that were added
…ap/Qcodes into fixed_frequency_znb_driver
@astafan8 yup that worked! |
Co-authored-by: Mikhail Astafev <[email protected]>
The ZNB20 VNA driver currently supports only the 'linear' sweep mode. This is by default set when instantiating a channel. For things like two tone spectroscopy we would then hack a linear frequency trace with 1 Hz span such that we could do readout at a single point.
It turns out the VNA has internal support for fixed frequency readout so I added that to the driver. I added it in a way that the current way the VNA is used should still function as it did, but you now have the option to switch to Continuous wave mode (CW mode). In CW mode there is no AVG setting(defaults to 1) and the integration time per point is set by 1/bandwidth. This allows for doing measurements of at the minimum 1us(max BW=1MHz) integration time at a fixed frequency and doing time resolved traces with the VNA or a crude version of single shot measurements. Also two tone can be faster (depending on how you implemented it with the vna before) since this reduces overhead (e.g simulating extremely small frequency stepping). And a small bonus: now you can go to 100k points instead of the 30k that is the limit in linear frequency sweep mode.
For this added three parameters similar to the existing ones:
@mention one core developer
Example
result:
Note the time axis is here determined by npts/BW, but there is a little overhead so for very fast measurements one should note that the time might not perfectly correspond to the time the point was taken. I tested it with %timeit and the overhead was about 3 to 5ms minimum, but I'm not sure where that happens (communication or internally.) I'm guessing in communication since when you increase npts the overhead scales sub-linearly.