I have a problem with Huawei LTE stick: MS2372h-153
I have two versions of this stick:
- Vodafone IoT branded
- Non-branded
Using the non-branded stick, everything works as expected. I plug it into my raspi 4B running headless raspbian version 10 (buster) and I get a wwan0 after boot and after activating it with AT-cmds I can simply call dhclient -v wwan0 and I am connected to the internet.
Using the Vodafone IoT branded stick, I do not get the wwan0 interface. I tried with 3 different branded sticks - none was creating the interface. I can still access the stick via serial port and activate it, both on windows and on the raspi, but I do not get the wwan0 interface. This is my lsusb output with the branded stick:
pi@raspberrypi:~ $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 004: ID 12d1:1596 Huawei Technologies Co., Ltd. Bus 001 Device 003: ID 0451:bef3 Texas Instruments, Inc. Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub EDIT: The command lsusb -t returns:
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 1: Dev 3, If 0, Class=Communications, Driver=cdc_acm, 480M |__ Port 1: Dev 3, If 1, Class=CDC Data, Driver=cdc_acm, 480M |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=, 480M |__ Port 1: Dev 3, If 3, Class=Communications, Driver=cdc_acm, 480M |__ Port 1: Dev 3, If 4, Class=CDC Data, Driver=cdc_acm, 480M |__ Port 1: Dev 3, If 5, Class=Human Interface Device, Driver=usbhid, 480M |__ Port 1: Dev 3, If 6, Class=Vendor Specific Class, Driver=, 480M |__ Port 4: Dev 4, If 1, Class=Vendor Specific Class, Driver=option, 480M |__ Port 4: Dev 4, If 2, Class=Vendor Specific Class, Driver=option, 480M |__ Port 4: Dev 4, If 0, Class=Vendor Specific Class, Driver=option, 480M |__ Port 4: Dev 4, If 3, Class=Vendor Specific Class, Driver=, 480M Right after plugging in the stick I get:
sudo dmesg | grep huawei [ 265.431391] usbcore: registered new interface driver huawei_cdc_ncm So I guess the driver are loaded appropriately.
I do not have installed qmi or similiar additional software for modem handling. I already went through the list of supported AT cmds for this device to change some settings but I am quite new to this modem/AT-cmds setting so I was unsuccessful in making any progress.
I do have two questions now:
- Any idea, why the branded stick is not associated with wwan0 interface?
- Any idea, if I can somehow un-brand/reset those Vodafone sticks?
EDIT: I do believe it is simply not possible to change the mode of these branded sticks. I can change the mode of the other sticks (e.g. to storage mode) but these branded sticks have an interface class 255 and the switchusb program expects class 8 to apply the mode change. So I believe they are some kind of locked...
lsusbdisplay the driver name (AFAIK that'slsusb -t). And, as always, runsudo dmesgright after plugging in the stick and post the output corresponding to that event.sudo usb_modeswitch -v 12d1 -p 1596 -V 12d1 -P 1573 -b 001 -d 004 --verbose -M "55534243123456780000000000000011062000000101000100000000000000"The error I get is:Error: can't use storage command in MessageContent with interface 0; interface class is 255, expected 8. AbortI wonder if this error tells me that my command actually tries to switch the device into storage mode, though I could be wrong. Besides, I am not sure if the MessageContent "555..." number is correct.