Skip to main content

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

LICENCE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qt3rfsynthcontrol-1.0.1.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

qt3rfsynthcontrol-1.0.1-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

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

Hashes for qt3rfsynthcontrol-1.0.1.tar.gz
Algorithm Hash digest
SHA256 aca5a94d1c49cb4e79338a43ae807149d512a4d1449f56f41673b6b6c2d65318
MD5 f437dd5a400d6293e1c9aa07a4956226
BLAKE2b-256 dc979badd1786fe16689b2e726949c05a12abf9178c5fc18115bdbbf90d175a5

See more details on using hashes here.

File details

Details for the file qt3rfsynthcontrol-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for qt3rfsynthcontrol-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8ff02b43e7036f595e80176553a492e836c7c6a4b1cccdf79c87d104e6534157
MD5 1063bfa597e247f0c8e25d979d027f8a
BLAKE2b-256 2d0e59d3077f541f4c01829eeef89c45fef03198dd7629a65eea8f818a02d057

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page