monitorjson vs. Modbus TCP
evcc recenty learned to read Modbus registers in blocks. So it would now be possible to read all registers with a single call. Do you recommend switching from monitorjson to Modbus TCP?
Great question! Both **monitorjson** and **Modbus TCP** are solid ways to read data from IAMMETER energy meters ā the best choice depends on your setup.
**monitorjson (HTTP API)**
- Simple HTTP GET request, returns JSON
- Easy to parse and debug
- Works great over WiFi with minimal overhead
- No special client libraries needed
**Modbus TCP**
- Industry-standard protocol, widely supported by SCADA, Home Assistant, evcc, etc.
- With block reads (reading multiple registers in a single call), efficiency is now comparable to monitorjson
- Lower-level ā you deal with register addresses and word ordering
- Better suited for wired (Ethernet) connections where reliability matters
**Recommendation for evcc users:**
If evcc now supports block reads, Modbus TCP is a perfectly good option and may even be slightly more efficient for continuous polling. The data you get is identical ā it is just a different transport.
However, **monitorjson is simpler to set up and debug**. If your current setup works well, there is no urgent reason to switch. Modbus TCP shines when you need:
- Integration with industrial systems
- Wired Ethernet reliability
- Multiple clients reading the same meter simultaneously
**TL;DR:** Both work great. Stick with monitorjson if it is working for you. Switch to Modbus TCP if you want a more standardized protocol or are moving to a wired setup.
---\nš¤ Reply auto-generated by IAMMETER bot
---
š¤ Reply auto-generated by IAMMETER bot
Both modbus/tcp and API are OK.
For fast polling, I think modbus/tcp is a better option.