Skip to main content

XKNX - An asynchronous KNX library written in Python

PyPI - Python Version codecov Checked with mypy prek HA integration usage Discord

Documentation

See documentation at: https://xknx.io/

Help

We need your help for testing and improving XKNX. For questions, feature requests, bug reports either open an issue, join the XKNX chat on Discord or write an email.

Development

You will need at least Python 3.11 in order to use XKNX.

Setting up your local environment:

  1. Install uv
  2. Create the environment: uv sync
  3. Install the git hooks: uv run prek install

Dependencies are declared in pyproject.toml and pinned in uv.lock.

Testing

To run all linters, formatters and the type checker call uv run prek run --all-files

Unit tests are run with uv run pytest Running specific unit tests can be invoked by: uv run pytest -vv test/management_tests/procedures_test.py -k test_nm_individual_address_serial_number_write_fail Testing against another supported Python version: uv run --python 3.11 pytest

Home-Assistant

XKNX is the underlying library for the KNX integration in Home Assistant.

Example

"""Example for switching a light on and off."""

import asyncio

from xknx import XKNX
from xknx.devices import Light


async def main():
    """Connect to KNX/IP bus, switch on light, wait 2 seconds and switch it off again."""
    async with XKNX() as xknx:
        light = Light(
            xknx,
            name="TestLight",
            group_address_switch="1/0/9",
        )
        xknx.devices.async_add(light)

        await light.set_on()
        await asyncio.sleep(2)
        await light.set_off()


asyncio.run(main())

Attributions

Many thanks to Enertex Bayern GmbH, Weinzierl Engineering GmbH and MDT technologies GmbH for providing us a device to support testing and development of xknx.

Metadata

Release files for xknx 4.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xknx 4.0.0
File Size Uploaded
xknx-4.0.0.tar.gz 223.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for xknx 4.0.0
File Interpreter ABI Platform
xknx-4.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 558.3 kB

Release files / xknx-4.0.0.tar.gz

Download URL xknx-4.0.0.tar.gz
Size 223.8 kB
Tags Source
SHA-256 checksum
How to use checksums
84f00ce2ced47cd010b382ff729909475734275890b2c7318a7a05a8e3cd3e99
BLAKE2b-256 checksum
How to use checksums
51bbb698ed9ad7b6b1882cbe6d7142d42ed83d3ebf50d95f16232156747078c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xknx-4.0.0-py3-none-any.whl

Download URL xknx-4.0.0-py3-none-any.whl
Size 334.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
72042588ad99afbaf564bc2d7748eb19524ffe255adf9a2fe9d89bda127a4c8b
BLAKE2b-256 checksum
How to use checksums
43671ef323896a706d20381fa8ae0fdb72168316af6ed3f2cb7e6ff0e54a0c7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

4.0.0 This release

2 release files

3.20.0

2 release files

3.19.0

2 release files

3.17.0

2 release files

3.16.0

2 release files

3.15.0

2 release files

3.14.0

2 release files

3.13.0

2 release files

3.11.0

2 release files

3.10.0

2 release files

3.9.1

2 release files

3.9.0

2 release files

3.8.0

2 release files

3.7.0

2 release files

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.12.1

2 release files

2.11.2

2 release files

2.11.1

2 release files

2.11.0

2 release files

2.9.0

2 release files

2.8.0

2 release files

2.7.0

2 release files

2.6.0

2 release files

2.5.0

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.22.1

2 release files

0.22.0

2 release files

0.21.5

2 release files

0.21.3

2 release files

0.21.0

2 release files

0.20.4

2 release files

0.20.3

2 release files

0.20.2

2 release files

0.20.0

2 release files

0.19.1

2 release files

0.19.0

2 release files

0.18.9

2 release files

0.18.8

2 release files

0.18.7

2 release files

0.18.6

2 release files

0.18.3

2 release files

0.18.2

2 release files

0.18.1

2 release files

0.17.5

2 release files

0.17.4

2 release files

0.17.3

2 release files

0.17.2

2 release files

0.17.1

2 release files

0.17.0

2 release files

0.16.2

2 release files

0.16.1

2 release files

0.15.6

2 release files

0.15.5

2 release files

0.15.4

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.15.0

2 release files

0.14.4

2 release files

0.14.3

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.3

1 release file

0.11.2

1 release file

0.11.1

1 release file

0.11.0

1 release file

0.10.0

1 release file

0.9.4

1 release file

0.9.3

1 release file

0.9.2

1 release file

0.9.1

1 release file

0.9.0

1 release file

0.8.5

1 release file

0.8.4

1 release file

0.8.3

1 release file

0.8.2

1 release file

0.8.1

1 release file

0.8.0

1 release file

0.7.18

1 release file

0.7.17

1 release file

0.7.16

1 release file

0.7.15

1 release file

0.7.14

1 release file

0.7.13

1 release file

0.7.12

1 release file

0.7.11

1 release file

0.7.9

1 release file

0.7.8

1 release file

0.7.7

1 release file

0.7.6

1 release file

0.7.5

1 release file

0.7.4

1 release file

0.7.3

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.1

1 release file

0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page