[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: udev rules no funciona conectando dos dispositivos iguales al mismo tiempo



El Sun, 02 Jun 2013 16:56:44 -0300, Mariano Egui escribió:

(ese html...)

> Como lo dice el subject, tengo una regla para UDEV, esta regla funciona
> bien.
> Cuando conecto el dispositivo, hace el cambio correcto.
> Cuando reinicio también realizar la regla, si el dispositivo estaba
> conectado.
> 
> El problema, es cuando conecto dos dispositivos iguales, uno aplica la
> regla, el otro no.
> 
> La regla es la siguiente:
> 
> ##
> SUBSYSTEM=="block",
> ACTION=="add",
> SYSFS{idVendor}=="19d2",
> SYSFS{idProduct}=="2000",
> OPTIONS="ignore_device"
> 
> SUBSYSTEM=="usb",
> SYSFS{idProduct}=="0037", SYSFS{idVendor}=="19d2",
> RUN+="/usr/sbin/usb_modeswitch"
> ##

(...)

> Luego de unos segundos:
> $ lsusb 
(...)
> Bus 001 Device 020: ID 19d2:2000 ZTE WCDMA Technologies MSM MF627/MF628
                         ^^^^^^^^^
/MF628+/MF636+ HSDPA/HSUPA 
(...)
> Bus 001 Device 021: ID 19d2:2003 ZTE WCDMA Technologies MSM
                         ^^^^^^^^^
> 
> Y no nunca aplica la regla a los dos, solo a uno, Siempre.

(...)

No me hagas mucho caso pero fíjate que el identificador del producto es 
distinto en ambos y tu regla sólo captura el primero de ellos (SYSFS
{idProduct}=="2000",), tendrás que o bien buscar un campo por el que udev 
los identifique ambos o crear una segunda regla en el mismo archivo (15-
zte.rules), igual que la primera pero ajustando el "idProduct", por 
ejemplo (y siguiendo tu mismo ejemplo):

SUBSYSTEM=="block",
ACTION=="add",
SYSFS{idVendor}=="19d2",
SYSFS{idProduct}=="2003,
OPTIONS="ignore_device"
 
SUBSYSTEM=="usb",
SYSFS{idProduct}=="0037", 
SYSFS{idVendor}=="19d2",
RUN+="/usr/sbin/usb_modeswitch"

Saludos,

-- 
Camaleón



Reply to: