Skip to main content

Standalone Python library for communicating with Duotecno controllers

Project description

pyDuotecno-ng

pyDuotecno-ng is the standalone Python library for communicating with Duotecno controllers.

It contains the protocol and transport layer used by the Home Assistant Duotecno integration, including:

  • TCP connection management
  • controller login
  • packet encoding and decoding
  • node and unit discovery
  • state updates and command dispatch
  • JSON-based startup loading with bus-scan fallback

Scope

This repository is the backend library only. It is intentionally separate from the Home Assistant integration so the protocol code can be versioned, tested, and released independently.

If you are looking for the Home Assistant integration wrapper, use the companion integration repository that depends on this package.

Repository Layout

  • controller.py: main connection and scan orchestration
  • node.py: node model and unit loading
  • unit.py: unit classes and device behavior
  • protocol.py: packet/message definitions and parsing helpers
  • exceptions.py: backend-specific exceptions

Intended Usage

The main consumer of this library is the Duotecno Home Assistant integration. The typical flow is:

  1. create a controller
  2. connect to the Duotecno gateway
  3. load nodes and units
  4. subscribe to live state updates
  5. send commands to supported unit types

Status

This library is being maintained as a standalone public backend so it can be consumed cleanly by the Home Assistant integration and other future tooling if needed.

Releases

This repository is intended to publish tagged releases that match the PyPI package version exactly.

The PyPI distribution name is pyDuotecno-ng. The Python import package remains duotecno.

Release flow:

  1. update pyproject.toml to the new version
  2. commit the version change to main
  3. create and push a matching tag in the form vYYYY.M.N
  4. GitHub Actions builds the wheel and source distribution
  5. the workflow publishes the package to PyPI
  6. the same release artifacts are attached to the GitHub release

This matches Home Assistant expectations that:

  • the dependency source is public
  • published package versions correspond to tagged source releases
  • PyPI artifacts are built from the same tagged revision

License

This project is licensed under the Apache License 2.0. See LICENSE.

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

pyduotecno_ng-2026.4.1.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

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

pyduotecno_ng-2026.4.1-py3-none-any.whl (23.5 kB view details)

Uploaded Python 3

File details

Details for the file pyduotecno_ng-2026.4.1.tar.gz.

File metadata

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

File hashes

Hashes for pyduotecno_ng-2026.4.1.tar.gz
Algorithm Hash digest
SHA256 12b268a19c565807c53e9d0db89beb530b815a0f7dea2357396237f6c42610ae
MD5 d8113c419f3694200a0cb6765bc8251d
BLAKE2b-256 c10e1a2226b58a84e462d5d6972d11035958f6498d2515eed12d0f351f316fc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyduotecno_ng-2026.4.1.tar.gz:

Publisher: release.yml on coorenskevin/pyDuotecno-ng

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

File details

Details for the file pyduotecno_ng-2026.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pyduotecno_ng-2026.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 03ffa09ab9bf1394065679aa74bf95172dd5904d78162def170ee1e80f29dbc0
MD5 5b949ccc4302d50d33037cd21dcd1b83
BLAKE2b-256 b7290ef53b5831e4ca8d0dfa7c64594536c6630a4f09a19d2bc233413398aae6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyduotecno_ng-2026.4.1-py3-none-any.whl:

Publisher: release.yml on coorenskevin/pyDuotecno-ng

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