On 18.12.2013 18:57, Dan Williams wrote: > On Wed, 2013-12-18 at 18:38 +0100, poma wrote: >> On 18.12.2013 00:26, Dan Williams wrote: >>> On Tue, 2013-12-17 at 23:50 +0100, poma wrote: >>>> HUWAEI E1750 NDISDUP >>> >>> Is the difference between the two modes just the usb_modeswitch >>> commands? I see they have different USB IDs between first and second >>> runs. >> >> USB Modeswitch has nothing to do with it, besides it doesn't work. ;) >> Actually the device switches mode by itself. ;) 'pid 140c' is inherited >> through a warm state(reboot) from proprietary OS. However if the device >> is replugged(cold state) within the Linux kernel, it switches to the >> 'pid 1436' mode. >> And vice versa. > > That's still usb_modeswitch. Windows is sending a specific message to > the Huawei device telling to use a specific mode, and it switches to > that mode. After reboot to Linux, it's still in that mode. But if you > coldplug the device while in Linux, usb_modeswitch sends a message to > the device that is different than what Windows sends. > > On Linux with ModemManager, we would prefer to use the "Windows" mode > since that is more capable. Unfortunately, usb_modeswitch needs changes > to send the correct message to switch to the "Windows" mode too. > > All that said, if possible ModemManager should try to support the > non-Windows cdc-ether mode too, but there may be bugs with that.
Dan, you were right about the mode switching involvement. I neglected that there is an automatic mode. Bummer! Sorry. This is a real default mode: 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800/E173 (HSPA modem) Can be switched manually: # usb_modeswitch -v 12d1 -p 1446 -M 55534243123456780600000080010a11060000000000000000000000000000 or # usb_modeswitch -v 12d1 -p 1446 -M 55534243000000000000000000000011060000000100000000000000000000 to 12d1:140c Huawei Technologies Co., Ltd. E180v Can be switched automatically: /etc/usb_modeswitch.d/12d1:1446 # Huawei, newer modems MessageContent="55534243123456780600000080010a11060000000000000000000000000000" # or #MessageContent="55534243000000000000000000000011060000000100000000000000000000" NoDriverLoading=1 #EOF /etc/usb_modeswitch.conf … DisableSwitching=0 … An automatic switching mode components: /usr/lib/udev/usb_modeswitch & /lib/udev/rules.d/40-usb_modeswitch.rules ATTR{idVendor}=="12d1", ATTR{idProduct}=="1446", RUN+="usb_modeswitch '%b/%k'" MessageContent sources: 1. /etc/usb_modeswitch.d/12d1:1030:# Huawei U8220, T-Mobile Pulse (Android smartphone) /etc/usb_modeswitch.d/12d1:1031:# Huawei U8110 / Joy, Vodafone 845 (Android smartphone) MessageContent=55534243123456780600000080010a11060000000000000000000000000000 2. https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.6 MessageContent=55534243000000000000000000000011060000000100000000000000000000 poma _______________________________________________ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list