[Nut-upsdev] APC 1500RM / NUT 2.0.3 / newhidups / Solaris 10 [long]

Marty Lee marty at upstart-solutions.co.uk
Wed Mar 8 08:30:07 UTC 2006

Folks, while I've got the above combination to compile and run under
Solaris 10, it seems that there are still problems in the libusb/ugen
driver stack from Sun and or the APC Smart UPS 1500, so things aren't
actually working.

It seems that the APC Smart UPS 1500RM doesn't return the HID descriptor
length information in 0x21 as noted in a previous thread, but in my
case, it also doesn't return it in 0x02 either.

I've hacked the newhidups code so it just reads as much as it can, and
if the vendor codes match my ups, it allows things to proceed which
would otherwise return a short-read.

With this, the newhidups driver starts, recognises the UPS and gets to -
   Waiting for notifications...
   Notification: (3 bytes) => 07 0C 01

then sits and does nothing. It looks like it's stuck in kernel space,
so I'm guessing it's waiting for something from the UPS.

Lastly, the Solaris libusb document
(/usr/sfw/share/doc/libusb/libusb.txt) notes that the function
usb_get_descriptor_by_endpoint is 'Not implemented for Sun plugins',
and by my reckoning, this is what NUT uses quite a bit - the libusb
code for  usb_get_descriptor_by_endpoint seems to just use a
usb_control_msg, in the same format as NUT uses in newhidups.

So. on the off chance someone comes along again asking for newhidups
support on Solaris and/or an APC Smart UPS 1500RM, then people at
least know that compilation is only the first hurdle - hopefully
Sun will sort out the rest of the ugen/libusb driver stack and
it may all come down to the APC Smart UPS not having the correct
USB implementation.

If anyone can throw any other ideas into the pot on this one, just
let me know.

Many regards


(heading back to serial ports for now!)

Checking device (051D/0002) (/dev/usb/51d.2/0)
- VendorID: 051d
- ProductID: 0002
- Manufacturer: American Power Conversion
- Product: Smart-UPS 1500 RM FW:617.3.I USB FW:1.5
- Serial Number: AS0444320421
- Bus: /dev/usb

Marty Lee                         e: marty at upstart-solutions.co.uk
Technical Director                v: +44 131 476 3775
Upstart Solutions Ltd             f: +44 871 433 8922
Scotland, UK                      w: http://www.upstart-solutions.co.uk

More information about the Nut-upsdev mailing list