Add disconnect handler for influx and volkszaehler.
Change spec. Informations on ahoy.service and ahoy.yml.example.
Extented Error handling.
Send sun-rise and sun-set information to MQTT.
extended error handling while getting corruppted data on 64 bit operating system (bullseye)
lots of currupted data are reseived on Debian 11 OS. So we have to check the data length before using strict.unpack
to send all meassured and calculated values to Volkszaehler and to mqtt
change some logging levels for better differentiation
change frequency as part of AC phase
The response of HardwareInfoResponse contains 16 byte, but only 8 bytes are known.
Analyse result of the last 2 bytes: This bytes contain the CRC-modbus.
To observe the double-byte (6, 10, 12), this extended log message could help.
Helps recognize values in unknown payloads by decoding data from payload
with different offsets, data types and print results as aligned table
Enhances DebugDecodeAny class
Seems to be that we can not exactly determine the actual model by
looking at the serial. What we seemingly can guess is how many MPPT and
Phases a range of serials have.
Some Group-Based decoders should be compatible across the group.
A group is now named by the lowest model
* 1121: HM300 1 MPPT, 1 Phase
* 1141: HM600 2 MPPT, 1 Phase
* 1161: HM1200 4 MPPT, 1 Phase
Adds the ability to directly inject payloads to be sent to the inverter.
Fixes application crash at missing decoder by adding default decoding.
All unknown payloads are now printed as long- and short-lists for faster
protocol analysis
Is was clear, the cmd approach does not decode payloads reliably.
The modular form allows for easy tinkering.
This implements
* hoymiles protocol
* transport-layer enables for retransmit of missed fragments
* full payload decode
* device specific decoders
* transaction tracking enables decoding of different datasets
* multi-inverter support
* configuration format change to YAML (required for multi-inverter)
First PoC, lots of things have to be relocated, rewritten and exteded.
Currently only supports Hoymiles HM-600, more device decodes have to be added by
users who have the hardware.