Skip to main content

siliconrig

Python SDK for siliconrig — remote access to real embedded boards.

Use it in scripts, automation, or as a pytest plugin for hardware-in-the-loop testing.

Install

pip install siliconrig

Quick start

from siliconrig import Client

client = Client()

with client.session(board="esp32-s3") as session:
    session.flash("firmware.bin")
    session.serial.expect("Ready", timeout=10)
    session.serial.send("status\n")
    print(session.serial.read_until("OK", timeout=5))

Or use the Board shorthand:

from siliconrig import Board

with Board("esp32-s3", firmware="build/app.bin") as board:
    board.expect("System ready", timeout=5)
    board.send("gpio set 4 1\n")
    board.expect("GPIO4=HIGH", timeout=2)

pytest plugin

The package includes a pytest plugin that registers automatically. Use it with custom fixtures:

import pytest
from siliconrig import Board

@pytest.fixture
def board():
    with Board("esp32-s3", firmware="build/app.bin") as b:
        yield b

def test_boot_ok(board):
    assert board.expect("System ready", timeout=5)

Or use the built-in siliconrig_board fixture via CLI options:

pytest --siliconrig-board esp32-s3 --siliconrig-firmware build/app.bin tests/hil/

Authentication

Set your API key via environment variable:

export SRIG_API_KEY=key_...

Or pass it directly:

client = Client(api_key="key_...")

Documentation

Download files

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

Source Distribution

siliconrig-0.2.2.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

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

siliconrig-0.2.2-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file siliconrig-0.2.2.tar.gz.

File metadata

  • Download URL: siliconrig-0.2.2.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for siliconrig-0.2.2.tar.gz
Algorithm Hash digest
SHA256 be71f3ef9bd94068c7ae78bda1cf6e79a42280a0d6636988ecd88c9f3b0cde5e
MD5 428a6b2d3c05135f2728a27d755b31ae
BLAKE2b-256 28880cbb484f09b75b9b636085ec3893fab15a061cea9254a4c0a020e4fbf166

See more details on using hashes here.

Provenance

The following attestation bundles were made for siliconrig-0.2.2.tar.gz:

Publisher: publish.yml on siliconrig/srig-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file siliconrig-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: siliconrig-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for siliconrig-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 37782f77e509881b55577c88cb595f422dbaca5e9ac0e1f53c3267d883a85a08
MD5 b9887ad41177a5eca8668d2d5a0ea66a
BLAKE2b-256 c43b627103f15ab9ba33901e9425653f11251e46c06bb8c64d2220687baa0412

See more details on using hashes here.

Provenance

The following attestation bundles were made for siliconrig-0.2.2-py3-none-any.whl:

Publisher: publish.yml on siliconrig/srig-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 files

0.2.1

2 files

0.2.0

2 files

Supported by

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