Power input monitoring

Please consider adding power input monitoring to future Peplink devices.

Peplink routers are routinely deployed in remote and mission-critical environments and rely on a variety of power sources. Having visibility into the device’s input voltage would make it much easier to identify power-related issues before they cause costly outages.

Even a simple input voltage reading, along with configurable high/low voltage alerts and event logging, would be a valuable troubleshooting tool for both customers and Peplink Support. It would help quickly determine whether power quality is contributing to connectivity or stability issues, especially in remote deployments where on-site diagnostics aren’t practical.

13 Likes

100% supporting this one. Would be really nice with API support too.

4 Likes

We definitely need this!

2 Likes

Yes need it too. Easier troubleshoot on installation problems.

@Topher See this post: BR1 Input Voltage API Call

1 Like

To add on to this: An API or IC2 notification for detecting when a dual power input router (MBX, 3105G, etc) stops detecting one input.

1 Like

I totally support this feature and it would be great to have it available via the API as well.

1 Like

great idea. yes please

1 Like

I agree having a place to view what your input voltage and current draw on all peplink routers and would be nice feature to have for trouble shooting and alerting. This would be for both DC and AC powered devices. That would help with proactive troubleshooting. Thanks

2 Likes

Absolutely. This is a great feature.

We hear you guys. We’ll look into it.

7 Likes

Unsure when this was added to SNMP, but power status and usage in watts is monitorable via SNMP:

	deviceInfoHardware OBJECT IDENTIFIER ::= { deviceInfo 4 }

		devicePSUTable OBJECT-TYPE
			SYNTAX SEQUENCE OF DevicePSUEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Device Power Supply Unit Table."
			::= { deviceInfoHardware 1 }

			devicePSUEntry OBJECT-TYPE
			SYNTAX DevicePSUEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"An entry in the devicePSUTable."
			INDEX { devicePSUId }
			::= { devicePSUTable 1 }

			DevicePSUEntry ::=
			SEQUENCE {
				devicePSUId
					Integer32,
				devicePSUStatus
					INTEGER,
				deviceCurrentPower
					Integer32,
				deviceMaxPower
					Integer32,
				devicePSUPercentage
					Integer32
			}

			devicePSUId OBJECT-TYPE
				SYNTAX Integer32
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"Device power consumption ID."
				::= { devicePSUEntry 1 }

			devicePSUStatus OBJECT-TYPE
				SYNTAX INTEGER {
					error(0),
					on(1)
				}
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"Device power consumption status."
				::= { devicePSUEntry 2 }

			deviceCurrentPower OBJECT-TYPE
				SYNTAX Integer32
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"Device current power(W)."
				::= { devicePSUEntry 3 }

			deviceMaxPower OBJECT-TYPE
				SYNTAX Integer32
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"Device max power(W)."
				::= { devicePSUEntry 4 }

			devicePSUPercentage OBJECT-TYPE
				SYNTAX Integer32
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"Device power consumption, in hundredths of a percent."
				::= { devicePSUEntry 5 }

For example a device with DC Inputs A & B connected:

iso.3.6.1.4.1.23695.200.1.1.1.4.1.1.2.0 = INTEGER: 1
iso.3.6.1.4.1.23695.200.1.1.1.4.1.1.2.1 = INTEGER: 1

Wattage currently being pulled out of max wattage:

iso.3.6.1.4.1.23695.200.1.1.1.4.1.1.3.0 = INTEGER: 15
iso.3.6.1.4.1.23695.200.1.1.1.4.1.1.4.0 = INTEGER: 280