Open Hary01o opened 6 years ago
@zykh can correct me if I am missing something specific to these drivers, but in general, overriding battery.voltage.*
will only affect the battery.charge
reading, not ups.status
. The UPS has a low battery flag that it sends regardless of what values are shown for charge (or runtime).
However, if you use ignorelb
and its associated configuration parameters, then the driver should ignore the UPS LB signal, and in your case, indirectly use the battery voltage overrides to calculate low battery status: https://networkupstools.org/docs/man/ups.conf.html#_ups_fields
although rather than temporarily messing with ignorelb
, if your goal is to test the shutdown signaling, I would do the following:
upsmon -c fsd
to test the shutdown scripts@clepple thanks for your input.
Ive already isolated the UPS and tested doing upsmon -c fsd
, of course that immediately powers off the UPS. However, its the flags that upsmon doesn't detect.
My goal is to actually test that the 'low battery (LOWBATT)' flag gets detected when the battery.voltage.low
is set at a certain number such as the highest possible, would be 25.50
because the batteries im using are Marine batteries and it would take ages for them to go really low, so thats why i increased the number so that i can just test if it actually detects the LOWBATT flag.
However in my case is the only way to test it by fiddling with the ignorelb
?
It might take a while to drain the batteries, but that is the only way to verify that the UPS sets the LB flag (as opposed to NUT setting it synthetically with ignorelb
). You can add more load to the UPS (lamps, heaters, etc.) to increase the rate of discharge.
It is, of course, your choice as to which triggers your shutdown, but I'm just trying to point out the differences between the sources, and that you may not want to test with a synthetic LB, and go into production relying on the UPS LB signal.
If this were my system, I would want to verify that nothing crazy happens to battery.voltage
when the UPS is getting close to the low battery mark. Given how inaccurate most UPS voltage readings tend to be, I would rely on the UPS LB flag in the absence of specific low-battery voltage readings.
@clepple These are my settings
Init SSL without certificate database
battery.charge: 100
battery.voltage: 26.40
battery.voltage.high: 26.00
battery.voltage.low: 25.00
battery.voltage.nominal: 24.0
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: Voltronic-QS 0.07
driver.version.internal: 0.28
input.voltage: 229.7
input.voltage.fault: 227.7
output.current.nominal: 8.0
output.frequency: 50.1
output.frequency.nominal: 50
output.voltage: 227.7
output.voltage.nominal: 230
ups.beeper.status: disabled
ups.delay.shutdown: 30
ups.delay.start: 180
ups.firmware.aux: PM-V
ups.load: 4
ups.productid: 5161
ups.status: OL
ups.type: offline / line interactive
ups.vendorid: 0665
So i successfully tested the system and it shutdown properly as soon as i used override.battery.charge.low = 90
, however I have 2 questions here.
Firstly, I dont see battery.charge.low
exist as an original setting when checking upsc [MyUPS]
, I had to use override.
Which confuses me because I read on: https://networkupstools.org/docs/man/ups.conf.html#_ups_fields that the 'override' only changes the appearance of the value and not the actual value. So why can't a battery.charge.low
be an original setting for both these drivers?
Secondly, id like to also point out that according to my UPS when on batteries, battery.charge
is not reading accurately - it seems to stop at 20% and stay there even though batteries are 90% charged. So i have to set a very low number for battery.charge.low
in order for shutdown to occur. That being said, I dont understand why battery.voltage.low
can't also be part of the trigger for setting the LOWBATT flag as it is MORE accurate than using percentage aka battery.charge
. Can the dev consider including this in addition to battery.charge.low
and battery.runtime.low
?
Secondly, id like to also point out that according to my UPS when on batteries,
battery.charge
is not reading accurately - it seems to stop at 20% and stay there even though batteries are 90% charged. So i have to set a very low number forbattery.charge.low
in order for shutdown to occur. That being said, I dont understand whybattery.voltage.low
can't also be part of the trigger for setting the LOWBATT flag as it is MORE accurate than using percentage akabattery.charge
. Can the dev consider including this in addition tobattery.charge.low
andbattery.runtime.low
?
I agree that battery.voltage.low
is more accurate than battery.charge.low
. I hope that the developer can support battery.voltage.low
as the LOWBATT
threshold.
Ive gone through quite a lot of manpages and articles trying to figure out whats missing here, but im starting to think something else is wrong.
When I try and use nutdrv_qx and run upsc myUPS, i get:
And ive got these 2 values manually set in ups.conf:
The reason why i have default.battery.voltage.low so high is because i need to first test my UPS and see when it reaches 25.50 volts that It will initiate the shutdown and it doesn't!
So far, upsmon detects when there is a power failure and thats the last message i see in Syslog:
upsmon[7764]: UPS myUPS@localhost on battery
If I reconnect the UPS, it will give a message in Syslog saying its Online again.
The problem is I don't see anywhere in the Syslog that it has LOWBATT or any sort of indication that the battery is 'low' which in turn does not initiate any shutdown either.
If i don't set battery.voltage.low & battery.voltage.high, it uses gestimation and gives the same result.
I don't know where the problem lies here.. I cannot find it in the logs. If you could shed some light that would be highly appreciated, otherwise this could be a bug maybe.
on system Ubuntu 18.04 with # sudo apt-get install nut nut-monitor Nut v. 2.7.4-5.1ubuntu2