nut icon indicating copy to clipboard operation
nut copied to clipboard

missing input/output voltage variables on APC SMT2200RMI2UC (2U rackmount model)

Open olliecook opened this issue 6 months ago • 2 comments

I have an APC SMT2200RMI2UC (a 2U rack-mount model with "Cloud-based remote monitoring") connected to a Synology RS1221+ NAS by the included USB cable. nuts is configured through the Synology UI as follows:

# grep -v -e ^$ -e ^# /etc/ups/ups.conf 
pollinterval = 5
[ups]
	driver = usbhid-ups
	port = auto

It is 'working' in the sense that upsc is reporting some information (such as when it's supporting load via battery) but not others I am interested in such as the input voltage:

# upsc ups
Init SSL without certificate database
battery.charge: 99
battery.charge.low: 10
battery.charge.warning: 50
battery.runtime: 8973
battery.runtime.low: 150
battery.type: PbAc
battery.voltage: 54.3
battery.voltage.nominal: 48.0
device.mfr: American Power Conversion 
device.model: Smart-UPS_2200
device.serial: AS2345261237    
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 5
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.version: DSM7-2-1-NewModel-repack-64570-230831
driver.version.data: APC HID 0.96
driver.version.internal: 0.41
ups.beeper.status: disabled
ups.delay.shutdown: 20
ups.firmware: UPS 06.0 / ID=1027
ups.mfr: American Power Conversion 
ups.mfr.date: 2023/11/07
ups.model: Smart-UPS_2200
ups.productid: 0003
ups.serial: AS2345261237    
ups.status: OL CHRG
ups.timer.reboot: -1
ups.timer.shutdown: -1
ups.vendorid: 051d

I had expected to see variables such as these from https://github.com/networkupstools/nut-ddl/blob/master/APC/APC__Smart-UPS_2200__usbhid-ups__2.7.4__01.dev:

input.voltage:
output.voltage:

The voltages are showing on the APC SmartConnect web dashboard, so the figures are available (at least to APC):

Screenshot 2024-08-25 at 14 36 00

The UPS firmware is showing as being the latest version on the SmartConnect website:

image

(although I am a bit sceptical because the documentation link suggests the latest firmware version is 17.2 which is far from 06.0)

Running usbhid-ups manually, I don't see anything relating to input/output voltage, only battery voltage:

# /usr/bin/usbhid-ups -a ups -D
Network UPS Tools - Generic HID driver 0.41 (DSM7-2-1-NewModel-repack-64570-230831)
USB communication driver 0.33
   0.000000	debug level is '1'
   0.000376	upsdrv_initups...
   0.111497	interrupt pipe disabled (add 'pollonly' flag to 'ups.conf' to get rid of this message)
   0.117683	Using subdriver: APC HID 0.96
   0.117702	60 HID objects found
   0.120499	Path: UPS.PowerSummary.iProduct, Type: Feature, ReportID: 0x01, Offset: 0, Size: 8, Value: 2
   0.123497	Path: UPS.PowerSummary.iSerialNumber, Type: Feature, ReportID: 0x02, Offset: 0, Size: 8, Value: 3
   0.126495	Path: UPS.PowerSummary.iManufacturer, Type: Feature, ReportID: 0x03, Offset: 0, Size: 8, Value: 1
   0.129499	Path: UPS.PowerSummary.iOEMInformation, Type: Feature, ReportID: 0x04, Offset: 0, Size: 8, Value: 1
   0.132497	Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, ReportID: 0x05, Offset: 0, Size: 8, Value: 4
   0.135498	Path: UPS.PowerSummary.Rechargeable, Type: Feature, ReportID: 0x06, Offset: 0, Size: 8, Value: 1
   0.135508	Path: UPS.PowerSummary.CapacityMode, Type: Feature, ReportID: 0x06, Offset: 8, Size: 8, Value: 2
   0.138497	Path: UPS.PowerSummary.DesignCapacity, Type: Feature, ReportID: 0x0e, Offset: 0, Size: 8, Value: 100
   0.138506	Path: UPS.PowerSummary.FullChargeCapacity, Type: Feature, ReportID: 0x0e, Offset: 8, Size: 8, Value: 100
   0.141497	Path: UPS.PowerSummary.RemainingCapacity, Type: Input, ReportID: 0x0c, Offset: 0, Size: 8, Value: 99
   0.141504	Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, ReportID: 0x0c, Offset: 0, Size: 8, Value: 99
   0.144500	Path: UPS.PowerSummary.CapacityGranularity1, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 1
   0.144508	Path: UPS.PowerSummary.CapacityGranularity2, Type: Feature, ReportID: 0x10, Offset: 8, Size: 8, Value: 1
   0.147500	Path: UPS.PowerSummary.WarningCapacityLimit, Type: Feature, ReportID: 0x0f, Offset: 0, Size: 8, Value: 50
   0.150498	Path: UPS.PowerSummary.RemainingCapacityLimit, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 10
   0.153502	Path: UPS.PowerSummary.ManufacturerDate, Type: Feature, ReportID: 0x09, Offset: 0, Size: 16, Value: 22375
   0.156500	Path: UPS.PowerSummary.RunTimeToEmpty, Type: Input, ReportID: 0x0d, Offset: 0, Size: 32, Value: 8527
   0.156512	Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, ReportID: 0x0d, Offset: 0, Size: 32, Value: 8527
   0.159499	Path: UPS.PowerSummary.DelayBeforeShutdown, Type: Input, ReportID: 0x12, Offset: 0, Size: 32, Value: -1
   0.159508	Path: UPS.PowerSummary.DelayBeforeShutdown, Type: Feature, ReportID: 0x12, Offset: 0, Size: 32, Value: -1
   0.162503	Path: UPS.PowerSummary.DelayBeforeReboot, Type: Input, ReportID: 0x13, Offset: 0, Size: 32, Value: -1
   0.162513	Path: UPS.PowerSummary.DelayBeforeReboot, Type: Feature, ReportID: 0x13, Offset: 0, Size: 32, Value: -1
   0.165498	Path: UPS.PowerSummary.RemainingTimeLimit, Type: Input, ReportID: 0x08, Offset: 0, Size: 16, Value: 150
   0.165508	Path: UPS.PowerSummary.RemainingTimeLimit, Type: Feature, ReportID: 0x08, Offset: 0, Size: 16, Value: 150
   0.168503	Path: UPS.PowerSummary.ConfigVoltage, Type: Feature, ReportID: 0x0a, Offset: 0, Size: 16, Value: 48
   0.171511	Path: UPS.PowerSummary.Voltage, Type: Feature, ReportID: 0x0b, Offset: 0, Size: 16, Value: 54.28
   0.174506	Path: UPS.PowerSummary.AudibleAlarmControl, Type: Input, ReportID: 0x14, Offset: 0, Size: 8, Value: 1
   0.174517	Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x14, Offset: 0, Size: 8, Value: 1
   0.177504	Path: UPS.PowerSummary.PresentStatus.Charging, Type: Input, ReportID: 0x07, Offset: 0, Size: 1, Value: 1
   0.177517	Path: UPS.PowerSummary.PresentStatus.Charging, Type: Feature, ReportID: 0x07, Offset: 0, Size: 1, Value: 1
   0.177525	Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Input, ReportID: 0x07, Offset: 1, Size: 1, Value: 0
   0.177555	Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Feature, ReportID: 0x07, Offset: 1, Size: 1, Value: 0
   0.177566	Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Input, ReportID: 0x07, Offset: 2, Size: 1, Value: 1
   0.177577	Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x07, Offset: 2, Size: 1, Value: 1
   0.177583	Path: UPS.PowerSummary.PresentStatus.BatteryPresent, Type: Input, ReportID: 0x07, Offset: 3, Size: 1, Value: 1
   0.177589	Path: UPS.PowerSummary.PresentStatus.BatteryPresent, Type: Feature, ReportID: 0x07, Offset: 3, Size: 1, Value: 1
   0.177597	Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Input, ReportID: 0x07, Offset: 4, Size: 1, Value: 0
   0.177605	Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Feature, ReportID: 0x07, Offset: 4, Size: 1, Value: 0
   0.177612	Path: UPS.PowerSummary.PresentStatus.ShutdownRequested, Type: Input, ReportID: 0x07, Offset: 5, Size: 1, Value: 0
   0.177619	Path: UPS.PowerSummary.PresentStatus.ShutdownRequested, Type: Feature, ReportID: 0x07, Offset: 5, Size: 1, Value: 0
   0.177626	Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Input, ReportID: 0x07, Offset: 6, Size: 1, Value: 0
   0.177635	Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Feature, ReportID: 0x07, Offset: 6, Size: 1, Value: 0
   0.177642	Path: UPS.PowerSummary.PresentStatus.RemainingTimeLimitExpired, Type: Input, ReportID: 0x07, Offset: 7, Size: 1, Value: 0
   0.177651	Path: UPS.PowerSummary.PresentStatus.RemainingTimeLimitExpired, Type: Feature, ReportID: 0x07, Offset: 7, Size: 1, Value: 0
   0.177659	Path: UPS.PowerSummary.PresentStatus.CommunicationLost, Type: Input, ReportID: 0x07, Offset: 8, Size: 1, Value: 0
   0.177666	Path: UPS.PowerSummary.PresentStatus.CommunicationLost, Type: Feature, ReportID: 0x07, Offset: 8, Size: 1, Value: 0
   0.177673	Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Input, ReportID: 0x07, Offset: 9, Size: 1, Value: 0
   0.177680	Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Feature, ReportID: 0x07, Offset: 9, Size: 1, Value: 0
   0.177687	Path: UPS.PowerSummary.PresentStatus.Overload, Type: Input, ReportID: 0x07, Offset: 10, Size: 1, Value: 0
   0.177694	Path: UPS.PowerSummary.PresentStatus.Overload, Type: Feature, ReportID: 0x07, Offset: 10, Size: 1, Value: 0
   0.177701	Path: UPS.PowerSummary.PresentStatus.VoltageNotRegulated, Type: Input, ReportID: 0x07, Offset: 11, Size: 1, Value: 0
   0.177709	Path: UPS.PowerSummary.PresentStatus.VoltageNotRegulated, Type: Feature, ReportID: 0x07, Offset: 11, Size: 1, Value: 0
   0.180527	Path: UPS.ff8600fd, Type: Input, ReportID: 0x89, Offset: 0, Size: 8, Value: 0
   0.183511	Path: UPS.ff8600fc, Type: Output, ReportID: 0x90, Offset: 0, Size: 8, Value: 0
   0.186512	Path: UPS.ff8600f1, Type: Feature, ReportID: 0x96, Offset: 0, Size: 8, Value: 0
   0.189513	Path: UPS.ff8600f7, Type: Feature, ReportID: 0x8d, Offset: 0, Size: 8, Value: 0
   0.192499	Path: UPS.ff8600f4, Type: Feature, ReportID: 0x92, Offset: 0, Size: 8, Value: 127
   0.195496	Path: UPS.ff8600f3, Type: Feature, ReportID: 0x93, Offset: 0, Size: 8, Value: 160
   0.198508	Path: UPS.ff8600f2, Type: Feature, ReportID: 0x94, Offset: 0, Size: 8, Value: 224
   0.201497	Path: UPS.ff8600f6, Type: Feature, ReportID: 0x8e, Offset: 0, Size: 8, Value: 0
   0.201522	Detected a UPS: American Power Conversion /Smart-UPS_2200 FW:UPS 06.0 / ID=1027
   0.207743	upsdrv_initinfo...
   0.207752	upsdrv_updateinfo...
   0.207755	Not using interrupt pipe...
   0.207760	Quick update...
...

I am running the latest version of the host OS (DSM 7.2.1-69057 Update 5) for the Synology RS1221+ NAS. I don't know which version of nuts they have bundled. Is there a command to run to find out?

I'll see if I can upgrade the device firmware as a next step. If there's anything else anyone can recommend, that'd be great.

One question that springs to mind is whether the usbhid-ups driver is the most appropriate for this model of UPS. Should I be using apcsmart or apcupsd-ups instead?

Thank you.

olliecook avatar Aug 25 '24 13:08 olliecook