# Morningstar ProStar MPPT SNMP ## Overview For Zabbix version: 6.0 and higher ## Setup > See [Zabbix template operation](https://www.zabbix.com/documentation/6.0/manual/config/templates_out_of_the_box/zabbix_agent) for basic instructions. Refer to the vendor documentation. ## Zabbix configuration No specific Zabbix configuration is required. ### Macros used |Name|Description|Default| |----|-----------|-------| |{$BATTERY.TEMP.MAX.CRIT} |
Battery high temperature critical value
|`60` | |{$BATTERY.TEMP.MAX.WARN} |Battery high temperature warning value
|`45` | |{$BATTERY.TEMP.MIN.CRIT} |Battery low temperature critical value
|`-20` | |{$BATTERY.TEMP.MIN.WARN} |Battery low temperature warning value
|`0` | |{$CHARGE.STATE.CRIT} |fault
|`4` | |{$CHARGE.STATE.WARN} |disconnect
|`2` | |{$LOAD.STATE.CRIT:"fault"} |fault
|`4` | |{$LOAD.STATE.CRIT:"lvd"} |lvd
|`3` | |{$LOAD.STATE.WARN:"disconnect"} |disconnect
|`5` | |{$LOAD.STATE.WARN:"lvdWarning"} |lvdWarning
|`2` | |{$LOAD.STATE.WARN:"override"} |override
|`7` | |{$VOLTAGE.MAX.CRIT} |-
|`` | |{$VOLTAGE.MAX.WARN} |-
|`` | |{$VOLTAGE.MIN.CRIT} |-
|`` | |{$VOLTAGE.MIN.WARN} |-
|`` | ## Template links There are no template links in this template. ## Discovery rules |Name|Description|Type|Key and additional info| |----|-----------|----|----| |Battery voltage discovery |Discovery for battery voltage triggers
|DEPENDENT |battery.voltage.discovery**Preprocessing**:
- JAVASCRIPT: `The text is too long. Please see the template.`
| ## Items collected |Group|Name|Description|Type|Key and additional info| |-----|----|-----------|----|---------------------| |Array |Array: Voltage |MIB: PROSTAR-MPPT
Array Voltage
Description:Array Voltage
Scaling Factor:1.0
Units:V
Range:[0, 80]
Modbus address:0x0013
|SNMP |array.voltage[arrayVoltage.0] | |Array |Array: Sweep Vmp |MIB: PROSTAR-MPPT
Array Vmp
Description:Array Max. Power Point Voltage
Scaling Factor:1.0
Units:V
Range:[0.0, 5000.0]
Modbus address:0x003D
|SNMP |array.sweep_vmp[arrayVmp.0] | |Array |Array: Sweep Voc |MIB: PROSTAR-MPPT
Array Voc
Description:Array Open Circuit Voltage
Scaling Factor:1.0
Units:V
Range:[0.0, 80.0]
Modbus address:0x003F
|SNMP |array.sweep_voc[arrayVoc.0] | |Array |Array: Sweep Pmax |MIB: PROSTAR-MPPT
Array Max. Power (sweep)
Description:Array Max. Power (last sweep)
Scaling Factor:1.0
Units:W
Range:[0.0, 500]
Modbus address:0x003E
|SNMP |array.sweep_pmax[arrayMaxPowerSweep.0] | |Battery |Battery: Charge State |MIB: PROSTAR-MPPT
Charge State
Description:Control State
Modbus address:0x0021
0: Start
1: NightCheck
2: Disconnect
3: Night
4: Fault
5: BulkMppt
6: Absorption
7: Float
8: Equalize
9: Slave
10: Fixed
|SNMP |charge.state[chargeState.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
| |Battery |Battery: Target Voltage |MIB: PROSTAR-MPPT
Target Voltage
Description:Target Regulation Voltage
Scaling Factor:1.0
Units:V
Range:[0.0, 80.0]
Modbus address:0x0024
|SNMP |target.voltage[targetVoltage.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
| |Battery |Battery: Charge Current |MIB: PROSTAR-MPPT
Charge Current
Description:Charge Current
Scaling Factor:1.0
Units:A
Range:[0, 40]
Modbus address:0x0010
|SNMP |charge.current[chargeCurrent.0] | |Battery |Battery: Voltage{#SINGLETON} |MIB: PROSTAR-MPPT
Battery Terminal Voltage
Description:Battery Terminal Voltage
Scaling Factor:1.0
Units:V
Range:[0.0, 80.0]
Modbus address:0x0012
|SNMP |battery.voltage[batteryTerminalVoltage.0{#SINGLETON}] | |Counter |Counter: Charge Amp-hours |MIB: PROSTAR-MPPT
Ah Charge (Resettable)
Description:Ah Charge (Resettable)
Scaling Factor:0.1
Units:Ah
Range:[0.0, 4294967294]
Modbus addresses:H=0x0026 L=0x0027
|SNMP |counter.charge_amp_hours[ahChargeResettable.0]**Preprocessing**:
- MULTIPLIER: `0.1`
| |Counter |Counter: Charge KW-hours |MIB: PROSTAR-MPPT
kWh Charge (Resettable)
Description:Kilowatt Hours Charge (Resettable)
Scaling Factor:1.0
Units:kWh
Range:[0.0, 65535]
Modbus address:0x002A
|SNMP |counter.charge_kw_hours[kwhChargeResettable.0] | |Counter |Counter: Load Amp-hours |MIB: PROSTAR-MPPT
Description:Ah Load (Resettable)
Scaling Factor:0.1
Units:Ah
Range:[0.0, 4294967294]
Modbus addresses:H=0x0032 L=0x0033
|SNMP |counter.load_amp_hours[ahLoadResettable.0]**Preprocessing**:
- MULTIPLIER: `0.1`
| |Load |Load: State |MIB: PROSTAR-MPPT
Load State
Description:Load State
Modbus address:0x002E
0: Start
1: Normal
2: LvdWarning
3: Lvd
4: Fault
5: Disconnect
6: NormalOff
7: Override
8: NotUsed
|SNMP |load.state[loadState.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
| |Load |Load: Voltage |MIB: PROSTAR-MPPT
Load Voltage
Description:Load Voltage
Scaling Factor:1.0
Units:V
Range:[0, 80]
Modbus address:0x0014
|SNMP |load.voltage[loadVoltage.0] | |Load |Load: Current |MIB: PROSTAR-MPPT
Load Current
Description:Load Current
Scaling Factor:1.0
Units:A
Range:[0, 60]
Modbus address:0x0016
|SNMP |load.current[loadCurrent.0] | |Status |Status: Uptime |Device uptime in seconds
|SNMP |status.uptime**Preprocessing**:
- MULTIPLIER: `0.01`
| |Status |Status: Array Faults |MIB: PROSTAR-MPPT
Description:Array Faults
Modbus address:0x0022
|SNMP |status.array_faults[arrayFaults.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
- JAVASCRIPT: `The text is too long. Please see the template.`
| |Status |Status: Load Faults |MIB: PROSTAR-MPPT
Description:Array Faults
Modbus address:0x0022
|SNMP |status.load_faults[loadFaults.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
- JAVASCRIPT: `The text is too long. Please see the template.`
| |Status |Status: Alarms |MIB: PROSTAR-MPPT
Description:Alarms
Modbus addresses:H=0x0038 L=0x0039
|SNMP |status.alarms[alarms.0]**Preprocessing**:
- DISCARD_UNCHANGED_HEARTBEAT: `1h`
- JAVASCRIPT: `The text is too long. Please see the template.`
| |Temperature |Temperature: Ambient |MIB: PROSTAR-MPPT
Ambient Temperature
Description:Ambient Temperature
Scaling Factor:1.0
Units:deg C
Range:[-128, 127]
Modbus address:0x001C
|SNMP |temp.ambient[ambientTemperature.0] | |Temperature |Temperature: Battery |MIB: PROSTAR-MPPT
Battery Temperature
Description:Battery Temperature
Scaling Factor:1.0
Units:deg C
Range:[-128, 127]
Modbus address:0x001B
|SNMP |temp.battery[batteryTemperature.0] | |Temperature |Temperature: Heatsink |MIB: PROSTAR-MPPT
Heatsink Temperature
Description:Heatsink Temperature
Scaling Factor:1.0
Units:deg C
Range:[-128, 127]
Modbus address:0x001A
|SNMP |temp.heatsink[heatsinkTemperature.0] | |Zabbix raw items |Battery: Battery Voltage discovery |MIB: PROSTAR-MPPT
|SNMP |battery.voltage.discovery[batteryTerminalVoltage.0] | ## Triggers |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----|----|----| |Battery: Device charge in warning state |-
|`last(/Morningstar ProStar MPPT 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 ProStar MPPT SNMP/charge.state[chargeState.0])={$CHARGE.STATE.CRIT}` |HIGH | | |Battery: Low battery voltage (below {#VOLTAGE.MIN.WARN}V for 5m) |-
|`max(/Morningstar ProStar MPPT SNMP/battery.voltage[batteryTerminalVoltage.0{#SINGLETON}],5m)<{#VOLTAGE.MIN.WARN}` |WARNING |**Depends on**:
- Battery: Critically low battery voltage (below {#VOLTAGE.MIN.CRIT}V for 5m)
| |Battery: Critically low battery voltage (below {#VOLTAGE.MIN.CRIT}V for 5m) |-
|`max(/Morningstar ProStar MPPT SNMP/battery.voltage[batteryTerminalVoltage.0{#SINGLETON}],5m)<{#VOLTAGE.MIN.CRIT}` |HIGH | | |Battery: High battery voltage (over {#VOLTAGE.MAX.WARN}V for 5m) |-
|`min(/Morningstar ProStar MPPT SNMP/battery.voltage[batteryTerminalVoltage.0{#SINGLETON}],5m)>{#VOLTAGE.MAX.WARN}` |WARNING |**Depends on**:
- Battery: Critically high battery voltage (over {#VOLTAGE.MAX.CRIT}V for 5m)
| |Battery: Critically high battery voltage (over {#VOLTAGE.MAX.CRIT}V for 5m) |-
|`min(/Morningstar ProStar MPPT SNMP/battery.voltage[batteryTerminalVoltage.0{#SINGLETON}],5m)>{#VOLTAGE.MAX.CRIT}` |HIGH | | |Load: Device load in warning state |-
|`last(/Morningstar ProStar MPPT SNMP/load.state[loadState.0])={$LOAD.STATE.WARN:"lvdWarning"} or last(/Morningstar ProStar MPPT SNMP/load.state[loadState.0])={$LOAD.STATE.WARN:"override"}` |WARNING |**Depends on**:
- Load: Device load in critical state
| |Load: Device load in critical state |-
|`last(/Morningstar ProStar MPPT SNMP/load.state[loadState.0])={$LOAD.STATE.CRIT:"lvd"} or last(/Morningstar ProStar MPPT SNMP/load.state[loadState.0])={$LOAD.STATE.CRIT:"fault"}` |HIGH | | |Status: Device has been restarted (uptime < 10m) |Uptime is less than 10 minutes
|`last(/Morningstar ProStar MPPT SNMP/status.uptime)<10m` |INFO |Manual close: YES
| |Status: Failed to fetch data (or no data for 5m) |Zabbix has not received data for items for the last 5 minutes
|`nodata(/Morningstar ProStar MPPT SNMP/status.uptime,5m)=1` |WARNING |Manual close: YES
| |Status: Device has "overcurrent" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","overcurrent")=2` |HIGH | | |Status: Device has "mosfetSShorted" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","mosfetSShorted")=2` |HIGH | | |Status: Device has "software" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","software")=2` |HIGH | | |Status: Device has "batteryHvd" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","batteryHvd")=2` |HIGH | | |Status: Device has "arrayHvd" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","arrayHvd")=2` |HIGH | | |Status: Device has "customSettingsEdit" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","customSettingsEdit")=2` |HIGH | | |Status: Device has "rtsShorted" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","rtsShorted")=2` |HIGH | | |Status: Device has "rtsNoLongerValid" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","rtsNoLongerValid")=2` |HIGH | | |Status: Device has "localTempSensorDamaged" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","localTempSensorDamaged")=2` |HIGH | | |Status: Device has "batteryLowVoltageDisconnect" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","batteryLowVoltageDisconnect")=2` |HIGH | | |Status: Device has "slaveTimeout" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","slaveTimeout")=2` |HIGH | | |Status: Device has "dipSwitchChanged" array faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.array_faults[arrayFaults.0],#3,"like","dipSwitchChanged")=2` |HIGH | | |Status: Device has "externalShortCircuit" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","externalShortCircuit")=2` |HIGH | | |Status: Device has "overcurrent" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","overcurrent")=2` |HIGH | | |Status: Device has "mosfetShorted" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","mosfetShorted")=2` |HIGH | | |Status: Device has "software" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","software")=2` |HIGH | | |Status: Device has "loadHvd" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","loadHvd")=2` |HIGH | | |Status: Device has "highTempDisconnect" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","highTempDisconnect")=2` |HIGH | | |Status: Device has "dipSwitchChanged" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","dipSwitchChanged")=2` |HIGH | | |Status: Device has "customSettingsEdit" load faults flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.load_faults[loadFaults.0],#3,"like","customSettingsEdit")=2` |HIGH | | |Status: Device has "rtsShorted" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","rtsShorted")=2` |WARNING | | |Status: Device has "rtsDisconnected" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","rtsDisconnected")=2` |WARNING | | |Status: Device has "heatsinkTempSensorOpen" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","heatsinkTempSensorOpen")=2` |WARNING | | |Status: Device has "heatsinkTempSensorShorted" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","heatsinkTempSensorShorted")=2` |WARNING | | |Status: Device has "heatsinkTempLimit" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","heatsinkTempLimit")=2` |WARNING | | |Status: Device has "inductorTempSensorOpen" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","inductorTempSensorOpen")=2` |WARNING | | |Status: Device has "inductorTempSensorShorted" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","inductorTempSensorShorted")=2` |WARNING | | |Status: Device has "inductorTempLimit" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","inductorTempLimit")=2` |WARNING | | |Status: Device has "currentLimit" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","currentLimit")=2` |WARNING | | |Status: Device has "currentMeasurementError" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","currentMeasurementError")=2` |WARNING | | |Status: Device has "batterySenseOutOfRange" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","batterySenseOutOfRange")=2` |WARNING | | |Status: Device has "batterySenseDisconnected" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","batterySenseDisconnected")=2` |WARNING | | |Status: Device has "uncalibrated" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","uncalibrated")=2` |WARNING | | |Status: Device has "tb5v" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","tb5v")=2` |WARNING | | |Status: Device has "fp10SupplyOutOfRange" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","fp10SupplyOutOfRange")=2` |WARNING | | |Status: Device has "mosfetOpen" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","mosfetOpen")=2` |WARNING | | |Status: Device has "arrayCurrentOffset" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","arrayCurrentOffset")=2` |WARNING | | |Status: Device has "loadCurrentOffset" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","loadCurrentOffset")=2` |WARNING | | |Status: Device has "p33SupplyOutOfRange" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","p33SupplyOutOfRange")=2` |WARNING | | |Status: Device has "p12SupplyOutOfRange" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","p12SupplyOutOfRange")=2` |WARNING | | |Status: Device has "hightInputVoltageLimit" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","hightInputVoltageLimit")=2` |WARNING | | |Status: Device has "controllerReset" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","controllerReset")=2` |WARNING | | |Status: Device has "loadLvd" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","loadLvd")=2` |WARNING | | |Status: Device has "logTimeout" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","logTimeout")=2` |WARNING | | |Status: Device has "eepromAccessFailure" alarm flag |-
|`count(/Morningstar ProStar MPPT SNMP/status.alarms[alarms.0],#3,"like","eepromAccessFailure")=2` |WARNING | | |Temperature: Low battery temperature (below {$BATTERY.TEMP.MIN.WARN}C for 5m) |-
|`max(/Morningstar ProStar MPPT SNMP/temp.battery[batteryTemperature.0],5m)<{$BATTERY.TEMP.MIN.WARN}` |WARNING |**Depends on**:
- Temperature: Critically low battery temperature (below {$BATTERY.TEMP.MIN.WARN}C for 5m)
| |Temperature: Critically low battery temperature (below {$BATTERY.TEMP.MIN.WARN}C for 5m) |-
|`max(/Morningstar ProStar MPPT SNMP/temp.battery[batteryTemperature.0],5m)<{$BATTERY.TEMP.MIN.CRIT}` |HIGH | | |Temperature: High battery temperature (over {$BATTERY.TEMP.MAX.WARN}C for 5m) |-
|`min(/Morningstar ProStar MPPT SNMP/temp.battery[batteryTemperature.0],5m)>{$BATTERY.TEMP.MAX.WARN}` |WARNING |**Depends on**:
- Temperature: Critically high battery temperature (over {$BATTERY.TEMP.MAX.CRIT}C for 5m)
| |Temperature: Critically high battery temperature (over {$BATTERY.TEMP.MAX.CRIT}C for 5m) |-
|`min(/Morningstar ProStar MPPT SNMP/temp.battery[batteryTemperature.0],5m)>{$BATTERY.TEMP.MAX.CRIT}` |HIGH | | ## Feedback Please report any issues with the template at https://support.zabbix.com