Charles Lepple
2014-Jun-06 03:05 UTC
[Nut-upsdev] Question about voltage threshold setting in NUT
On Jun 5, 2014, at 10:53 PM, Charles Lepple wrote:> As you have seen, the "default.*" and "overwrite.*" names are not actual variables: they are configuration options to change what is returned from upsc. That is why you get VAR-NOT-SUPPORTED.typo; should have been "override.*" -- Charles Lepple clepple at gmail
Shen Chuan
2014-Jun-06 14:35 UTC
[Nut-upsdev] Question about voltage threshold setting in NUT
Hello Charles, Thank you for your reply. For the discrete value thing, this morning I did try to run sudo upsrw -s input.transfer.low=x -u * -p * ups I changed "x" value from 60 to 96 then checked upsc result. All the script return OK but only 84 and 96 got picked up and working. Out model is Eaton 3S 500. And in windows it has a Eaton Personal Solution Pac. In Battery transfer threshold it has three voltage sensitivity ranges: 96-138, 84-142, 75-144. 96 and 84 are working in NUT, not sure why 75 is not working. Do you think that range is restricted in the firmware? We have a tripplitte model and upsc doesn't have input.transfer.low at all. Please let me know if some other information could be helpful with the NUT. Happy to assist debugging and provide more information. Shen On Thu, Jun 5, 2014 at 9:05 PM, Charles Lepple <clepple at gmail.com> wrote:> On Jun 5, 2014, at 10:53 PM, Charles Lepple wrote: > > > As you have seen, the "default.*" and "overwrite.*" names are not actual > variables: they are configuration options to change what is returned from > upsc. That is why you get VAR-NOT-SUPPORTED. > > typo; should have been "override.*" > > -- > Charles Lepple > clepple at gmail > > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.alioth.debian.org/pipermail/nut-upsdev/attachments/20140606/5ee3ef4d/attachment.html>
Charles Lepple
2014-Jun-06 23:10 UTC
[Nut-upsdev] Question about voltage threshold setting in NUT
On Jun 6, 2014, at 10:35 AM, Shen Chuan wrote:> Out model is Eaton 3S 500. And in windows it has a Eaton Personal Solution Pac. In Battery transfer threshold it has three voltage sensitivity ranges: 96-138, 84-142, 75-144. 96 and 84 are working in NUT, not sure why 75 is not working.Interesting, I'm not sure why either. It is possible to monitor the USB connection to see what the Windows software is sending, but it might not be worth the effort. Check the list archives for usbpcap or terms related to USB capture.> Do you think that range is restricted in the firmware? We have a tripplitte model and upsc doesn't have input.transfer.low at all.There are seven vendor-specific HID backends for usbhid-ups (plus a dummy "explore" option), and each deals with the quirks of how each UPS vendor transmits their information back to the host PC. The driver tries to map these readings back to standard NUT variable names, but it is often the case that one vendor does not publish the same measurements and adjustments as another. As an example, check out drivers/tripplite-hid.c: https://github.com/networkupstools/nut/blob/master/drivers/tripplite-hid.c#L369 That line contains a definition for "input.transfer.low". The driver looks for the 4th element in that struct ("UPS.PowerConverter.Output.LowVoltageTransfer") in the USB HID descriptor, and if it does not exist, the driver does not publish the "input.transfer.low" variable. If it does exist, the combination of "ST_FLAG_RW | ST_FLAG_STRING" and the sscanf() format string "%.1f" allow the driver to parse a floating point number string from upsrw, and send that to the UPS. It is up to the UPS firmware to decide how to handle that number. -- Charles Lepple clepple at gmail