ethmbusxl-poller
The EthMBus-XL is a SMART meter bus to ethernet converter it sits between M-Bus energy meters and a network, exposing their readings over IP. This project is a Python polling system that talks to the converter in both of its data modes and stores everything locally.
data modes
XML mode -> the converter exposes an HTTP endpoint returning structured XML with all meter readings. The poller fetches this on a schedule, parses the tree, and extracts the relevant measurement fields.
TCP/IP binary mode -> raw M-Bus frames over a TCP socket. The poller connects, sends the appropriate M-Bus request frames, reads back the binary response, and decodes the data according to the M-Bus standard.
storage / api / dashboard
All collected readings are written into a SQLite database with timestamped rows per meter, per measurement.
A FastAPI server sits on top of the database and exposes the data as a REST API, which Grafana queries via its JSON datasource plugin. The result is a live public dashboard showing meter readings over time.