ABB Aurora Inverters


The purpose of this plugin is to collect data from ABB Inverters, configured for the Aurora protocol.


Data from ABB Aurora solar inverters is read using either an Ethernet to RS485 gateway, or directly via RS485. Inverter data will be collected to the solar table, and will be run every 5 minutes, by default. This script cannot be run at intervals of less than 30 seconds due to the slow response of the aurora protocol. The following data will be collected:

Grid Freq           (decimal:Hz)
AC Voltage          (decimal:V)
AC Current          (decimal:A)
AC Power            (decimal:W)
Temperature         (decimal:°C)
Boost Temperature   (decimal:°C)
DC Voltage 1        (decimal:V)
DC Current 1        (decimal:A)
DC Voltage 2        (decimal:V)
DC Current 2        (decimal:A)
Isol Resist         (decimal:Mohm)
DC Power 1          (decimal:W)
DC Leak Current     (decimal:A)
AC Leak Current     (decimal:A)
DC Power 2          (decimal:W)
AC Voltage 1        (decimal:V)
AC Voltage 2        (decimal:V)
AC Voltage 3        (decimal:V)
AC Current 1        (decimal:A)
AC Current 2        (decimal:A)
AC Current 3        (decimal:A)
Daily Energy        (decimal:Wh)
Energy This Month   (decimal:Wh)
Status              (keyword:)
Inv Status          (keyword:)
DC1 Status          (keyword:)
DC2 Status          (keyword:)
Alarm Status        (keyword:)
Status Raw          (integer:)
Inv Status Raw      (integer:)
DC1 Status Raw      (integer:)
DC2 Status Raw      (integer:)
Alarm Status Raw    (integer:)


Arguments are as follows:

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

  • bus_addresses. An Aurora 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 Aurora 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

  • --timeout. This is the read timeout in seconds; or the amount of time to wait for data to arrive. Fractions like 0.3 can be used. Default is 0.1

Last updated