verified connector library

Renogy Rover 20A/40A MPPT charge controller

Register map(s) for this device, each at the trust rung it earned. Addresses are 0-based as on the wire. Word order and scaling are confirmed at the hardware-verified rung and at no rung below it.

interop-verified

Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.

pointaddress (0-based)typescaleunit
system_voltage_and_charging_current_limit10U161
discharging_current_limit_and_product_type11U161
controller_device_address26U161
battery_capacity_soc256U161%
battery_voltage257U160.1V
charging_current258U160.01A
controller_and_battery_temperature259U161°C
street_light_voltage260U160.1V
street_light_current261U160.01A
street_light_power262U161W
solar_panel_voltage263U160.1V
solar_panel_current264U160.01A
charging_power265U161W
battery_min_voltage_current_day267U160.1V
battery_max_voltage_current_day268U160.1V
max_charging_current_current_day269U160.01A
max_discharging_current_current_day270U160.01A
max_charging_power_current_day271U161W
max_discharging_power_current_day272U161W
charging_amp_hours_current_day273U161AH
discharging_amp_hours_current_day274U161AH
power_generation_current_day275U160.0001kWh
power_consumption_current_day276U160.0001kWh
total_operating_days277U161days
total_battery_over_discharges278U161
total_battery_full_charges279U161
total_charging_amp_hours280U32BE1AH
total_discharging_amp_hours282U32BE1AH
cumulative_power_generation284U32BE0.0001kWh
cumulative_power_consumption286U32BE0.0001kWh
street_light_status_and_charging_state288U161%
controller_fault_and_warning_info289U32BE1

link settings as documented (unverified): RTU; FC 03,06,16,120,121; Start character: >10ms, End character: >10ms. 00H is a broadcast address to which all slaves respond but do not return commands.

bench facts as documented (unverified)
max registers/read125
inter-frame delay10 ms
broadcastsupported
model register0x000C
serial register0x0018
firmware register0x0014
FC 43 device IDnot supported
field reports — community-sourced, unverified (checked 2026-06-11)
  • The official MODBUS Protocol document contains a typo in its temperature parsing example, stating that a register value of 800AH (0x800A) indicates a battery temperature of -10 °C. In reality, the battery temperature is stored in the low byte of register 0x0103, where the highest bit (bit 7) is the sign bit. A battery temperature of -10 °C is represented by 0x8A in the low byte (e.g., 0x008A), whereas 0x800A represents a controller temperature of -0 °C and a battery temperature of +10 °C. [source]
  • Writing 0 to the load control register 0x010A to turn off the load does not work on some firmware versions. Once the load is turned on by writing 1 to 0x010A, writing 0 back to it does nothing. To turn the load off, users must work around this by changing the load working mode (register 0xE01D) to 14 and then back to 15. [source]
  • The default Modbus slave address for some Renogy controllers (especially when communicating via the BT-1 Bluetooth module) is undocumented as 255 (0xFF) instead of the standard Modbus default of 1. [source]
  • confirmed: RTU framing and function codes 3, 6, 16, 120, 121 — confirmed by official Renogy Rover MODBUS Protocol document [1.1.2]
  • confirmed: Start/End character delay >10ms — confirmed by official Renogy Rover MODBUS Protocol document
  • confirmed: 00H broadcast address behavior — confirmed by official Renogy Rover MODBUS Protocol document
  • confirmed: Identification registers (firmware @ 0x0014, model @ 0x000C, serial @ 0x0018) — confirmed by floreno/renogy-rover-modbus GitHub repository
  • confirmed: Register map addresses (battery SOC @ 0x0100, battery voltage @ 0x0101, charging current @ 0x0102, temperatures @ 0x0103) — confirmed by sophienyaa/NodeRenogy GitHub repository
  • confirmed: Max read/write registers limit of 125 (0x007D) — confirmed by official Renogy Rover MODBUS Protocol document

The trust ladder

Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.

If your device isn't here, upload its register map. Generation is free, and the connector keeps the rung it earns under testing.

To prove a connector against your own device, order hardware verification. If it doesn't verify, you don't pay.

Platform builders can license the verified library: machine-readable maps, the firmware matrix, API access.