Skip to content

Instantly share code, notes, and snippets.

@bjoern-r
Last active April 30, 2025 07:44
Show Gist options
  • Save bjoern-r/1345e8a17f4acf41006330e688af1441 to your computer and use it in GitHub Desktop.
Save bjoern-r/1345e8a17f4acf41006330e688af1441 to your computer and use it in GitHub Desktop.
How to use a Huawei E3372 on OpenWRT

HOWTO use a Huawei E3372 on OpenWRT

This modem is also sold as a MegaFon M150-2 USB dongle

Needed Software

Install the needed packages via opkg tool

opkg update
opkg install kmod-usb-net-cdc-ether
opkg install usb-modeswitch

setup

  • install software
  • reboot router
  • connect device
  • create a new network named lte
  • select the eth device of the dongle ( e.g eth1)
  • assign the network to firewall zone wan
@yjjie
Copy link

yjjie commented Dec 6, 2016

it shold be DHCP

@marsavela
Copy link

This worked for me. To mention that I assigned it as DHCP client and for me was eth2.

@sickrandir
Copy link

it worked exactly like this for me. Thanx

@paolomeraviglia
Copy link

Does not work with dev build (reboot when eth1 goes up)

@kholisrag
Copy link

how to select eth device of the dongle?

@MichaelQuint
Copy link

Hello, I have a Huawei E3372H-510 modem on the T-Mobile network using a tablet/hotspot plan. When I plug the USB modem into my windows 10 PC directly and run speedtest.net I get 22-25 mbps and sometimes I can get 30mbps. Now if I connect the modem to the router, run the same speedtest.net (meaning same server as before) I only get 10 mbps-15mbps. Does the usb port on the AR150 router maybe not have full power for higher speeds? Maybe there is some software running on the router that is slowing down the traffic? This doesnt make sense. Btw both the router and the windows 10 pc have there TTL set to 65 so its not a network throttle issue. Some how the router is about 5-10 mbps slower then direct connection.

@huangjiada
Copy link

work fine with Huawei E8372h-155 also

@Bogdan-Vasile
Copy link

I also had to change the name used when requesting dhcp. It was using "root" and was giving me errors. After I changed to "a", it worked just fine.

@AcidVienna
Copy link

Works like a charme, exactly as it is described here :)

@LeidenSpain
Copy link

Hi,

There is the option to force the 4G conection???

Regards

@bjoern-r
Copy link
Author

Depends on the firmware of the lte dongle. There are modded firmwares available where you can select the allowed bands.
Open the interface via http://192.168.8.1/ or http://192.168.4.1/

@LeidenSpain
Copy link

Hi

Thanks.
I'm using the original firmware with Hilink:

Nombre del equipo: E3372
IMEI: xxxx
IMSI: xxxx
Vers. del hardware del: CL2E3372HM
Vers. del software del: 22.328.62.00.1217
Versión de UI web: 17.100.18.05.1217
Dirección MAC de LAN: BA:AB:xx:xx
Dirección IP WAN: 172.xx.xx.xx

But with this IP I can check the configuration (and i think force the 4G mode)

Regards

@aluecke75
Copy link

Also runs as described with the Huawei E5573 LTE Router. Thanks a lot.

@madismaks
Copy link

Still works like a charm, thank you.

Since I was struggling with the last items in the list, perhaps this will help someone in the future:

connect device

to verify that the device is connected, you should see something like this when logged in to the router:

root@OpenWrt:~# lsusb
Bus 001 Device 003: ID 12d1:14dc HUAWEI_MOBILE HUAWEI_MOBILE

create a new network named lte
select the eth device of the dongle ( e.g eth1)
assign the network to firewall zone wan

To achieve this with OpenWrt 21.02.1 / LuCI openwrt-21.02 combination you have to: LuCi -> Network -> Interfaces -> Add new interface... From there:

  • Name: lte
  • Protocol: DHCP client
  • Device: Ethernet Adapter: "eth1" (I guess the number can vary)

and Create interface.

After that the interface "lte" is created and you can move to "Firewall Settings" tab (NB! no need to go to Network -> Firewall menu, it's a different thing) and for "Create / Assign firewall-zone", select "wan" and hit Save.

Lastly, don't forget to hit the "Save & Apply" button at the end

@RagnarLodbrok79
Copy link

yes, this works with Huawei E3531, thanks

@Prophet-Phoenix
Copy link

As of 2023-09-20 this is the way.
Network should be DHCP.
Used in HiLink mode.

Huawei E3372
CL1E3372SM Ver.A
22.286.03.01.1202

@trohnjavolta
Copy link

I also had to change the name used when requesting dhcp. It was using "root" and was giving me errors. After I changed to "a", it worked just fine.

Can you elaborate on what you exactly changed?
I tried everything in the tutorial and according to log and device everything should be fine but I have no internet.

@ThinkPadNL
Copy link

ThinkPadNL commented Feb 2, 2024

Still works as of today with E3372 (hardware CL2E3372HM and software 22.328.62.00.1217) with OpenWrt 23.05.2

opkg update
opkg install kmod-usb-net-huawei-cdc-ncm
opkg install usb-modeswitch

Restart router, create new interface '4G' connected to eth2 (in my case) and assign to zone WAN at tab 'Firewall settings' of interface.

Stick is running in Hilink mode (hands out a 192.168.8.x address to client, stick webinterface at 192.168.81).
No pin configured on SIM.

If you need lsusb (which is not installed by default): opkg install usbutils

@ffainelli
Copy link

Also confirm this is working!

@NetoSimoes
Copy link

+1

@modx-arseniy
Copy link

modx-arseniy commented Apr 22, 2025

OLD router xiaomi mi mini usb2+ USB2 MT7620A 1core mips 580MHz;
16MB/128MB DDR2; WiFi 2.4Ghz 2x2 (300M) + 5Ghz 2x2 (867M); WAN 100M + LAN х2 100M

OpenWrt 24.10.1 r28597-0425664679 / LuCI (HEAD detached at 2ac26e56) branch 25.103.51521~2ac26e5

opkg update
opkg install kmod-usb-net-huawei-cdc-ncm
opkg install kmod-usb-net-cdc-ether usb-modeswitch

*restart, 2min waiting... Nowhere in the [Network] v [Interfaces] v [Add new interface] :face_with_steam_from_nose:

USB LTE E3372H -320 Hilink modem (the most **** version of them without custom firmwares, root, scripts, TTL fixes ...), newest firmware 10.0.3.1 (h192sp2c983), webui 10.0.3.1 (W13SP3C7702). OK on the PC with smartphone's SIM, 192.168.8.1 default webgui, green led - connected LTE, SMS ok, but in the router it did not even appear in the GUI Interfaces.

dmesg

[ 4.079122] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[ 4.095557] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[ 4.103476] hub 1-0:1.0: USB hub found
[ 4.108525] hub 1-0:1.0: 1 port detected
[ 4.124846] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[ 4.131918] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[ 4.140317] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[ 4.176844] hub 2-0:1.0: USB hub found
[ 4.181573] hub 2-0:1.0: 1 port detected
[ 4.198865] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[ 4.208270] init: - preinit -
[ 4.515374] usb 1-1: new high-speed USB device number 2 using ehci-platform
[ 7.250377] random: crng init done
[ 8.313618] 8021q: adding VLAN 0 to HW filter on device eth0
[ 10.096514] jffs2: notice: (459) jffs2_build_xattr_subsystem: complete building xattr subsystem, 35 of xdatum (3 unchecked, 26 orphan) and 39 of xref (13 dead, 15 orphan) found.
[ 10.114885] mount_root: switching to jffs2 overlay
[ 10.123341] overlayfs: upper fs does not support tmpfile.
[ 10.139074] urandom-seed: Seeding with /etc/urandom.seed
[ 10.268133] procd: - early -
[ 10.271457] procd: - watchdog -
[ 10.894353] procd: - watchdog -
[ 10.898826] procd: - ubus -
[ 11.058021] procd: - init -
[ 12.856887] kmodloader: loading kernel modules from /etc/modules.d/*
[ 13.576752] jitterentropy: Initialization failed with host not compliant with requirements: 9
[ 14.048041] Loading modules backported from Linux version v6.12.6-0-ge9d65b48ce1a
[ 14.055797] Backport generated by backports.git v6.1.110-1-35-g410656ef04d2
[ 14.686254] mt76x2e 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
[ 14.692976] mt76x2e 0000:01:00.0: ASIC revision: 76120044
[ 15.401807] mt76x2e 0000:01:00.0: ROM patch build: 20141115060606a
[ 15.432566] mt76x2e 0000:01:00.0: Firmware Version: 0.0.00
[ 15.438211] mt76x2e 0000:01:00.0: Build: 1
[ 15.442461] mt76x2e 0000:01:00.0: Build Time: 201607111443____
[ 15.510572] mt76x2e 0000:01:00.0: Firmware running!
[ 15.515767] mt76x2e 0000:01:00.0: registering led 'mt76-phy0'
[ 15.523776] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[ 15.838134] PPP generic driver version 2.4.2
[ 15.881898] NET: Registered PF_PPPOX protocol family
[ 16.023159] ieee80211 phy1: rt2x00_set_rt: Info - RT chipset 6352, rev 0500 detected
[ 16.031564] ieee80211 phy1: rt2x00_set_rf: Info - RF chipset 7620 detected
[ 16.040421] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[ 16.502510] jitterentropy: Initialization failed with host not compliant with requirements: 9
[ 17.391050] kmodloader: 1 module could not be probed
[ 17.396472] kmodloader: - jitterentropy_rng - 0
[ 62.769378] 8021q: adding VLAN 0 to HW filter on device eth0
[ 62.871528] br-lan: port 1(eth0.1) entered blocking state
[ 62.877088] br-lan: port 1(eth0.1) entered disabled state
[ 62.882732] eth0.1: entered allmulticast mode
[ 62.887200] mtk_soc_eth 10100000.ethernet eth0: entered allmulticast mode
[ 62.894558] eth0.1: entered promiscuous mode
[ 62.898954] mtk_soc_eth 10100000.ethernet eth0: entered promiscuous mode
[ 63.055644] br-lan: port 1(eth0.1) entered blocking state
[ 63.061274] br-lan: port 1(eth0.1) entered forwarding state
[ 74.482702] ieee80211 phy1: rt2800_rxiq_calibration: Warning - RXIQ calibration FAIL
[ 74.514450] br-lan: port 2(phy1-ap0) entered blocking state
[ 74.520335] br-lan: port 2(phy1-ap0) entered disabled state
[ 74.526165] rt2800_wmac 10180000.wmac phy1-ap0: entered allmulticast mode
[ 74.533575] rt2800_wmac 10180000.wmac phy1-ap0: entered promiscuous mode
[ 83.315231] ieee80211 phy1: rt2800_rxiq_calibration: Warning - RXIQ calibration FAIL
[ 83.351809] br-lan: port 2(phy1-ap0) entered blocking state
[ 83.357546] br-lan: port 2(phy1-ap0) entered forwarding state
[ 147.592279] urngd: v1.0.2 started.
[ 372.841600] usb 1-1: USB disconnect, device number 2
[ 376.004912] usb 1-1: new high-speed USB device number 3 using ehci-platform
[ 420.916573] usb 1-1: USB disconnect, device number 3
[ 421.967238] usb 1-1: new high-speed USB device number 4 using ehci-platform
root@OpenWrt:~#
[ 372.841600] usb 1-1: USB disconnect, device number 2
[ 376.004912] usb 1-1: new high-speed USB device number 3 using ehci-platform
[ 420.916573] usb 1-1: USB disconnect, device number 3
[ 421.967238] usb 1-1: new high-speed USB device number 4 using ehci-platform
[ 477.549452] usb 1-1: USB disconnect, device number 4
[ 501.098871] usb 1-1: new high-speed USB device number 5 using ehci-platform
[ 504.508730] usb 1-1: USB disconnect, device number 5
[ 505.108392] usb 1-1: new high-speed USB device number 6 using ehci-platform

lsusb

root@OpenWrt:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux 6.6.86 ehci_hcd EHCI Host Controller
Bus 001 Device 007: ID 12d1:14db HUAWEI_MOBILE HUAWEI_MOBILE
Bus 002 Device 001: ID 1d6b:0001 Linux 6.6.86 ohci_hcd Generic Platform OHCI controller

USB LTE E3372H-320 Hilink not working on OpenWRT 24.10.1
No any ttyUSB*

@bjoern-r
Copy link
Author

it looks like the modem is not detected correctly and is reenumerated in 5 second intervalls. it there enougth power? maybe try a different cable or power plug. or a powered hub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment