SolarMax Inverter Plugin


The purpose of this plugin is to collect data from Solarmax Inverters.


This plugin reads the data from Solarmax Inverters, via serial or TCP. Inverter data will be collected to the solar table. By default, it will collected data every 5 minutes, but can collect at a minimum rate of 30 seconds. The plugin will make an attempt of (by default) 3 times to read an inverter, with a default sleep time 0.5 seconds between each read. See the Ardexa documentation instructions for connecting Solarmax Inverters via serial line. NOTE Not all variables will be collected. This varies on the Solarmax inverter type.:

Daily Energy    (decimal:Wh)
AC Current 1    (decimal:A)
AC Current 2    (decimal:A)
AC Current 3    (decimal:A)
DC Current      (decimal:A)
AC Power        (decimal:W)
DC Power        (decimal:W)
Relative Power  (decimal:%)
Grid Freq       (decimal:Hz)
Temperature     (decimal:°C)
AC Voltage 1    (decimal:V)
AC Voltage 2    (decimal:V)
AC Voltage 3    (decimal:V)
DC Voltage      (decimal:V)
DC Voltage 1    (decimal:V)
DC Voltage 2    (decimal:V)
DC Voltage 3    (decimal:V)
DC Current 1    (decimal:A)
DC Current 2    (decimal:A)
DC Current 3    (decimal:A)
Operating Time  (decimal:h)
Alarm State     (keyword:)
Status          (keyword:)


Arguments are as follows:

  • endpoint. This is either a serial device like /dev/ttyS0 or an IP or DNS like

  • bus_addresses. An RS485 address in the range 2-63. This can be a hyphenated list like 3-10 or a list like 2,5,7,9

  • --port. This is an optional parameter used in an Ethernet gateway, and is the TCP port used for the gateway. Default is 4001

  • --attempts. This is an optional parameter, and determines how many times to times to attempt to read an inverter value. Default is 2

  • --delay. This is the delay in seconds between inverter send and receive commands, AND if attempts > 1. Fractions like 0.3 can be used. Default is 0.1

Last updated