Huawei E3372-325 'BROVI' and Linux (Ubuntu)
How to get to work Huawei E3372-325 ‘BROVI’ in Linux (ubuntu)
In Jan 2023 there is still no good integration of this new modem to Linux usb-modeswitch. It doesn’t include its VID:PID, which are 3566:2001.
The weird thing about this modem, when it is plugged in a Linux machine, it goes through these steps on its own:
-
- RNDIS+CDROM (netcard) , it stays here for 1..3 seconds, then switches on its own to
-
- CDROM , and stays here forever, and doesn’t react on any SCSI sequence sent by usb-modeswitch .
It only accepts a sequence when in mode RNDIS+CDROM . And when it does so , it re-attaches its ports, so its netcard appears again. In latter case we should ignore it.
-
- RNDIS+CDROM (netcard) , it stays here for 1..3 seconds,
-
- we manage to send a sequence
-
- during that sequence the RNDIS netcard appears again on the same USB port, but we ignore it (sic!)
-
- it stays in RNDIS forever
So we have to develop a script that
- addresses a modem by USB ID (not just by Vendor+Product ID!)
- catches a modem with 3566:2001 in RNDIS mode
- ignores other modes : CDROM, AT-PORT, NCM card
- ignores already switched modem
So 2 scripts are below
/usr/local/bin/brovi_switch (make it executable!)
|
|
and UDEV script /etc/udev/rules.d/40-huawei.rules
ACTION!="add", GOTO="modeswitch_rules_end"
SUBSYSTEM!="usb", GOTO="modeswitch_rules_end"
# All known install partitions are on interface 0
ATTRS{bInterfaceNumber}!="00", GOTO="modeswitch_rules_end"
GOTO="modeswitch_rules_begin"
LABEL="modeswitch_rules_begin"
# Huawei E3372-325
ATTR{idVendor}=="3566", ATTR{idProduct}=="2001", RUN+="/usr/local/bin/brovi_switch %k %p"
LABEL="modeswitch_rules_end"
EDIT 2023-01-30 It seems Huawei released new firmware (below) that works fine with Linux. It switches to RNDIS -> RNDIS -> CDROM 12d1:1f01 -> usb-modeswitch switches to RNDIS.
'SoftwareVersion' => '3.0.2.62(H057SP9C983)
'WebUIVersion' => 'WEBUI 3.0.2.62(W13SP5C7702)',
'iniversion' => 'E3372-325-CUST 3.0.2.1(C778)',
'HardwareVersion' => 'CL5E3372M',
Unfortunately :
- You can’t force your modem to update the firmware. It is its internal (or the vendor’s) logic
- The newer firmware is autoinstalled by FOTA mainly in Asia, not Europe. When you bought the modem in EU, you might stuck on the old firmware..
EDIT 2023-02-28
There is an alternative guide https://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=3&t=3043&p=20026#p20054 , it doesn’t properly handle the case when multiple Brovi’s are plugged in – it resets them ALL – the devices are referred by Vendor_ID and Product_ID, which are the same on identical modems. It`s fine when you have 1 BROVI on the PC.
While my solution addresses by Vendor_ID + Product_ID + Bus_ID + Deviced_ID. So the case with multiple BROVI on the PC is covered.
EDIT 2023-05-29
I got it working also in STICK mode CLICK