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.5.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.5-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rpc_rfsoc_handler-1.1.5.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.5.tar.gz
Algorithm Hash digest
SHA256 3a96babc3e9918b450b4a7810bec8f25d85bbcdaedd3d03dbb88ff949955c9bc
MD5 fdcfcf85b3bd8eeb763e559a058ca711
BLAKE2b-256 9474351b0771b45d723dfeb3de1f6b2a73aded0cfc40805ae4d62b38174cc01e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rpc_rfsoc_handler-1.1.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2bcf9b732db5328dd01c196f4762a0b24e05cb4908d51d7f8051ba92bba6c84f
MD5 749c0813cb5ef5d575bb17e9a32b580e
BLAKE2b-256 f5b63f1f1460ff7897fed7a71e91c8f724c91c35221dc7620f123ddd3735aa2b

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