Cannot configure Tescom UPS
Hi all!
I have replaced an APC UPS with a Tescom one on my raspberry nut server. I have ran nut-scanner and it produces the following output:
[nutdev1]
driver = "nutdrv_atcl_usb"
port = "auto"
vendorid = "0001"
productid = "0000"
product = "MEC0003"
bus = "001"
I tried to use the proposed config but it does not work (I'm missing something obviously) anyway I used the following config and it seems to work
[nutdev1]
driver = nutdrv_qx
override.battery.packs = 1
port = auto
But all values come up zeroed and only status is shown (OL) see below. Is there a way to get data from this UPS?
root@upssrv02:~# upsc nutdev1@localhost
Init SSL without certificate database
battery.packs: 1
battery.voltage: 0.00
device.type: ups
driver.name: nutdrv_qx
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.version: 2.7.4
driver.version.data: Q1 0.07
driver.version.internal: 0.28
input.frequency: 0.0
input.voltage: 0.0
input.voltage.fault: 0.0
output.voltage: 0.0
ups.beeper.status: disabled
ups.delay.shutdown: 30
ups.delay.start: 180
ups.load: 0
ups.productid: 0000
ups.status: OL
ups.temperature: 0.0
ups.type: online
ups.vendorid: 0001
Thank you and best regards to all!
Try to start the driver with a higher debug verbosity to see what strings the UPS sends back and if it spews zeroes or your driver build misinterprets something. For details see https://github.com/networkupstools/nut/wiki/Changing-NUT-daemon-debug-verbosity
With NUT v2.7.4 (note it is antique) it may be easier to stop the driver running under a service umbrella (if any), e.g. systemctl stop nut-driver and start it from command line like /lib/nut/nutdrv_qx -a nutdev1 -DDDDDD and then "Ctrl+C" it after it begins regularly looping for data updates - and post here whatever it wrote to console until then.
Consider custom-building a newer NUT version, see https://github.com/networkupstools/nut/wiki/Building-NUT-for-in%E2%80%90place-upgrades-or-non%E2%80%90disruptive-tests about testing a newly built driver and eventually replacing the existing installation if the build is better. It is possible your device talks some newer Qx dialect, support for which could have been added in the past decade since NUT v2.7.4 was released, and would convey more data via those newer queries.
Hi! Below the output of the proposed command, it really shows zeros...
root@upssrv02:~# /lib/nut/nutdrv_qx -a nutdev1 -DDDDDD
Network UPS Tools - Generic Q* USB/Serial driver 0.28 (2.7.4)
USB communication driver 0.33
0.000000 debug level is '6'
0.002232 upsdrv_initups...
0.003205 Checking device (0001/0000) (001/003)
0.004682 - VendorID: 0001
0.004861 - ProductID: 0000
0.005037 - Manufacturer: unknown
0.005195 - Product: MEC0003
0.005367 - Serial Number: unknown
0.005520 - Bus: 001
0.005868 - Device release number: 0100
0.006061 Trying to match device
0.006221 Device matches
0.006636 nut_usb_set_altinterface: skipped usb_set_altinterface(udev, 0)
0.006834 send_to_all: SETINFO ups.vendorid "0001"
0.007011 send_to_all: SETINFO ups.productid "0000"
0.007315 send: QGS
0.007528 read: QGS
0.007710 qx_process_answer: short reply (input.voltage)
0.007967 send: QGS
0.008138 read: QGS
0.008303 qx_process_answer: short reply (input.voltage)
0.008462 send: QGS
0.008525 read: QGS
0.008672 qx_process_answer: short reply (input.voltage)
0.008861 send: M
0.009014 read: M
0.009202 voltronic_qs_protocol: invalid protocol [M]
0.009343 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009405 send: M
0.009462 read: M
0.009520 voltronic_qs_protocol: invalid protocol [M]
0.009577 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009636 send: M
0.009692 read: M
0.009750 voltronic_qs_protocol: invalid protocol [M]
0.009807 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009865 send: M
0.009921 read: M
0.009981 voltronic_qs_hex_protocol: invalid protocol [M]
0.010038 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010097 send: M
0.010153 read: M
0.010212 voltronic_qs_hex_protocol: invalid protocol [M]
0.010270 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010328 send: M
0.010384 read: M
0.010442 voltronic_qs_hex_protocol: invalid protocol [M]
0.010500 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010559 send: QS
0.010616 read: QS
0.010676 qx_process_answer: short reply (input.voltage)
0.010734 send: QS
0.010790 read: QS
0.010943 qx_process_answer: short reply (input.voltage)
0.011098 send: QS
0.011251 read: QS
0.011405 qx_process_answer: short reply (input.voltage)
0.011520 send: D
0.011671 read: D
0.011832 qx_process_answer: short reply (input.voltage)
0.011967 send: D
0.012024 read: D
0.012081 qx_process_answer: short reply (input.voltage)
0.012140 send: D
0.012196 read: D
0.012253 qx_process_answer: short reply (input.voltage)
0.012309 send: Q1
0.015401 received 47 (40)
0.015489 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.015576 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.015638 30 30 30 0d
0.015694 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.015774 send_to_all: SETINFO input.voltage "0.0"
0.015869 send: ID
0.015928 read: ID
0.015986 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.016045 qx_process: failed to preprocess answer [device.model]
0.016106 send_to_all: DELINFO input.voltage
0.016165 send: Q1
0.019088 received 47 (40)
0.019186 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.019262 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.019320 30 30 30 0d
0.019424 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.019602 send_to_all: SETINFO input.voltage "0.0"
0.019787 send: ID
0.020100 read: ID
0.020296 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.020626 qx_process: failed to preprocess answer [device.model]
0.020795 send_to_all: DELINFO input.voltage
0.020970 send: Q1
0.024104 received 47 (40)
0.024324 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.024500 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.024678 30 30 30 0d
0.024843 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.025042 send_to_all: SETINFO input.voltage "0.0"
0.025224 send: ID
0.025400 read: ID
0.025582 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.025737 qx_process: failed to preprocess answer [device.model]
0.025905 send_to_all: DELINFO input.voltage
0.026090 send: Q1
0.029245 received 47 (40)
0.029472 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.029671 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.029842 30 30 30 0d
0.029997 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.030185 send_to_all: SETINFO input.voltage "0.0"
0.030355 send: QPI
0.030518 read: QPI
0.030688 qx_process_answer: short reply (ups.firmware.aux)
0.030866 send_to_all: DELINFO input.voltage
0.031023 send: Q1
0.034258 received 47 (40)
0.034460 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.034658 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.034817 30 30 30 0d
0.034981 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.035168 send_to_all: SETINFO input.voltage "0.0"
0.035338 send: QPI
0.035519 read: QPI
0.035675 qx_process_answer: short reply (ups.firmware.aux)
0.035887 send_to_all: DELINFO input.voltage
0.036071 send: Q1
0.039097 received 47 (40)
0.039310 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.039488 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.039685 30 30 30 0d
0.039889 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.040085 send_to_all: SETINFO input.voltage "0.0"
0.040263 send: QPI
0.040419 read: QPI
0.040596 qx_process_answer: short reply (ups.firmware.aux)
0.040779 send_to_all: DELINFO input.voltage
0.040938 send: Q1
0.044101 received 47 (40)
0.044293 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.044480 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.044641 30 30 30 0d
0.044814 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.045009 send_to_all: SETINFO input.voltage "0.0"
0.045204 send: I
0.048101 received 39 (35)
0.048293 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.048467 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.048644 read: #
0.048815 ups_infoval_set: non significant value [ups.firmware]
0.049052 send_to_all: DELINFO input.voltage
0.049370 send: Q1
0.052544 received 47 (40)
0.052735 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.052933 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.053093 30 30 30 0d
0.053270 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.053472 send_to_all: SETINFO input.voltage "0.0"
0.053664 send: I
0.056241 received 39 (35)
0.056347 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.056424 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.056481 read: #
0.056545 ups_infoval_set: non significant value [ups.firmware]
0.056607 send_to_all: DELINFO input.voltage
0.056667 send: Q1
0.059542 received 47 (40)
0.059678 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.059895 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.060069 30 30 30 0d
0.060294 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.060533 send_to_all: SETINFO input.voltage "0.0"
0.060611 send: I
0.063239 received 39 (35)
0.063321 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.063415 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.063596 read: #
0.063768 ups_infoval_set: non significant value [ups.firmware]
0.063979 send_to_all: DELINFO input.voltage
0.064151 send: Q1
0.067387 received 47 (40)
0.067571 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.067764 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.067959 30 30 30 0d
0.068141 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.068330 send_to_all: SETINFO input.voltage "0.0"
0.068505 send: FW?
0.068672 read: FW?
0.068848 qx_process_answer: short reply (ups.firmware)
0.069036 send_to_all: DELINFO input.voltage
0.069221 send: Q1
0.072545 received 47 (40)
0.072968 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.073154 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.073340 30 30 30 0d
0.073523 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.073741 send_to_all: SETINFO input.voltage "0.0"
0.073910 send: FW?
0.074280 read: FW?
0.074436 qx_process_answer: short reply (ups.firmware)
0.074623 send_to_all: DELINFO input.voltage
0.074721 send: Q1
0.077545 received 47 (40)
0.077681 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.077880 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.078060 30 30 30 0d
0.078235 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.078432 send_to_all: SETINFO input.voltage "0.0"
0.078602 send: FW?
0.078783 read: FW?
0.078967 qx_process_answer: short reply (ups.firmware)
0.079154 send_to_all: DELINFO input.voltage
0.079313 send: Q1
0.082391 received 47 (40)
0.082576 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.082742 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.082804 30 30 30 0d
0.082861 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.082935 send_to_all: SETINFO input.voltage "0.0"
0.082994 Using protocol: Q1 0.07
0.083063 send_to_all: SETINFO device.type "ups"
0.083126 send_to_all: SETINFO driver.version "2.7.4"
0.083187 send_to_all: SETINFO driver.version.internal "0.28"
0.083250 send_to_all: SETINFO driver.name "nutdrv_qx"
0.083307 upsdrv_initinfo...
0.083369 send_to_all: SETINFO driver.version.data "Q1 0.07"
0.083431 send: Q1
0.086387 received 47 (40)
0.086509 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.086717 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.086901 30 30 30 0d
0.087055 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.087253 send_to_all: SETINFO input.voltage.fault "0.0"
0.087453 send_to_all: SETINFO output.voltage "0.0"
0.087645 send_to_all: SETINFO ups.load "0"
0.087889 send_to_all: SETINFO input.frequency "0.0"
0.088077 send_to_all: SETINFO battery.voltage "0.00"
0.088155 send_to_all: SETINFO ups.temperature "0.0"
0.088220 update_status: OL
0.088284 update_status: !LB
0.088361 send_to_all: SETINFO ups.type "online"
0.088447 update_status: !CAL
0.088609 update_status: !FSD
0.088775 send_to_all: SETINFO ups.beeper.status "disabled"
0.088961 send_to_all: ADDCMD beeper.toggle
0.089149 send_to_all: ADDCMD load.off
0.089308 send_to_all: ADDCMD load.on
0.089486 send_to_all: ADDCMD shutdown.return
0.089654 send_to_all: ADDCMD shutdown.stayoff
0.089841 send_to_all: ADDCMD shutdown.stop
0.090009 send_to_all: ADDCMD test.battery.start
0.090167 send_to_all: ADDCMD test.battery.start.deep
0.090364 send_to_all: ADDCMD test.battery.start.quick
0.090523 send_to_all: ADDCMD test.battery.stop
0.090714 send_to_all: SETINFO ups.delay.start "180"
0.090894 send_to_all: SETFLAGS ups.delay.start RW
0.091048 send_to_all: ADDRANGE ups.delay.start 0 599940
0.091115 send_to_all: SETINFO ups.delay.shutdown "30"
0.091177 send_to_all: SETFLAGS ups.delay.shutdown RW
0.091237 send_to_all: ADDRANGE ups.delay.shutdown 12 600
0.091378 Battery runtime will not be calculated (runtimecal not set)
0.091572 send_to_all: SETINFO driver.parameter.pollfreq "30"
0.091736 upsdrv_updateinfo...
0.091957 Quick update...
0.092138 send: Q1
0.095394 received 47 (40)
0.095585 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.095775 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.095956 30 30 30 0d
0.096110 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.096306 update_status: OL
0.096470 update_status: !LB
0.096660 update_status: !CAL
0.096844 update_status: !FSD
0.097028 send_to_all: SETINFO ups.status "OL"
0.097212 send_to_all: DATAOK
0.097579 dstate_init: sock /run/nut/nutdrv_qx-nutdev1 open on fd 5
0.097752 send_to_all: SETINFO driver.parameter.pollinterval "2"
0.097913 send_to_all: SETINFO driver.parameter.synchronous "no"
0.098077 upsdrv_updateinfo...
0.098230 Quick update...
0.098378 send: Q1
0.101387 received 47 (40)
0.101512 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.101694 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.101790 30 30 30 0d
0.101846 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.101909 update_status: OL
0.101976 update_status: !LB
0.102042 update_status: !CAL
0.102105 update_status: !FSD
0.439534 new connection on fd 6
0.439748 send_to_one: SETINFO battery.packs "1"
0.440003 send_to_one: SETFLAGS battery.packs
0.440202 send_to_one: SETINFO battery.voltage "0.00"
0.440378 send_to_one: SETINFO device.type "ups"
0.440567 send_to_one: SETINFO driver.name "nutdrv_qx"
0.440757 send_to_one: SETINFO driver.parameter.pollfreq "30"
0.441134 send_to_one: SETINFO driver.parameter.pollinterval "2"
0.441342 send_to_one: SETINFO driver.parameter.port "auto"
0.441532 send_to_one: SETINFO driver.parameter.synchronous "no"
0.441701 send_to_one: SETINFO driver.version "2.7.4"
0.441898 send_to_one: SETINFO driver.version.data "Q1 0.07"
0.442090 send_to_one: SETINFO driver.version.internal "0.28"
0.442259 send_to_one: SETINFO input.frequency "0.0"
0.442436 send_to_one: SETINFO input.voltage "0.0"
0.442604 send_to_one: SETINFO input.voltage.fault "0.0"
0.442779 send_to_one: SETINFO output.voltage "0.0"
0.442950 send_to_one: SETINFO ups.beeper.status "disabled"
0.443065 send_to_one: SETINFO ups.delay.shutdown "30"
0.443137 send_to_one: ADDRANGE ups.delay.shutdown 12 600
0.443207 send_to_one: SETFLAGS ups.delay.shutdown RW
0.443275 send_to_one: SETINFO ups.delay.start "180"
0.443344 send_to_one: ADDRANGE ups.delay.start 0 599940
0.443414 send_to_one: SETFLAGS ups.delay.start RW
0.443481 send_to_one: SETINFO ups.load "0"
0.443550 send_to_one: SETINFO ups.productid "0000"
0.443618 send_to_one: SETINFO ups.status "OL"
0.443698 send_to_one: SETINFO ups.temperature "0.0"
0.443794 send_to_one: SETINFO ups.type "online"
0.443937 send_to_one: SETINFO ups.vendorid "0001"
0.444112 send_to_one: ADDCMD beeper.toggle
0.444278 send_to_one: ADDCMD load.off
0.444452 send_to_one: ADDCMD load.on
0.444616 send_to_one: ADDCMD shutdown.return
0.444794 send_to_one: ADDCMD shutdown.stayoff
0.444898 send_to_one: ADDCMD shutdown.stop
0.444966 send_to_one: ADDCMD test.battery.start
0.445035 send_to_one: ADDCMD test.battery.start.deep
0.445103 send_to_one: ADDCMD test.battery.start.quick
0.445176 send_to_one: ADDCMD test.battery.stop
0.445243 send_to_one: DATAOK
0.445310 send_to_one: DUMPDONE
2.099820 upsdrv_updateinfo...
2.100101 Quick update...
2.100377 send: Q1
2.103762 received 47 (40)
2.104134 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
2.104429 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
2.104716 30 30 30 0d
2.104979 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
2.105271 update_status: OL
2.105578 update_status: !LB
2.105866 update_status: !CAL
2.106169 update_status: !FSD
4.101947 upsdrv_updateinfo...
4.102297 Quick update...
4.102569 send: Q1
4.106050 received 47 (40)
4.106365 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
4.106692 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
4.106958 30 30 30 0d
4.107440 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
4.107700 update_status: OL
4.107826 update_status: !LB
4.108002 update_status: !CAL
4.108141 update_status: !FSD
6.104056 upsdrv_updateinfo...
6.104287 Quick update...
6.104560 send: Q1
6.107736 received 47 (40)
6.108113 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
6.108441 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
6.108749 30 30 30 0d
6.109046 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
6.109317 update_status: OL
6.109623 update_status: !LB
6.110166 update_status: !CAL
6.110482 update_status: !FSD
7.739406 send_to_one: PONG
8.104484 upsdrv_updateinfo...
8.104615 Quick update...
8.104714 send: Q1
8.107744 received 47 (40)
8.107936 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
8.108071 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
8.108177 30 30 30 0d
8.108280 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
8.108391 update_status: OL
8.108522 update_status: !LB
8.108636 update_status: !CAL
8.108742 update_status: !FSD
10.106636 upsdrv_updateinfo...
10.106810 Quick update...
10.106921 send: Q1
10.110174 received 47 (40)
10.110328 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
10.110466 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
10.110576 30 30 30 0d
10.110673 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
10.110787 update_status: OL
10.110904 update_status: !LB
10.111018 update_status: !CAL
10.111127 update_status: !FSD
12.108707 upsdrv_updateinfo...
12.108860 Quick update...
12.108978 send: Q1
12.112162 received 47 (40)
12.112312 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
12.112451 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
12.112560 30 30 30 0d
12.112691 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
12.112800 update_status: OL
12.112904 update_status: !LB
12.113006 update_status: !CAL
12.113144 update_status: !FSD
14.110811 upsdrv_updateinfo...
14.110978 Quick update...
14.111099 send: Q1
14.114170 received 47 (40)
14.114322 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
14.114462 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
14.114573 30 30 30 0d
14.114659 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
14.114766 update_status: OL
14.114883 update_status: !LB
14.115003 update_status: !CAL
14.115108 update_status: !FSD
15.444198 send_to_one: PONG
16.111544 upsdrv_updateinfo...
16.111685 Quick update...
16.111814 send: Q1
16.115163 received 47 (40)
16.115340 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
16.115477 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
16.115583 30 30 30 0d
Hi! Below the output of the proposed command, it really shows zeros...
root@upssrv02:~# /lib/nut/nutdrv_qx -a nutdev1 -DDDDDD
Network UPS Tools - Generic Q* USB/Serial driver 0.28 (2.7.4)
USB communication driver 0.33
0.000000 debug level is '6'
0.002232 upsdrv_initups...
0.003205 Checking device (0001/0000) (001/003)
0.004682 - VendorID: 0001
0.004861 - ProductID: 0000
0.005037 - Manufacturer: unknown
0.005195 - Product: MEC0003
0.005367 - Serial Number: unknown
0.005520 - Bus: 001
0.005868 - Device release number: 0100
0.006061 Trying to match device
0.006221 Device matches
0.006636 nut_usb_set_altinterface: skipped usb_set_altinterface(udev, 0)
0.006834 send_to_all: SETINFO ups.vendorid "0001"
0.007011 send_to_all: SETINFO ups.productid "0000"
0.007315 send: QGS
0.007528 read: QGS
0.007710 qx_process_answer: short reply (input.voltage)
0.007967 send: QGS
0.008138 read: QGS
0.008303 qx_process_answer: short reply (input.voltage)
0.008462 send: QGS
0.008525 read: QGS
0.008672 qx_process_answer: short reply (input.voltage)
0.008861 send: M
0.009014 read: M
0.009202 voltronic_qs_protocol: invalid protocol [M]
0.009343 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009405 send: M
0.009462 read: M
0.009520 voltronic_qs_protocol: invalid protocol [M]
0.009577 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009636 send: M
0.009692 read: M
0.009750 voltronic_qs_protocol: invalid protocol [M]
0.009807 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.009865 send: M
0.009921 read: M
0.009981 voltronic_qs_hex_protocol: invalid protocol [M]
0.010038 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010097 send: M
0.010153 read: M
0.010212 voltronic_qs_hex_protocol: invalid protocol [M]
0.010270 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010328 send: M
0.010384 read: M
0.010442 voltronic_qs_hex_protocol: invalid protocol [M]
0.010500 ups_infoval_set: failed to preprocess value [ups.firmware.aux: M]
0.010559 send: QS
0.010616 read: QS
0.010676 qx_process_answer: short reply (input.voltage)
0.010734 send: QS
0.010790 read: QS
0.010943 qx_process_answer: short reply (input.voltage)
0.011098 send: QS
0.011251 read: QS
0.011405 qx_process_answer: short reply (input.voltage)
0.011520 send: D
0.011671 read: D
0.011832 qx_process_answer: short reply (input.voltage)
0.011967 send: D
0.012024 read: D
0.012081 qx_process_answer: short reply (input.voltage)
0.012140 send: D
0.012196 read: D
0.012253 qx_process_answer: short reply (input.voltage)
0.012309 send: Q1
0.015401 received 47 (40)
0.015489 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.015576 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.015638 30 30 30 0d
0.015694 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.015774 send_to_all: SETINFO input.voltage "0.0"
0.015869 send: ID
0.015928 read: ID
0.015986 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.016045 qx_process: failed to preprocess answer [device.model]
0.016106 send_to_all: DELINFO input.voltage
0.016165 send: Q1
0.019088 received 47 (40)
0.019186 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.019262 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.019320 30 30 30 0d
0.019424 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.019602 send_to_all: SETINFO input.voltage "0.0"
0.019787 send: ID
0.020100 read: ID
0.020296 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.020626 qx_process: failed to preprocess answer [device.model]
0.020795 send_to_all: DELINFO input.voltage
0.020970 send: Q1
0.024104 received 47 (40)
0.024324 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.024500 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.024678 30 30 30 0d
0.024843 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.025042 send_to_all: SETINFO input.voltage "0.0"
0.025224 send: ID
0.025400 read: ID
0.025582 bestups_preprocess_id_answer: wrong length [device.model: 3]
0.025737 qx_process: failed to preprocess answer [device.model]
0.025905 send_to_all: DELINFO input.voltage
0.026090 send: Q1
0.029245 received 47 (40)
0.029472 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.029671 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.029842 30 30 30 0d
0.029997 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.030185 send_to_all: SETINFO input.voltage "0.0"
0.030355 send: QPI
0.030518 read: QPI
0.030688 qx_process_answer: short reply (ups.firmware.aux)
0.030866 send_to_all: DELINFO input.voltage
0.031023 send: Q1
0.034258 received 47 (40)
0.034460 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.034658 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.034817 30 30 30 0d
0.034981 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.035168 send_to_all: SETINFO input.voltage "0.0"
0.035338 send: QPI
0.035519 read: QPI
0.035675 qx_process_answer: short reply (ups.firmware.aux)
0.035887 send_to_all: DELINFO input.voltage
0.036071 send: Q1
0.039097 received 47 (40)
0.039310 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.039488 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.039685 30 30 30 0d
0.039889 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.040085 send_to_all: SETINFO input.voltage "0.0"
0.040263 send: QPI
0.040419 read: QPI
0.040596 qx_process_answer: short reply (ups.firmware.aux)
0.040779 send_to_all: DELINFO input.voltage
0.040938 send: Q1
0.044101 received 47 (40)
0.044293 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.044480 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.044641 30 30 30 0d
0.044814 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.045009 send_to_all: SETINFO input.voltage "0.0"
0.045204 send: I
0.048101 received 39 (35)
0.048293 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.048467 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.048644 read: #
0.048815 ups_infoval_set: non significant value [ups.firmware]
0.049052 send_to_all: DELINFO input.voltage
0.049370 send: Q1
0.052544 received 47 (40)
0.052735 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.052933 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.053093 30 30 30 0d
0.053270 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.053472 send_to_all: SETINFO input.voltage "0.0"
0.053664 send: I
0.056241 received 39 (35)
0.056347 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.056424 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.056481 read: #
0.056545 ups_infoval_set: non significant value [ups.firmware]
0.056607 send_to_all: DELINFO input.voltage
0.056667 send: Q1
0.059542 received 47 (40)
0.059678 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.059895 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.060069 30 30 30 0d
0.060294 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.060533 send_to_all: SETINFO input.voltage "0.0"
0.060611 send: I
0.063239 received 39 (35)
0.063321 read: (39 bytes) => 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0.063415 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d
0.063596 read: #
0.063768 ups_infoval_set: non significant value [ups.firmware]
0.063979 send_to_all: DELINFO input.voltage
0.064151 send: Q1
0.067387 received 47 (40)
0.067571 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.067764 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.067959 30 30 30 0d
0.068141 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.068330 send_to_all: SETINFO input.voltage "0.0"
0.068505 send: FW?
0.068672 read: FW?
0.068848 qx_process_answer: short reply (ups.firmware)
0.069036 send_to_all: DELINFO input.voltage
0.069221 send: Q1
0.072545 received 47 (40)
0.072968 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.073154 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.073340 30 30 30 0d
0.073523 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.073741 send_to_all: SETINFO input.voltage "0.0"
0.073910 send: FW?
0.074280 read: FW?
0.074436 qx_process_answer: short reply (ups.firmware)
0.074623 send_to_all: DELINFO input.voltage
0.074721 send: Q1
0.077545 received 47 (40)
0.077681 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.077880 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.078060 30 30 30 0d
0.078235 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.078432 send_to_all: SETINFO input.voltage "0.0"
0.078602 send: FW?
0.078783 read: FW?
0.078967 qx_process_answer: short reply (ups.firmware)
0.079154 send_to_all: DELINFO input.voltage
0.079313 send: Q1
0.082391 received 47 (40)
0.082576 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.082742 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.082804 30 30 30 0d
0.082861 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.082935 send_to_all: SETINFO input.voltage "0.0"
0.082994 Using protocol: Q1 0.07
0.083063 send_to_all: SETINFO device.type "ups"
0.083126 send_to_all: SETINFO driver.version "2.7.4"
0.083187 send_to_all: SETINFO driver.version.internal "0.28"
0.083250 send_to_all: SETINFO driver.name "nutdrv_qx"
0.083307 upsdrv_initinfo...
0.083369 send_to_all: SETINFO driver.version.data "Q1 0.07"
0.083431 send: Q1
0.086387 received 47 (40)
0.086509 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.086717 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.086901 30 30 30 0d
0.087055 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.087253 send_to_all: SETINFO input.voltage.fault "0.0"
0.087453 send_to_all: SETINFO output.voltage "0.0"
0.087645 send_to_all: SETINFO ups.load "0"
0.087889 send_to_all: SETINFO input.frequency "0.0"
0.088077 send_to_all: SETINFO battery.voltage "0.00"
0.088155 send_to_all: SETINFO ups.temperature "0.0"
0.088220 update_status: OL
0.088284 update_status: !LB
0.088361 send_to_all: SETINFO ups.type "online"
0.088447 update_status: !CAL
0.088609 update_status: !FSD
0.088775 send_to_all: SETINFO ups.beeper.status "disabled"
0.088961 send_to_all: ADDCMD beeper.toggle
0.089149 send_to_all: ADDCMD load.off
0.089308 send_to_all: ADDCMD load.on
0.089486 send_to_all: ADDCMD shutdown.return
0.089654 send_to_all: ADDCMD shutdown.stayoff
0.089841 send_to_all: ADDCMD shutdown.stop
0.090009 send_to_all: ADDCMD test.battery.start
0.090167 send_to_all: ADDCMD test.battery.start.deep
0.090364 send_to_all: ADDCMD test.battery.start.quick
0.090523 send_to_all: ADDCMD test.battery.stop
0.090714 send_to_all: SETINFO ups.delay.start "180"
0.090894 send_to_all: SETFLAGS ups.delay.start RW
0.091048 send_to_all: ADDRANGE ups.delay.start 0 599940
0.091115 send_to_all: SETINFO ups.delay.shutdown "30"
0.091177 send_to_all: SETFLAGS ups.delay.shutdown RW
0.091237 send_to_all: ADDRANGE ups.delay.shutdown 12 600
0.091378 Battery runtime will not be calculated (runtimecal not set)
0.091572 send_to_all: SETINFO driver.parameter.pollfreq "30"
0.091736 upsdrv_updateinfo...
0.091957 Quick update...
0.092138 send: Q1
0.095394 received 47 (40)
0.095585 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.095775 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.095956 30 30 30 0d
0.096110 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.096306 update_status: OL
0.096470 update_status: !LB
0.096660 update_status: !CAL
0.096844 update_status: !FSD
0.097028 send_to_all: SETINFO ups.status "OL"
0.097212 send_to_all: DATAOK
0.097579 dstate_init: sock /run/nut/nutdrv_qx-nutdev1 open on fd 5
0.097752 send_to_all: SETINFO driver.parameter.pollinterval "2"
0.097913 send_to_all: SETINFO driver.parameter.synchronous "no"
0.098077 upsdrv_updateinfo...
0.098230 Quick update...
0.098378 send: Q1
0.101387 received 47 (40)
0.101512 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
0.101694 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
0.101790 30 30 30 0d
0.101846 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
0.101909 update_status: OL
0.101976 update_status: !LB
0.102042 update_status: !CAL
0.102105 update_status: !FSD
0.439534 new connection on fd 6
0.439748 send_to_one: SETINFO battery.packs "1"
0.440003 send_to_one: SETFLAGS battery.packs
0.440202 send_to_one: SETINFO battery.voltage "0.00"
0.440378 send_to_one: SETINFO device.type "ups"
0.440567 send_to_one: SETINFO driver.name "nutdrv_qx"
0.440757 send_to_one: SETINFO driver.parameter.pollfreq "30"
0.441134 send_to_one: SETINFO driver.parameter.pollinterval "2"
0.441342 send_to_one: SETINFO driver.parameter.port "auto"
0.441532 send_to_one: SETINFO driver.parameter.synchronous "no"
0.441701 send_to_one: SETINFO driver.version "2.7.4"
0.441898 send_to_one: SETINFO driver.version.data "Q1 0.07"
0.442090 send_to_one: SETINFO driver.version.internal "0.28"
0.442259 send_to_one: SETINFO input.frequency "0.0"
0.442436 send_to_one: SETINFO input.voltage "0.0"
0.442604 send_to_one: SETINFO input.voltage.fault "0.0"
0.442779 send_to_one: SETINFO output.voltage "0.0"
0.442950 send_to_one: SETINFO ups.beeper.status "disabled"
0.443065 send_to_one: SETINFO ups.delay.shutdown "30"
0.443137 send_to_one: ADDRANGE ups.delay.shutdown 12 600
0.443207 send_to_one: SETFLAGS ups.delay.shutdown RW
0.443275 send_to_one: SETINFO ups.delay.start "180"
0.443344 send_to_one: ADDRANGE ups.delay.start 0 599940
0.443414 send_to_one: SETFLAGS ups.delay.start RW
0.443481 send_to_one: SETINFO ups.load "0"
0.443550 send_to_one: SETINFO ups.productid "0000"
0.443618 send_to_one: SETINFO ups.status "OL"
0.443698 send_to_one: SETINFO ups.temperature "0.0"
0.443794 send_to_one: SETINFO ups.type "online"
0.443937 send_to_one: SETINFO ups.vendorid "0001"
0.444112 send_to_one: ADDCMD beeper.toggle
0.444278 send_to_one: ADDCMD load.off
0.444452 send_to_one: ADDCMD load.on
0.444616 send_to_one: ADDCMD shutdown.return
0.444794 send_to_one: ADDCMD shutdown.stayoff
0.444898 send_to_one: ADDCMD shutdown.stop
0.444966 send_to_one: ADDCMD test.battery.start
0.445035 send_to_one: ADDCMD test.battery.start.deep
0.445103 send_to_one: ADDCMD test.battery.start.quick
0.445176 send_to_one: ADDCMD test.battery.stop
0.445243 send_to_one: DATAOK
0.445310 send_to_one: DUMPDONE
2.099820 upsdrv_updateinfo...
2.100101 Quick update...
2.100377 send: Q1
2.103762 received 47 (40)
2.104134 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
2.104429 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
2.104716 30 30 30 0d
2.104979 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
2.105271 update_status: OL
2.105578 update_status: !LB
2.105866 update_status: !CAL
2.106169 update_status: !FSD
4.101947 upsdrv_updateinfo...
4.102297 Quick update...
4.102569 send: Q1
4.106050 received 47 (40)
4.106365 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
4.106692 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
4.106958 30 30 30 0d
4.107440 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
4.107700 update_status: OL
4.107826 update_status: !LB
4.108002 update_status: !CAL
4.108141 update_status: !FSD
6.104056 upsdrv_updateinfo...
6.104287 Quick update...
6.104560 send: Q1
6.107736 received 47 (40)
6.108113 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
6.108441 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
6.108749 30 30 30 0d
6.109046 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
6.109317 update_status: OL
6.109623 update_status: !LB
6.110166 update_status: !CAL
6.110482 update_status: !FSD
7.739406 send_to_one: PONG
8.104484 upsdrv_updateinfo...
8.104615 Quick update...
8.104714 send: Q1
8.107744 received 47 (40)
8.107936 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
8.108071 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
8.108177 30 30 30 0d
8.108280 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
8.108391 update_status: OL
8.108522 update_status: !LB
8.108636 update_status: !CAL
8.108742 update_status: !FSD
10.106636 upsdrv_updateinfo...
10.106810 Quick update...
10.106921 send: Q1
10.110174 received 47 (40)
10.110328 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
10.110466 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
10.110576 30 30 30 0d
10.110673 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
10.110787 update_status: OL
10.110904 update_status: !LB
10.111018 update_status: !CAL
10.111127 update_status: !FSD
12.108707 upsdrv_updateinfo...
12.108860 Quick update...
12.108978 send: Q1
12.112162 received 47 (40)
12.112312 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
12.112451 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
12.112560 30 30 30 0d
12.112691 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
12.112800 update_status: OL
12.112904 update_status: !LB
12.113006 update_status: !CAL
12.113144 update_status: !FSD
14.110811 upsdrv_updateinfo...
14.110978 Quick update...
14.111099 send: Q1
14.114170 received 47 (40)
14.114322 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
14.114462 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
14.114573 30 30 30 0d
14.114659 read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
14.114766 update_status: OL
14.114883 update_status: !LB
14.115003 update_status: !CAL
14.115108 update_status: !FSD
15.444198 send_to_one: PONG
16.111544 upsdrv_updateinfo...
16.111685 Quick update...
16.111814 send: Q1
16.115163 received 47 (40)
16.115340 read: (47 bytes) => 28 30 30 30 2e 30 20 30 30 30 2e 30 20 30 30 30 2e 30
16.115477 20 30 30 30 20 30 30 2e 30 20 30 2e 30 30 20 30 30 2e 30 20 30 30 30 30 30
16.115583 30 30 30 0d
Do you think I should try upgrading to the latest and see?
It does really seem to be sending the zero values, I'd still try updating to the latest NUT version. There are some protocol related errors, so maybe some later change has better understanding of what's sent. You see the NUT 2.7.4 is years old at this point and there's been a ton of useful changes since that was released...
Another point is that the newer version knows about more Megatec Qx dialects, so maybe the UPS vendor implemented another code path better. This might mean that you could have to pick through explicit protocol (and maybe subdriver) option values relevant for the driver build, to see if someone else than "Q1" has proper info.
It might in fact help to start with this on 2.7.4 too, in case the dialects it knows might already suffice...
I have tested all protocol values to no avail.. I also try to compile the 2.8.3 version on a raspiZero2W which has a minimal raspbian OS and when running make following the article https://github.com/networkupstools/nut/wiki/Building-NUT-for-in%E2%80%90place-upgrades-or-non%E2%80%90disruptive-tests the system crashes at some point... any ideas or tested newer versions that 2.7.4 for raspiZero2W?
Do you mean the system itself crashes, during the build? A couple of things that come to mind are competition for resources (perhaps avoid or limit parallel builds, if using make -j), and overheating (address that physically with different ways of cooling, or by running the build in smaller portions and pausing it regularly e.g. by Ctrl+S / Ctrl+Q to let the heat dissipate).
I think htop can help you keep an eye on system load and temperature, where supported, in real time and on one CLI dashboard.
Yes the system keeps crashing, I made the make with parallel threads and monitored to temperature so as to use Ctrl+S/Ctrl+Q but there is a time the sytem crashes... Is there a binary file to use for raspbian Bullseye (11)?
Not immediately, I think. Probably can spin up a container to create and share a build (in lieu of better approach like using OBS, at the moment), but can't make time for that today.
Also, try to make without parallelization e.g. make -j 1 or no -j / -l (GNU Make limit by load average) arguments at all. That should reduce load on the raspiZero too.
Although if the stress from the build really does cause it to crash, other stresses during its "normal" work might end up doing so too. You might want to mitigate this before putting it into production anyway.
I had something like this with a larger Raspberry Pi5 in the NUT CI farm, where the first tried USB sources were not 5V/5A so the system felt under-voltaged (said so in dmesg) and sometimes reset itself not just when building but merely apt upgrade'ing or copying files.
If it is about temperature - consider a heat sink (and good thermal paste/pad). Bigger Raspberries are nowadays routinely actively cooled, not sure about zeroes.
Not immediately, I think. Probably can spin up a container to create and share a build (in lieu of better approach like using OBS, at the moment), but can't make time for that today.
This would be awesome and of course I expect it on your own time, no rush, I appreciate your involvement!
Also, try to
makewithout parallelization e.g.make -j 1or no-j/-l(GNU Make limit by load average) arguments at all. That should reduce load on the raspiZero too.Although if the stress from the build really does cause it to crash, other stresses during its "normal" work might end up doing so too. You might want to mitigate this before putting it into production anyway.
I had something like this with a larger Raspberry Pi5 in the NUT CI farm, where the first tried USB sources were not 5V/5A so the system felt under-voltaged (said so in
dmesg) and sometimes reset itself not just when building but merelyapt upgrade'ing or copying files.If it is about temperature - consider a heat sink (and good thermal paste/pad). Bigger Raspberries are nowadays routinely actively cooled, not sure about zeroes.
I'll try it again, disabling all running processes this time as well!
Hey!
I found this thread after some digging as I'm on the same boat. RPI 2B running nut server using a Tescom UPS (slightly different model though.). I manage to bring it to a working condition using the latest compiled version (2.8.4 as 2.8.0 had some missing arguments) and using the following config. For the override values i used the screen of the UPS to take measurements. Finally for the battery.runtime being empty...well I'm still looking 😄 .
driver = "nutdrv_qx"
override.battery.packs = 12
override.battery.voltage.low = 21.80
override.battery.voltage.high = 27.10
override.battery.voltage.nominal = 24.00
#default.battery.voltage.high = 27.10
battery_voltage_reports_one_pack
port = "auto"
vendorid = "0001"
productid = "0000"
product = "MEC0003"
bus = "001"
idleload = 0.1
runtimecal = 180,100,540,50
chargetime = 18000
subdriver = krauler
Here is my output from upsc.
upsc tescom-home-rack
battery.charge: 100
battery.packs: 12
battery.runtime:
battery.voltage: 27.12
battery.voltage.high: 27.10
battery.voltage.low: 21.80
battery.voltage.nominal: 24.00
device.serial:
device.type: ups
driver.debug: 0
driver.flag.allow_killpower: 0
driver.flag.battery_voltage_reports_one_pack: enabled
driver.name: nutdrv_qx
driver.parameter.bus: 001
driver.parameter.chargetime: 18000
driver.parameter.idleload: 0.1
driver.parameter.override.battery.packs: 12
driver.parameter.override.battery.voltage.high: 27.10
driver.parameter.override.battery.voltage.low: 21.80
driver.parameter.override.battery.voltage.nominal: 24.00
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 1
driver.parameter.port: auto
driver.parameter.product: MEC0003
driver.parameter.productid: 0000
driver.parameter.runtimecal: 180,100,540,50
driver.parameter.subdriver: krauler
driver.parameter.synchronous: auto
driver.parameter.vendorid: 0001
driver.state: quiet
driver.version: 2.8.4
driver.version.data: Megatec 0.08
driver.version.internal: 0.45
driver.version.usb: libusb-1.0.26 (API: 0x01000109)
input.frequency: 49.9
input.voltage: 233.3
input.voltage.fault: 0.0
input.voltage.nominal: 0
output.voltage: 220.1
ups.beeper.status: enabled
ups.delay.shutdown: 30
ups.delay.start: 180
ups.firmware: V33
ups.load: 14
ups.productid: 0000
ups.serial:
ups.status: OL
ups.temperature: 37.0
ups.type: online
ups.vendorid: 0001
Hope this helps anyone that might get across this kind of setup.
BR
NOTE: The empty battery.runtime may be related to #3075 and presumed solved by #3076. That PR was merged - try rebuilding NUT from GitHub master branch.
Ill try rebuilding from master later on. Thanks for the tip!