go-modbus
Modbus client and server: TCP, RTU, ASCII, TLS and UDP, typed register codecs, pooling and retries.
go get github.com/otfabric/go-modbusConnect to a SunSpec inverter, meter or battery and see every model it exposes fully decoded. Read once or poll, record and export, without ever writing to the device.

The README on GitHub has the full feature list, examples and changelog.
Modbus client and server: TCP, RTU, ASCII, TLS and UDP, typed register codecs, pooling and retries.
go get github.com/otfabric/go-modbusSunSpec over Modbus, both sides: discovers and decodes 112 built-in models into typed, scaled values, and serves simulated or real SunSpec devices.
go get github.com/otfabric/go-sunspecDeterministic, stateful Modbus TCP and TLS device simulator driven by JSON fixtures, with fault injection, request traces and CI assertions.
Identify, fingerprint, scan, poll, decode and write Modbus devices. Record to MCAP and replay as a simulator.
Detect, list, read and poll SunSpec inverters, meters and batteries, and serve a simulated device from a JSON file or a capture of a real one.
Cross-platform serial ports for RS-232 and RS-485, with a Modbus RTU preset.
go get github.com/otfabric/go-serialModbus TCP reference stacks: libmodbus, PyModbus, digitalpetri, NModbus and tokio-modbus.