Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    APU1D with LTE Huawei ME909u-521

    Scheduled Pinned Locked Moved Hardware
    167 Posts 14 Posters 80.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      Guest
      last edited by

      You can look at the source code of u3g.c from pfSense to see for sure.. Do you know your VendorID and ProductID?

      1 Reply Last reply Reply Quote 0
      • ?
        Guest
        last edited by

        So the model number is not in u3g, but what matters is what is in the file >usbdevs<

        https://github.com/freebsd/freebsd/blob/master/sys/dev/usb/usbdevs

        It contains the individual VID and PID's that make up USB. Your devices VID and PID must be on this list to work.

        1 Reply Last reply Reply Quote 0
        • ?
          Guest
          last edited by

          Please keep in mind the github version of >usbdevs_That is bleeding edge, where stuff breaks daily. pfSense uses their own version based on FreeBSD 10.2. Source is available on the homepage._

          1 Reply Last reply Reply Quote 0
          • B
            bullet92
            last edited by

            Someone could help me to recompile the kernel? with your information I can write an how to, since there isn't updated doc.
            https://forum.pfsense.org/index.php?topic=103626.0

            1 Reply Last reply Reply Quote 0
            • S
              SimonBu
              last edited by

              Hi folks,

              i have to pick up this Thread again….

              in the Past i was not able to establish a connection to my Provider via PFSense...

              now i have updated my APU to 2.3 and the Modem will be find by default.

              BUT:

              When i do my provider settings i get the followed error:

              Dec 21 10:12:00 	ppp 		[opt3_link0] CHAT: +CGDCONT=1,"IP","web.vodafone.de"
              Dec 21 10:12:00 	ppp 		[opt3_link0] CHAT: Detected Hayes compatible modem.
              Dec 21 10:12:00 	ppp 		[opt3_link0] CHAT: The modem responded with "ERROR" to the command "AT&F&C1&D2E0S0=0M1" at ModemCmd: label.
              Dec 21 10:12:00 	ppp 		[opt3_link0] MODEM: chat script failed
              Dec 21 10:12:00 	ppp 		[opt3_link0] Link: DOWN event
              Dec 21 10:12:00 	ppp 		[opt3_link0] LCP: Down event 
              

              When i change the Init String to AT^SYSCFGEX="030201",3FFFFFFF,1,2,80044,, (based on beeloo´s info) i get:

              Dec 21 10:15:00 	ppp 		[opt3_link0] CHAT: +CGDCONT=1,"IP","web.vodafone.de"
              Dec 21 10:15:00 	ppp 		[opt3_link0] CHAT: Detected Hayes compatible modem.
              Dec 21 10:15:00 	ppp 		[opt3_link0] CHAT: The modem responded with "ERROR" to the command "AT&F&C1&D2E0S0=0M1" at ModemCmd: label.
              Dec 21 10:15:00 	ppp 		[opt3_link0] MODEM: chat script failed
              Dec 21 10:15:00 	ppp 		[opt3_link0] Link: DOWN event
              Dec 21 10:15:00 	ppp 		[opt3_link0] LCP: Down event 
              

              so no changes….

              When i changed it to "Z" then i get followed error:

              Dec 21 10:16:13 	ppp 		[opt3_link0] CHAT: Detected Custom modem.
              Dec 21 10:16:13 	ppp 		[opt3_link0] CHAT: Dialing server at *99#...
              Dec 21 10:16:13 	ppp 		[opt3_link0] CHAT: ATDT*99#
              Dec 21 10:16:13 	ppp 		[opt3_link0] CHAT: Invalid dial init string.
              Dec 21 10:16:13 	ppp 		[opt3_link0] MODEM: chat script failed
              Dec 21 10:16:13 	ppp 		[opt3_link0] Link: DOWN event
              Dec 21 10:16:13 	ppp 		[opt3_link0] LCP: Down event 
              

              Does someone has an idea for me?

              1 Reply Last reply Reply Quote 0
              • A
                AndrewZ
                last edited by

                Connect to the modem through the terminal and check both init and dial strings.

                1 Reply Last reply Reply Quote 0
                • ?
                  Guest
                  last edited by

                  The modem responded with "ERROR" to the command "AT&F&C1&D2E0S0=0M1"
                  

                  You will probably need another modem string or command to get it running.

                  Also some mobile ISPs are working on a different mode likes others or the modem is set up.

                  • Data mode (DM)
                  • Direct IP mode (DIP)

                  So perhaps you need to flash the firmware to the newest version and set also the mode to another one
                  that your mobile provider will be supporting.

                  1 Reply Last reply Reply Quote 0
                  • S
                    SimonBu
                    last edited by

                    Hi Frank,

                    maybee you can explain me how to do that ….

                    Gruß aus der Nähe von Köln

                    1 Reply Last reply Reply Quote 0
                    • ?
                      Guest
                      last edited by

                      maybee you can explain me how to do that ….

                      To get the right AT commands you should try it out by your self or get it from your ISP.
                      To get the information on with mode your modem must be configured or is working only
                      your ISP can tell you. To change that mode you need a small tool given from the modem
                      producer, often you will be able to change this mode also with the toll to flash your new
                      firmware on the modem.

                      1 Reply Last reply Reply Quote 0
                      • A
                        AndrewZ
                        last edited by

                        Forget about the ISP for a while.
                        Again, connect to the modem through the terminal. This is the only tool required now.
                        If ATDT*99# does not work - the modem could be in NDIS mode.
                        In order to check this just try AT^NDISDUP=1,1,"web.vodafone.de"

                        1 Reply Last reply Reply Quote 0
                        • S
                          SimonBu
                          last edited by

                          @BlueBobold: I have heard from that but only for USB Stick Modems…. no info found how to do that for a PCIe Card.

                          @AndrewZ: ATDT*99# does not work I get "ERROR" as output.

                          When I try "AT^NDISDUP=1,1,"web.vodafone.de"" I get the followed output:

                          OK
                          
                          ^NDISSTAT: 0,0,,"IPV6"
                          
                          ^NDISSTAT: 1,,,"IPV4"
                          

                          seems that it connect.

                          1 Reply Last reply Reply Quote 0
                          • S
                            SimonBu
                            last edited by

                            but how can i check it now and how can i impliment it?

                            1 Reply Last reply Reply Quote 0
                            • A
                              AndrewZ
                              last edited by

                              @SimonBu:

                              how can i check it now and how can i impliment it?

                              Run ifconfig to check if you have an interface for the modem with the IP address obtained from your ISP.
                              Then you will probably need to put AT^NDISDUP into some auto-run script.

                              Alternatively you can try to activate another configuration profile in your modem and run it in RAS/PPP mode. Check the discussion here.

                              1 Reply Last reply Reply Quote 0
                              • S
                                SimonBu
                                last edited by

                                in my mode i don´t have an ethernet IF

                                when i switch it to the other mode i will have an ethernet IF but no IP/connection. and i don´t have a serial port to comunicate with.

                                the mysteryious thing is that beeloo has it running. he only has compiled the usbID into the kernel.

                                1 Reply Last reply Reply Quote 0
                                • A
                                  AndrewZ
                                  last edited by

                                  Unfortunately I do not have the similar module to experiment with.
                                  Just an idea - you may need to switch the mode at some earlier stage, before the interfaces detected by the OS.
                                  We had a similar discussion here some time ago, try searching for usbmodeswitch and earlyshellcmd.

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    smejdil
                                    last edited by

                                    Hi i have also problem with connection to T-Mobile CZ

                                    I use PC Engines APU.1D and LTE Huawei ME909u-521 with actual pfSense 2.3.1_5

                                    Modem is present in the system. SIM card dont use PIN in mobile works. Modem is in slot (J16).

                                    dmesg | grep -i 'HUAWEI'
                                    ugen3.2: <huawei technology="">at usbus3
                                    u3g0: <huawei mobile="" connect="" -="" modem="">on usbus3
                                    
                                    usbconfig -d 3.2
                                    ugen3.2: <huawei mobile="" huawei="" technology="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)</huawei></huawei></huawei> 
                                    

                                    and detail

                                    usbconfig -d 3.2 dump_device_desc
                                    ugen3.2: <huawei mobile="" huawei="" technology=""> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
                                    
                                      bLength = 0x0012 
                                      bDescriptorType = 0x0001 
                                      bcdUSB = 0x0200 
                                      bDeviceClass = 0x0000  <probed by="" interface="" class="">
                                      bDeviceSubClass = 0x0000 
                                      bDeviceProtocol = 0x0000 
                                      bMaxPacketSize0 = 0x0040 
                                      idVendor = 0x12d1 
                                      idProduct = 0x1573 
                                      bcdDevice = 0x0228 
                                      iManufacturer = 0x0001  <huawei technology="">
                                      iProduct = 0x0002  <huawei mobile="">
                                      iSerialNumber = 0x0003  <0123456712ABCA17>
                                      bNumConfigurations = 0x0003</huawei></huawei></probed></huawei>
                                    

                                    On pfSense PPP are seting

                                    IPv4 Configuration Type  PPP
                                    Country       Czech Republic
                                    Provider               T-Mobile
                                    Plan       T-Mobile - internet.t-mobile.cz
                                    Phone number                  *99#
                                    Access Point Name          internet.t-mobile.cz
                                    Init string     Z
                                    Modem port     /dev/cuaU0.2

                                    Log - Init string with Z (ATZ)

                                    Jun 22 10:37:15 	ppp 		[wan] Bundle: Interface ng0 created
                                    Jun 22 10:37:15 	ppp 		[wan_link0] Link: OPEN event
                                    Jun 22 10:37:15 	ppp 		[wan_link0] LCP: Open event
                                    Jun 22 10:37:15 	ppp 		[wan_link0] LCP: state change Initial --> Starting
                                    Jun 22 10:37:15 	ppp 		[wan_link0] LCP: LayerStart
                                    Jun 22 10:37:15 	ppp 		[wan_link0] CHAT: Detected Custom modem.
                                    Jun 22 10:37:15 	ppp 		[wan_link0] CHAT: Dialing server at *99#...
                                    Jun 22 10:37:15 	ppp 		[wan_link0] CHAT: ATDT*99#
                                    Jun 22 10:37:15 	ppp 		[wan_link0] CHAT: Invalid dial init string.
                                    Jun 22 10:37:15 	ppp 		[wan_link0] MODEM: chat script failed
                                    Jun 22 10:37:15 	ppp 		[wan_link0] Link: DOWN event
                                    Jun 22 10:37:15 	ppp 		[wan_link0] LCP: Down event
                                    

                                    Log - Init string without Z (AT)

                                    Jun 17 23:06:45 	ppp 		[wan] Bundle: Interface ng0 created
                                    Jun 17 23:06:45 	ppp 		[wan_link0] Link: OPEN event
                                    Jun 17 23:06:45 	ppp 		[wan_link0] LCP: Open event
                                    Jun 17 23:06:45 	ppp 		[wan_link0] LCP: state change Initial --> Starting
                                    Jun 17 23:06:45 	ppp 		[wan_link0] LCP: LayerStart
                                    Jun 17 23:06:45 	ppp 		[wan_link0] CHAT: +CGDCONT=1,"IP","internet.t-mobile.cz"
                                    Jun 17 23:06:45 	ppp 		[wan_link0] CHAT: Detected Hayes compatible modem.
                                    Jun 17 23:06:45 	ppp 		[wan_link0] CHAT: The modem responded with "ERROR" to the command "AT&F&C1&D2E0S0=0M1" at ModemCmd: label.
                                    Jun 17 23:06:45 	ppp 		[wan_link0] MODEM: chat script failed
                                    Jun 17 23:06:45 	ppp 		[wan_link0] Link: DOWN event
                                    Jun 17 23:06:45 	ppp 		[wan_link0] LCP: Down event
                                    
                                    

                                    I tested AT command manualy

                                    cu -l /dev/cuaU0.2
                                    
                                    Connected
                                    AT^HCSQ?
                                    
                                    ^HCSQ: "WCDMA",50,51,60,0
                                    
                                    OK
                                    AT^SYSCFGEX=?
                                    
                                    ^SYSCFGEX: ("00","03","02","01","99"),((2000004e80380,"GSM850/GSM900/GSM1800/GSM1900/WCDMA BCI/WCDMA BCII/WCDMA BCV/WCDMA BCVIII"),(3fffffff,"All Bands")),(0-2),(0-4),((800d7,"LTE BC1/LTE BC2/LTE BC3/LTE BC5/LTE BC7/LTE BC8/LTE BC20"),(7fffffffffffffff,"All Bands"))
                                    
                                    OK
                                    
                                    ATI
                                    
                                    Manufacturer: Huawei Technologies Co., Ltd.
                                    Model: ME909u-521
                                    Revision: 12.636.11.01.00
                                    IMEI: 860461025220081
                                    +GCAP: +CGSM
                                    
                                    OK
                                    
                                    cat /var/etc/mpd_wan.conf 
                                    startup:
                                    	# configure the console
                                    	set console close
                                    	# configure the web server
                                    	set web close
                                    
                                    default:
                                    pppclient:
                                    	create bundle static wan
                                    	set bundle enable ipv6cp
                                    	set iface name ppp1
                                    	set iface disable on-demand
                                    	set iface idle 0
                                    	set iface enable tcpmssfix
                                    	set iface up-script /usr/local/sbin/ppp-linkup
                                    	set iface down-script /usr/local/sbin/ppp-linkdown
                                    	set ipcp ranges 0.0.0.0/0 10.64.64.0/0
                                    	set ipcp enable req-pri-dns
                                    	set ipcp enable req-sec-dns
                                    	#log -bund -ccp -chat -iface -ipcp -lcp -link
                                    
                                    	create link static wan_link0 modem
                                    	set link action bundle wan
                                    	set link disable multilink
                                    	set link keep-alive 10 60
                                    	set link max-redial 0
                                    	set link disable chap pap
                                    	set link accept chap pap eap
                                    	set link disable incoming
                                    	set link mtu 1492
                                    	set auth authname "user"
                                    	set auth password ��
                                    	set modem device /dev/cuaU0.2
                                    	set modem script DialPeer
                                    	set modem idle-script Ringback
                                    	set modem watch -cd
                                    	set modem var $DialPrefix "DT"
                                    	set modem var $Telephone "*99#"
                                    	set modem var $InitString "Z"
                                    	set modem var $PinWait "0"
                                    	set modem var $APN "internet.t-mobile.cz"
                                    	set modem var $APNum "1"
                                    	open
                                    

                                    On my place is signal only WCDMA no LTE :-(

                                    Where do I find fault? Thank you for the advice.

                                    Here is photo - https://www.flickr.com/photos/smejdil/27783164666/

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      AndrewZ
                                      last edited by

                                      try the dirty trick - remove Z from your custom init string, then edit the configuration file and remove M1 from the factory init string

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        smejdil
                                        last edited by

                                        How and where M1 remove it?

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          smejdil
                                          last edited by

                                          This configuration is OK

                                          
                                          IPv4 Configuration Type     PPP
                                          Country                     Czech Republic
                                          Provider                    T-Mobile
                                          Plan                        T-Mobile - internet.t-mobile.cz
                                          Phone number                *99#
                                          Access Point Name           internet.t-mobile.cz
                                          Init string                 &F0E1Q0 +CMEE=2
                                          Modem port                  /dev/cuaU0.0
                                          

                                          My post on my blog in Czech
                                          http://blog.smejdil.cz/2016/06/pfsense-2315-lte-modem-huawei-me909u-521.html

                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            celevra
                                            last edited by

                                            i can confirm the init string "&F0E1Q0 +CMEE=2" works for me also with german o2
                                            but only until i reboot, after that i only get 2 devices cuau0 and cuau1 and cellular shows me that the adapter is unsupported.
                                            I have to unplug the power cable, after that everything connects as normal
                                            Is there a solution for that problem?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.