Your message dated Thu, 16 Apr 2009 13:34:06 +0200
with message-id <[email protected]>
and subject line Re: Bug#523999: usb-modeswitch: Issues with switching the ZTE 
MF636 modem
has caused the Debian Bug report #523999,
regarding usb-modeswitch: Issues with switching the ZTE MF636 modem
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
523999: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523999
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: usb-modeswitch
Version: 0.9.6-2
Severity: normal

usb-switchmode seems not to work out-of-the-box. I need to remove the supplied 
/etc/udev/rules.d/usb_modeswitch.rules,
otherwise it seems not to want to switch.
I have captured what happens:

:~# #insert zte mf636 modem
:~# lsusb
Bus 004 Device 014: ID 19d2:2000 ONDA Communication S.p.A.
:~# usb_modeswitch -v 0x19d2 -p 0x2000 -V 0x19d2 -P 0x0031  -m 0x01 -M 
55534243123456782000000080000c85010101180101010101000000000000

 * usb_modeswitch: tool for controlling "flip flop" mode USB devices
 * Version 0.9.6 (C) Josua Dietze 2009
 * Works with libusb 0.1.12 and probably other versions

Looking for target devices
 No target device found
Looking for default devices
 Found default devices (1)
Prepare switching, accessing latest device
Looking for active default driver to detach it
 No driver found. Device probably not initialized. Trying to continue ...
Setting up communication with device
Trying to send the message
 Sending the message returned error -110, trying to continue ...
-> See /proc/bus/usb/devices (or call lsusb) for changes. Bye

:~# mv /etc/udev/rules.d/usb_modeswitch.rules  
/etc/udev/rules.d/usb_modeswitch.rules.old
:~# #remove zte mf636 modem
:~# #reinsert zte mf636 modem
:~# lsusb
Bus 004 Device 015: ID 19d2:2000 ONDA Communication S.p.A.
:~# usb_modeswitch -v 0x19d2 -p 0x2000 -V 0x19d2 -P 0x0031  -m 0x01 -M 
55534243123456782000000080000c85010101180101010101000000000000

 * usb_modeswitch: tool for controlling "flip flop" mode USB devices
 * Version 0.9.6 (C) Josua Dietze 2009
 * Works with libusb 0.1.12 and probably other versions

Looking for target devices
 No target device found
Looking for default devices
 Found default devices (1)
Prepare switching, accessing latest device
Looking for active default driver to detach it
 No driver found. Device probably not initialized. Trying to continue ...
Setting up communication with device
Trying to send the message
 OK, message successfully sent.
-> See /proc/bus/usb/devices (or call lsusb) for changes. Bye

:~# lsusb
Bus 004 Device 016: ID 19d2:0031 ONDA Communication S.p.A.


After I put the -v,-p,-V,-P options into /etc/usb_modeswitch.conf, it's ready 
to work with umtsmon, together with this file:

cat /etc/udev/rules.d/90-zte.rules
ACTION!="add", GOTO="ZTE_End"
#
SUBSYSTEM=="usb", SYSFS{idProduct}=="0031",
SYSFS{idVendor}=="19d2", GOTO="ZTE_Modem"
#
LABEL="ZTE_Modem"
RUN+="/sbin/modprobe usbserial vendor=0x19d2 product=0x0031",
MODE="660", GROUP="dialout"
#
LABEL="ZTE_End"



-- System Information:
Debian Release: 5.0.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-686 (SMP w/1 CPU core)
Locale: LANG=nb_NO.UTF-8, LC_CTYPE=nb_NO.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages usb-modeswitch depends on:
ii  libc6                        2.7-18      GNU C Library: Shared libraries
ii  libusb-0.1-4                 2:0.1.12-13 userspace USB programming library

usb-modeswitch recommends no packages.

Versions of packages usb-modeswitch suggests:
pn  gcom                          <none>     (no description available)
pn  wvdial                        <none>     (no description available)

-- no debconf information



--- End Message ---
--- Begin Message ---
Hi Klaus, 

Le mercredi 15 avril 2009 10:31:22 Klaus Ade Johnstad, vous avez écrit :
>
> I have some follow up questions:
>
> So, I commented line 122, and removed the comment on line 156
> in /etc/udev/rules.d/usb_modeswitch.rules .

That's OK.

> I also removed the comments on the lines 392-405
> in /etc/usb_modeswitch.conf that corresponded to the device on line 156
> in /etc/udev/rules.d/usb_modeswitch.rules

This should allow you to run usb_modeswitch directly without arguments, but is 
probably unuseful.

> This is my syslog when I attach the modem:
> 81.514349] usb 4-3: new high speed USB device using ehci_hcd and address
> 3
> 81.662363] usb 4-3: New USB device found, idVendor=19d2, idProduct=2000 
> 81.662389] usb 4-3: Product: ZTE CDMA Technologies MSM
> 81.662396] usb 4-3: Manufacturer: ZTE, Incorporated
> 83.307794] Initializing USB Mass Storage driver...

Up to here, we see the device being recognised as USB Mass Storage.

> 85.141941] usb 4-3: USB disconnect, address 3

Getting disconnected.

> 90.590162] usb 4-3: new high speed USB device using ehci_hcd and address
> 4
> 95.360750] usb 4-3: New USB device found, idVendor=19d2, idProduct=0031
> 95.360776] usb 4-3: Product: ZTE CDMA Technologies MSM
> 95.360783] usb 4-3: Manufacturer: ZTE, Incorporated

Visibly, usb-modeswitch has been run and the device has been recognised in 
another way (idVendor=19d2, idProduct=0031), which seems correct.

> But, umtsmon does not find any modem until I add
> my /etc/udev/rules.d/90-zte.rules , is that how it should be?

See below.

> This is my syslog after I have added 90-zte.rules :
> 
> 858.404414] usb 4-3: new high speed USB device using ehci_hcd and
> address 5
> 858.557855] usb 4-3: New USB device found, idVendor=19d2, idProduct=2000
> 858.557879] usb 4-3: Product: ZTE CDMA Technologies MSM
> 858.557885] usb 4-3: Manufacturer: ZTE, Incorporated
> 859.125173] usbcore: registered new interface driver usbserial
> 859.125216] usbserial: USB Serial support registered for generic
> 859.125277] usbcore: registered new interface driver usbserial_generic
> 859.125284] usbserial: USB Serial Driver core

Up to here, standard connection.

> 861.230191] usb 4-3: USB disconnect, address 5

Disconnection.

> 866.384053] usb 4-3: new high speed USB device using ehci_hcd and
> address 6
> 871.132438] usbserial_generic 4-3:1.0: Generic device with no bulk out,
> not allowed.
> 871.132438] usbserial_generic: probe of 4-3:1.0 failed with error -5
> 871.132438] usbserial_generic 4-3:1.1: Generic device with no bulk out,
> not allowed.
> 871.132438] usbserial_generic: probe of 4-3:1.1 failed with error -5

It seems that your rules produces some errors…

> 871.132438] scsi3 : SCSI emulation for USB Mass Storage devices
> 871.132438] usbserial_generic 4-3:1.3: generic converter detected
> 871.132438] usb 4-3: generic converter now attached to ttyUSB0

But still works.

> 871.132438] usb 4-3: New USB device found, idVendor=19d2, idProduct=0031
> 871.132438] usb 4-3: Product: ZTE CDMA Technologies MSM
> 871.132438] usb 4-3: Manufacturer: ZTE, Incorporated
> 871.132438] usb 4-3: SerialNumber: 1234567890ABCDEF
> 871.132438] usb-storage: device found at 6
> 871.132438] usb-storage: waiting for device to settle before scanning
> 876.132601] usb-storage: device scan complete
> 876.133448] scsi 3:0:0:0: Direct-Access     ZTE      MMC Storage
> 322  PQ: 0 ANSI: 2
> 876.134189] scsi 3:0:0:1: Direct-Access     ZTE      MMC Storage
> 322  PQ: 0 ANSI: 2
> 876.192329] sd 3:0:0:1: [sdb] Attached SCSI removable disk
>  
> So, to summarise:
> By using line 156 instead of 122
> in /etc/udev/rules.d/usb_modeswitch.rules

ACK.

> and by making the corresponding changes to lines 392-405
> in /etc/usb_modeswitch.conf

Unuseful.

> and then adding the file /etc/udev/rules.d/90-zte.rules, then umtsmon
> works, and I can connect.

The need for these rules is documented on the usb_modeswitch homepage [0]:
"
  From here, there are several ways to continue. If your GSM device is
  recognized by a recent version of the "option" driver you shouldn't have to do
  anything but to load the module (most certainly handled by udev
  automatically). Some devices switch to the ACM class and are bound to the
  module "cdc-acm" ("USB Abstract Control Model driver for USB modems and ISDN
  adapters"). The created serial devices are named "ttyACM0", "..1", etc.
  instead of "ttyUSB0" ... If your (serial) device is not supported by the
  modules mentioned you can always use "usbserial", but it needs to be told the
  device IDs (plus a performance-related option):

  SUBSYSTEM=="usb", SYSFS{idProduct}=="<YourTargetProdID>",
  SYSFS{idVendor}=="<YourTargetVendID>", RUN+="/sbin/modprobe usbserial
  vendor=<YourTargetProdID> product=<YourTargetVendID> maxSize=4096"
"

It seems that your device is not recognised by the kernel and by such, needs 
an "ad'hoc" modprobe with special parameters. This is documented on the 
software homepage [0] and is no bug. I am closing this bug.

But I think that the actual self-detection is not good enough and I am willing 
to accept patches on the packaging to get a better user experience.

Best regards,

Didier Raboud

[0] http://www.draisberghof.de/usb_modeswitch/
-- 
Didier Raboud, proud Debian user.
CH-1802 Corseaux
[email protected]

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---

Reply via email to