Stan Gammons
2014-Sep-12 03:04 UTC
[Nut-upsuser] Nut 2.7.2 on OpenBSD 5.6 with APC USB UPS
On 09/11/14 21:43, Charles Lepple wrote:> On Sep 11, 2014, at 9:48 PM, Stan Gammons <sg063015 at gmail.com> wrote: > >> I have an APC USB UPS that was working on OpenBSD 5.5 with NUT 2.7.1 When I installed the latest 5.6 snapshot with NUT 2.7.2 the UPS no longer sends status messages when it loses line power. I asked over on the OpenBSD ports list and so far haven't had any luck getting this to work again. I disabled upd at boot as was suggested and that didn't change anything except stopping the random upd detached messages. > Looking at the diffs between NUT 2.7.1 and 2.7.2 (including the OpenBSD patches), I don't see any changes in NUT that might cause this. > > Your ProductID of 0002 is old enough not to have the broken interrupt pipe firmware, but that expects the OS to handle USB Interrupt In transfers properly. Otherwise, it will take up to 30 seconds (pollfreq) to re-fetch all of the variables that the UPS should provide through the Interrupt In pipe.I see a libusb_get_interrupt message in the log. Could that be the problem?> > I would try starting the driver with "-DDD", and capture that to a log: > > /usr/local/bin/usbhid-ups -DDD -a apcusb 2>&1 | tee /tmp/apcusb.log > > Let it run for about two minutes, then ^C, compress the log and mail it back to the list. > > You can also try reducing "pollfreq", although the reason for this was to prevent the UPS from tripping over itself by sending too much data. The "ups.status" bits should be polled in the fast polling cycle (2 seconds versus 30). Hopefully the log will have some error messages to explain why that is apparently not happening. >Here's the log file. Hopefully it will attach Ok. Stan -------------- next part -------------- A non-text attachment was scrubbed... Name: apcusb.tar.gz Type: application/gzip Size: 16641 bytes Desc: not available URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20140911/1a100adc/attachment-0001.bin>
Charles Lepple
2014-Sep-12 03:34 UTC
[Nut-upsuser] Nut 2.7.2 on OpenBSD 5.6 with APC USB UPS
On Sep 11, 2014, at 11:04 PM, Stan Gammons <sg063015 at gmail.com> wrote:> I see a libusb_get_interrupt message in the log. Could that be the problem?Yes, it seems related. 1.126896 upsdrv_initinfo... 1.126906 upsdrv_updateinfo... 1.127023 libusb_get_interrupt: Function not implemented 1.127030 Got 0 HID objects... 1.127036 Quick update... Come to think of it, this might also depend on how OpenBSD provides libusb-0.1. What version of libusb-compat do you have? However, checking the rest of the log, it seems like there are no errors during the "Quick update" portion, which should provide AC status updates (among others) every two seconds. Can you can do a test where you power off the AC to the UPS? (I'd advise using a power strip, PDU, or circuit breaker to keep the ground connected, rather than pulling the plug completely.) If so, same test, but "-DD" should suffice, and record the time (first column of the log is seconds since the start) when you toggle the power. Let it go for at least 30 seconds, so it will eventually show up in the "Full update". The OB/OL status is controlled by this line: [time] Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x07, Offset: 2, Size: 1, Value: 1 -- Charles Lepple clepple at gmail
Stan Gammons
2014-Sep-12 21:15 UTC
[Nut-upsuser] Nut 2.7.2 on OpenBSD 5.6 with APC USB UPS
On 09/11/14 22:34, Charles Lepple wrote:> On Sep 11, 2014, at 11:04 PM, Stan Gammons <sg063015 at gmail.com> wrote: > >> I see a libusb_get_interrupt message in the log. Could that be the problem? > Yes, it seems related. > > 1.126896 upsdrv_initinfo... > 1.126906 upsdrv_updateinfo... > 1.127023 libusb_get_interrupt: Function not implemented > 1.127030 Got 0 HID objects... > 1.127036 Quick update... > > Come to think of it, this might also depend on how OpenBSD provides libusb-0.1. What version of libusb-compat do you have?# pkg_info libltdl-2.4.2p0 GNU libtool system independent dlopen wrapper libusb-compat-0.1.5 libusb-0.1 compatibility layer for libusb1 libusb1-1.0.9p8 library for USB device access from userspace nut-2.7.2p2 UPS monitoring program supporting many brands quirks-2.11 exceptions to pkg_add rules radeondrm-firmware-20131002p0 firmware binary images for radeondrm(4) driver> > However, checking the rest of the log, it seems like there are no errors during the "Quick update" portion, which should provide AC status updates (among others) every two seconds. > > Can you can do a test where you power off the AC to the UPS? (I'd advise using a power strip, PDU, or circuit breaker to keep the ground connected, rather than pulling the plug completely.) > > If so, same test, but "-DD" should suffice, and record the time (first column of the log is seconds since the start) when you toggle the power. Let it go for at least 30 seconds, so it will eventually show up in the "Full update". > > The OB/OL status is controlled by this line: > > [time] Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x07, Offset: 2, Size: 1, ValueUPS.PowerSummary.PresentStatus.ACPresent remains at 1 when I turn the power off on the power strip the UPS is plugged into. Here's a 73 seconds long log with the power turned off. Stan -------------- next part -------------- A non-text attachment was scrubbed... Name: apcusb2.tar.gz Type: application/gzip Size: 6872 bytes Desc: not available URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20140912/41726348/attachment.bin>