You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
yzl 93958d0fb0
zabbix6.0
1 year ago
..
README.md zabbix6.0 1 year ago
template_net_morningstar_tristar_mppt_snmp.yaml zabbix6.0 1 year ago

README.md

Morningstar TriStar MPPT by SNMP

Overview

This template is designed for the effortless deployment of Morningstar TriStar MPPT monitoring by Zabbix via SNMP and doesn't require any external scripts.

Requirements

Zabbix version: 7.0 and higher.

Tested versions

This template has been tested on:

  • Morningstar TriStar MPPT

Configuration

Zabbix should be configured according to the instructions in the Templates out of the box section.

Setup

Refer to the vendor documentation.

Macros used

Name Description Default
{$BATTERY.TEMP.MIN.WARN}

Battery low temperature warning value

0
{$BATTERY.TEMP.MAX.WARN}

Battery high temperature warning value

45
{$BATTERY.TEMP.MIN.CRIT}

Battery low temperature critical value

-20
{$BATTERY.TEMP.MAX.CRIT}

Battery high temperature critical value

60
{$VOLTAGE.MIN.WARN}
{$VOLTAGE.MAX.WARN}
{$VOLTAGE.MIN.CRIT}
{$VOLTAGE.MAX.CRIT}
{$CHARGE.STATE.WARN}

disconnect

2
{$CHARGE.STATE.CRIT}

fault

4
{$LOAD.STATE.WARN:"lvdWarning"}

lvdWarning

2
{$LOAD.STATE.WARN:"disconnect"}

disconnect

5
{$LOAD.STATE.WARN:"override"}

override

7
{$LOAD.STATE.CRIT:"lvd"}

lvd

3
{$LOAD.STATE.CRIT:"fault"}

fault

4

Items

Name Description Type Key and additional info
Status: Uptime (network)

The time (in hundredths of a second) since the network management portion of the system was last re-initialized.

SNMP agent status.net.uptime

Preprocessing

  • Custom multiplier: 0.01

Status: Uptime (hardware)

The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.

SNMP agent status.hw.uptime

Preprocessing

  • Check for not supported value

    Custom on fail: Set value to: 0

  • Custom multiplier: 0.01

Array: Voltage

MIB: TRISTAR-MPPT

Description:Array Voltage

Scaling Factor:0.0054931640625

Units:V

Range:[-10, 180]

Modbus address:0x001b

SNMP agent array.voltage[arrayVoltage.0]

Preprocessing

  • Custom multiplier: 0.005493164063

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Array: Array Current

MIB: TRISTAR-MPPT

Description:Array Current

Scaling Factor:0.00244140625

Units:A

Range:[-10, 80]

Modbus address:0x001d

SNMP agent array.current[arrayCurrent.0]

Preprocessing

  • Custom multiplier: 0.00244140625

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Array: Sweep Vmp

MIB: TRISTAR-MPPT

Description:Vmp (last sweep)

Scaling Factor:0.0054931640625

Units:V

Range:[-10, 180.0]

Modbus address:0x003d

SNMP agent array.sweep_vmp[arrayVmpLastSweep.0]

Preprocessing

  • Custom multiplier: 0.005493164063

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Array: Sweep Voc

MIB: TRISTAR-MPPT

Description:Voc (last sweep)

Scaling Factor:0.0054931640625

Units:V

Range:[-10, 180.0]

Modbus address:0x003e

SNMP agent array.sweep_voc[arrayVocLastSweep.0]

Preprocessing

  • Custom multiplier: 0.005493164063

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Array: Sweep Pmax

MIB: TRISTAR-MPPT

Description:Pmax (last sweep)

Scaling Factor:0.10986328125

Units:W

Range:[-10, 5000]

Modbus address:0x003c

SNMP agent array.sweep_pmax[arrayPmaxLastSweep.0]

Preprocessing

  • Custom multiplier: 0.1098632813

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Battery: Charge State

MIB: TRISTAR-MPPT

Description:Charge State

Modbus address:0x0032

0: Start

1: NightCheck

2: Disconnect

3: Night

4: Fault

5: Mppt

6: Absorption

7: Float

8: Equalize

9: Slave

SNMP agent charge.state[chargeState.0]

Preprocessing

  • Discard unchanged with heartbeat: 1h

Battery: Battery Voltage discovery

MIB: TRISTAR-MPPT

SNMP agent battery.voltage.discovery[batteryVoltage.0]

Preprocessing

  • Custom multiplier: 0.005493164063

Battery: Target Voltage

MIB: TRISTAR-MPPT

Description:Target Voltage

Scaling Factor:0.0054931640625

Units:V

Range:[-10, 180.0]

Modbus address:0x0033

SNMP agent target.voltage[targetRegulationVoltage.0]

Preprocessing

  • Custom multiplier: 0.005493164063

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Battery: Charge Current

MIB: TRISTAR-MPPT

Description:Battery Current

Scaling Factor:0.00244140625

Units:A

Range:[-10, 80]

Modbus address:0x001c

SNMP agent charge.current[batteryCurrent.0]

Preprocessing

  • Custom multiplier: 0.00244140625

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Battery: Output Power

MIB: TRISTAR-MPPT

Description:Output Power

Scaling Factor:0.10986328125

Units:W

Range:[-10, 5000]

Modbus address:0x003a

SNMP agent charge.output_power[ outputPower.0]

Preprocessing

  • Custom multiplier: 0.1098632813

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Temperature: Battery

MIB: TRISTAR-MPPT

Description:Batt. Temp

Scaling Factor:1.0

Units:C

Range:[-40, 80]

Modbus address:0x0025

SNMP agent temp.battery[batteryTemperature.0]
Temperature: Heatsink

MIB: TRISTAR-MPPT

Description:HS Temp

Scaling Factor:1.0

Units:C

Range:[-40, 80]

Modbus address:0x0023

SNMP agent temp.heatsink[heatsinkTemperature.0]
Counter: Charge Amp-hours

MIB: TRISTAR-MPPT

Description:Ah Charge Resettable

Scaling Factor:0.1

Units:Ah

Range:[0.0, 5000]

Modbus addresses:H=0x0034 L=0x0035

SNMP agent counter.charge_amp_hours[ahChargeResetable.0]

Preprocessing

  • Custom multiplier: 0.1

Counter: Charge KW-hours

MIB: TRISTAR-MPPT

Description:kWh Charge Resettable

Scaling Factor:0.1

Units:kWh

Range:[0.0, 65535.0]

Modbus address:0x0038

SNMP agent counter.charge_kw_hours[kwhChargeResetable.0]
Status: Faults

MIB: TRISTAR-MPPT

Description:Faults

Modbus address:0x002c

SNMP agent status.faults[faults.0]

Preprocessing

  • Discard unchanged with heartbeat: 1h

  • JavaScript: The text is too long. Please see the template.

Status: Alarms

MIB: TRISTAR-MPPT

Description:Faults

Modbus address:0x002c

SNMP agent status.alarms[alarms.0]

Preprocessing

  • Discard unchanged with heartbeat: 1h

  • JavaScript: The text is too long. Please see the template.

Triggers

Name Description Expression Severity Dependencies and additional info
Status: Device has been restarted

Uptime is less than 10 minutes.

(last(/Morningstar TriStar MPPT by SNMP/status.hw.uptime)>0 and last(/Morningstar TriStar MPPT by SNMP/status.hw.uptime)<10m) or (last(/Morningstar TriStar MPPT by SNMP/status.hw.uptime)=0 and last(/Morningstar TriStar MPPT by SNMP/status.net.uptime)<10m) Info Manual close: Yes
Status: Failed to fetch data

Zabbix has not received data for items for the last 5 minutes.

nodata(/Morningstar TriStar MPPT by SNMP/status.net.uptime,5m)=1 Warning Manual close: Yes
Battery: Device charge in warning state last(/Morningstar TriStar MPPT by SNMP/charge.state[chargeState.0])={$CHARGE.STATE.WARN} Warning Depends on:
  • Battery: Device charge in critical state
Battery: Device charge in critical state last(/Morningstar TriStar MPPT by SNMP/charge.state[chargeState.0])={$CHARGE.STATE.CRIT} High
Temperature: Low battery temperature max(/Morningstar TriStar MPPT by SNMP/temp.battery[batteryTemperature.0],5m)<{$BATTERY.TEMP.MIN.WARN} Warning Depends on:
  • Temperature: Critically low battery temperature
Temperature: Critically low battery temperature max(/Morningstar TriStar MPPT by SNMP/temp.battery[batteryTemperature.0],5m)<{$BATTERY.TEMP.MIN.CRIT} High
Temperature: High battery temperature min(/Morningstar TriStar MPPT by SNMP/temp.battery[batteryTemperature.0],5m)>{$BATTERY.TEMP.MAX.WARN} Warning Depends on:
  • Temperature: Critically high battery temperature
Temperature: Critically high battery temperature min(/Morningstar TriStar MPPT by SNMP/temp.battery[batteryTemperature.0],5m)>{$BATTERY.TEMP.MAX.CRIT} High
Status: Device has "overcurrent" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","overcurrent")=2 High
Status: Device has "fetShort" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","fetShort")=2 High
Status: Device has "softwareFault" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","softwareFault")=2 High
Status: Device has "batteryHvd" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","batteryHvd")=2 High
Status: Device has "arrayHvd" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","arrayHvd")=2 High
Status: Device has "dipSwitchChange" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","dipSwitchChange")=2 High
Status: Device has "customSettingsEdit" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","customSettingsEdit")=2 High
Status: Device has "rtsShorted" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","rtsShorted")=2 High
Status: Device has "rtsDisconnected" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","rtsDisconnected")=2 High
Status: Device has "eepromRetryLimit" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","eepromRetryLimit")=2 High
Status: Device has "slaveControlTimeout" faults flag count(/Morningstar TriStar MPPT by SNMP/status.faults[faults.0],#3,"like","slaveControlTimeout")=2 High
Status: Device has "rtsShorted" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","rtsShorted")=2 Warning
Status: Device has "rtsDisconnected" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","rtsDisconnected")=2 Warning
Status: Device has "heatsinkTempSensorOpen" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","heatsinkTempSensorOpen")=2 Warning
Status: Device has "heatsinkTempSensorShorted" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","heatsinkTempSensorShorted")=2 Warning
Status: Device has "highTemperatureCurrentLimit" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","highTemperatureCurrentLimit")=2 Warning
Status: Device has "currentLimit" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","currentLimit")=2 Warning
Status: Device has "currentOffset" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","currentOffset")=2 Warning
Status: Device has "batterySense" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","batterySense")=2 Warning
Status: Device has "batterySenseDisconnected" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","batterySenseDisconnected")=2 Warning
Status: Device has "uncalibrated" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","uncalibrated")=2 Warning
Status: Device has "rtsMiswire" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","rtsMiswire")=2 Warning
Status: Device has "highVoltageDisconnect" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","highVoltageDisconnect")=2 Warning
Status: Device has "systemMiswire" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","systemMiswire")=2 Warning
Status: Device has "mosfetSOpen" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","mosfetSOpen")=2 Warning
Status: Device has "p12VoltageReferenceOff" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","p12VoltageReferenceOff")=2 Warning
Status: Device has "highArrayVCurrentLimit" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","highArrayVCurrentLimit")=2 Warning
Status: Device has "maxAdcValueReached" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","maxAdcValueReached")=2 Warning
Status: Device has "controllerWasReset" alarm flag count(/Morningstar TriStar MPPT by SNMP/status.alarms[alarms.0],#3,"like","controllerWasReset")=2 Warning

LLD rule Battery voltage discovery

Name Description Type Key and additional info
Battery voltage discovery

Discovery for battery voltage triggers

Dependent item battery.voltage.discovery

Preprocessing

  • JavaScript: The text is too long. Please see the template.

Item prototypes for Battery voltage discovery

Name Description Type Key and additional info
Battery: Voltage{#SINGLETON}

MIB: TRISTAR-MPPT

Description:Battery voltage

Scaling Factor:0.0054931640625

Units:V

Range:[-10, 180.0]

Modbus address:0x0018

SNMP agent battery.voltage[batteryVoltage.0{#SINGLETON}]

Preprocessing

  • Custom multiplier: 0.005493164063

  • Regular expression: ^(\d+)(\.\d{1,2})? \1\2

Trigger prototypes for Battery voltage discovery

Name Description Expression Severity Dependencies and additional info
Battery: Low battery voltage max(/Morningstar TriStar MPPT by SNMP/battery.voltage[batteryVoltage.0{#SINGLETON}],5m)<{#VOLTAGE.MIN.WARN} Warning Depends on:
  • Battery: Critically low battery voltage
Battery: Critically low battery voltage max(/Morningstar TriStar MPPT by SNMP/battery.voltage[batteryVoltage.0{#SINGLETON}],5m)<{#VOLTAGE.MIN.CRIT} High
Battery: High battery voltage min(/Morningstar TriStar MPPT by SNMP/battery.voltage[batteryVoltage.0{#SINGLETON}],5m)>{#VOLTAGE.MAX.WARN} Warning Depends on:
  • Battery: Critically high battery voltage
Battery: Critically high battery voltage min(/Morningstar TriStar MPPT by SNMP/battery.voltage[batteryVoltage.0{#SINGLETON}],5m)>{#VOLTAGE.MAX.CRIT} High

Feedback

Please report any issues with the template at https://support.zabbix.com

You can also provide feedback, discuss the template, or ask for help at ZABBIX forums