HotNoob / PythonProtocolGateway

Python Protocol Gateway reads data via Modbus RTU or other protocols and translates the data for MQTT. In the long run, Python Protocol Gateway will become a general purpose protocol gateway to translate between more than just modbus and mqtt. Growatt, EG4, Sigineer, SOK, PACE
Apache License 2.0
14 stars 4 forks source link

Need No Read Ranges #16

Closed HotNoob closed 5 months ago

HotNoob commented 6 months ago

could be a pain to add, but need to add the ability to forcefully exclude specific registers from the reading ranges.

some devices, such as my sigineer inverter will bug out / not reply when certain ranges are read, because they are "reserved" or protected from reading.

HotNoob commented 6 months ago

hmm.. i think i'm overthinking this a bit.

let's add a recommended variable screen. mask being additive, screen being subtractive. move mask.txt and screen.txt to example.txt if screen is empty, use protocol.screen.txt

that way theese are configurable; the main registers that are causing problems in sigineer protocol are the sigineer bms registers. , they are likely not responding because i'm not using sigineer batteries, but if someone is they may want to re-enable those registers.

HotNoob commented 6 months ago

https://github.com/HotNoob/InverterModBusToMQTT/commit/212a2855c0db81ed0593fc083db148b3c9656472#diff-da5b239f4593374f6ba0cfb8ae4bb8b681053eef6f5a1534a35430a9d15694aa

read/write can be controlled by the writable column now.

but i think i should still add a mask/screen feature for the light users.