luxws-exporter
A Prometheus exporter using the Lux_WS
protocol to retrieve
informational values from Luxtronik 2.x heat pump controllers manufactured
and/or deployed by the following companies:
- Alpha Innotec
- NIBE
- Novelan
- possibly other companies and/or brands
Language support
The exporter must know which language the controller interface is using. See
the luxwslang
package for implemented languages (includes
English, German and Dutch). Other languages are easily added by defining a few
strings.
Timezone
In order to parse timestamps (e.g. of the most recent error) it's necessary for
the exporter to know the timezone used by the controller. By default the
system-local timezone is used.
Usage
Run luxws-exporter -help
for a usage description. Example:
./luxws-exporter -controller.address=192.0.2.1:8214 -controller.language=en \
-controller.timezone=Europe/Berlin -web.listen-address=127.0.0.1:8000
Retrieve all values:
curl http://127.0.0.1:8000/metrics
Debugging
The -verbose
flag can be set to view the underlying messages sent to and
received from the heat pump controller while collecting metrics. Example:
$ ./luxws-exporter -verbose -controller.address=192.0.2.1:8214 -controller.language=en
[…]
2022/04/02 10:00:00 Sending message of type 1: "GET;0x7a1234"
2022/04/02 10:00:00 Received message of type 1: "<Content><item id='0x7babcd'>[…]