Strona 2 z 3

: 07 czerwca 2013, 21:23
autor: Janek_12

Kod: Zaznacz cały

root@debian:~# udevadm info --name=/dev/ttyUSB0 --attribute-walk

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.0/ttyUSB0':
    KERNELS=="ttyUSB0"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ftdi_sio"
    ATTRS{latency_timer}=="1"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.0':
    KERNELS=="1-3:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="ftdi_sio"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceSubClass}=="ff"
    ATTRS{bInterfaceProtocol}=="ff"
    ATTRS{supports_autosuspend}=="1"
    ATTRS{interface}=="Quad RS232-HS"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3':
    KERNELS=="1-3"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 4"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="80"
    ATTRS{bMaxPower}=="500mA"
    ATTRS{urbnum}=="44831856"
    ATTRS{idVendor}=="0403"
    ATTRS{idProduct}=="6011"
    ATTRS{bcdDevice}=="0800"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="2"
    ATTRS{devpath}=="3"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="0"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="FTDI"
    ATTRS{product}=="Quad RS232-HS"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="  0mA"
    ATTRS{urbnum}=="40"
    ATTRS{idVendor}=="1d6b"
    ATTRS{idProduct}=="0002"
    ATTRS{bcdDevice}=="0302"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="6"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="Linux 3.2.0-4-686-pae ehci_hcd"
    ATTRS{product}=="EHCI Host Controller"
    ATTRS{serial}=="0000:00:0f.3"
    ATTRS{authorized_default}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3':
    KERNELS=="0000:00:0f.3"
    SUBSYSTEMS=="pci"
    DRIVERS=="ehci_hcd"
    ATTRS{vendor}=="0x10b9"
    ATTRS{device}=="0x5239"
    ATTRS{subsystem_vendor}=="0x10b9"
    ATTRS{subsystem_device}=="0x5239"
    ATTRS{class}=="0x0c0320"
    ATTRS{irq}=="5"
    ATTRS{local_cpus}=="ffffffff"
    ATTRS{local_cpulist}=="0-31"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{enable}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{msi_bus}==""
    ATTRS{companion}==""
    ATTRS{uframe_periodic_max}=="100"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""


Kod: Zaznacz cały

root@debian:~# udevadm info --name=/dev/ttyUSB1 --attribute-walk

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.1/ttyUSB1/tty/ttyUSB1':
    KERNEL=="ttyUSB1"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.1/ttyUSB1':
    KERNELS=="ttyUSB1"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ftdi_sio"
    ATTRS{latency_timer}=="1"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3/1-3:1.1':
    KERNELS=="1-3:1.1"
    SUBSYSTEMS=="usb"
    DRIVERS=="ftdi_sio"
    ATTRS{bInterfaceNumber}=="01"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceSubClass}=="ff"
    ATTRS{bInterfaceProtocol}=="ff"
    ATTRS{supports_autosuspend}=="1"
    ATTRS{interface}=="Quad RS232-HS"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1/1-3':
    KERNELS=="1-3"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 4"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="80"
    ATTRS{bMaxPower}=="500mA"
    ATTRS{urbnum}=="44914176"
    ATTRS{idVendor}=="0403"
    ATTRS{idProduct}=="6011"
    ATTRS{bcdDevice}=="0800"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="2"
    ATTRS{devpath}=="3"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="0"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="FTDI"
    ATTRS{product}=="Quad RS232-HS"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="  0mA"
    ATTRS{urbnum}=="40"
    ATTRS{idVendor}=="1d6b"
    ATTRS{idProduct}=="0002"
    ATTRS{bcdDevice}=="0302"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="6"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="Linux 3.2.0-4-686-pae ehci_hcd"
    ATTRS{product}=="EHCI Host Controller"
    ATTRS{serial}=="0000:00:0f.3"
    ATTRS{authorized_default}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:0f.3':
    KERNELS=="0000:00:0f.3"
    SUBSYSTEMS=="pci"
    DRIVERS=="ehci_hcd"
    ATTRS{vendor}=="0x10b9"
    ATTRS{device}=="0x5239"
    ATTRS{subsystem_vendor}=="0x10b9"
    ATTRS{subsystem_device}=="0x5239"
    ATTRS{class}=="0x0c0320"
    ATTRS{irq}=="5"
    ATTRS{local_cpus}=="ffffffff"
    ATTRS{local_cpulist}=="0-31"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{enable}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{msi_bus}==""
    ATTRS{companion}==""
    ATTRS{uframe_periodic_max}=="100"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

: 07 czerwca 2013, 21:53
autor: Rafal_F
Jak widać w rozwinięciu atrybutów nie ma atrybutu ID, jest za to:

Kod: Zaznacz cały

KERNELS=="1-3:1.0"
Spróbuj tak:

Kod: Zaznacz cały

SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-3:1.0",  ATTRS{bInterfaceNumber}=="00", SYMLINK+="quad-2-1"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-3:1.1",  ATTRS{bInterfaceNumber}=="01", SYMLINK+="quad-2-2"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-3:1.2",  ATTRS{bInterfaceNumber}=="02", SYMLINK+="quad-2-3"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-3:1.3",  ATTRS{bInterfaceNumber}=="03", SYMLINK+="quad-2-4"

: 07 czerwca 2013, 22:10
autor: Janek_12
Sukces co 2 głowy to nie jedna.
Dziękuję Rafal_F[/b.

Kod: Zaznacz cały

root@debian:~# ls -la /dev
razem 4
drwxr-xr-x 15 root root        3220 cze  7 22:06 .
drwxr-xr-x 22 root root        4096 cze  1 23:03 ..
crw-rw---T  1 root video    10, 175 cze  8  2013 agpgart
crw------T  1 root root     10, 235 cze  8  2013 autofs
drwxr-xr-x  2 root root         300 cze  7 22:06 block
drwxr-xr-x  2 root root          80 cze  8  2013 bsg
crw------T  1 root root     10, 234 cze  8  2013 btrfs-control
drwxr-xr-x  3 root root          60 cze  8  2013 bus
drwxr-xr-x  2 root root        2700 cze  7 22:06 char
crw-------  1 root root      5,   1 cze  7 22:06 console
lrwxrwxrwx  1 root root          11 cze  8  2013 core -> /proc/kcore
drwxr-xr-x  2 root root          60 cze  8  2013 cpu
crw-------  1 root root     10,  62 cze  8  2013 cpu_dma_latency
drwxr-xr-x  6 root root         120 cze  8  2013 disk
drwxr-xr-x  2 root root          80 cze  7 22:05 dri
crw-rw---T  1 root video    29,   0 cze  7 22:05 fb0
lrwxrwxrwx  1 root root          13 cze  8  2013 fd -> /proc/self/fd
crw-rw-rw-  1 root root      1,   7 cze  8  2013 full
crw------T  1 root root     10, 229 cze  8  2013 fuse
crw-------  1 root root     10, 228 cze  7 22:05 hpet
drwxr-xr-x  3 root root         180 cze  7 22:05 input
crw-------  1 root root      1,  11 cze  8  2013 kmsg
srw-rw-rw-  1 root root           0 cze  7 22:06 log
brw-rw---T  1 root disk      7,   0 cze  7 22:06 loop0
brw-rw---T  1 root disk      7,   1 cze  7 22:06 loop1
brw-rw---T  1 root disk      7,   2 cze  7 22:06 loop2
brw-rw---T  1 root disk      7,   3 cze  7 22:06 loop3
brw-rw---T  1 root disk      7,   4 cze  7 22:06 loop4
brw-rw---T  1 root disk      7,   5 cze  7 22:06 loop5
brw-rw---T  1 root disk      7,   6 cze  7 22:06 loop6
brw-rw---T  1 root disk      7,   7 cze  7 22:06 loop7
crw------T  1 root root     10, 237 cze  7 22:06 loop-control
lrwxrwxrwx  1 root root           9 cze  8  2013 MAKEDEV -> /bin/true
drwxr-xr-x  2 root root          60 cze  8  2013 mapper
crw-------  1 root root     10, 227 cze  7 22:05 mcelog
crw-r----T  1 root kmem      1,   1 cze  8  2013 mem
drwxr-xr-x  2 root root          60 cze  8  2013 net
crw-------  1 root root     10,  61 cze  7 22:05 network_latency
crw-------  1 root root     10,  60 cze  7 22:05 network_throughput
crw-rw-rw-  1 root root      1,   3 cze  8  2013 null
crw-------  1 root root      1,  12 cze  8  2013 oldmem
crw-r----T  1 root kmem      1,   4 cze  8  2013 port
crw------T  1 root root    108,   0 cze  8  2013 ppp
crw-------  1 root root     10,   1 cze  7 22:05 psaux
crw-rw-rw-  1 root root      5,   2 cze  7 22:07 ptmx
drwxr-xr-x  2 root root           0 cze  8  2013 pts
lrwxrwxrwx  1 root root           7 cze  7 22:05 quad-2-1 -> ttyUSB0
lrwxrwxrwx  1 root root           7 cze  7 22:05 quad-2-2 -> ttyUSB1
lrwxrwxrwx  1 root root           7 cze  7 22:05 quad-2-3 -> ttyUSB2
lrwxrwxrwx  1 root root           7 cze  7 22:05 quad-2-4 -> ttyUSB3
crw-rw-rw-  1 root root      1,   8 cze  8  2013 random
lrwxrwxrwx  1 root root           4 cze  7 22:06 root -> sdb1
lrwxrwxrwx  1 root root           4 cze  8  2013 rtc -> rtc0
crw-------  1 root root    254,   0 cze  8  2013 rtc0
brw-rw---T  1 root disk      8,   0 cze  7 22:05 sda
brw-rw---T  1 root disk      8,   1 cze  7 22:05 sda1
brw-rw---T  1 root disk      8,   2 cze  7 22:05 sda2
brw-rw---T  1 root floppy    8,  16 cze  7 22:05 sdb
brw-rw---T  1 root floppy    8,  17 cze  7 22:06 sdb1
drwxr-xr-x  4 root root          80 cze  7 22:05 serial
crw-------  1 root root     21,   0 cze  8  2013 sg0
crw-------  1 root root     21,   1 cze  8  2013 sg1
lrwxrwxrwx  1 root root           8 cze  7 22:06 shm -> /run/shm
crw-------  1 root root     10, 231 cze  7 22:05 snapshot
drwxr-xr-x  3 root root         200 cze  7 22:05 snd
lrwxrwxrwx  1 root root          24 cze  7 22:05 sndstat -> /proc/asound/oss/sndstat
lrwxrwxrwx  1 root root          15 cze  8  2013 stderr -> /proc/self/fd/2
lrwxrwxrwx  1 root root          15 cze  8  2013 stdin -> /proc/self/fd/0
lrwxrwxrwx  1 root root          15 cze  8  2013 stdout -> /proc/self/fd/1
crw-rw-rw-  1 root root      5,   0 cze  7 22:05 tty
crw-------  1 root root      4,   0 cze  7 22:05 tty0
crw-rw----  1 root tty       4,   1 cze  7 22:06 tty1
crw-------  1 root root      4,  10 cze  7 22:05 tty10
crw-------  1 root root      4,  11 cze  7 22:05 tty11
crw-------  1 root root      4,  12 cze  7 22:05 tty12
crw-------  1 root root      4,  13 cze  7 22:05 tty13
crw-------  1 root root      4,  14 cze  7 22:05 tty14
crw-------  1 root root      4,  15 cze  7 22:05 tty15
crw-------  1 root root      4,  16 cze  7 22:05 tty16
crw-------  1 root root      4,  17 cze  7 22:05 tty17
crw-------  1 root root      4,  18 cze  7 22:05 tty18
crw-------  1 root root      4,  19 cze  7 22:05 tty19
crw-rw----  1 root tty       4,   2 cze  7 22:06 tty2
crw-------  1 root root      4,  20 cze  7 22:05 tty20
crw-------  1 root root      4,  21 cze  7 22:05 tty21
crw-------  1 root root      4,  22 cze  7 22:05 tty22
crw-------  1 root root      4,  23 cze  7 22:05 tty23
crw-------  1 root root      4,  24 cze  7 22:05 tty24
crw-------  1 root root      4,  25 cze  7 22:05 tty25
crw-------  1 root root      4,  26 cze  7 22:05 tty26
crw-------  1 root root      4,  27 cze  7 22:05 tty27
crw-------  1 root root      4,  28 cze  7 22:05 tty28
crw-------  1 root root      4,  29 cze  7 22:05 tty29
crw-rw----  1 root tty       4,   3 cze  7 22:06 tty3
crw-------  1 root root      4,  30 cze  7 22:05 tty30
crw-------  1 root root      4,  31 cze  7 22:05 tty31
crw-------  1 root root      4,  32 cze  7 22:05 tty32
crw-------  1 root root      4,  33 cze  7 22:05 tty33
crw-------  1 root root      4,  34 cze  7 22:05 tty34
crw-------  1 root root      4,  35 cze  7 22:05 tty35
crw-------  1 root root      4,  36 cze  7 22:05 tty36
crw-------  1 root root      4,  37 cze  7 22:05 tty37
crw-------  1 root root      4,  38 cze  7 22:05 tty38
crw-------  1 root root      4,  39 cze  7 22:05 tty39
crw-rw----  1 root tty       4,   4 cze  7 22:06 tty4
crw-------  1 root root      4,  40 cze  7 22:05 tty40
crw-------  1 root root      4,  41 cze  7 22:05 tty41
crw-------  1 root root      4,  42 cze  7 22:05 tty42
crw-------  1 root root      4,  43 cze  7 22:05 tty43
crw-------  1 root root      4,  44 cze  7 22:05 tty44
crw-------  1 root root      4,  45 cze  7 22:05 tty45
crw-------  1 root root      4,  46 cze  7 22:05 tty46
crw-------  1 root root      4,  47 cze  7 22:05 tty47
crw-------  1 root root      4,  48 cze  7 22:05 tty48
crw-------  1 root root      4,  49 cze  7 22:05 tty49
crw-rw----  1 root tty       4,   5 cze  7 22:06 tty5
crw-------  1 root root      4,  50 cze  7 22:05 tty50
crw-------  1 root root      4,  51 cze  7 22:05 tty51
crw-------  1 root root      4,  52 cze  7 22:05 tty52
crw-------  1 root root      4,  53 cze  7 22:05 tty53
crw-------  1 root root      4,  54 cze  7 22:05 tty54
crw-------  1 root root      4,  55 cze  7 22:05 tty55
crw-------  1 root root      4,  56 cze  7 22:05 tty56
crw-------  1 root root      4,  57 cze  7 22:05 tty57
crw-------  1 root root      4,  58 cze  7 22:05 tty58
crw-------  1 root root      4,  59 cze  7 22:05 tty59
crw-rw----  1 root tty       4,   6 cze  7 22:06 tty6
crw-------  1 root root      4,  60 cze  7 22:05 tty60
crw-------  1 root root      4,  61 cze  7 22:05 tty61
crw-------  1 root root      4,  62 cze  7 22:05 tty62
crw-------  1 root root      4,  63 cze  7 22:05 tty63
crw-------  1 root root      4,   7 cze  7 22:05 tty7
crw-------  1 root root      4,   8 cze  7 22:05 tty8
crw-------  1 root root      4,   9 cze  7 22:05 tty9
crw-rw---T  1 root dialout   4,  64 cze  8  2013 ttyS0
crw-rw---T  1 root dialout   4,  65 cze  8  2013 ttyS1
crw-rw---T  1 root dialout   4,  66 cze  8  2013 ttyS2
crw-rw---T  1 root dialout   4,  67 cze  8  2013 ttyS3
crw-rw---T  1 root dialout 188,   0 cze  7 22:05 ttyUSB0
crw-rw---T  1 root dialout 188,   1 cze  7 22:05 ttyUSB1
crw-rw---T  1 root dialout 188,   2 cze  7 22:05 ttyUSB2
crw-rw---T  1 root dialout 188,   3 cze  7 22:06 ttyUSB3
crw------T  1 root root     10, 223 cze  8  2013 uinput
crw-rw-rw-  1 root root      1,   9 cze  8  2013 urandom
crw-------  1 root root      7,   0 cze  7 22:05 vcs
crw-------  1 root root      7,   1 cze  7 22:05 vcs1
crw-------  1 root root      7,   2 cze  7 22:05 vcs2
crw-------  1 root root      7,   3 cze  7 22:05 vcs3
crw-------  1 root root      7,   4 cze  7 22:05 vcs4
crw-------  1 root root      7,   5 cze  7 22:05 vcs5
crw-------  1 root root      7,   6 cze  7 22:05 vcs6
crw-------  1 root root      7, 128 cze  7 22:05 vcsa
crw-------  1 root root      7, 129 cze  7 22:05 vcsa1
crw-------  1 root root      7, 130 cze  7 22:05 vcsa2
crw-------  1 root root      7, 131 cze  7 22:05 vcsa3
crw-------  1 root root      7, 132 cze  7 22:05 vcsa4
crw-------  1 root root      7, 133 cze  7 22:05 vcsa5
crw-------  1 root root      7, 134 cze  7 22:05 vcsa6
crw-------  1 root root     10,  63 cze  7 22:05 vga_arbiter
prw-r-----  1 root adm            0 cze  7 22:06 xconsole
crw-rw-rw-  1 root root      1,   5 cze  8  2013 zero

: 06 stycznia 2014, 23:27
autor: minas_trith
Witam.
Ja mam troszeczkę inny problem mam bramkę FREESWITCH na Wheezym, do chuba usb mam podpiętych 6 modemów E1550, da się jakoś przypisać konkretny imei modemu do /dev/ttyUSB* bo w zależności nie wiem od czego po restarcie na różnych portach modemy się pojawiają (rzadko na tych co były przed restartem - testowanie na róznych chubach...).

: 07 stycznia 2014, 01:53
autor: Rafal_F
Sprawdź atrybuty dla różnych modemów:

Kod: Zaznacz cały

udevadm info --name=/dev/ttyUSBx --attribute-walk
za x podstawiaj liczby. Znajdź miejsce w którym się różnią i stwórz odpowiednie reguły.
Przeczytaj ten wątek, i spróbuj to jakoś przystosować.

problem z jednoznacznym przypisaniem modemu do portu

: 10 stycznia 2014, 23:53
autor: minas_trith
Już kilka razy go czytałem różnie kombinowałem rozwiązania nadal nie mam ...

Kod: Zaznacz cały

SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-2:1.0",  ATTRS{bInterfaceNumber}=="00", SYMLINK+="01gsm1"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-2:1.1",  ATTRS{bInterfaceNumber}=="01", SYMLINK+="01gsm2"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-2:1.2",  ATTRS{bInterfaceNumber}=="02", SYMLINK+="01gsm3"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-4:1.0",  ATTRS{bInterfaceNumber}=="00", SYMLINK+="02gsm1"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-4:1.1",  ATTRS{bInterfaceNumber}=="01", SYMLINK+="02gsm2"
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", KERNELS=="1-4:1.2",  ATTRS{bInterfaceNumber}=="02", SYMLINK+="02gsm3"
ale z tego co widzę to tylko mi podlinkuje pod ttyUSB* nazwę..

Kod: Zaznacz cały

lrwxrwxrwx  1 root root           7 sty 10 23:09 01gsm1 -> ttyUSB0
lrwxrwxrwx  1 root root           7 sty 10 23:09 01gsm2 -> ttyUSB1
lrwxrwxrwx  1 root root           7 sty 10 23:09 01gsm3 -> ttyUSB2
lrwxrwxrwx  1 root root           7 sty 10 23:09 02gsm1 -> ttyUSB3
lrwxrwxrwx  1 root root           7 sty 10 23:09 02gsm2 -> ttyUSB4
lrwxrwxrwx  1 root root           7 sty 10 23:09 02gsm3 -> ttyUSB5
Modemy takie same (jeden modem 3 porty z czego drugi to głos a 3 to data), różnią się tylko IMEI chodzi mi o to że jak z chuba wyciągnę 3 modemy, to żeby bez względu na kolejność ich wkładania zawsze się nazywały 01gsm dla modemu z IMEI xxxxxxa, 02gsm dla IMEI xxxxxxb lub ttyUSB0 dla modemu z IMEI xxxxxxa, ttyUSB3 dla IMEI xxxxxxb itd.

W pliczku spakowany wynik dla wszystkich modemów jakie mam na "produkcji" (ttyUSB0.txt; ttyUSB1.txt;ttyUSB2.txt; to jeden modem ttyUSB3.txt; ttyUSB4.txt;ttyUSB5.txt to drugi itd...)

Kod: Zaznacz cały

udevadm info --name=/dev/ttyUSB* --attribute-walk
A problem nadal nie rozwiązany nie ma tu atrybutach IMEI czy jakiegoś unikalnego ID który jednoznacznie określałby modem i przypisywał cały czas do tego samego portu.

: 11 stycznia 2014, 00:38
autor: Rafal_F
Masz rację, w ten sposób się tego nie zrobi.

Musisz skorzystać z tego: http://www.reactivated.net/writing_udev ... nal-naming
Tutaj ktoś z podobnym problemem do twojego: http://nixcraft.com/showthread.php/1575 ... -GSM-Modem

Generalnie musisz w regule udev uruchomić program, który odczyta wartość IMEI z modemu i wypisze ją na standardowe wyjście. Udev przechwyci wyjście i będziesz mógł skorzystać z tej informacji.

Nigdy nie korzystałem z modemu GSM, nawet nie mam takiego urządzenia, więc nie bardzo mogę pomóc z próbą odczytania IMEI.

: 11 stycznia 2014, 22:47
autor: minas_trith
szybciej będzie jak przerobie XMLe startowe FREESWITCHA :)
a co do samego wyłuskiwania IMIEI to pakiet http://packages.debian.org/stable/comm/modem-cmd i komendy AT http://www.developershome.com/sms/atCommandsIntro.asp załatwia sprawę (oczywiście trzeba to popchnąć w port DATA modemu gsm bo inaczej modem-cmd zawiśnie, ale do tego można już wątki z poprzednich wypowiedzi wpleść)

i finalnie :
root@gsm:~# modem-cmd /dev/ttyUSB5 AT+CGSN

zwróci IMEI :)
teraz tylko skrypciochem polecieć gdzie trzeba :)

: 29 stycznia 2014, 22:33
autor: minas_trith
to teraz ciąg dalszy problemów w jaki sposób zrestartować modem: nie ważne czy penek siedzi w chubie czy bezpośrednio w porcie usb kompa po odpaleniu aplikacji na kompie modem się "wiesza" nie reaguje na modem-cmd ani po restarcie kompa ani po wyłączeniu i włączeniu, a zaczyna normalnie działać dopiero po fizycznym wyjęciu i włożeniu do portu usb lub pozbawieniu zasilania chuba ... da się jakoś wyłączyć dostarczanie prądu do portów usb ??

: 24 kwietnia 2014, 18:17
autor: kodama
Podepnę się pod temat - jak zrobić podobną sztuczkę ze skanerem usb? HP G3110.

Kod: Zaznacz cały

lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 002: ID 1871:0141 Aveo Technology Corp. 
[B]Bus 007 Device 004: ID 03f0:4305 Hewlett-Packard ScanJet G3110[/B]
Bus 005 Device 002: ID 03f0:0c17 Hewlett-Packard LaserJet 1010
Bus 006 Device 002: ID 413c:2501 Dell Computer Corp.
Nie mam żadnych /dev/ttyUSB*
Sane go wykrywa (bo on działa :) )

Kod: Zaznacz cały

root@debian# sane-find-scanner -v
This is sane-find-scanner from sane-backends 1.0.22

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

searching for SCSI scanners:
checking /dev/scanner... failed to open (Invalid argument)
checking /dev/sg0... failed to open (Invalid argument)
checking /dev/sg1... failed to open (Invalid argument)
checking /dev/sg2... failed to open (Invalid argument)
checking /dev/sg3... failed to open (Invalid argument)
checking /dev/sg4... failed to open (Invalid argument)
checking /dev/sg5... failed to open (Invalid argument)
checking /dev/sg6... failed to open (Invalid argument)
checking /dev/sg7... failed to open (Invalid argument)
checking /dev/sg8... failed to open (Invalid argument)
checking /dev/sg9... failed to open (Invalid argument)
checking /dev/sga... failed to open (Invalid argument)
checking /dev/sgb... failed to open (Invalid argument)
checking /dev/sgc... failed to open (Invalid argument)
checking /dev/sgd... failed to open (Invalid argument)
checking /dev/sge... failed to open (Invalid argument)
checking /dev/sgf... failed to open (Invalid argument)
checking /dev/sgg... failed to open (Invalid argument)
checking /dev/sgh... failed to open (Invalid argument)
checking /dev/sgi... failed to open (Invalid argument)
checking /dev/sgj... failed to open (Invalid argument)
checking /dev/sgk... failed to open (Invalid argument)
checking /dev/sgl... failed to open (Invalid argument)
checking /dev/sgm... failed to open (Invalid argument)
checking /dev/sgn... failed to open (Invalid argument)
checking /dev/sgo... failed to open (Invalid argument)
checking /dev/sgp... failed to open (Invalid argument)
checking /dev/sgq... failed to open (Invalid argument)
checking /dev/sgr... failed to open (Invalid argument)
checking /dev/sgs... failed to open (Invalid argument)
checking /dev/sgt... failed to open (Invalid argument)
checking /dev/sgu... failed to open (Invalid argument)
checking /dev/sgv... failed to open (Invalid argument)
checking /dev/sgw... failed to open (Invalid argument)
checking /dev/sgx... failed to open (Invalid argument)
checking /dev/sgy... failed to open (Invalid argument)
checking /dev/sgz... failed to open (Invalid argument)
  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.

searching for USB scanners:
checking /dev/usb/scanner... failed to open (Invalid argument)
checking /dev/usb/scanner0... failed to open (Invalid argument)
checking /dev/usb/scanner1... failed to open (Invalid argument)
checking /dev/usb/scanner2... failed to open (Invalid argument)
checking /dev/usb/scanner3... failed to open (Invalid argument)
checking /dev/usb/scanner4... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner7... failed to open (Invalid argument)
checking /dev/usb/scanner8... failed to open (Invalid argument)
checking /dev/usb/scanner9... failed to open (Invalid argument)
checking /dev/usb/scanner10... failed to open (Invalid argument)
checking /dev/usb/scanner11... failed to open (Invalid argument)
checking /dev/usb/scanner12... failed to open (Invalid argument)
checking /dev/usb/scanner13... failed to open (Invalid argument)
checking /dev/usb/scanner14... failed to open (Invalid argument)
checking /dev/usb/scanner15... failed to open (Invalid argument)
checking /dev/usbscanner... failed to open (Invalid argument)
checking /dev/usbscanner0... failed to open (Invalid argument)
checking /dev/usbscanner1... failed to open (Invalid argument)
checking /dev/usbscanner2... failed to open (Invalid argument)
checking /dev/usbscanner3... failed to open (Invalid argument)
checking /dev/usbscanner4... failed to open (Invalid argument)
checking /dev/usbscanner5... failed to open (Invalid argument)
checking /dev/usbscanner6... failed to open (Invalid argument)
checking /dev/usbscanner7... failed to open (Invalid argument)
checking /dev/usbscanner8... failed to open (Invalid argument)
checking /dev/usbscanner9... failed to open (Invalid argument)
checking /dev/usbscanner10... failed to open (Invalid argument)
checking /dev/usbscanner11... failed to open (Invalid argument)
checking /dev/usbscanner12... failed to open (Invalid argument)
checking /dev/usbscanner13... failed to open (Invalid argument)
checking /dev/usbscanner14... failed to open (Invalid argument)
checking /dev/usbscanner15... failed to open (Invalid argument)
found USB scanner (vendor=0x03f0 [hewlett packard], product=0x4305 [hp scanjet], chip=RTS8822) at libusb:007:004
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.
done
Może jakaś mała podpowiedź?