[Nut-upsuser] [Nut-upsdev] Megatec_USB on OpenBSD 4.3 - no input interrupt endpoint

ng-sup01 ng-sup01 at mclink.it
Thu Oct 9 22:09:46 UTC 2008


[moved from nut-upsdev]

Hello Henning,

Henning Brauer wrote:
> * ng-sup01 <ng-sup01 at mclink.it> [2008-09-12 12:24]:
>> uhidev0 at uhub0 port 1 configuration 1 interface 0 "UIS_ABLER USB to 
>> Serial" rev 1.00/1.00 addr 2
> 
> that's the problem, uhiddev must not claim the device and leave it to
> ugen. you must add a quirk like
> 
>  { USB_VENDOR_APC, USB_PRODUCT_APC_UPSPRO500,       ANY,   {UQ_BAD_HID }},
> 
> (with vendor & product for your UPS of course) to
> sys/dev/usb/usb_quirks.c for now, and use sendbug to send it in for
> inclusion.

OK, tried guessing and adding a line as you suggested. I'm gessing, I 
have almost no clue about what I'm doing. So, in 
sys/dev/usb/usb_quirks.c I added:

[...]
  /* XXX These should have a revision number, but I don't know what they 
are. */
[...]
  { USB_VENDOR_MGE, USB_PRODUCT_MGE_UPS2,    ANY,   { UQ_BAD_HID }},

  { USB_VENDOR_ABLEREX, USB_PRODUCT_ABLEREX_UPS1501, ANY, { UQ_BAD_HID }},

  /* SISPM devices */
[...]


Also, I noticed that Ablerex wasn't defined anywhere, so in usbdevs.h I 
added:

#define USB_VENDOR_ABLEREX      0x000f          /* Unknown vendor */
[...]
/* ABLEREX products */
#define USB_PRODUCT_ABLEREX_UPS1501     0x0000          /* Ablerex 
USB-to-serial UPS */

So, the kernel compiled fine, installed & rebooted; but when I plug in 
the UPS, I get exactly the same results as in my first post (uhidev2: no 
input interrupt endpoint).

What I really can't figure out is what I am supposed to enter in the two 
files I modified. I tried looking at similar entries for Belkin stuff, 
but no joy.

Besides, I am not sure what are the values I am supposed to enter. Under 
Linux, on an Ubuntu machine with UPS connected and NUT running:

#lsusb
Bus 008 Device 003: ID 0bda:0111 Realtek Semiconductor Corp.
Bus 008 Device 001: ID 0000:0000
Bus 007 Device 001: ID 0000:0000
Bus 006 Device 001: ID 0000:0000
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 004: ID ffff:0000    <--------- THIS IS IT!
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

But, on another Ubuntu box (same version), UPS connected but no NUT:

#lsusb
Bus 002 Device 001: ID ffff:0000
Bus 001 Device 002: ID 0001:0000 Fry's Electronics
Bus 001 Device 001: ID 0000:0000

Fry's Electronics? *This* Fry's?!?!?: www.outpost.com

Anyway, after playing around with a mouse and a USB-to-Ethernet adaptor, 
I decided the productID was 0x0001.

BTW, if I do a lsusb -vv, I get
[snip]
   idVendor           0xffff
   idProduct          0x0000
   bcdDevice            1.00
   iManufacturer           1
   iProduct                2 068A
   iSerial                 0
   bNumConfigurations      1
[snip]

I believe the only significant piece of info is the iProduct.

I'm sure I'm doing something very wrong, can you point me in the right 
direction?

   --Vic



More information about the Nut-upsuser mailing list