Woogie
2006-May-18 23:58 UTC
[Nut-upsuser] Difficulty over USB with a CyberPower 800AVR and nut 2.0.3
I recently purchased a CyberPower 800AVR UPS which I'm trying to use over USB with my PC (ArchLinux 0.7.2 [aka up to date]) and nut 2.0.3. Following the setup instructions, I have an entry as follows in /etc/nutups/ups.conf (where I chose the configuration file to go when building nut): [MyUPS] driver = cyberpower port = /dev/bus/usb/004/007 desc = Workstation I've been varying the "port = " line per the output from dmesg each time I plug in the UPS (I plan on using udev to give my UPS a proper home in /dev later). However, every time I've tried I've gotten this output from `upsdevctrl start` (the node in /dev varied each time) Network UPS Tools - UPS driver controller 2.0.3 Network UPS Tools - CyberPower driver 1.00 (2.0.3) tcgetattr(/dev/bus/usb/004/007): Inappropriate ioctl for device Driver failed to start (exit status=1) This is when I noticed something strange/unusual in my dmesg output. When I plugged in my UPS, I would get this message: usb 4-2: new low speed USB device using uhci_hcd and address 4 hiddev0: USB HID v1.10 Device [CPS UPS BF800] on usb-0000:00:10.3-2 usbcore: registered new driver yealink drivers/usb/input/yealink.c: Yealink phone driver:yld-20050816 So I thought to myself that perhaps this "yealink phone driver" could be causing the problem. I unplugged the UPS, unloaded the module for yealink, then hid the module so the kernel wouldn't be able to find it again. The result was this: usb 4-2: new low speed USB device using uhci_hcd and address 6 hiddev0: USB HID v1.10 Device [CPS UPS BF800] on usb-0000:00:10.3-2 But still no joy running `upsdevctrl start` (same error) So then I concluded that maybe my usbhid module was conflicting. Sacrificing the use of my mouse, I unloaded/hid the usbhid module, and came up with the following output from dmesg: usb 4-2: new low speed USB device using uhci_hcd and address 7 However, running usbdevctrl start yielded the same error message (inappropriate ioctl for device). I've verified that the group and user permissions are set correctly (manually) for the node in /dev because if I switch it back to root ownership, I get a different error message (related to users and permissions). So this line of thinking clearly wasn't the issue at hand, so I restored my mouse functionality by replacing usbhid.ko. I then thought of trying to get some more debugging output by running the cyberpower driver directly. Running cyberpower -DDD /dev/bus/usb/004/007 yielded: Network UPS Tools - CyberPower driver 1.00 (2.0.3) debug level is '3' tcgetattr(/dev/bus/usb/004/007): Inappropriate ioctl for device Which was the exact same error, with no additional output. Because of the messages from dmesg, I considered using the hidups and newhidups drivers, regardless of what is list in data/driver.list. Running them both, I received (respectively): Network UPS Tools: HID UPS driver 0.13 (2.0.3) Warning: This is an experimental driver. Some features may not function correctly. debug level is '3' /dev/bus/usb/004/007 is not a UPS Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.3) debug level is '3' Checking device (0764/0501) (004/007) - VendorID: 0764 - ProductID: 0501 - Manufacturer: CPS - Product: UPS BF800 - Serial Number: unknown - Bus: 004 Trying to match device Device does not match - skipping I trimmed the extra output, as this seems to be the relevant portion - namely the driver skipping over the usb device which is the UPS. So after having scanned through the mailing list and having done some googling, I'm out of ideas. Can somebody help me out? I get the feeling I should be providing more information on the nodes in /dev, but ls -l doesn't provide anything of any use (and there's no lsnod command to accompany mknod apparently) Woogie
Charles Lepple
2006-May-19 02:14 UTC
[Nut-upsuser] Difficulty over USB with a CyberPower 800AVR and nut 2.0.3
On 5/18/06, Woogie <woogie@gmail.com> wrote:> [MyUPS] > driver = cyberpower > port = /dev/bus/usb/004/007[...]> tcgetattr(/dev/bus/usb/004/007): Inappropriate ioctl for device > Driver failed to start (exit status=1)tcgetattr is only applicable to serial ports. It looks like the cyberpower driver has not been expanded to include their USB models yet. Can you use the serial port on the UPS?> Network UPS Tools: HID UPS driver 0.13 (2.0.3)The older hidups driver is going away soon; don't bother with it.> Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.3)This driver has a debug dump for new USB/HID UPSes, but unfortunately that feature isn't included in 2.0.3. -- - Charles Lepple