On Apr 6, 2015, at 8:46 AM, Richard Flint <richard.fl...@gmail.com> wrote:

> Unfortunately this approach isn't going to work.
> 
> I've done some further research and it would appear that it is the underlying 
> ugen device and not libusb that is failing to honor the timeout.
> 
> https://mail-index.netbsd.org/tech-misc/2006/03/17/0000.html
> 
> The person above worked around this by having the device opened in non 
> blocking mode using the O_NONBLOCK flag but this required changing libusb.

Unfortunately, the ugen drivers in Solaris, NetBSD, FreeBSD, etc. are similarly 
named, but not necessarily the same code. At least with the *BSDs, you can 
inspect the code to see what has changed (and the BSD USB support has improved 
significantly across the board since 2006 when that message was posted).

OpenUSB seems to work around the blocking issue by creating a separate timeout 
thread, so I still think there is some hope there.

On the other hand, if that doesn't work, I would consider setting up another 
system dedicated to monitoring the UPS, and setup NUT on Solaris to be a client 
to the other system. Linux on x86_64 is probably the best supported OS for NUT 
and a USB UPS, but others have had success with embedded ARM and MIPS Linux 
systems. I have a Soekris net5501 running FreeBSD monitoring the USB UPS in my 
home "data center" in the basement, and it has been very reliable: 
http://soekris.com/products/net5501.html (also available in a rack-mount form 
factor; I have no connection to Soekris other than using their equipment)

-- 
Charles Lepple
clepple@gmail



_______________________________________________
Nut-upsuser mailing list
Nut-upsuser@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser

Reply via email to