All notable changes to Q1Pulse will be documented in this file.
- Dropped support for qblox-instruments < 0.11
- Update for qblox_instruments v0.14.1
- Fixed exception for 'out of sequencers'.
- Require Python >= 3.10
- Update for qblox_instruments v0.13: changed deprecated get_XXX_state to get_XXX_status
- Added Q1Instrument.verbose to get more logging
- Set sequencer label to channel name.
- Fixed get_input_ranges for QRM-RF module and qblox-instruments v0.11+.
- Fixed RF module connect in/out for qblox-instruments v0.11+.
- Added acquire_frequency_sweep
- Added nco_prop_delay
- Stop all sequencers after input overload or other error.
- Correct set_latch_en
- QUICK PATCH version for error with set_latch_en.
- Allow swap of IQ channels
- Fixed 'wait 0' bug. (Found with video mode.)
- Successfully tested with qblox-instruments v0.11.1
- Support qblox_instruments v0.11: connect_outX, connect_acq_I, connect_acq_Q
- Dropped support for qblox_instruments < v0.9.0
NOTE: 1 ns resolution of v0.10.x not yet supported.
- Fixed baseband qubit drive with NCO and only 1 output channel
- Improved performance of compilation with ~10%.
- Fixed conditionals for use with pulse-lib
- Added workaround for set_ph_delta when NCO frequency is negative (Qblox firmware bug)
- Fixed baseband qubit drive with NCO and only 1 output channel
- Added conditional execution of statements.
- Set AWG offsets to 0.0 after error or aborted program
- Generate SCPI safe waveform names.
- Prevent keyboard interrupt during communication with Qblox instruments.
- Fix bug in ramp generation.
- Check whether QCM/QRM module is present in slot.
- Support qblox-instruments v0.9.0.
- Removed ADC calibration. It is not reliable.
- Do not start root-instrument if it has no active sequences.
- Disable continuous system error checking after initial configuration of all modules.
- Added short sleep before calibration to avoid calibration failures.
- Added QRM ADC calibration.
- Changed logging.info() to logger.info()
- Improved Exception and message on QRM input overload
- Allow suppression of input overload exception with set_exception_on_overload(False)
- Fixed compilation of ramps with (v_start-v_end) < 1 bit
- Update to qblox_instruments v0.8
- Added set_freq
- Changed arguments set_ph, set_ph_delta
- Added chirp to sequencer
- Added try/except around qcodes cache()
- Improved communication (configuration/upload) speed by postponing error checks.
- Use qcodes parameter cache to check whether setting has changed.
- Aligned version with qblox-instruments version
- Added
delete_acquisition_data
to QRM - Improved performance with smarter calls to cluster/pulsar
- repeated_acquire with n=1
- Do not create empty directories if listing = False and json = False
- Some minor performance improvements
- Phase reset for sequence repetition
- Added state flag "SEQUENCE PROCESSOR RT EXEC COMMAND UNDERFLOW"
- Slow ramps around 1 LSB per 100 ns.
- Improved performance: use dict argument to set sequence.
- Improved performance: disable sequencers without meaningful sequence.
- Added mixer_gain_ratio and mixer_phase_offset_degree properties to sequencer.
- Support Qblox Cluster
- Support RF modules
- Added set_out_offset with mV value for RF and non-RF modules.
- Always write QRM sequences before running. Otherwise the acquisition data is not cleared.
- More compact sequence/json output to avoid buffer overrun of qblox compiler.
- Removed support for qblox_instruments < v0.6.0
- Update for API changes of qblox_instruments v0.6
- Note: Still backwards compatible with qblox_instruments v0.5
- check system state upon initialization and before every program run.
- made traceback of q1pulse instructions configurable
- set nco frequency on sequencer in program
- Proper handling of all QCM/QRM state flags
First labeled release. Start of dev branch and change logging.