[Nut-upsdev] Liebert PSI 1440 support

Stewart Morgan stewart at nameless-uk.com
Tue Sep 27 22:29:33 UTC 2005


Hello,

Peter Selinger wrote:
> This looks like a libusb issue to me, not a NUT issue. Perhaps you
> should write to one of the libusb mailing lists:

	It does, indeed, appear to have been a libusb issue: short-reads in 
descriptors.  I've figured out how to get it working, but still need 
confirmation from the libusb team that it's the "right solution".  But 
in the meantime, it works for me ;)


> Once you manage to connect to your device, please report back and we
> can continue from there. -- Peter

	I've checked out a copy from CVS (as of ~11pm), copied belkin-hid.[ch] 
to liebert-hid.[ch], modified for vendor-ID and s/belkin/liebert/, 
modified the build process and updated newhidups.c.  Running it now 
outputs the following -- this is much better, yes? :)

	So, the question is now what else do you need from me to get this 
driver fully working? :)


----8<--------8<--------8<--------8<--------8<--------8<--------8<----
root@#>/newhidups -DD a
Network UPS Tools: New USB/HID UPS driver 0.28 (2.1.0)

debug level is '2'
Checking device (10AF/0004) (/dev/usb0//dev/ugen0)
- VendorID: 10af
- ProductID: 0004
- Manufacturer: Liebert
- Product: Liebert PSI 1440 FW:06
- Serial Number: 0507600052AD069
- Bus: /dev/usb0
Trying to match device
Device matches
HID descriptor retrieved (Reportlen = 653)
Report descriptor retrieved (Reportlen = 653)
Found HID device
Report Descriptor size = 653
Detected a UPS: Liebert/Liebert PSI 1440 FW:06
Using subdriver: Liebert HID 0.1
Path: UPS.LIEBERTConfig.LIEBERTConfigVoltage, Type: Feature, Value: 
230.000000
Path: UPS.LIEBERTConfig.LIEBERTConfigFrequency, Type: Feature, Value: 
50.000000
Path: UPS.LIEBERTConfig.LIEBERTConfigApparentPower, Type: Feature, 
Value: 1440.000000
Path: UPS.LIEBERTConfig.LIEBERTConfigBatteryVoltage, Type: Feature, 
Value: 48.000000
Path: UPS.LIEBERTDevice.LIEBERTModelString, Type: Feature, Value: 22.000000
Path: UPS.LIEBERTDevice.LIEBERTModelStringOffset, Type: Feature, Value: 
0.000000
Path: UPS.LIEBERTDevice.LIEBERTUPSType, Type: Feature, Value: 98.000000
Path: UPS.LIEBERTControls.LIEBERTTest, Type: Feature, Value: 1.000000
Path: UPS.LIEBERTControls.LIEBERTAudibleAlarmControl, Type: Feature, 
Value: 2.000000
Path: UPS.LIEBERTControls.LIEBERTLoadOn, Type: Feature, Value: 0.000000
Path: UPS.LIEBERTControls.LIEBERTLoadOff, Type: Feature, Value: 0.000000
Path: UPS.LIEBERTControls.LIEBERTDelayBeforeShutdown, Type: Feature, 
Value: 0.000000
Path: UPS.LIEBERTControls.LIEBERTDelayBeforeStartup, Type: Feature, 
Value: 0.000000
Path: UPS.LIEBERTPowerState.LIEBERTInput.LIEBERTVoltage, Type: Feature, 
Value: 2370.000000
Path: UPS.LIEBERTPowerState.LIEBERTInput.LIEBERTFrequency, Type: 
Feature, Value: 500.000000
Path: UPS.LIEBERTPowerState.LIEBERTInput.LIEBERTTemperature, Type: 
Feature, Value: 40.000000
Path: UPS.LIEBERTPowerState.LIEBERTOutput.LIEBERTVoltage, Type: Feature, 
Value: 2389.000000
Path: UPS.LIEBERTPowerState.LIEBERTOutput.LIEBERTFrequency, Type: 
Feature, Value: 500.000000
Path: UPS.LIEBERTPowerState.LIEBERTOutput.LIEBERTPercentLoad, Type: 
Feature, Value: 51.000000
Path: UPS.LIEBERTBatterySystem.LIEBERTVoltage, Type: Feature, Value: 
560.000000
Path: UPS.LIEBERTBatterySystem.LIEBERTCharge, Type: Feature, Value: 
100.000000
Path: UPS.LIEBERTStatus.LIEBERTPowerStatus, Type: Feature, Value: 
32768.000000
Path: UPS.LIEBERTStatus.LIEBERTBatteryStatus, Type: Feature, Value: 
16.000000
Path: UPS.00860006.00860080, Type: Feature, Value: 2.000000
Path: UPS.00860006.00860081, Type: Feature, Value: 0.000000
Path: UPS.00860006.00860082, Type: Feature, Value: 2.000000
Path: UPS.00860006.00860083, Type: Feature, Value: 120.000000
Path: UPS.00860006.00860084, Type: Feature, Value: 2.000000
Path: UPS.00860006.00860085, Type: Feature, Value: 3.000000
Path: UPS.00860006.00860086, Type: Feature, Value: 3.000000
Path: UPS.00860006.00860087, Type: Feature, Value: 0.000000
Path: UPS.PowerSummary.iProduct, Type: Feature, Value: 20.000000
Path: UPS.PowerSummary.iSerialNumber, Type: Feature, Value: 34.000000
Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, Value: 24.000000
Path: UPS.PowerSummary.iOEMInformation, Type: Feature, Value: 4.000000
Path: UPS.PowerSummary.Rechargeable, Type: Feature, Value: 1.000000
Path: UPS.PowerSummary.Charging, Type: Input, Value: 1.000000
Path: UPS.PowerSummary.Charging, Type: Feature, Value: 1.000000
Path: UPS.PowerSummary.Discharging, Type: Input, Value: 0.000000
Path: UPS.PowerSummary.Discharging, Type: Feature, Value: 0.000000
Path: UPS.PowerSummary.ConfigVoltage, Type: Feature, Value: 48.000000
Path: UPS.PowerSummary.Voltage, Type: Feature, Value: 2389.000000
Path: UPS.PowerSummary.Current, Type: Feature, Value: 0.000000
Path: UPS.PowerSummary.CapacityMode, Type: Feature, Value: 2.000000
Path: UPS.PowerSummary.RemainingCapacity, Type: Input, Value: 100.000000
Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, Value: 100.000000
Path: UPS.PowerSummary.0085006c, Type: Feature, Value: 15.000000
Path: UPS.PowerSummary.RunTimeToEmpty, Type: Input, Value: 900.000000
Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, Value: 900.000000
Path: UPS.PowerSummary.DesignCapacity, Type: Feature, Value: 100.000000
Path: UPS.PowerSummary.FullChargeCapacity, Type: Feature, Value: 100.000000
Path: UPS.PowerSummary.WarningCapacityLimit, Type: Feature, Value: 30.000000
Path: UPS.PowerSummary.CapacityGranularity2, Type: Feature, Value: 1.000000
Path: UPS.PowerSummary.RemainingCapacityLimit, Type: Feature, Value: 
20.000000
Path: UPS.PowerSummary.CapacityGranularity1, Type: Feature, Value: 1.000000
Path: UPS.PowerSummary.ACPresent, Type: Feature, Value: 1.000000
Path: UPS.PowerSummary.ACPresent, Type: Input, Value: 1.000000
Path: UPS.PowerSummary.BelowRemainingCapacityLimit, Type: Input, Value: 
0.000000
Path: UPS.PowerSummary.BelowRemainingCapacityLimit, Type: Feature, 
Value: 0.000000
Path: UPS.PowerSummary.ShutdownImminent, Type: Input, Value: 0.000000
Path: UPS.PowerSummary.ShutdownImminent, Type: Feature, Value: 0.000000
entering identify_ups(0x10af, 0x0004)

-> String: PbAc (len = 4/4)
Can't find object UPS.LIEBERTDevice.LIEBERTVoltageSensitivity
Can't find object UPS.LIEBERTConfig.LIEBERTHighVoltageTransfer
Can't find object UPS.LIEBERTConfig.LIEBERTHighVoltageTransferMax
Can't find object UPS.LIEBERTConfig.LIEBERTHighVoltageTransferMin
Can't find object UPS.LIEBERTConfig.LIEBERTLowVoltageTransfer
Can't find object UPS.LIEBERTConfig.LIEBERTLowVoltageTransferMax
Can't find object UPS.LIEBERTConfig.LIEBERTLowVoltageTransferMin
Can't find object UPS.LIEBERTConfig.LIEBERTConfigOverloadTransfer
Can't find object UPS.PowerSummary.ManufacturerDate
process_status_info: CHRG
process_status_info: !LB
process_status_info: OL
process_status_info: !LB
process_status_info:
process_status_info:
process_status_info:
process_status_info:
process_status_info:
upsdrv_updateinfo...
-> String: PbAc (len = 4/4)
process_status_info: CHRG
process_status_info: !LB
process_status_info: OL
process_status_info: !LB
process_status_info:
process_status_info:
process_status_info:
process_status_info:
process_status_info:
dstate_init: sock /var/db/nut/newhidups-a open on fd 4
upsdrv_updateinfo...
Waiting for notifications...
upsdrv_updateinfo...
Waiting for notifications...
upsdrv_updateinfo...
Waiting for notifications...
upsdrv_updateinfo...
---->8-------->8-------->8-------->8-------->8-------->8----

Stewart.



More information about the Nut-upsdev mailing list