[Nut-upsuser] bcmxcp_usb can not communicate with Eaton Powerware 5110
Jevgeni Jurtsenko
jevgenious at gmail.com
Mon Dec 3 21:29:20 UTC 2012
Hi Arnaud,
Unfortunately your patch didn't solved the problem for me. I googled about
the issue once more while setting the OS second time to give logs you
asked previously. Out of the syslog you can see that it is being flooded
with *usbfs *errors about claiming the device. One of the suggestions was
the problem with *dwc_otg *driver. However my solution was a script, which
resets usb and I'm able to get data from UPS again.. As I mentioned above
that re-plugging the usb cable solved it. Problem is not stable ~3 fails
out of 5 startups. At the moment I am using PW5115
lsusb -v -d0x06da:0x0002
Bus 001 Device 004: ID 06da:0002 Phoenixtec Power Co., Ltd UPS
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x06da Phoenixtec Power Co., Ltd
idProduct 0x0002 UPS
bcdDevice 1.00
iManufacturer 4
iProduct 24
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 60mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
** UNRECOGNIZED: 09 21 00 01 00 01 22 00 00
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 20
Device Status: 0x5a08
(Bus Powered)
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
*grep usb /var/log/syslog*
Nov 25 11:41:51 raspberrypi kernel: [ 95.021492] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021531] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021573] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021611] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021653] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021693] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021733] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021774] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021815] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021855] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021897] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021936] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.021976] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
Nov 25 11:41:51 raspberrypi kernel: [ 95.022017] usb 1-1.2: usbfs:
process 1862 (bcmxcp_usb) did not claim interface 0 before use
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
*/lib/nut/bcmxcp_usb -DDDDD -u root -a ups*
Network UPS Tools - BCMXCP UPS driver 0.26 (2.6.5)
USB communication subdriver 0.22
0.000000 send_to_all: SETINFO driver.parameter.port "auto"
0.002520 debug level is '5'
0.019435 entering nutusb_open()
0.037846 device 004 opened successfully
0.039967 Can't claim POWERWARE USB interface: could not claim
interface 0: Device or resource busy
0.041162 Can't reset POWERWARE USB endpoint: could not clear/halt ep
129: Device or resource busy
0.041965 device 004 opened successfully
0.042690 Can't claim POWERWARE USB interface: could not claim
interface 0: Device or resource busy
0.043556 Can't reset POWERWARE USB endpoint: could not clear/halt ep
129: Device or resource busy
0.043866 device 004 opened successfully
0.047520 Can't claim POWERWARE USB interface: could not claim
interface 0: Device or resource busy
0.047826 Can't reset POWERWARE USB endpoint: could not clear/halt ep
129: Device or resource busy
0.048427 device 004 opened successfully
0.048982 Can't claim POWERWARE USB interface: could not claim
interface 0: Device or resource busy
0.049834 Can't reset POWERWARE USB endpoint: could not clear/halt ep
129: Device or resource busy
0.051205 send_to_all: SETINFO device.type "ups"
0.051958 send_to_all: SETINFO driver.version "2.6.5"
0.052674 send_to_all: SETINFO driver.version.internal "0.26"
0.053397 send_to_all: SETINFO driver.name "bcmxcp_usb"
0.057015 send_read_command: (4 bytes) => ab 01 31 23
0.058327 entering get_answer(31)
0.058576 => packet_loop (0, 0)
0.058761 => bytes_read (0)
0.059160 => usb_interrupt_read -16
0.059762 => packet_loop (0, 0)
0.060236 => bytes_read (0)
0.061093 => usb_interrupt_read -16
0.062454 => packet_loop (0, 0)
0.062681 => bytes_read (0)
0.063447 => usb_interrupt_read -16
0.064235 => packet_loop (0, 0)
0.067008 => bytes_read (0)
0.077926 => usb_interrupt_read -16
0.078266 => packet_loop (0, 0)
0.078472 => bytes_read (0)
0.078729 => usb_interrupt_read -16
0.078989 => packet_loop (0, 0)
0.079185 => bytes_read (0)
0.080005 => usb_interrupt_read -16
0.080783 => packet_loop (0, 0)
0.081474 => bytes_read (0)
0.087552 => usb_interrupt_read -16
0.088423 => packet_loop (0, 0)
0.089122 => bytes_read (0)
0.089437 => usb_interrupt_read -16
0.090164 => packet_loop (0, 0)
0.090891 => bytes_read (0)
0.091226 => usb_interrupt_read -16
0.091990 => packet_loop (0, 0)
0.092673 => bytes_read (0)
0.092970 => usb_interrupt_read -16
0.093732 => packet_loop (0, 0)
0.094733 => bytes_read (0)
0.095671 => usb_interrupt_read -16
0.095957 => packet_loop (0, 0)
0.096650 => bytes_read (0)
0.097030 => usb_interrupt_read -16
0.097827 => packet_loop (0, 0)
0.098527 => bytes_read (0)
0.099317 => usb_interrupt_read -16
0.107015 => packet_loop (0, 0)
0.107782 => bytes_read (0)
0.108528 => usb_interrupt_read -16
0.108810 => packet_loop (0, 0)
0.109511 => bytes_read (0)
0.110432 => usb_interrupt_read -16
0.110710 => packet_loop (0, 0)
0.111359 => bytes_read (0)
0.111704 => usb_interrupt_read -16
0.112659 => packet_loop (0, 0)
0.112876 => bytes_read (0)
0.117529 => usb_interrupt_read -16
0.118350 => packet_loop (0, 0)
0.119051 => bytes_read (0)
0.119353 => usb_interrupt_read -16
0.120120 => packet_loop (0, 0)
0.120336 => bytes_read (0)
¤¤¤¤¤¤¤¤¤¤¤¤¤¤
* ps -efl | grep bcm*
1 R nut 1984 1 42 80 0 - 558 - 16:51 ? 00:05:50
/lib/nut/bcmxcp_usb -a ups
0 S root 2167 2129 0 80 0 - 883 pipe_w 17:05 pts/0 00:00:00
grep bcm
¤¤¤¤¤¤¤¤¤¤¤¤¤¤
*usbreset.c*
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
#include <linux/usbdevice_fs.h>
void main(int argc, char **argv)
{
const char *filename;
int fd;
if (argc < 2) {
printf("Give USB device name as parameter\n");
exit(1);
}
filename = argv[1];
fd = open(filename, O_WRONLY);
if (fd == -1) {
perror("USB device open failed");
exit(2);
}
if (ioctl(fd, USBDEVFS_RESET, 0) == -1) {
perror("USBDEVFS_RESET device ioctl failed");
exit(3);
}
close(fd);
}
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
After reset I receive in */var/log/messages*
Dec 3 17:24:57 kernel: [ 2027.136079] usb 1-1.3: usbfs: process 2228
(bcmxcp_usb) did not claim interface 0 before use
Dec 3 17:25:18 kernel: [ 2047.672034] usb 1-1.3: reset low-speed USB
device number 4 using dwc_otg
Dec 3 17:27:16 kernel: [ 2166.249994] usb 1-1.3: USB disconnect, device
number 4
Dec 3 17:27:18 kernel: [ 2168.021096] usb 1-1.3: new low-speed USB device
number 5 using dwc_otg
Dec 3 17:27:18 kernel: [ 2168.129013] usb 1-1.3: New USB device found,
idVendor=06da, idProduct=0002
Dec 3 17:27:18 kernel: [ 2168.129041] usb 1-1.3: New USB device strings:
Mfr=4, Product=24, SerialNumbe r=0
Dec 3 17:27:18 kernel: [ 2168.129056] usb 1-1.3: Product: Powerware UPS
Dec 3 17:27:18 kernel: [ 2168.129067] usb 1-1.3: Manufacturer: Powerware
* tail -f /var/log/syslog*
Dec 3 17:30:45 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
Dec 3 17:30:49 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
Dec 3 17:30:53 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
Dec 3 17:30:57 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
Dec 3 17:31:01 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
Dec 3 17:31:05 raspberrypi bcmxcp_usb[2236]: RECONNECT USB DEVICE
On Fri, Nov 30, 2012 at 10:04 PM, Arnaud Quette <aquette.dev at gmail.com>wrote:
>
> 2012/11/29 Jevgeni Jurtsenko <jevgenious at gmail.com>
>
>> Hello all,
>
>
> Hi Jevgeni,
>
>
>> While repeatedly setting up the system for tests figured out the problem
>> in other OS subsystem driver. Problem solved with the script. Thanks again
>> for your time
>>
>
> I'm not sure to understand: do you mean that the patch I've provided
> (xcp-rcv-loop.diff) has fixed your issue or?
>
> cheers,
> Arnaud
> --
> NUT (Network UPS Tools) Project Leader - http://www.networkupstools.org
>
> Debian Developer - http://www.debian.org
> Free Software Developer - http://arnaud.quette.fr
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20121203/4b7df1db/attachment-0001.html>
More information about the Nut-upsuser
mailing list