Skip to main content

A pip-installable handler for the RfSoC

Project description

RfSoC Interaction Handler

Generic interface for interacting with the RfSoC.

API Calls

InteractionHandler(ip_address)

Creates an instance of the handler. Needs the IP address of the RfSoC to connect.

SerialInteractionHandler(port, bautrate, timeout)

Creates an instance of the handler but for serial communication via pyserial. The port name is needed, everything is initialized with the values from the RfSoC and shouldn't be changed unless you changed settings on the RfSoC.

Parameters:

  • ip_address (str) — IP address of the RfSoC.

send_message(instruction, par)

Sends a command message with the given instruction and parameter.

Parameters:

  • instruction (str) — The instruction to be sent.
  • par (int) — The parameter to send with the instruction.

send_start()

Starts the streaming engines of the RfSoC.
Depending on the trigger setting it either:

  • starts sending and generates a trigger, or
  • waits for an incoming trigger.

send_stop()

Stops the streaming engines and the DACs.


send_set_trigger_in()

Configures the RfSoC to receive a trigger.


send_set_trigger_out()

Configures the RfSoC to send out a trigger.


send_data(filepath)

Sends a signal file to the board and stores it in the database.
The filename will be used for saving the file on the RfSoC.

Parameters:

  • filepath (str) — Path to the file that should be sent.

select_signal(channel_id, filename)

Selects the signal for a given channel from a filename.
The file must be uploaded to the RfSoC first. Otherwise, this will throw an error.

Parameters:

  • channel_id (int) — Channel ID to use (0–7).
  • filename (str) — Name of the signal file to be loaded.

list_files()

Prints a list with all files that are uploaded. The location on the RfSoC and the creation time is given.


delete_signal(filename)

Deletes the file from the database and from the drive.

Parameters:

  • filename (str) — Name of the signal file to be deleted.

set_freq(frequency)

Sets the sampling frequency of the DACs. Due to clock divider issues some frequencies are not allowed but currently there is no sanity check (will be added in the future). The maximum frequency is 168.75hz (for now).

Parameters:

  • frequency (int) — The target frequency in Hz

set_sending_mode(mode)

Sets the sending mode of the RfSoC. Currently it can be toggled between sending a single transmission and stream out periodically.

Parameters:

  • mode (int) — Allows changing between two modes for now: 0 -- Stream Mode 1 -- Single Transmission mode

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

rpc_rfsoc_handler-1.1.4.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rpc_rfsoc_handler-1.1.4-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file rpc_rfsoc_handler-1.1.4.tar.gz.

File metadata

  • Download URL: rpc_rfsoc_handler-1.1.4.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rpc_rfsoc_handler-1.1.4.tar.gz
Algorithm Hash digest
SHA256 3974452be9974572909ef2674dda6c350844edf4703e0801b99ecc47989cac32
MD5 d19fc08a51ab376f9a3761dc8ca1f2db
BLAKE2b-256 5560ba1457b9f594b9281987cdad5c1c2c450f2d0762a39c83bb438702fc9e34

See more details on using hashes here.

File details

Details for the file rpc_rfsoc_handler-1.1.4-py3-none-any.whl.

File metadata

  • Download URL: rpc_rfsoc_handler-1.1.4-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rpc_rfsoc_handler-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 64c3d6ed693b607ca4ef1f9625765f6ab903a9803b36763950891dba5b1b46e3
MD5 89b41b7d72b7b17e6562fb40159cb919
BLAKE2b-256 5b84243ddddfe704c19247fde75b0485a0dcc87c669d5cf397f456d768461b46

See more details on using hashes here.

Supported by

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