Skip to main content

Async Python library for Busch-Jaeger iNet Radio devices

Project description

Busch-Radio iNet Python Library

Control and monitor Busch-Jaeger iNet Radios from Python, including live state updates. The radios use a custom UDP-Protocol for communication, which this library implements. Tested on Busch-Radio iNet 8216 v01 on Firmware Version 02.06 01.

Quickstart

1. Install dependencies

pip install .

2. Discover radios on your network

inet-control discover

Sample output:

Discovering radios... (waiting for responses)
Name: RADIO-LIVINGROOM
IP: 192.168.1.100
Power: ON
Volume: 6
Playing mode: STATION
Station: 1 Example FM
Available: True

3. Control a radio from Python

import asyncio
from inet_control.manager import RadioManager

async def main():
	manager = RadioManager()
	await manager.start()
	# Discover radios (optional, for listing)
	await manager.discover()

	# Connect to a specific radio by IP
    # This waits for the initial state connectivity check
    radio = await manager.get("192.168.1.100")

    # Turn it on
    await radio.turn_on()

	# Set volume to 6
	await radio.set_volume(6)
	await radio.wait_for_update(timeout=2)

	print(f"Radio {radio.name} is now ON, volume {radio.volume}")
	await manager.stop()

asyncio.run(main())

CLI Usage

Run inet-control (installed as entry point) or execute it via python: python -m inet_control.cli

# Discover radios
inet-control discover

# Show status
inet-control status --ip 192.168.1.100

# Turn on
inet-control power-on --ip 192.168.1.100

# Set volume
inet-control set-volume --ip 192.168.1.100 6

Based on Remote Busch-Radio iNet App (com.abb.inetradio). This library is not affiliated with or endorsed by Busch-Jaeger.

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

inet_control-0.1.0.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

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

inet_control-0.1.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file inet_control-0.1.0.tar.gz.

File metadata

  • Download URL: inet_control-0.1.0.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for inet_control-0.1.0.tar.gz
Algorithm Hash digest
SHA256 88e3ec47447299fd853a72a9773899cc616a15a2ed70321f2e63f1625f1c1f06
MD5 ee0be80bfe242976dc4ddcaff1eb14ef
BLAKE2b-256 e3280117e548557ff76a560311d3786d56c4345047b9c40e4c80221061ef6fed

See more details on using hashes here.

Provenance

The following attestation bundles were made for inet_control-0.1.0.tar.gz:

Publisher: publish.yml on JonatanMGit/iNet-control

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

File details

Details for the file inet_control-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: inet_control-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for inet_control-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 297b13ca58aed1eead2a0b46dd3874138fa0016e6bf8f4e63f9cdf54b88ca5a7
MD5 b0fe48ca979d0eb1725b1766b078a905
BLAKE2b-256 78b2b16d749a17eaac12195f40571ad515d2438df555fc9fe1b51968f298e649

See more details on using hashes here.

Provenance

The following attestation bundles were made for inet_control-0.1.0-py3-none-any.whl:

Publisher: publish.yml on JonatanMGit/iNet-control

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

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