Share this article:
Non NDA Modbus Table
Please read the DO´s and DONT´s before using these tables. When the understanding about Modbus is not present, Solis will always advise to seek support from a qualified person or company that understand the Modbus Protocol.
Attached at this article you can find the NON NDA Modbus Table for GTI (Grid Tie) Inverters and ESS (Energy and Storage/Hybrid) Inverters.
✅ To Do When Using a Modbus Table
1. Understand the Table Structure
Familiarize yourself with register types (e.g., Holding Registers, Input Registers).
Identify register ranges and groupings for efficient access.
2. Use Block Read Operations
Optimize Modbus polling by reading contiguous blocks of registers rather than issuing multiple single-register read commands. This reduces communication overhead, improves performance, and minimizes latency.
3. Document Everything
Maintain version-controlled documentation of the Modbus table and any custom mappings.
Include register ranges used for block reads and their corresponding data types.
4. Apply Correct Scaling and Units
Use documented scaling factors (e.g., divide by 10 for tenths of volts).
Convert raw register values to engineering units for display or logging.
5. Implement Robust Error Handling
Detect and handle CRC errors, timeouts, and invalid responses.
Log communication failures for diagnostics and support.
6. Secure Communication Channels
Use Modbus TCP over secure networks; apply VLANs or firewalls to restrict access.
Disable unused ports and enforce access control policies.
7. Test and Validate
Use Modbus simulation tools to validate register values and block reads.
Compare retrieved data against expected inverter behavior.
8. Train Technical Staff
Provide training on Modbus protocol basics, register mapping, and best practices.
Share examples of efficient polling strategies and troubleshooting techniques.
❌ Not To Do When Using a Modbus Table
1. Don’t Use Multiple Single-Register Reads
Avoid issuing individual read commands for each register.
This leads to inefficient communication, increased bus traffic, and slower response times.
2. Don’t Ignore Byte and Word Order
Misinterpreting endianness (big-endian vs little-endian) can corrupt data interpretation.
Always confirm the format for multi-register values (e.g., 32-bit floats).
3. Don’t Overpoll the Device
Excessive polling can overload the inverter’s Modbus stack.
Respect recommended polling intervals and avoid unnecessary reads.
4. Don’t Write to Control Registers Without Authorization
Writing to control or configuration registers without proper validation can cause system instability or damage.
5. Don’t Assume All Registers Are Active
Some registers may be reserved or unused—verify before implementation.
6. Don’t Hardcode Register Addresses
Use configuration files or dynamic mapping to allow flexibility and future updates.
7. Don’t Neglect Logging and Monitoring
Lack of communication logs makes troubleshooting difficult.
Always log Modbus activity, especially errors and retries.