[was: Re: [Nut-upsuser] FreeBSD rc.d scripts or shutdown howto?] On 8/22/07, Daniel O'Connor <[EMAIL PROTECTED]> wrote: > On Wed, 22 Aug 2007, Bryan wrote: > > The trouble I'm now having is that UPS communication just stops for > > no apparent reason. Data goes stale and I get the broadcasts about > > the UPS being unavailable. upsc tells of a similar fate. *sigh* > > Yes, AFAIK this is because you're using a USB UPS. I've never been able > to reliably talk to one on FreeBSD.
NUT drivers poll the UPS every so often, which works fine on systems where a single libusb call results in a single USB transaction. In FreeBSD (and probably other BSD systems as well), interrupt transfers are scheduled periodically, even if the calling program is not requesting interrupt transfers at the same rate. What I saw with tripplite_usb (where the USB descriptor for the device tells the OS to poll 10-100 times a second) is that the driver does not poll frequently enough, and an interrupt transfer buffer fills up in the OS. Due to the way that libusb and the kernel USB stack interact, this could cause the symptoms you are seeing. I don't know of a good way to debug this. It seems like a problem in the kernel, but it's hard to isolate it with a driver as complex as usbhid-ups. -- - Charles Lepple _______________________________________________ Nut-upsuser mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/nut-upsuser

