Huawei ME909S-120 setup help needed
-
/root: cu -l /dev/cuaU0.0 Connected ^RSSI: 6 ^HCSQ: "LTE",20,18,106,12
- looks like you're on the right port. Unfortunately I do not have the same modem and cannot check myself.
You can try to blindly enter ATE followed by Enter, then type AT (with Enter again) - you should be able to see both AT and OK as a response.
^SETPORT may not be available in your modem.
"cu" is a terminal emulation program, usually called just a terminal
Z (ATZ) is a reset command, please search for Hayes AT command set.How do I know for sure what the APN and phone number settings should be?
Ask your provider, then test on your computer, without pfSense.
- looks like you're on the right port. Unfortunately I do not have the same modem and cannot check myself.
-
This may be too late for you but any way:
The cuaU0.0 and cuaU0.2 are serial interfaces to your modem, you can connect to serial interfaces using the programs tip or cu, depending on your software version they may or make not exist in your build. I prefer tip so I installed that via pkg from freebsd, then i modified /etc/remote and added the line:
myradio:dv=/dev/cuaU0.2:br#115200:pa=none:
this allows me to connect to the serial management ports on the device with the command:
tip myradioI then get "Connected" printed to the screen.
check if the sim card is communicating with the radio module:
AT^CARDMODE?First thing to do is check if the sim is PIN locked enter the command:
AT^CPIN?Then you need to check if your sim is registered to a network:
AT+COPS?You're going to need to understand the AT commands, the best source for docs is https://techship.com/ you'll probably need to create an account but my understanding is that that part is free.
Once you know that your sim is talking with your radio and that its not pin locked and that it is registered to your network, only then do you try to create a PPP connection. This is where you use the PPP settings in the pfsense web gui, start with the default dial string settings, don't worry about the APN.
SSH to the device and run the command: clog-f /var/log/ppp.log
This will allow you to watch what the ppp (MPD5 process) is doing.When ppp attempts a connection it first dial or creates a link and then does authentication the second part autentication is where the APN is used, so first check that you are able to create a link even if the auth fails. Then you know the dial string is probably ok.
The PPP process is roughly as follows:
Link (Dial String) ==> Auth (APN) ==> DHCP (you get an IP)Personally I have modified heavily the PPP configuration file so that I can check the connection step by step, e.g. is card present, is it pin locked etc. However pfsense creates the PPP conf file so i also have to modify that, hence pushing me out of the standard upgrade process. So I can't just provide you with the file as i would lock you to a version which is a bad security idea.
-
Thanks very much Conor.
I have added the line myradio:dv=/dev/cuaU0.2:br#115200:pa=none: to /etc/remote, but I don't know (and can't find) the command to install tip. Google results just give me tips and tricks! Do you know what it is?
I had this working yesterday, and I got a connection, but it was very slow (about 2-3mbps down, 0-1mbps up), where my phone had about 8mbps down and 5mbps up. Still a very poor reception area, so I thought that might be the issue. So I have taken the router into the city where reception is 5 bars, but now I can't get any connection at all, and I have no idea why. I thought that it would have just made a connection just as it had yesterday, but it hasn't and I have no idea where to look to start troubleshooting, considering I made no further changes once I got it working yesterday.
-
heeeeeelp!
Need that command to download TIP and need to know why it works one day and not the next? What do I need to check? What has happened since setting it up, turning it off and turning it back on again? Any ideas? Where shall I start looking? Need to solve this for a client ASAP but no idea where to start working on it.
Any help greatly appreciated!
-
…
-
Anyone?
-
-
tip is already installed you just need to run it like:
tip myradio
To escape the tip terminal back to the pfSense console use:
~~.
Bare in mind that the remote file will be reset at upgrade. The cu command you used earlier does the same thing.
You would have to check the ppp logs to see why it's not connecting.
Steve
-
*sigh
-
Gonna need more info than that to offer assistance. ;)
tip didn't work? What did happen?
Steve
-
This is how I got my Huawei ME909s-120 working with Vodafone SIM:
Big thanks to AndrewZ for this https://forum.pfsense.org/index.php?topic=105842.msg593793#msg593793 post.STEPS (from a factory reset with WAN set to a Ethernet interface):
I've only included the elements that I had to enter/change.
Interfaces -> Assignments -> PPPs (tab)
Add
Link type: PPP
Link Interface: /dev/cuaU0.0
Description (your choice): LTE
Country: United Kingdom
Provider: Vodafone
Plan: Contract
Password: web
Confirm: web
Advanced -> Init string: ZInterfaces -> Assignments -> Interface Assignments (tab)
Change WAN to PPP0(cuaU0.0) - LTECheck on dashboard under interfaces WAN IP
Check logs in Status -> System Logs -> PPP (tab)
May need to reboot to take effect.
DIAGNOSTICS:
All from console shell / putty
List devices to chec the hardware is listed.[2.4.2-RELEASE][root@pfSense.localdomain]/root: dmesg ugen0.4 <huawei technol,ogies="" co.,="" ltd.="" huawei="" mobile="" v7r11=""> at usbus0 u3g0: <huawei mobile="" connect="" -="" modem=""> on usbus0 u3g0: Found 5 ports</huawei></huawei>
Device details:
[2.4.2-RELEASE][root@pfSense.localdomain]/root: usbconfig -d ugen0.4 dump_device_desc ugen0.4: <huawei technologies="" co.,="" ltd.="" huawei="" mobile="" v7r11=""> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0210 bDeviceClass = 0x0000 <probed by="" interface="" class=""> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x15c1 bcdDevice = 0x0102 iManufacturer = 0x0001 <huawei technologies="" co.,="" ltd.=""> iProduct = 0x0002 <huawei mobile="" v7r11=""> iSerialNumber = 0x0003 <0123456789ABCDEF> bNumConfigurations = 0x0003</huawei></huawei></probed></huawei>
List ports:
[2.4.2-RELEASE][root@pfSense.localdomain]/root: ls -l /dev/cua* crw-rw---- 1 uucp dialer 0x57 Mar 17 15:19 /dev/cuaU0.0 crw-rw---- 1 uucp dialer 0x58 Mar 17 15:18 /dev/cuaU0.0.init crw-rw---- 1 uucp dialer 0x59 Mar 17 15:18 /dev/cuaU0.0.lock crw-rw---- 1 uucp dialer 0x5d Mar 17 15:18 /dev/cuaU0.1 crw-rw---- 1 uucp dialer 0x5e Mar 17 15:18 /dev/cuaU0.1.init crw-rw---- 1 uucp dialer 0x5f Mar 17 15:18 /dev/cuaU0.1.lock crw-rw---- 1 uucp dialer 0x63 Mar 17 15:18 /dev/cuaU0.2 crw-rw---- 1 uucp dialer 0x64 Mar 17 15:18 /dev/cuaU0.2.init crw-rw---- 1 uucp dialer 0x65 Mar 17 15:18 /dev/cuaU0.2.lock crw-rw---- 1 uucp dialer 0x69 Mar 17 15:18 /dev/cuaU0.3 crw-rw---- 1 uucp dialer 0x6a Mar 17 15:18 /dev/cuaU0.3.init crw-rw---- 1 uucp dialer 0x6b Mar 17 15:18 /dev/cuaU0.3.lock crw-rw---- 1 uucp dialer 0x6f Mar 17 15:18 /dev/cuaU0.4 crw-rw---- 1 uucp dialer 0x70 Mar 17 15:18 /dev/cuaU0.4.init crw-rw---- 1 uucp dialer 0x71 Mar 17 15:18 /dev/cuaU0.4.lock lrwxr-xr-x 1 root wheel 12 Mar 17 15:18 /dev/cuaZ99.0 -> /dev/cuaU0.0 lrwxr-xr-x 1 root wheel 12 Mar 17 15:18 /dev/cuaZ99.1 -> /dev/cuaU0.2 crw-rw---- 1 uucp dialer 0x37 Mar 17 15:18 /dev/cuau0 crw-rw---- 1 uucp dialer 0x38 Mar 17 15:18 /dev/cuau0.init crw-rw---- 1 uucp dialer 0x39 Mar 17 15:18 /dev/cuau0.lock
Connect to Modem to query (as long as there is no established connection):
cu -l /dev/cuaU0.0
AT Commands:
Modem details:ATI Manufacturer: Huawei Technologies Co., Ltd. Model: ME909s-120 Revision: 11.617.01.00.00 IMEI: 867377022566479 +GCAP: +CGSM,+DS,+ES
Connection status:
AT+COPS? +COPS: 0,0,"vodafone UK",7
Links:
Huawei M909 page:
http://consumer.huawei.com/solutions/m2m-solutions/en/products/support/user-guides/me909s_120_en.htm
AT commands PDF:
http://consumer.huawei.com/solutions/m2m-solutions/en/products/support/user-guides/detail/me909s_120_en.htm?id=50243 -
Cellular connections are not for the faint hearted so bear in mind you have to work them. If you would rather just plug and play then buy a dongle with an ethernet connection. The reason why you see lots of different tutorials on the web is because they are different for every modem and often different AT commands between carriers.
Question 1: What type of connector is going from the ME909-120 M port on the card to the antenna, what type of antenna are you using? Is it rated for the cellualr bands in your locality. Wifi antenna are not the same thing.
Question 2: When you boot up do you verify that the serial interface for the modem is at cuaU0.0 and not at cuaU1.0 for example check with the command: ls -l /dev/ | grep cua
Question 3: Open a SSH session and run the command: clog -f /var/log/ppp.log <== this will give you the ppp log info.
Question 4: Open another SSH session and if the radio has been verified as being present in question 2 as at cuaU0.0 then run the cu -l /dev/cuaU0.2 command and watch to see info. You could also use the tip command but you seem to be having trouble with that.
Then copy and paste all that output here so we can see what is going on.
-
Hey all, thanks very much for your help. I've finally found some time to tinker with this again.
@johnkeates
Sounds perfect in concept, but what are the exact steps to get it to appear as an ethernet port, get an IP address and then connect to its web interface?@conor
Thanks very much for your elaborate responses, I really appreciate it. I am learning!
I added the line…
ucom1:dv=/dev/cuaU0.0:br#115200:pa=none:
to the file /etc/remote and then ran the command…
tip ucom1
but I got the message…
/dev/cuaU0: No such file or directory
link downalso, the output of AT^CARDMODE? is ERROR
the output of AT^CPIN is +CME ERROR: 50Answer 1: the connector to the card is an SME connector and I'm currently using 2 antennas provided by the manufacturer which seem to work to some extent (1- 3 Mbps download). I have just purchased dual yagi antennas with LMI400 cable with SMA connectors on the end (read: heavy duty). I'm going to set that up tomorrow and test.
Answer 2: the output of ls -l /dev/ | grep cua is:
crw-rw–-- 1 uucp dialer 0x66 Apr 23 21:12 cuaU0.0
crw-rw---- 1 uucp dialer 0x67 Apr 23 21:07 cuaU0.0.init
crw-rw---- 1 uucp dialer 0x68 Apr 23 21:07 cuaU0.0.lock
crw-rw---- 1 uucp dialer 0x6c Apr 23 21:07 cuaU0.1
crw-rw---- 1 uucp dialer 0x6d Apr 23 21:07 cuaU0.1.init
crw-rw---- 1 uucp dialer 0x6e Apr 23 21:07 cuaU0.1.lock
crw-rw---- 1 uucp dialer 0x72 Apr 23 21:07 cuaU0.2
crw-rw---- 1 uucp dialer 0x73 Apr 23 21:07 cuaU0.2.init
crw-rw---- 1 uucp dialer 0x74 Apr 23 21:07 cuaU0.2.lock
crw-rw---- 1 uucp dialer 0x78 Apr 23 21:07 cuaU0.3
crw-rw---- 1 uucp dialer 0x79 Apr 23 21:07 cuaU0.3.init
crw-rw---- 1 uucp dialer 0x7a Apr 23 21:07 cuaU0.3.lock
crw-rw---- 1 uucp dialer 0x7e Apr 23 21:07 cuaU0.4
crw-rw---- 1 uucp dialer 0x7f Apr 23 21:07 cuaU0.4.init
crw-rw---- 1 uucp dialer 0x80 Apr 23 21:07 cuaU0.4.lock
crw-rw---- 1 uucp dialer 0x3b Apr 23 21:07 cuau0
crw-rw---- 1 uucp dialer 0x3c Apr 23 21:07 cuau0.init
crw-rw---- 1 uucp dialer 0x3d Apr 23 21:07 cuau0.lock
crw-rw---- 1 uucp dialer 0x41 Apr 23 21:07 cuau1
crw-rw---- 1 uucp dialer 0x42 Apr 23 21:07 cuau1.init
crw-rw---- 1 uucp dialer 0x43 Apr 23 21:07 cuau1.lockAnswer 3: the output of clog-f /var/log/ppp.log is clog-f: Command not found.
Answer 4: the output of cu -l /dev/cuaU0.2 is:
Connected^SYSSTART
+CUSATP: "D00D8103010500820281829902090A"
+CUSATEND
^MODE: 5,17
@stephenw10
Thanks Stephen, yes I just upgraded and noticed that it disappeared. Okay, I'll use that other command instead.@joelyb
Thanks very much for this, it helped!
I got similar results to what you posted, but not sure what to do with any of the results.Also, why do I have a gateway that is 10.64.64.0? (see attached image)
![Screenshot 2018-04-23 21.27.14.png](/public/imported_attachments/1/Screenshot 2018-04-23 21.27.14.png)
![Screenshot 2018-04-23 21.27.14.png_thumb](/public/imported_attachments/1/Screenshot 2018-04-23 21.27.14.png_thumb) -
You need to leave a space between clog and the -f argument for answer 3. See:
https://doc.pfsense.org/index.php/Why_can%27t_I_view_view_log_files_with_cat/grep/etc%3F_(clog)That gateway is probably being given to you be you provider. Cellular carriers often use private IPs for their gateway or even CGN. It looks it doesn't respond to ping. If you have internet access via that you might set the monitoring IP to a different address or disable monitoring. It pings twice a second by default which can eat data over time. That configurable though.
Steve
-
you might set the monitoring IP to a different address
Some candidates:
- your gateway, i.e. ISP side of the link
- ISP's DNS servers
- ISP's landing page address (the one you redirected to when your balance is low)
pr4499, try to ping them first from the router before configuring the monitoring.
-
@stephenw10
Thanks very much for clearing that up, yes that helps a lot, here is the output of the command cu -l /dev/cuaU0.2Connected
^RSSI: 5
^HCSQ: "LTE",19,20,106,18
+CUSATP: "D00D8103010500820281829902090A"
+CUSATEND
but then after a few minutes it grew to this:
Connected
^RSSI: 5
^HCSQ: "LTE",19,20,106,18
+CUSATP: "D00D8103010500820281829902090A"
+CUSATEND
^RSSI: 6
^HCSQ: "LTE",21,25,111,24
^RSSI: 5
^HCSQ: "LTE",19,18,101,16
^RSSI: 6
^HCSQ: "LTE",21,23,101,22
^RSSI: 5
^HCSQ: "LTE",18,18,91,16
^RSSI: 6
^HCSQ: "LTE",20,23,91,22
What's going on here?
I'll attach the output of the command clog -f /var/log/ppp.log as it's pretty long.
Is it possible to have a widget on the dashboard showing signal strength (RSSI / RSRP), bands / channels / frequencies currently connected to, carrier connected to, carrier aggregation (yes/no) mentioning all bands it's using, bitrate/bandwidth and also usage in MB? Picture this - there's me and my fiancé in the upstairs bedroom testing this new router with dual (mimo) 16dBi yagi antennas about 1 meter long, fastened to the vacuum cleaner nozzle, pointing it out various windows in an effort to attract some 1800mhz packets. Very scientific.
@AndrewZ
Thanks for that. I googled the DNS servers for Telstra and found them for my state. However, I did notice what seems to be different dns servers that it's connected to in that PPP log. Not sure what that's about. But I tried pinging the ones listed first result on google, and here was the result:Petes-MBP:~ Peter$ ping 61.9.188.33
PING 61.9.188.33 (61.9.188.33): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
76 bytes from 203.50.108.47: Communication prohibited by filter
Vr HL TOS Len ID Flg off TTL Pro cks Src Dst
4 5 28 5400 ba16 0 0000 39 01 8502 10.20.63.42 61.9.188.33Request timeout for icmp_seq 5
Request timeout for icmp_seq 6
Request timeout for icmp_seq 7
Request timeout for icmp_seq 8
76 bytes from 203.50.108.47: Communication prohibited by filter
Vr HL TOS Len ID Flg off TTL Pro cks Src Dst
4 5 28 5400 7282 0 0000 39 01 cc96 10.20.63.42 61.9.188.33Request timeout for icmp_seq 9
Request timeout for icmp_seq 10[ppp log.txt](/public/imported_attachments/1/ppp log.txt)
-
Mmm, well the recent parts of that log mostly look good. For example in your last connection attempt:
Apr 24 18:56:06 pfSense ppp: [wan] IPCP: SendConfigReq #3 Apr 24 18:56:06 pfSense ppp: [wan] IPADDR 0.0.0.0 Apr 24 18:56:06 pfSense ppp: [wan] PRIDNS 0.0.0.0 Apr 24 18:56:06 pfSense ppp: [wan] SECDNS 0.0.0.0 Apr 24 18:56:06 pfSense ppp: [wan] IPCP: rec'd Configure Nak #3 (Ack-Sent) Apr 24 18:56:06 pfSense ppp: [wan] IPADDR 10.96.148.91 Apr 24 18:56:06 pfSense ppp: [wan] 10.96.148.91 is OK Apr 24 18:56:06 pfSense ppp: [wan] PRIDNS 10.4.149.70 Apr 24 18:56:06 pfSense ppp: [wan] SECDNS 10.5.133.45 Apr 24 18:56:06 pfSense ppp: [wan] IPCP: SendConfigReq #4 Apr 24 18:56:06 pfSense ppp: [wan] IPADDR 10.96.148.91 Apr 24 18:56:06 pfSense ppp: [wan] PRIDNS 10.4.149.70 Apr 24 18:56:06 pfSense ppp: [wan] SECDNS 10.5.133.45 Apr 24 18:56:06 pfSense ppp: [wan] IPCP: rec'd Configure Ack #4 (Ack-Sent) Apr 24 18:56:06 pfSense ppp: [wan] IPADDR 10.96.148.91 Apr 24 18:56:06 pfSense ppp: [wan] PRIDNS 10.4.149.70 Apr 24 18:56:06 pfSense ppp: [wan] SECDNS 10.5.133.45 Apr 24 18:56:06 pfSense ppp: [wan] IPCP: state change Ack-Sent --> Opened Apr 24 18:56:06 pfSense ppp: [wan] IPCP: LayerUp Apr 24 18:56:06 pfSense ppp: [wan] 10.96.148.91 -> 10.64.64.0 Apr 24 18:56:07 pfSense ppp: [wan] IFACE: Up event Apr 24 18:56:07 pfSense ppp: [wan] IFACE: Rename interface ng0 to ppp0
The modem is responding and connecting. You are getting an IP address, gateway and DNS servers from the other end. All good. :)
It's a private IP so your provider is using Carrier Grade NAT which is common for 3G/4G.This looks like your pings are just being blocked. Do you have a current contract? Or credit available if not on contract?
76 bytes from 203.50.108.47: Communication prohibited by filter
Try connecting to a web page across that link, does it ger redirected to Telstra's 'give us more money' page?
The ^HCSQ command should give you the signal strength.
It appears the first value there after "LTE" is the lte_rssi with higher numbers being better.You might be seeing that output on cuaU0.2 because pfSense is already running 3gstats against it. Check the system log when you connect for an line like:
php-fpm xxxxx /interfaces.php: Starting 3gstats.php on device 'cuaU0.2' for interface 'opt2'
If it's there you might see the stats in Status > Interfaces.
Picture this - there's me and my fiancé in the upstairs bedroom testing this new router with dual (mimo) 16dBi yagi antennas about 1 meter long, fastened to the vacuum cleaner nozzle, pointing it out various windows in an effort to attract some 1800mhz packets.
We're gonna need a photo! ;)
Steve
-
you should try this IPs for connection monitoring:
Apr 24 18:56:06 pfSense ppp: [wan] PRIDNS 10.4.149.70
Apr 24 18:56:06 pfSense ppp: [wan] SECDNS 10.5.133.45 -
@stephenw10
Yes the Sim card is attached to the main account so always has credit. I can surf and can occasionally get up to 4mbps, but usually around 0.1 - 0.6mbps. So at least we've got the basics covered, thank you and all others that contributed. But I need to be able to troubleshoot - it's fine when it works but when it doesn't, I don't have any idea what's going on. Every other brand of cheap and nasty usb modem has a pretty Web interface and a live signal strength meter showing most of the detail I mentioned above, surely someone has invented something similar for pfsense?@AndrewZ
I pinged those addresses and it failed. And someone mentioned that gateway monitoring just uses pings to work out if it's up, so I guess that won't work. I used 8.8.8.8 and it seemed to work for a while (40 - 70ms ping, 2-7% loss) until I did anything, like a speedtest, then it showed gateway offline and never recovered. -
So no 3gstats.php line in the system log or actual numbers in Status > Interfaces?
That only works with Huawei cards and only some if them AFAIK. I have nothing to test with.
Steve