Huawei E3276 LTE Stick (partial) solution - help needed [solved]
-
actually right now I don't need to send any AT commands to the modem to work, it will just register as a new ethernet interface, which together with DHCP configuration will just work.
The problem is to run the script performing the modeswitch once the stick is recognized or as an alternative during boot.
-
I just glanced at their commands and there is nothing similar. Sierra has their AT!UD commands password protected although that cat is out of the bag…
Also looks like the Linux folks are using usbmodeswitch at boot in a script or udev rule.
-
I don't think usbmodeswitch is needed here at all.
Assuming you have 21.X firmware on your modem you can change the so called composition by AT^SETPORT command as I mentioned earlier.
Your composition should be "FF;12,16". For explanation send AT^SETPORT=? to the modem. -
That sounds right..Good Job on that..The AT guide I was looking at does not cover that command.
-
Andrew, I am not using PPP at all, the stick now is recognized as USB ethernet interface and pfSense (2.2.4) uses it like one of the onboard interfaces.
The whole WAN connection is handled by the embedded system on the stick.
The setup itself works fine with pfSense 2.2.4, I can browse the web with the stick being the only WAN connection on pfSense.
All I need to do is persist it, so the modeswitch is performed during boot.
-
I am not using PPP at all
That's clear ;) The command I mentioned is used to enable NDIS (network card), not RAS (PPP).
The whole WAN connection is handled by the embedded system on the stick.
Sounds like you're on 22.X firmware and your modem operates in HiLink mode. In this case the modem itself works as a NAT router, so your pfsense box is now behind a NAT or two.
-
Since I am behind a NAT from the provider anyway (WAN IP on the stick being RFC1918), I don't mind another NAT - all I need is WAN ;)
-
@weimaraner
Please confirm you're on 22.X firmware.
In that case you potentially can disable modem's storage capabilities by setting NVRAM items directly.If you have com port enabled try to read the active composition by sending at^setport?
Then try to read NVRAM by AT^NVRD=50091 -
actually the chatscripts failed every time I tried any PPP configuration, directly connecting to the devices cuau0 or cuau1 using cu didn't work either.
-
Firmware is 22.436.09.00.1080
-
While it looks technically possible to make it working in HiLink mode, having in mind the time required for all the operations I would recommend to switch from 22.X to 21.X firmware and then use PPP. Potentially this will be slower than NDIS or HiLink but you will get supported and well documented configuration.
With HiLink you will need to flash your modem with modified web gui first, then enable com port from that gui, then access that port from the terminal and modify NVRAM item. No guarantee it will work at the end. Unfortunately I do not have enough time myself now to go from 21 to 22 and test everything. -
Well.. actually it works, I can access the Internet through the E3276 on my pfSense with firmware 22 in ethernet (HiLink?) mode.
All I need now is a way to persist the modeswitch (e.g. execute it every time freebsd recognizes the stick). Since I am not really familiar with devd, I was hoping somebody would have a solution for this,
-
so far I tried executing
/usr/local/sbin/usb_modeswitch -v 12d1 -p 1f01 -J -R -W
via <earlyshellcommand>and an executable script in /usr/local/etc/rc.d
Unfortunately both options execute the modeswitch after the firewall is already started, so pfSense will enter into the interface configuration as ue0 is missing.
Any suggestions to execute the modeswitch prior to pfsense starting?</earlyshellcommand>
-
Solved, I integrated the 3G.sh script into rc.bootup right before the Interface configuration.
shell_exec('/usr/local/sbin/3G.sh');
-
@weimaraner Спасибо модем Huawei E8372h-153 определяется как ue0 интефейс успешно и это не приводик к переназначению существующих интерфейсов