A package for controlling the Windfreak SynthHD RF generator.
Project description
Controller for Windfreak SynthHD v2 RF Generator
Helper code to control Windfreak's SynthHD RF generator.
Installation
pip install qt3rfsynthcontrol
Usage
Determine the port
import qt3rfsynthcontrol
qt3rfsynthcontrol.discover_devices()
Will return a list of ports and information about devices connected to those ports. For example
[['COM3',
'Intel(R) Active Management Technology - SOL (COM3)',
'PCI\\VEN_8086&DEV_43E3&SUBSYS_0A541028&REV_11\\3&11583659&1&B3'],
['COM5',
'USB Serial Device (COM5)',
'USB VID:PID=0483:A3E5 SER=206A36705430 LOCATION=1-2:x.0'],
['COM6',
'USB Serial Device (COM6)',
'USB VID:PID=04D8:000A SER= LOCATION=1-8:x.0'],
['COM7',
'USB Serial Device (COM7)',
'USB VID:PID=239A:8014 SER=3B0D07C25831555020312E341A3214FF LOCATION=1-6:x.0']]
It is certainly not obvious to which USB port the Windfreak is connected. However, using the Windows Task Manager, as well as trial and error, should eventually reveal the correct serial port to use.
Connection to SynthHD
rf_synth = qt3rfsynthcontrol.QT3SynthHD('COM5')
Hardware Info
rf_synth.hw_info()
Current Signal Status
rf_synth.current_status()
Set Fixed Frequency
channel_A = 0
channel_B = 1
rf_synth.set_channel_fixed_output(channel_A, power = -5.0, frequency = 2870e6)
Set Up For Frequency Scan
Frequency scan can either be triggered externally (using the Quantum Composer Sapphire pulser, or other), or can run independent of any external control.
channel_A = 0
channel_B = 1
rf_synth.set_frequency_sweep(channel_A, power = -5.0, frequency_low = 2820e6,
frequency_high = 2920e6, n_steps = 101,
trigger_mode = 'single frequency step',
frequency_sample_time = 0.100)
See the function's documentation for further details
help(rf_synth.set_frequency_sweep)
Turn RF ON/OFF
The RF generation can be turned on and off with
channel_A = 0
channel_B = 1
rf_synth.rf_on(channel_A)
rf_sythh.rf_off(channel_A)
Windfreak.SynthHD
If you wish to use the windfreak-python
SynthHD object instance directly, you
can obtain it from the property SynthHD
. Usage of
windfreak-python is documented here.
windfreak_synthhd = rf_synth.SynthHD()
print(windfreak_synthhd[0].power)
print(windfreak_synthhd[0].frequency)
The documentation is a little sparse, however. The full set of commands are found in
It can take a little effort to match the python API with the description in the manual as
some of the windfreak-python
API functions do not exactly match the function name in the manual.
For example sweep_single
in windfreak-python
is called sweep_run
or run_sweep
in the programming manual.
LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qt3rfsynthcontrol-1.0.1.tar.gz
.
File metadata
- Download URL: qt3rfsynthcontrol-1.0.1.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aca5a94d1c49cb4e79338a43ae807149d512a4d1449f56f41673b6b6c2d65318 |
|
MD5 | f437dd5a400d6293e1c9aa07a4956226 |
|
BLAKE2b-256 | dc979badd1786fe16689b2e726949c05a12abf9178c5fc18115bdbbf90d175a5 |
File details
Details for the file qt3rfsynthcontrol-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: qt3rfsynthcontrol-1.0.1-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ff02b43e7036f595e80176553a492e836c7c6a4b1cccdf79c87d104e6534157 |
|
MD5 | 1063bfa597e247f0c8e25d979d027f8a |
|
BLAKE2b-256 | 2d0e59d3077f541f4c01829eeef89c45fef03198dd7629a65eea8f818a02d057 |