Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] UDEV rel 058 not properly behaving with Palm
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Sun Jul 24, 2005 9:20 pm    Post subject: [SOLVED] UDEV rel 058 not properly behaving with Palm Reply with quote

Hi,

I have been trying to get support through gentoo channel but everybody has udev working properly.
So, after several days of work I still did not get it to work properly.
Can someone, experienced, please assist me?

Here is what is happening:
Current setup:
- Linux pc01 2.6.11-gentoo-r11 #6 Sun Jul 24 10:59:56 CEST 2005 x86_64 AMD Athlon(tm) 64 Processor 3200+ AuthenticAMD GNU/Linux
- Udev: [ebuild R ] sys-fs/udev-058 (-selinux) -static 0 kB

Current default udev files:
- /etc/udev/rules.d/50-udev.rules
- /etc/udev/permissions.d/50-udev.permissions

My USB devices are:
a. USB Handheld Visor Neo;
b. USB LaserJet HP printer;
c. USB Scanner Epson Perfection 2400;
d. USB mouse Logitech M310;
e. USB Cherry keyboard;
f. USB Nikon LS-5000 Scanner;
g. USB Digital camera Fujifilm E550.

By default, mouse and keyboard work fine.
So, I plugged my handheld device in and no node was abailable. The same for my printer, .....
Is not true that UDEV in supposed to handle these devices and threfore create those nodes?

So, looking around, I based my thinking on this article (http://www.reactivated.net/writing_udev_rules.html)
Concluding, I have this setting in place:
Current default udev files:
- /etc/udev/rules.d/50-udev.rules
- /etc/udev/rules.d/10-local.rules
- /etc/udev/rules.d/10-udev.rules

- /etc/udev/permissions.d/50-udev.permissions
- /etc/udev/permissions.d/10-udev.permissions

10-udev.permissions
Code:
# set Palm Pilot Read/Write
pilot*:root:usb:0666

# set /dev/hda DVD-ROM to Read Only
hda:root:cdrom:0660

# scanner devices
scanner:root:scanner:0660
usb/scanner*:root:scanner:0660


10-local.rules
Code:
BUS="usb", SYSFS{serial}="00CNGW54WG6L", NAME="%k", SYMLINK="printers/hp1320"


10-udev.rules
Code:
BUS="usb", SYSFS{serial}="0000:00:02.0", NAME="pilot"


With this setting, I am able to get my devices to work, although I have an issue with the handheld not always being available (using the cradle) and the printer with the tail of the printout on the printer side.

My problem, now, is that anything that I plug in is not accessible. As an example: i plug my fuji camera and is detected as sdc1 (I can see it in /var/log/messages) but it does not appear in fdisk -l and in dmesg.
How did I solve the issue, momentarily? I removed my custom rules and permissions, and now I can see my sdc1 BUT the other devices now do not work.

What on earth is wrong?
Please help me. I am desperate. :cry:

thank you,
Spiro


Last edited by SAngeli on Wed Aug 31, 2005 4:56 pm; edited 2 times in total
Back to top
View user's profile Send private message
gimpel
Advocate
Advocate


Joined: 15 Oct 2004
Posts: 2720
Location: Munich, Bavaria

PostPosted: Sun Jul 24, 2005 10:52 pm    Post subject: Reply with quote

since udev-052 /etc/udev/permissions.d/* is useless ;)

also having 10-*.rules twice doesn't make any sense...
the files are read in chronical order 01..10..50 and have to end with .rules, that's all

and btw this doesn't have anything to do with 'Desktop Environments' and that kind of stuff... take a look at the kernel&hardware forum... tons of udev related threads there :P
_________________
http://proaudio.tuxfamily.org/wiki - pro-audio software overlay
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Mon Jul 25, 2005 6:32 am    Post subject: Reply with quote

Hi gimpel,

thank you for pointing out the appropriate thread position. I will keep in mind and surf for udev threads.

1)
Quote:
since udev-052 /etc/udev/permissions.d/* is useless

How come, if I create a new custom rule, it enables my scanner group to users, and instead if I remove it it does not? Also, as becoming useless, what has benn replaced with?

2) could you please propose a solution to my issue, if you can came up with one?

Thank you,
Spiro
Back to top
View user's profile Send private message
gimpel
Advocate
Advocate


Joined: 15 Oct 2004
Posts: 2720
Location: Munich, Bavaria

PostPosted: Mon Jul 25, 2005 9:54 am    Post subject: Reply with quote

SAngeli wrote:

1)
Quote:
since udev-052 /etc/udev/permissions.d/* is useless

How come, if I create a new custom rule, it enables my scanner group to users, and instead if I remove it it does not? Also, as becoming useless, what has benn replaced with?


that would be really strange. i still know that from the switch to udev > 0.52. and also the changelog tells it's not used anymore.

Sorry, i have no straight solution to your problem. i only have one usb based device, which is my printer and ever worked by default...
_________________
http://proaudio.tuxfamily.org/wiki - pro-audio software overlay
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Mon Aug 15, 2005 9:20 pm    Post subject: Reply with quote

Hi,

I am going C R A Z Y :cry: :cry: :cry:

I had my palm pilot properly set with my UDEV rules.
Now, I have upgraded (via emerge -uD world) both udev and gentoo (amd64) and my rule does not work anymore.
What should I do, beside jump out of the Linux box?

Here is my UDEV rule (in /etc/udev/rules.d/10-udev.rules)
Code:
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"

It was working before

Now, I can see the device, but when I query it with udevinfo, I get this, rather than the entire palm info:

Here some info I am able to obtain:

dmesg
Code:
visor 2-2:1.0: Handspring Visor / Palm OS converter detected
usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB0
usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB1
visor ttyUSB0: Handspring Visor / Palm OS converter now disconnected from ttyUSB0
visor ttyUSB1: Handspring Visor / Palm OS converter now disconnected from ttyUSB1
usb 2-2: Handspring Visor / Palm OS: port 1, is for Generic use
usb 2-2: Handspring Visor / Palm OS: port 2, is for HotSync use
usb 2-2: Handspring Visor / Palm OS: Number of ports: 2
visor 2-2:1.0: Handspring Visor / Palm OS converter detected
usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB0
usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB1
visor ttyUSB0: Handspring Visor / Palm OS converter now disconnected from ttyUSB0
visor ttyUSB1: Handspring Visor / Palm OS converter now disconnected from ttyUSB1


tail /var/log/messages
Code:
Aug 15 17:11:00 mir.medjugorje.net usb 2-2: new full speed USB device using ohci_hcd and address 21
Aug 15 17:11:01 usb 2-2: Handspring Visor / Palm OS: port 1, is for Generic use
Aug 15 17:11:01 usb 2-2: Handspring Visor / Palm OS: port 2, is for HotSync use
Aug 15 17:11:01 usb 2-2: Handspring Visor / Palm OS: Number of ports: 2
Aug 15 17:11:01 visor 2-2:1.0: Handspring Visor / Palm OS converter detected
Aug 15 17:11:01 usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB0
Aug 15 17:11:01 usb 2-2: Handspring Visor / Palm OS converter now attached to ttyUSB1
Aug 15 17:11:06 usb 2-2: USB disconnect, address 21
Aug 15 17:11:06 visor ttyUSB0: Handspring Visor / Palm OS converter now disconnected from ttyUSB0
Aug 15 17:11:06 visor ttyUSB1: Handspring Visor / Palm OS converter now disconnected from ttyUSB1
Aug 15 17:11:06 visor 2-2:1.0: device disconnected


lsusb
Code:
Bus 002 Device 023: ID 082d:0100 Handspring Visor
Bus 002 Device 003: ID 046d:c01b Logitech, Inc. MX310 Optical Mouse
Bus 002 Device 002: ID 046a:0023 Cherry GmbH
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 04b8:011b Seiko Epson Corp. Perfection 2400 Photo
Bus 001 Device 001: ID 0000:0000


Code:
T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 15 Spd=12  MxCh= 0
D:  Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=16 #Cfgs=  1
P:  Vendor=082d ProdID=0100 Rev= 1.00
S:  Manufacturer=Handspring Inc
S:  Product=Handspring Visor
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=  2mA
I:  If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=00 Prot=00 Driver=visor
E:  Ad=81(I) Atr=02(Bulk) MxPS=  16 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS=  16 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms


Code:
lrwxrwxrwx  1 root root    0 Aug 15 17:03 device -> ../../../devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0/ttyUSB1


# udevinfo -p /sys/class/tty/ttyUSB1 -a
Code:
udevinfo starts with the device the node belongs to and then walks up the
device chain, to print for every device found, all possibly useful attributes
in the udev key format.
Only attributes within one device section may be used together in one rule,
to match the device for which the node will be created.

device '/sys/class/tty/ttyUSB1' has major:minor 188:1
  looking at class device '/sys/class/tty/ttyUSB1':
    SUBSYSTEM=="tty"
    SYSFS{dev}=="188:1"

follow the "device"-link to the physical device:
couldn't open device directory


How come now I get this error? I have not changed anything so far since my last time it was working.
follow the "device"-link to the physical device:
couldn't open device directory


Any kind of help is welcomed.

Thank you,
Spiro
Back to top
View user's profile Send private message
gcasillo
l33t
l33t


Joined: 23 Sep 2003
Posts: 739
Location: Cincinnati, Ohio, USA

PostPosted: Tue Aug 16, 2005 4:18 am    Post subject: Reply with quote

udev is a broken down PoS. I'm tired of my cdrom and DVD drives going missing every time udev is updated (which is infrequently to begin with). I realize that, in theory, udev is a better method for handling devices dynamically. But in reality, it sucks sh!t. Drives shouldn't be inaccessible. This is annoying. :x

I'm going to have to consider making that notebook purchase an Apple one and be assimilated, simply because I want my cdrom drive to work. :cry:
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Tue Aug 16, 2005 4:47 am    Post subject: Reply with quote

gcasillo wrote:
udev is a broken down PoS. I'm tired of my cdrom and DVD drives going missing every time udev is updated (which is infrequently to begin with). I realize that, in theory, udev is a better method for handling devices dynamically. But in reality, it sucks sh!t. Drives shouldn't be inaccessible. This is annoying. :x

Are you using a unstable version? I haven't had any problems in 5 or so updates when using the stable versions.
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Tue Aug 16, 2005 4:49 am    Post subject: Reply with quote

SAngeli wrote:
I had my palm pilot properly set with my UDEV rules.
Now, I have upgraded (via emerge -uD world) both udev and gentoo (amd64) and my rule does not work anymore.
What should I do, beside jump out of the Linux box?

Here is my UDEV rule (in /etc/udev/rules.d/10-udev.rules)
Code:
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"

I don't know if it matters, but could the double equal signs be the problem?
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Fri Aug 19, 2005 9:15 pm    Post subject: Reply with quote

Hi Headrushm,

no, double equals is fine. If you look into man udev they report some examples. Here some I took from man udev:
Code:
 A sample udev.rules file might look like this:

       # if /sbin/scsi_id returns "OEM 0815", the device will be called disk1
       BUS=="scsi", PROGRAM=="/sbin/scsi_id", RESULT=="OEM 0815", NAME="disk1"

       # USB printer to be called lp_color
       BUS=="usb", SYSFS{serial}=="W09090207101241330", NAME="lp_color"

       # SCSI disk with a specific vendor and model number will be called boot
       BUS=="scsi", SYSFS{vendor}=="IBM", SYSFS{model}=="ST336", NAME="boot%n"

       # sound card with PCI bus id 00:0b.0 to be called dsp
       BUS=="pci", ID=="00:0b.0", NAME="dsp"

       # USB mouse at third port of the second hub to be called mouse1
       BUS=="usb", ID=="2.3", NAME="mouse1"

       # ttyUSB1 should always be called pda with two additional symlinks
       KERNEL=="ttyUSB1", NAME="pda", SYMLINK="palmtop handheld"


Here is my current UDEV version: [ebuild R ] sys-fs/udev-058 (-selinux) -static 0 kB
It is marked stable.

Thanks,
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Fri Aug 26, 2005 2:46 pm    Post subject: Reply with quote

Let's do 1 device at a time.

Can you post your current 10-local.rules file?

I would suggest upgrading the the stable 2.6.12-gentoo-r9 kernel if possible also.
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Sat Aug 27, 2005 4:30 pm    Post subject: Reply with quote

Hi,

I am upgrading now to your adviced gentoo-sources r9 version. Meanwile, I am posting what you asked.

Code:
$ cat /etc/udev/rules.d/10-udev.rules
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"
BUS="usb", SYSFS{product}="KanguruMicro", SYSFS{serial}="031B1A080089", NAME="%k", SYMLINK="usbpen", GROUP="users", MODE="0666"
BUS="usb", SYSFS{product}="USB Mass Storage", SYSFS{serial}="Y-764^^^^^040819XFPX0003003340", NAME="%k", SYMLINK="fujidcam", GROUP="users", MODE="0660"


Thank you,
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Sat Aug 27, 2005 5:32 pm    Post subject: Reply with quote

And
Code:
lsusb -v

also.
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Sat Aug 27, 2005 5:57 pm    Post subject: Reply with quote

Hi,

here is the lsusb without the handheld connected (through hotsink button pushed)
Code:
Bus 002 Device 003: ID 046a:0023 Cherry GmbH
Bus 002 Device 002: ID 046d:c01b Logitech, Inc. MX310 Optical Mouse
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 04b8:011b Seiko Epson Corp. Perfection 2400 Photo
Bus 001 Device 001: ID 0000:0000

Code:
Bus 002 Device 003: ID 046a:0023 Cherry GmbH
  Language IDs: none (cannot get min. string descriptor; got len=-1, error=32:Broken pipe)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x046a Cherry GmbH
  idProduct          0x0023
  bcdDevice            0.27
  iManufacturer           0
  iProduct                0
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Devices
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      64
cannot get report descriptor
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          8
        bInterval              10
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Devices
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      52
cannot get report descriptor
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          3
        bInterval              10
  Language IDs: none (cannot get min. string descriptor; got len=-1, error=32:Broken pipe)

Bus 002 Device 002: ID 046d:c01b Logitech, Inc. MX310 Optical Mouse
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x046d Logitech, Inc.
  idProduct          0xc01b MX310 Optical Mouse
  bcdDevice           18.00
  iManufacturer           1 Logitech
  iProduct                2 USB-PS/2 Optical Mouse
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      Remote Wakeup
    MaxPower               98mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Devices
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      64
cannot get report descriptor
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          5
        bInterval              10
  Language IDs: (length=4)
     0409 English(US)

Bus 002 Device 001: ID 0000:0000
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x0000
  idProduct          0x0000
  bcdDevice            2.06
  iManufacturer           3 Linux 2.6.12-gentoo-r6 ohci_hcd
  iProduct                2 nVidia Corporation CK804 USB Controller
  iSerial                 1 0000:00:02.0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          2
        bInterval             255
  Language IDs: (length=4)
     0409 English(US)

Bus 001 Device 002: ID 04b8:011b Seiko Epson Corp. Perfection 2400 Photo
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass       255 Vendor Specific Subclass
  bDeviceProtocol       255 Vendor Specific Protocol
  bMaxPacketSize0        64
  idVendor           0x04b8 Seiko Epson Corp.
  idProduct          0x011b Perfection 2400 Photo
  bcdDevice            1.00
  iManufacturer           1 EPSON
  iProduct                2 EPSON Scanner
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize        512
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize        512
        bInterval               0
  Language IDs: (length=4)
     0409 English(US)

Bus 001 Device 001: ID 0000:0000
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0         8
  idVendor           0x0000
  idProduct          0x0000
  bcdDevice            2.06
  iManufacturer           3 Linux 2.6.12-gentoo-r6 ehci_hcd
  iProduct                2 nVidia Corporation CK804 USB Controller
  iSerial                 1 0000:00:02.1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          2
        bInterval              12
  Language IDs: (length=4)
     0409 English(US)


here is the lsusb with the handheld connected (through hotsink button pushed)
Code:
Bus 002 Device 005: ID 082d:0100 Handspring Visor
Bus 002 Device 003: ID 046a:0023 Cherry GmbH
Bus 002 Device 002: ID 046d:c01b Logitech, Inc. MX310 Optical Mouse
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 04b8:011b Seiko Epson Corp. Perfection 2400 Photo
Bus 001 Device 001: ID 0000:0000


This is the output portion applying to the device, it was not above displayed
Code:
Bus 002 Device 006: ID 082d:0100 Handspring Visor
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        16
  idVendor           0x082d Handspring
  idProduct          0x0100 Visor
  bcdDevice            1.00
  iManufacturer           1 Handspring Inc
  iProduct                2 Handspring Visor
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           46
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         16
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         16
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
  Language IDs: (length=4)
     0409 English(US)


Thanks,
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Sat Aug 27, 2005 8:44 pm    Post subject: Reply with quote

One other thing before I post a udev-rules file?

Remove the custom 10-... udev rules file and the permissions file.
Issue a
Code:
udevstart


Now, can you post the lsusb output with the camera, scanner and usbstick attached? (no -v option needed)

When you hit the hotsync button on palm, what is the contents of
Code:
ls -l /dev/tts/*
ls -l /dev/USB*


After that I'll post a complete udev file and we can work from that.
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Sun Aug 28, 2005 8:14 am    Post subject: Reply with quote

Hi,

here is the answers (properly done after your note).

Check that lsmod would show the loaded module
Code:
visor                  19788  0
usbserial              28656  1 visor


Removed completely all custom rules from rules.d and permissions.d folders
Code:
total 20
drwxr-xr-x  2 root root 4096 Aug 28 09:49 .
drwxr-xr-x  5 root root 4096 Jul 14 22:05 ..
-rw-r--r--  1 root root 8356 Jul 14 15:48 50-udev.rules


Then, I run
Code:
udevstart


Here is a series of tests from konsole with their output:

While the hotsink button is pushed:
a. # ls -l /dev/tts/*
Code:
crw-rw----  1 root tty 4, 64 Aug 28 09:55 /dev/tts/0
crw-rw----  1 root tty 4, 65 Aug 28  2005 /dev/tts/1
crw-rw----  1 root tty 4, 66 Aug 28  2005 /dev/tts/2
crw-rw----  1 root tty 4, 67 Aug 28  2005 /dev/tts/3
crw-rw----  1 root tty 4, 68 Aug 28  2005 /dev/tts/4
crw-rw----  1 root tty 4, 69 Aug 28  2005 /dev/tts/5
crw-rw----  1 root tty 4, 70 Aug 28  2005 /dev/tts/6
crw-rw----  1 root tty 4, 71 Aug 28  2005 /dev/tts/7

b. # ls -l /dev/USB*
Code:
ls: /dev/USB*: No such file or directory

c. /var/log/messages
Code:
usb 2-4: new full speed USB device using ohci_hcd and address 7
usb 2-4: Handspring Visor / Palm OS: port 1, is for Generic use
usb 2-4: Handspring Visor / Palm OS: port 2, is for HotSync use
usb 2-4: Handspring Visor / Palm OS: Number of ports: 2
visor 2-4:1.0: Handspring Visor / Palm OS converter detected
usb 2-4: Handspring Visor / Palm OS converter now attached to ttyUSB0
usb 2-4: Handspring Visor / Palm OS converter now attached to ttyUSB1
usb 2-4: USB disconnect, address 7
visor ttyUSB0: Handspring Visor / Palm OS converter now disconnected from ttyUSB0
visor ttyUSB1: Handspring Visor / Palm OS converter now disconnected from ttyUSB1
visor 2-4:1.0: device disconnected

d. /sys/class/tty
# ls ttyUSB* -l
Code:
ttyUSB0:
total 0
-r--r--r--  1 root root 4096 Aug 28 10:03 dev
lrwxrwxrwx  1 root root    0 Aug 28 10:03 device -> ../../../devices/pci0000:00/0000:00:02.0/usb2/2-4/2-4:1.0/ttyUSB0

ttyUSB1:
total 0
-r--r--r--  1 root root 4096 Aug 28 10:03 dev
lrwxrwxrwx  1 root root    0 Aug 28 10:03 device -> ../../../devices/pci0000:00/0000:00:02.0/usb2/2-4/2-4:1.0/ttyUSB1

e. udevinfo
# udevinfo -a -p /sys/class/tty/ttyUSB1
Code:
udevinfo starts with the device the node belongs to and then walks up the
device chain, to print for every device found, all possibly useful attributes
in the udev key format.
Only attributes within one device section may be used together in one rule,
to match the device for which the node will be created.

device '/sys/class/tty/ttyUSB1' has major:minor 188:1
  looking at class device '/sys/class/tty/ttyUSB1':
    SUBSYSTEM=="tty"
    SYSFS{dev}=="188:1"

follow the "device"-link to the physical device:
couldn't open device directory


This is what I believe the problem:
couldn't open device directory

So, I hope I provided sufficient info.

Please advice...

PS: How to discover the node the kernel created for a device that shows up in dmesg or messages?

thank you,
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Mon Aug 29, 2005 2:57 pm    Post subject: Reply with quote

Sorry SAngeli, been a little behind on posting you a udev rule file.

I'll be back to my home machine later tonight. In the meantime you can check out http://forums.gentoo.org/viewtopic-t-360012-highlight-palm.html where we worked out a similar thing.
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Tue Aug 30, 2005 5:48 pm    Post subject: Reply with quote

SAngeli, did the udev.rules I sent you help?
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Wed Aug 31, 2005 11:04 am    Post subject: SOLVED Reply with quote

Hi,

My theory was confirmed: UDEV rel 058 has some issues with USB Palm devices (at least with HandSpring Palm HandHeld Visor Neo).
Prior to my updating to rel 058, with the existing rules my Palm device was properly working, properly sinking.
Code:
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"

Only since/after rel 058 was implemented, I started experiencing difficulties. Need udev rule to create symlink [SOLVED] thread is another example.

So, I decided to upgrade from rel 058 to rel 068 and immediately /dev/ttyUSB1 worked.

Concluding, as far as I know, UDEV was the cause of malfunction.

* * * SOLUTION: Upgrade to latest UDEV version (> 068). * * *

Now, could you (Headrush) kindly:
a. check my rules?
Code:
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"
BUS="usb", SYSFS{product}="KanguruMicro", SYSFS{serial}="031B1A080089", NAME="%k", SYMLINK="usbpen", GROUP="users", MODE="0666"
BUS="usb", SYSFS{product}="USB Mass Storage", SYSFS{serial}="Y-764^^^^^040819XFPX0003003340", NAME="%k", SYMLINK="fujidcam", GROUP="users", MODE="0660"

b. teach me how, in general, to detect I assume under /sys any USB device I plug-in so that I can with # udevinfo -a -p query any device? (i.e.: cell phones, digital camera, printers, handy cams, ...)
c: how come /etc/udev/permissions.d after updates still exists as a folder and what would happen if I manually remove it for present and future updates? Will new UDEV release recreate it?
d. how to inform udev devel about this issue so that they won't repeat it again?

thank you for your kind assistance and reply.
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Wed Aug 31, 2005 2:57 pm    Post subject: Re: SOLVED Reply with quote

SAngeli wrote:
Now, could you (Headrush) kindly:
a. check my rules?
Code:
BUS=="usb", SYSFS{product}=="Handspring Visor", KERNEL="ttyUSB1", NAME="visor", GROUP="users"
BUS="usb", SYSFS{product}="KanguruMicro", SYSFS{serial}="031B1A080089", NAME="%k", SYMLINK="usbpen", GROUP="users", MODE="0666"
BUS="usb", SYSFS{product}="USB Mass Storage", SYSFS{serial}="Y-764^^^^^040819XFPX0003003340", NAME="%k", SYMLINK="fujidcam", GROUP="users", MODE="0660"

b. teach me how, in general, to detect I assume under /sys any USB device I plug-in so that I can with # udevinfo -a -p query any device? (i.e.: cell phones, digital camera, printers, handy cams, ...)

Unless absolutely needed, I try to keep my udev rules simple. I always leave NAME="%k" so I always have the original kernel device node, and then use SYMLINK to make the device I prefer and use when possible.
(Some programs are still hard-coded, hence why I keep the original kernel named devices.)

I find it easiest to use SYSFS{idVendor} and SYSFS{idProduct} whenever possible, instead of the other attributes.
These two attributes are easy to find using lsusb

To see examples and the different modifiers you can use in your udev rules (aka %n, %c) look at the man page:
Code:
man udev

SAngeli wrote:
c: how come /etc/udev/permissions.d after updates still exists as a folder and what would happen if I manually remove it for present and future updates? Will new UDEV release recreate it?

Deleteting it won't hurt and leaving it won't matter either. Probably just hasn't been removed yet. (oversight)

SAngeli wrote:
d. how to inform udev devel about this issue so that they won't repeat it again?

Submit the bug to http://bugs.gentoo.org (the udev developers will see it)
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Wed Aug 31, 2005 3:10 pm    Post subject: Reply with quote

Thank you Headrush for your assistance. :wink:

Any comment on this (is important for me to learn):
SAngeli wrote:
b. teach me how, in general, to detect I assume under /sys any USB device I plug-in so that I can with # udevinfo -a -p query any device? (i.e.: cell phones, digital camera, printers, handy cams, ...)

Also, is it BUS=="usb" or BUS="USB"?

Take care,
Spiro
Back to top
View user's profile Send private message
Headrush
Watchman
Watchman


Joined: 06 Nov 2003
Posts: 5597
Location: Bizarro World

PostPosted: Wed Aug 31, 2005 11:42 pm    Post subject: Reply with quote

SAngeli wrote:
b. teach me how, in general, to detect I assume under /sys any USB device I plug-in so that I can with # udevinfo -a -p query any device? (i.e.: cell phones, digital camera, printers, handy cams, ...)

You've have to read the tutorial on the udev home page. Like you, I found searching in /sys a pain and was always able to find all the info I would need using
Code:
lsusb -v

SAngeli wrote:
Also, is it BUS=="usb" or BUS="USB"?

I don't know, but I only use the BUS="usb".
Back to top
View user's profile Send private message
SAngeli
l33t
l33t


Joined: 16 Apr 2004
Posts: 904
Location: Italy

PostPosted: Thu Sep 01, 2005 6:17 am    Post subject: Reply with quote

thanks,

Spiro
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum