[Nut-upsuser] CyberPower on OpenIndiana

Charles Lepple clepple at gmail.com
Thu Jan 31 11:49:55 UTC 2013


On Jan 31, 2013, at 1:07 AM, Georgi Todorov wrote:

> Hello,
> 
> I have a CyberPower CP1500PFCLCD and I'm trying to get nut to see it under OpenIndiana. All search online suggested that it basically can't happen, but I decided to ask again, maybe things have changed since then.
> 
> The UPS can be seen by the system:
> # /usr/sbin/cfgadm -lv usb9/1.1
> Ap_Id                          Receptacle   Occupant     Condition  Information
> When         Type         Busy     Phys_Id
> usb9/1.1                       connected    configured   ok         Mfg: CP1500PFCLCD  Product: CRCA102-3I1  NConfigs: 1  Config: 0  <no cfg str descr>
> unavailable  usb-input    n        /devices/pci at 0,0/pci15d9,631 at 1d/hub at 1:1.1
> 
> According to prtconf the device is mapped to /dev/usb/hid2, which points to:
> crw------- 1 ups ups 228, 6 2013-01-30 22:20 /devices/pci at 0,0/pci15d9,631 at 1d/hub at 1/input at 1:hid_-124_4

NUT uses libusb-0.1 to access the UPS, and libusb needs something like a ugen node (instead of /dev/usb/hid*).

A quick search yields the following:

http://barbz.com.au/blog/?p=407 ("Compile and Configure NUT on Openindiana")

> My ups.conf has:
> [cyberpower]
>         driver = usbhid-ups
>         port = /dev/usb/hid2
>         desc = "CP1500PFCLCD RCA102-3I1 CPS"
> 
> However usbhid-ups doesn't seem to like it:
> # usbhid-ups -DDDDDDD -a cyberpower
> Network UPS Tools - Generic HID driver 0.37 (2.6.5)
> USB communication driver 0.31
>    0.000000     send_to_all: SETINFO driver.parameter.port "/dev/usb/hid2"
>    0.000052     debug level is '7'
>    0.000331     upsdrv_initups...
>    0.001113     No appropriate HID device found
>    0.001152     No matching HID UPS found
> 
> Strangely enough if I pass -u root, it ignores my port setting and just tries to open the first thing in /dev/usb and exists:
> # ./usbhid-ups -a cyberpower -DDDDDDD -u root
> Network UPS Tools - Generic HID driver 0.37 (2.6.5)
> USB communication driver 0.31
>    0.000000     debug level is '7'
>    0.000427     upsdrv_initups...
>   13.019758     Checking device (0000/0000) (/dev/usb/557.2221/0)
>   26.039796     Failed to open device, skipping. (I/O error)
>   26.039845     No appropriate HID device found
>   26.039874     No matching HID UPS found
> 

This is not entirely unexpected. libusb does not allow specifying a USB device by its path, hence usbhid-ups ignores "port". (There are other parameters to specify the UPS by its USB IDs.)

http://www.networkupstools.org/docs/man/usbhid-ups.html#_implementation

The difference when you pass "-u root" is that the drivers ordinarily drop permissions (even when started from a root shell), and the unprivileged user doesn't even have permissions to scan the USB bus(es).

> If anyone has an idea of how to try and fix this, please let me know.
> 
> Thanks,
> Georgi
> _______________________________________________
> Nut-upsuser mailing list
> Nut-upsuser at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser

-- 
Charles Lepple
clepple at gmail



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20130131/b592a22b/attachment.html>


More information about the Nut-upsuser mailing list