sml2mqtt
A simple yet extremely flexible sml to mqtt bridge
sml2mqtt is a asyncio application that can read multiple sml (Smart Message Language) streams from energy meters and report the values through mqtt. The meters can be read through serial ports or through http(s) (e.g. Tibber devices)
To read from the serial port an IR to USB reader for energy meter is required.
Documentation
The documentation can be found at here
Changelog
3.7 (2026-10-07)
- If configured OBIS ids are missing sml2mqtt now issues a warning instead of shutting down
- Updated dependencies
3.6 (2026-03-17)
- Try logging error on invalid config file
- Updated dependencies
3.5 (2025-11-03)
- Updated dependencies
3.4 (2024-12-03)
- Allow rounding to the multiple of a value
- Updated dependencies
3.3 (2024-11-26)
- Updated dependencies and docs
- Allow rounding to the tenth
3.2 (2024-11-05)
- Automatically select CRC e.g. for Holley DTZ541
3.1 (2024-08-05)
- Updated dependencies
- Added some small log messages
3.0 (2024-04-24)
BREAKING CHANGE
- Almost complete rewrite, requires at least Python 3.10
- Extensive value processing which can be configured -> Config file changed
- Support for tibber pulse out of the box
- The
analyzeflag can also be set through an environment variable which makes it easier for docker users
2.2 (2023-03-31)
- Small config improvements
2.1 (2023-03-27)
- Additional obis id for serial number matching
- Improved serial reading a bit
2.0.0 (2023-03-22)
- Release rework
Metadata
Release files for sml2mqtt 3.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sml2mqtt-3.7.0.tar.gz | 49.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sml2mqtt-3.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 112.2 kB
Release files / sml2mqtt-3.7.0.tar.gz
| Download URL | sml2mqtt-3.7.0.tar.gz |
|---|---|
| Size | 49.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
331ad0f301161fbb3bdfcf06cd44aa87c3f032510cd6922efd59122824da735e
|
|
BLAKE2b-256 checksum How to use checksums |
68a18b483c341a064e1a57e1b6937422c315b54706538f36b6e2ca4638304a45
|
| 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 7, 2026.
Transparency logRelease files / sml2mqtt-3.7.0-py3-none-any.whl
| Download URL | sml2mqtt-3.7.0-py3-none-any.whl |
|---|---|
| Size | 62.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5e3a132c49eb9890a3ab06cfec7ebd1e35d17fa00653652ba475c5be82787b21
|
|
BLAKE2b-256 checksum How to use checksums |
63e62b9f164aa96e7c69b5d58a9c828b4d718351e5ed0826f253cca616cb67bb
|
| 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 7, 2026.
Transparency log