[Nut-upsuser] Differences between USB and serial on an MGE Pulsar Evolution 3000
Neil A. Hillard
neil at dana.org.uk
Thu Oct 6 13:49:53 UTC 2011
Hi,
I've been using NUT for many years to look after the UPS on my home
servers. Originally I was using a Compaq R3000 but that was replaced
with an MGE Pulsar Evolution 3000 about a couple of years ago because
the Compaq one was just too noisy!
I'm just setting up a replacement server and would like to connect it
using a serial cable as I've found that the USB connection occasionally
drops out on the current server.
Unfortunately there appears to be a lot of parameters missing from the
serial driver (using mge-shut) when compared to the USB driver
(usbhid-ups) and more importantly, output.voltage.nominal is reported at
72 Volts instead of the correct 230 Volts.
I've looked into the source code (I know a little C) but unfortunately
I'm unable to follow it completely to look at correcting the problem and
perhaps adding in the missing parameters (if they're available over the
serial connection.
I've included below a debug output from mge-shut that shows the current
output voltage being fetched correctly but the nominal voltage coming
back incorrectly. I've also included the upsc output for both serial
and USB connections.
If anyone could give me any advice as to why the nominal voltage is
decoded incorrectly (or even describe how it's decoded so I can
investigate it myself) then that would be appreciated. Advice on how to
add the extra parameters in would also be appreciated.
Many thanks in advance,
Neil.
Extract from mge-shut -DDDDDDD
------------------------------
12.207366 entering hid_get_value(UPS.PowerConverter.Output.Voltage)
12.207371 entering lookup_path(UPS.PowerConverter.Output.Voltage)
12.207375 parsing UPS
12.207384 Looking up UPS
12.207387 hid_lookup_usage: found 840004
12.207389 parsing PowerConverter
12.207392 Looking up PowerConverter
12.207395 hid_lookup_usage: found 840016
12.207397 parsing Output
12.207408 Looking up Output
12.207411 hid_lookup_usage: found 84001c
12.207414 parsing Voltage
12.207416 Looking up Voltage
12.207419 hid_lookup_usage: found 840030
12.207422 Path depth = 4
12.207425 0: Usage(00840004)
12.207427 1: Usage(00840016)
12.207430 2: Usage(0084001c)
12.207433 3: Usage(00840030)
12.207438 entering shut_get_report(id: 12, len: 1800)
12.207441 entering shut_packet_send (8)
12.207444 shut_checksum = a9
12.207449 sent: (11 bytes) => 81 88 a1 01 12 03 00 00 00 18 a9
12.263301 received: 06
12.263310 shut_wait_ack(): ACK received
12.263315 received ACK
12.263319 entering shut_packet_recv (6144)
12.268293 received: 84
12.272302 received: 88
12.272312 Receive: (2 bytes) => 84 88
12.276301 received: 12
12.280300 received: d2
12.284295 received: 00
12.288300 received: 64
12.292290 received: 00
12.297295 received: 32
12.301300 received: eb
12.305295 received: 00
12.305306 Receive: (8 bytes) => 12 d2 00 64 00 32 eb 00
12.309300 received: 7d
12.309309 shut_checksum: 7d => OK
12.309316 sent: (1 bytes) => 06
12.309330 shut_get_report: (8 bytes) => 12 d2 00 64 00 32 eb 00
12.309339 Object's report: (10 bytes) => 12 d2 00 64 00 32 eb 00
a1 00
12.309343 Value = 235
12.309351 send_to_all: SETINFO output.voltage "235"
12.309357 entering hid_get_value(UPS.PowerSummary.ConfigVoltage)
12.309362 entering lookup_path(UPS.PowerSummary.ConfigVoltage)
12.309366 parsing UPS
12.309370 Looking up UPS
12.309375 hid_lookup_usage: found 840004
12.309384 parsing PowerSummary
12.309387 Looking up PowerSummary
12.309390 hid_lookup_usage: found 840024
12.309392 parsing ConfigVoltage
12.309395 Looking up ConfigVoltage
12.309398 hid_lookup_usage: found 840040
12.309400 Path depth = 3
12.309411 0: Usage(00840004)
12.309415 1: Usage(00840024)
12.309417 2: Usage(00840040)
12.309423 entering shut_get_report(id: 08, len: 1800)
12.309426 entering shut_packet_send (8)
12.309429 shut_checksum = b3
12.309435 sent: (11 bytes) => 81 88 a1 01 08 03 00 00 00 18 b3
12.368306 received: 06
12.368317 shut_wait_ack(): ACK received
12.368322 received ACK
12.368326 entering shut_packet_recv (6144)
12.373292 received: 84
12.377302 received: 22
12.377312 Receive: (2 bytes) => 84 22
12.381302 received: 08
12.385295 received: 48
12.385305 Receive: (2 bytes) => 08 48
12.389302 received: 40
12.389310 shut_checksum: 40 => OK
12.389318 sent: (1 bytes) => 06
12.389331 shut_get_report: (2 bytes) => 08 48
12.389340 Object's report: (10 bytes) => 08 48 00 64 00 32 eb 00
a1 00
12.389344 Value = 72
12.389352 send_to_all: SETINFO output.voltage.nominal "72"
12.389358 entering hid_get_value(UPS.PowerSummary.Output.Current)
12.389363 entering lookup_path(UPS.PowerSummary.Output.Current)
USB (using usbhid-ups)
----------------------
battery.charge: 100
battery.charge.low: 20
battery.charge.restart: 0
battery.energysave: no
battery.protection: yes
battery.runtime: 5400
battery.type: PbAc
device.mfr: MGE UPS SYSTEMS
device.model: Pulsar Evolution 3000
device.serial: AF3Ennnnn
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.productid: ffff
driver.parameter.vendorid: 0463
driver.version: 2.6.1
driver.version.data: MGE HID 1.21
driver.version.internal: 0.35
input.frequency: 50.0
input.frequency.extended: no
input.frequency.nominal: 50
input.sensitivity: normal
input.transfer.boost.low: 184
input.transfer.high: 294
input.transfer.low: 160
input.transfer.trim.high: 265
input.voltage: 238.0
input.voltage.extended: no
input.voltage.nominal: 230
outlet.1.autoswitch.charge.low: 0
outlet.1.delay.shutdown: 65535
outlet.1.delay.start: 3
outlet.1.desc: PowerShare Outlet 1
outlet.1.id: 1
outlet.1.status: on
outlet.1.switchable: yes
outlet.2.autoswitch.charge.low: 0
outlet.2.delay.shutdown: 65535
outlet.2.delay.start: 6
outlet.2.desc: PowerShare Outlet 2
outlet.2.id: 2
outlet.2.status: on
outlet.2.switchable: yes
outlet.desc: Main Outlet
outlet.id: 0
outlet.switchable: no
output.current: 1.00
output.current.nominal: 13.04
output.frequency: 50.0
output.frequency.nominal: 50
output.voltage: 236.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.delay.start: 30
ups.load: 10
ups.mfr: MGE UPS SYSTEMS
ups.model: Pulsar Evolution 3000
ups.power: 210
ups.power.nominal: 3000
ups.productid: ffff
ups.realpower.nominal: 2000
ups.serial: AF3E39202
ups.start.auto: yes
ups.start.battery: yes
ups.start.reboot: yes
ups.status: OL CHRG
ups.test.interval: 604800
ups.test.result: Done and passed
ups.timer.shutdown: -1
ups.timer.start: -10
ups.type: offline / line interactive
ups.vendorid: 0463
Serial (using mge-shut)
-----------------------
battery.charge: 100
battery.charge.low: 20
battery.runtime: 5400
device.mfr: MGE UPS SYSTEMS
device.model: Pulsar Evolution 3000
device.serial: AF3E39202
device.type: ups
driver.name: mge-shut
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ups0
driver.version: 2.6.2
driver.version.internal: 0.69
input.frequency: 50
input.voltage: 240
outlet.1.autoswitch.charge.low: 0
outlet.1.delay.shutdown: -1
outlet.1.delay.start: -1
outlet.1.desc: PowerShare Outlet 1
outlet.1.id: 1
outlet.1.switch: 1
outlet.1.switchable: 1
outlet.2.autoswitch.charge.low: 0
outlet.2.delay.shutdown: -1
outlet.2.delay.start: -1
outlet.2.desc: PowerShare Outlet 2
outlet.2.id: 2
outlet.2.switch: 1
outlet.2.switchable: 1
outlet.desc: Main Outlet
outlet.id: 0
outlet.switchable: 0
output.frequency: 50
output.voltage: 237
output.voltage.nominal: 72
ups.load: 10
ups.mfr: MGE UPS SYSTEMS
ups.model: Pulsar Evolution 3000
ups.power.nominal: 3000
ups.serial: AF3Ennnnn
ups.status: OL CHRG
ups.test.result: Done and passed
ups.timer.shutdown: -1
ups.timer.start: -1
More information about the Nut-upsuser
mailing list