Skip to main content

Soundweb London Direct Inject protocol helpers for BSS BLU devices.

Project description

bss-direct-inject

Helpers for the Soundweb London Direct Inject (DI) protocol, focused on BLU devices like the BLU-100.

Quick start

import asyncio

from bss_direct_inject import AsyncDirectInjectClient, DiTarget

target = DiTarget(
    node=0x0000,
    virtual_device=0x03,
    object_id=0x000100,
    state_variable=0x0000,
)

async def main() -> None:
    async with AsyncDirectInjectClient("192.168.1.50") as client:
        await client.set_sv(target, data=0)


asyncio.run(main())

Synchronous usage is also available via DirectInjectClient.

Protocol notes

  • TCP DI messaging uses port 1023 on Soundweb London devices.
  • Message framing is STX + body + checksum + ETX, with escaping for special bytes.
  • Checksums are XOR of the body bytes before escaping.
  • node is the 16-bit HiQnet node address. Use 0 when directly connected to the target device.
  • virtual_device is typically 0x03 for audio processing objects.
  • object_id is a 24-bit object address (from the full HiQnet address in London Architect).
  • state_variable is a 16-bit SV identifier.
  • Percent-based SV values use fixed-point scaling: percent * 65536.

Development

Use just for common tasks (via uv run):

just fmt
just lint
just typecheck

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

bss_direct_inject-0.1.3.tar.gz (4.4 kB view details)

Uploaded Source

Built Distribution

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

bss_direct_inject-0.1.3-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file bss_direct_inject-0.1.3.tar.gz.

File metadata

  • Download URL: bss_direct_inject-0.1.3.tar.gz
  • Upload date:
  • Size: 4.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","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":true}

File hashes

Hashes for bss_direct_inject-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b59a16f4c07c887616b625f060d5ca97f77f2fcfa877e969063de1cf4b95c9ba
MD5 52a342b876c1309425a3561de83b556b
BLAKE2b-256 a5d4e87369195582d0ae018c804b804dd7f136ce2e2c9afead9eaac44e16fb41

See more details on using hashes here.

File details

Details for the file bss_direct_inject-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: bss_direct_inject-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","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":true}

File hashes

Hashes for bss_direct_inject-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9a46910bd5bd1294ed85d18219eeac63ff784b0360d493d48da6b7ff25e8d3e0
MD5 a73da818d45030a5ed72aadbf6f2d545
BLAKE2b-256 c720d7ec99c7e4a201ed7254a2a72307158853d147347251f8284ddf2c3a56ed

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