Huawei E3276 and pfSense (need help)



  • Hello,
    I try to use Huawei E3276 with pfSense (2.2.4) and I need some help.

    On the Windows PC I switch Huawei E3276 to the modem mode:

    AT^SETPORT?
    
    ^SETPORT:FF;61,62
    OK
    AT^SETPORT=?
    
    ^SETPORT:1: 3G MODEM
    ^SETPORT:2: 3G PCUI
    ^SETPORT:7C: SerialC
    ^SETPORT:78: Shell A
    ^SETPORT:79: Shell B
    ^SETPORT:76: NCM
    ^SETPORT:A1: CDROM
    ^SETPORT:A2: SD
    ^SETPORT:61: 4G MODEM
    ^SETPORT:62: 4G PCUI
    ^SETPORT:7B: SerialB
    ^SETPORT:7A: SerialA
    OK
    

    In devmgmt.msc it recognizes like modem:

    Mobile Connect -Modem
    driver: HUAWEI Technologies Co.,LTD
    dev. ID: usbcdcacm\Vid_12d1&Pid_1506&MI_00 
    usbcdcacm\Vid_12d1&Subclass_02&Prot_61
    

    and there is no additional devices like cd-rom or something like that.

    When I plug in Huawei E3276 into pfSense machine, I see the next strings in the System log:

    kernel: ugen1.2: <technology>at usbus1
    kernel: u3g0: <technology 0="" 2="" mobile,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus1
    kernel: u3g0: Found 2 ports.</technology></technology>

    usbconfig:

    ugen1.1: <ehci root="" hub="" nvidia="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
    ugen0.1: <ohci root="" hub="" nvidia="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
    ugen1.2: <mobile technology="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)</mobile></ohci></ehci>

    If I configure connection, like it described here: https://doc.pfsense.org/index.php/Configuring_3G_modems ,  modem just switch to default mode (CD + NDIS).
    In the mpd.script I found initialization string in “GENERIC MODEM SETUP”: &F&C1&D2E0S0=0M1 . If I delete &F , modem will not switch to the default mode, but connection still will not be established:

    Jan 25 17:48:25 ppp: [opt1_link0] Link: reconnection attempt 1 in 1 seconds
    Jan 25 17:48:26 ppp: [opt1_link0] Link: reconnection attempt 1
    Jan 25 17:48:28 ppp: [opt1_link0] CHAT: +CGDCONT=1,“IP”,"internet.mts.ru"
    Jan 25 17:48:28 ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Jan 25 17:48:28 ppp: [opt1_link0] CHAT: The modem responded with “ERROR” to the command “AT&C1&D2E0S0=0M1” at ModemCmd: label.
    Jan 25 17:48:28 ppp: [opt1_link0] MODEM: chat script failed
    Jan 25 17:48:28 ppp: [opt1_link0] Link: DOWN event
    Jan 25 17:48:28 ppp: [opt1_link0] LCP: Down event

    At this point I’m stuck. Any suggestions will be appreciated!



  • Change the init string to just Z or &F it this is really necessary.
    Optionally change the firmware to generic/universal.



  • Hello!
    I saw your post in one of the old threads and I alredy tryed to change string to “Z” (Set $modemCmd “Z”):

    Jan 25 18:12:24 ppp: [opt1_link0] Link: reconnection attempt 6
    Jan 25 18:12:25 ppp: [opt1_link0] CHAT: +CGDCONT=1,“IP”,"internet.mts.ru"
    Jan 25 18:12:25 ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Jan 25 18:12:28 ppp: [opt1_link0] CHAT: The modem is not responding to “AT&Z” at ModemCmd: label.
    Jan 25 18:12:28 ppp: [opt1_link0] MODEM: chat script failed
    Jan 25 18:12:28 ppp: [opt1_link0] Link: DOWN event
    Jan 25 18:12:28 ppp: [opt1_link0] LCP: Down event
    Jan 25 18:12:28 ppp: [opt1_link0] Link: reconnection attempt 7 in 2 seconds

    AndrewZ, can you recommend firmware? For now I use:

    Found modem : E3276
    Model : Huawei E3276
    Firmware : 21.260.03.00.143
    Compile date / time : Jan 05 2013 17:18:51
    Hardware ver. : CH1E3276SM
    Dashboard version : UTPS21.003.28.46.143_MAC21.003.28.43.143_LNX21.003.28.17.143



  • Don’t touch the scripts! Init string should be configured in the GUI.
    There is no such command AT&Z !

    The latest 21.X firmware for this modem seems to be this one: E3276s-150_21.491.05.00.00_Universal



  • AndrewZ, sorry for my English, I’ll try to explain, why I got into the script:
    1. I change device mode to "modem only"
    2. Connect device to pfSense and configure link like it described here: https://doc.pfsense.org/index.php/Configuring_3G_modems
    3. Device change mode to CD+NDIS and in the PPP logs I see something like that:

    Jan 25 17:48:25    ppp: [opt1_link0] Link: reconnection attempt 1 in 1 seconds
    Jan 25 17:48:26    ppp: [opt1_link0] Link: reconnection attempt 1
    Jan 25 17:48:28    ppp: [opt1_link0] CHAT: +CGDCONT=1,“IP”,"internet.mts.ru"
    Jan 25 17:48:28    ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Jan 25 17:48:28    ppp: [opt1_link0] CHAT: The modem responded with “ERROR” to the command “AT&F&C1&D2E0S0=0M1” at ModemCmd: label.
    Jan 25 17:48:28    ppp: [opt1_link0] MODEM: chat script failed
    Jan 25 17:48:28    ppp: [opt1_link0] Link: DOWN event
    Jan 25 17:48:28    ppp: [opt1_link0] LCP: Down event

    4. I try to set initializing sting to Z (like you say) in the GUI , but the situation has not changed
    5. Only after that I began to try to change the initialization string in the mpd.script.



  • OK, just for the test - remove S0=0 from the init string. I recall this is what this modem is complaining on.



  • Hello!
    Yesterday I remove “S0=S”, but:

    ppp: [opt1_link0] CHAT: +CGDCONT=1,"IP","internet.mts.ru"
    ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    ppp: [opt1_link0] CHAT: The modem responded with "ERROR" to the command "AT&F&C1&D2E0M1" at ModemCmd: label.
    ppp: [opt1_link0] MODEM: chat script failed
    

    After that I flash modem with E3276s-150_21.491.05.00.00_Universal firmware and Huawei dashboard. The situation has not changed.

    P.S.:
    For now, I assemble one more PC for testing purposes and install pfSense 2.2.4-RELEASE (i386) . But there is the new problem: I create PPP, create new interface OPT1, but in the GUI ->Status->System Logs->PPP nothing appears and in /var/etc there is no mpd_op1.conf…  What could be the reason?

    Thanks in advance!



  • I was wrong. Next time use the terminal to test all the commands one-by-one 🙂
    This modem cannot handle M1, for obvious reasons - it has no speaker.
    So, just remove M1 from the string if for some reasons the GUI init string does not take precedence over.

    Send:AT&F&C1&D2E0S0=0
    
    Recieve: OK
    


  • @AndrewZ:

    it has no speaker

    😄

    @AndrewZ:

    So, just remove M1 from the string if for some reasons the GUI init string does not take precedence over.

    It seems to be working:

    Jan 27 19:06:41 	ppp: [opt1] IPV6CP: protocol was rejected by peer
    Jan 27 19:06:41 	ppp: [opt1] IPV6CP: state change Req-Sent --> Stopped
    Jan 27 19:06:41 	ppp: [opt1] IPV6CP: LayerFinish
    Jan 27 19:06:41 	ppp: [opt1] IPCP: rec'd Configure Reject #2 (Ack-Sent)
    Jan 27 19:06:41 	ppp: [opt1] COMPPROTO VJCOMP, 16 comp. channels, no comp-cid
    Jan 27 19:06:41 	ppp: [opt1] IPCP: SendConfigReq #3
    Jan 27 19:06:41 	ppp: [opt1] IPADDR 0.0.0.0
    Jan 27 19:06:41 	ppp: [opt1] PRIDNS 0.0.0.0
    Jan 27 19:06:41 	ppp: [opt1] SECDNS 0.0.0.0
    Jan 27 19:06:41 	ppp: [opt1] IPCP: rec'd Configure Nak #3 (Ack-Sent)
    Jan 27 19:06:41 	ppp: [opt1] IPADDR 10.160.124.64
    Jan 27 19:06:41 	ppp: [opt1] 10.160.124.64 is OK
    Jan 27 19:06:41 	ppp: [opt1] PRIDNS 213.87.0.1
    Jan 27 19:06:41 	ppp: [opt1] SECDNS 213.87.1.1
    Jan 27 19:06:41 	ppp: [opt1] IPCP: SendConfigReq #4
    Jan 27 19:06:41 	ppp: [opt1] IPADDR 10.160.124.64
    Jan 27 19:06:41 	ppp: [opt1] PRIDNS 213.87.0.1
    Jan 27 19:06:41 	ppp: [opt1] SECDNS 213.87.1.1
    Jan 27 19:06:41 	ppp: [opt1] IPCP: rec'd Configure Ack #4 (Ack-Sent)
    Jan 27 19:06:41 	ppp: [opt1] IPADDR 10.160.124.64
    Jan 27 19:06:41 	ppp: [opt1] PRIDNS 213.87.0.1
    Jan 27 19:06:41 	ppp: [opt1] SECDNS 213.87.1.1
    Jan 27 19:06:41 	ppp: [opt1] IPCP: state change Ack-Sent --> Opened
    Jan 27 19:06:41 	ppp: [opt1] IPCP: LayerUp
    Jan 27 19:06:41 	ppp: [opt1] 10.160.124.64 -> 10.64.64.0
    Jan 27 19:06:42 	ppp: [opt1] IFACE: Up event
    Jan 27 19:06:42 	ppp: [opt1] IFACE: Rename interface ng0 to ppp0
    

    I will test it tomorrow.



  • I apologize for the delay between responses, a lot of work …

    Modem with new firmware doesn’t work 😞

    Between each operation I made the following:

    • check modem operation mode and switch it to “modem only” (if necessary)
    • delete interfaces (ppp and opt1)
    • reboot pfsense
    • assgin interfaces (ppp and opt1)

    I switch modem to “modem only” mode and connect modem to pfSense:

    Feb 2 19:06:49 	ppp: Multi-link PPP daemon for FreeBSD
    Feb 2 19:06:49 	ppp:
    Feb 2 19:06:49 	ppp: process 31282 started, version 5.7 (root@pfSense_RELENG_2_2_i386_i386-pfSense_RELENG_2_2-job-01 00:09 9-Jun-2015)
    Feb 2 19:06:49 	ppp: web: web is not running
    Feb 2 19:06:49 	ppp: [opt1] Bundle: Interface ng0 created
    Feb 2 19:06:49 	ppp: [opt1_link0] Link: OPEN event
    Feb 2 19:06:49 	ppp: [opt1_link0] LCP: Open event
    Feb 2 19:06:49 	ppp: [opt1_link0] LCP: state change Initial --> Starting
    Feb 2 19:06:49 	ppp: [opt1_link0] LCP: LayerStart
    Feb 2 19:06:49 	ppp: [opt1_link0] CHAT: +CGDCONT=1,"IP","internet.mts.ru"
    Feb 2 19:06:49 	ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Feb 2 19:06:52 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT&F&C1&D2E0S0=0" at ModemCmd: label.
    Feb 2 19:06:52 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:06:52 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:06:52 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:06:52 	ppp: [opt1_link0] Link: reconnection attempt 1 in 2 seconds
    Feb 2 19:06:54 	ppp: [opt1_link0] Link: reconnection attempt 1
    Feb 2 19:06:55 	ppp: [opt1_link0] CHAT: +CGDCONT=1,"IP","internet.mts.ru"
    Feb 2 19:06:55 	ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Feb 2 19:06:55 	ppp: [opt1_link0] CHAT: Dialing server at *99#...
    Feb 2 19:06:55 	ppp: [opt1_link0] CHAT: ATDT*99#
    Feb 2 19:06:55 	ppp: [opt1_link0] CHAT: Connected at an unknown speed.
    Feb 2 19:06:55 	ppp: [opt1_link0] MODEM: chat script succeeded
    Feb 2 19:06:55 	ppp: [opt1_link0] Link: UP event
    Feb 2 19:06:55 	ppp: [opt1_link0] LCP: Up event
    Feb 2 19:06:55 	ppp: [opt1_link0] LCP: state change Starting --> Req-Sent
    Feb 2 19:06:55 	ppp: [opt1_link0] LCP: SendConfigReq #1
    Feb 2 19:06:55 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:06:55 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:06:55 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:06:55 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:06:55 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:06:57 	ppp: [opt1_link0] LCP: SendConfigReq #2
    Feb 2 19:06:57 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:06:57 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:06:57 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:06:57 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:06:57 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:06:59 	ppp: [opt1_link0] LCP: SendConfigReq #3
    Feb 2 19:06:59 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:06:59 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:06:59 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:06:59 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:06:59 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:01 	ppp: [opt1_link0] LCP: SendConfigReq #4
    Feb 2 19:07:01 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:01 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:01 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:01 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:01 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:03 	ppp: [opt1_link0] LCP: SendConfigReq #5
    Feb 2 19:07:03 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:03 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:03 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:03 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:03 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:05 	ppp: [opt1_link0] LCP: SendConfigReq #6
    Feb 2 19:07:05 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:05 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:05 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:05 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:05 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:07 	ppp: [opt1_link0] LCP: SendConfigReq #7
    Feb 2 19:07:07 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:07 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:07 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:07 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:07 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:09 	ppp: [opt1_link0] LCP: SendConfigReq #8
    Feb 2 19:07:09 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:09 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:09 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:09 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:09 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:11 	ppp: [opt1_link0] LCP: SendConfigReq #9
    Feb 2 19:07:11 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:11 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:11 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:11 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:11 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:13 	ppp: [opt1_link0] LCP: SendConfigReq #10
    Feb 2 19:07:13 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:07:13 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:07:13 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:07:13 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:07:13 	ppp: [opt1_link0] MAGICNUM deded6a8
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: parameter negotiation failed
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: state change Req-Sent --> Stopped
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: LayerFinish
    Feb 2 19:07:15 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: state change Stopped --> Starting
    Feb 2 19:07:15 	ppp: [opt1_link0] LCP: LayerStart
    Feb 2 19:07:15 	ppp: [opt1_link0] Link: reconnection attempt 2 in 4 seconds
    Feb 2 19:07:19 	ppp: [opt1_link0] Link: reconnection attempt 2
    Feb 2 19:07:19 	ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Feb 2 19:07:22 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT&F&C1&D2E0S0=0" at ModemCmd: label.
    Feb 2 19:07:22 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:07:22 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:07:22 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:07:22 	ppp: [opt1_link0] Link: reconnection attempt 3 in 1 seconds
    Feb 2 19:07:23 	ppp: [opt1_link0] Link: reconnection attempt 3
    Feb 2 19:07:39 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 2 19:07:39 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:07:39 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:07:39 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:07:39 	ppp: [opt1_link0] Link: reconnection attempt 4 in 4 seconds
    

    I check on the Windows PC: after “AT&F&C1&D2E0S0=0” (more precisely, after “AT&F”) modem switches to the default mode:

    at^setport=?
    ^SETPORT:1: 3G MODEM
    ^SETPORT:2: 3G PCUI
    ^SETPORT:3: 3G DIAG
    ^SETPORT:5: 3G GPS
    ^SETPORT:A: BLUE TOOTH
    ^SETPORT:16: NCM
    ^SETPORT:A1: CDROM
    ^SETPORT:A2: SD
    ^SETPORT:10: 4G MODEM
    ^SETPORT:12: 4G PCUI
    ^SETPORT:13: 4G DIAG
    ^SETPORT:14: 4G GPS
    OK
    
    at^setport?
    ^SETPORT:FF;10,12
    OK
    
    AT&F&C1&D2E0S0=0
    (at this steep there is no answer from modem)
    

    Unplug and plug modem:

    at^setport?
    
    ^SETPORT:A1,A2;10,12,16,A1,A2
    OK
    

    If I try to use another initial string (through GUI) (I try “Z” like you say and because ATZ command completes successfully on Windows PC):

    Feb 2 19:31:37 	ppp: Multi-link PPP daemon for FreeBSD
    Feb 2 19:31:37 	ppp:
    Feb 2 19:31:37 	ppp: process 45928 started, version 5.7 (root@pfSense_RELENG_2_2_i386_i386-pfSense_RELENG_2_2-job-01 00:09 9-Jun-2015)
    Feb 2 19:31:37 	ppp: web: web is not running
    Feb 2 19:31:37 	ppp: [opt1] Bundle: Interface ng0 created
    Feb 2 19:31:37 	ppp: [opt1_link0] Link: OPEN event
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: Open event
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: state change Initial --> Starting
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: LayerStart
    Feb 2 19:31:37 	ppp: [opt1_link0] CHAT: Detected Custom modem.
    Feb 2 19:31:37 	ppp: [opt1_link0] CHAT: Dialing server at *99#...
    Feb 2 19:31:37 	ppp: [opt1_link0] CHAT: ATDT*99#
    Feb 2 19:31:37 	ppp: [opt1_link0] CHAT: Connected at an unknown speed.
    Feb 2 19:31:37 	ppp: [opt1_link0] MODEM: chat script succeeded
    Feb 2 19:31:37 	ppp: [opt1_link0] Link: UP event
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: Up event
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: state change Starting --> Req-Sent
    Feb 2 19:31:37 	ppp: [opt1_link0] LCP: SendConfigReq #1
    Feb 2 19:31:37 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:37 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:37 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:37 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:37 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:39 	ppp: [opt1_link0] LCP: SendConfigReq #2
    Feb 2 19:31:39 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:39 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:39 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:39 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:39 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:41 	ppp: [opt1_link0] LCP: SendConfigReq #3
    Feb 2 19:31:41 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:41 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:41 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:41 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:41 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:43 	ppp: [opt1_link0] LCP: SendConfigReq #4
    Feb 2 19:31:43 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:43 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:43 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:43 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:43 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:45 	ppp: [opt1_link0] LCP: SendConfigReq #5
    Feb 2 19:31:45 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:45 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:45 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:45 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:45 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:47 	ppp: [opt1_link0] LCP: SendConfigReq #6
    Feb 2 19:31:47 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:47 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:47 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:47 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:47 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:50 	ppp: [opt1_link0] LCP: SendConfigReq #7
    Feb 2 19:31:50 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:50 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:50 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:50 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:50 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:52 	ppp: [opt1_link0] LCP: SendConfigReq #8
    Feb 2 19:31:52 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:52 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:52 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:52 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:52 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:54 	ppp: [opt1_link0] LCP: SendConfigReq #9
    Feb 2 19:31:54 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:54 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:54 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:54 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:54 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:56 	ppp: [opt1_link0] LCP: SendConfigReq #10
    Feb 2 19:31:56 	ppp: [opt1_link0] ACFCOMP
    Feb 2 19:31:56 	ppp: [opt1_link0] PROTOCOMP
    Feb 2 19:31:56 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 2 19:31:56 	ppp: [opt1_link0] MRU 1500
    Feb 2 19:31:56 	ppp: [opt1_link0] MAGICNUM 6990af60
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: parameter negotiation failed
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: state change Req-Sent --> Stopped
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: LayerFinish
    Feb 2 19:31:58 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: state change Stopped --> Starting
    Feb 2 19:31:58 	ppp: [opt1_link0] LCP: LayerStart
    Feb 2 19:31:58 	ppp: [opt1_link0] Link: reconnection attempt 1 in 4 seconds
    Feb 2 19:32:02 	ppp: [opt1_link0] Link: reconnection attempt 1
    Feb 2 19:32:02 	ppp: [opt1_link0] CHAT: Detected Custom modem.
    Feb 2 19:32:05 	ppp: [opt1_link0] CHAT: The modem is not responding to "ATZ" at ModemCmd: label.
    Feb 2 19:32:05 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:32:05 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:32:05 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:32:05 	ppp: [opt1_link0] Link: reconnection attempt 2 in 2 seconds
    Feb 2 19:32:07 	ppp: [opt1_link0] Link: reconnection attempt 2
    Feb 2 19:32:21 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 2 19:32:21 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:32:21 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:32:21 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:32:21 	ppp: [opt1_link0] Link: reconnection attempt 3 in 4 seconds
    Feb 2 19:32:25 	ppp: [opt1_link0] Link: reconnection attempt 3
    Feb 2 19:32:39 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 2 19:32:39 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 2 19:32:39 	ppp: [opt1_link0] Link: DOWN event
    Feb 2 19:32:39 	ppp: [opt1_link0] LCP: Down event
    Feb 2 19:32:39 	ppp: [opt1_link0] Link: reconnection attempt 4 in 2 seconds
    Feb 2 19:32:41 	ppp: [opt1_link0] Link: reconnection attempt 4
    

    Change initializatin string in mpd.script to “AT&C1&D2E0S0=0” (standart string without &F and M1):
    Checking on Windows PC:

    AT&C1&D2E0S0=0
    
    OK
    

    Log from pfsense:

    
    Feb 5 17:15:37 	ppp: Multi-link PPP daemon for FreeBSD
    Feb 5 17:15:37 	ppp:
    Feb 5 17:15:37 	ppp: process 47378 started, version 5.7 (root@pfSense_RELENG_2_2_i386_i386-pfSense_RELENG_2_2-job-01 00:09 9-Jun-2015)
    Feb 5 17:15:37 	ppp: web: web is not running
    Feb 5 17:15:37 	ppp: [opt1] Bundle: Interface ng0 created
    Feb 5 17:15:37 	ppp: [opt1_link0] Link: OPEN event
    Feb 5 17:15:37 	ppp: [opt1_link0] LCP: Open event
    Feb 5 17:15:37 	ppp: [opt1_link0] LCP: state change Initial --> Starting
    Feb 5 17:15:37 	ppp: [opt1_link0] LCP: LayerStart
    Feb 5 17:15:38 	ppp: [opt1_link0] CHAT: +CGDCONT=1,"IP","internet.mts.ru"
    Feb 5 17:15:38 	ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Feb 5 17:15:38 	ppp: [opt1_link0] CHAT: Dialing server at *99#...
    Feb 5 17:15:38 	ppp: [opt1_link0] CHAT: ATDT*99#
    Feb 5 17:15:38 	ppp: [opt1_link0] CHAT: Connected at an unknown speed.
    Feb 5 17:15:38 	ppp: [opt1_link0] MODEM: chat script succeeded
    Feb 5 17:15:38 	ppp: [opt1_link0] Link: UP event
    Feb 5 17:15:38 	ppp: [opt1_link0] LCP: Up event
    Feb 5 17:15:38 	ppp: [opt1_link0] LCP: state change Starting --> Req-Sent
    Feb 5 17:15:38 	ppp: [opt1_link0] LCP: SendConfigReq #1
    Feb 5 17:15:38 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:38 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:38 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:38 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:38 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:40 	ppp: [opt1_link0] LCP: SendConfigReq #2
    Feb 5 17:15:40 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:40 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:40 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:40 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:40 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:42 	ppp: [opt1_link0] LCP: SendConfigReq #3
    Feb 5 17:15:42 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:42 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:42 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:42 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:42 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:44 	ppp: [opt1_link0] LCP: SendConfigReq #4
    Feb 5 17:15:44 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:44 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:44 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:44 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:44 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:46 	ppp: [opt1_link0] LCP: SendConfigReq #5
    Feb 5 17:15:46 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:46 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:46 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:46 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:46 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:48 	ppp: [opt1_link0] LCP: SendConfigReq #6
    Feb 5 17:15:48 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:48 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:48 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:48 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:48 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:50 	ppp: [opt1_link0] LCP: SendConfigReq #7
    Feb 5 17:15:50 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:50 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:50 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:50 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:50 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:52 	ppp: [opt1_link0] LCP: SendConfigReq #8
    Feb 5 17:15:52 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:52 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:52 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:52 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:52 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:54 	ppp: [opt1_link0] LCP: SendConfigReq #9
    Feb 5 17:15:54 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:54 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:54 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:54 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:54 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:56 	ppp: [opt1_link0] LCP: SendConfigReq #10
    Feb 5 17:15:56 	ppp: [opt1_link0] ACFCOMP
    Feb 5 17:15:56 	ppp: [opt1_link0] PROTOCOMP
    Feb 5 17:15:56 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 5 17:15:56 	ppp: [opt1_link0] MRU 1500
    Feb 5 17:15:56 	ppp: [opt1_link0] MAGICNUM 485d6722
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: parameter negotiation failed
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: state change Req-Sent --> Stopped
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: LayerFinish
    Feb 5 17:15:58 	ppp: [opt1_link0] Link: DOWN event
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: Down event
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: state change Stopped --> Starting
    Feb 5 17:15:58 	ppp: [opt1_link0] LCP: LayerStart
    Feb 5 17:15:58 	ppp: [opt1_link0] Link: reconnection attempt 1 in 4 seconds
    Feb 5 17:16:02 	ppp: [opt1_link0] Link: reconnection attempt 1
    Feb 5 17:16:02 	ppp: [opt1_link0] CHAT: Detected Hayes compatible modem.
    Feb 5 17:16:05 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 5 17:16:05 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 5 17:16:05 	ppp: [opt1_link0] Link: DOWN event
    Feb 5 17:16:05 	ppp: [opt1_link0] LCP: Down event
    Feb 5 17:16:05 	ppp: [opt1_link0] Link: reconnection attempt 2 in 1 seconds
    Feb 5 17:16:06 	ppp: [opt1_link0] Link: reconnection attempt 2
    Feb 5 17:16:21 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 5 17:16:21 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 5 17:16:21 	ppp: [opt1_link0] Link: DOWN event
    Feb 5 17:16:21 	ppp: [opt1_link0] LCP: Down event
    Feb 5 17:16:21 	ppp: [opt1_link0] Link: reconnection attempt 3 in 1 seconds
    Feb 5 17:16:22 	ppp: [opt1_link0] Link: reconnection attempt 3
    Feb 5 17:16:37 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 5 17:16:37 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 5 17:16:37 	ppp: [opt1_link0] Link: DOWN event
    Feb 5 17:16:37 	ppp: [opt1_link0] LCP: Down event
    
    

    Any idea why it is still not working?
    What means strings like “ACFCOMP” in the logs?



  • Please set the modem to FF;10,12 then don’t plug it into Windows PC anymore.
    Check the pfsense log for the serial ports created then use cu right on the router to access the stick (it’s 4G PCUI) if necessary.



  • O’k.

    
    AT^SETPORT="FF;10,12"
    OK
    

    Plug modem into pfsense:

    [2.2.4-RELEASE][root@pfSensetest.localdomain]/root: usbconfig
    ugen0.1: <ohci root="" hub="" nvidia="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
    ugen1.1: <ehci root="" hub="" nvidia="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
    ugen1.2: <huawei mobile="" huawei="" technology="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)</huawei></ehci></ohci> 
    
    [2.2.4-RELEASE][root@pfSensetest.localdomain]/root: usbconfig -d ugen1.2 dump_device_desc
    ugen1.2: <huawei mobile="" huawei="" technology="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
    
      bLength = 0x0012
      bDescriptorType = 0x0001
      bcdUSB = 0x0200
      bDeviceClass = 0x0000
      bDeviceSubClass = 0x0000
      bDeviceProtocol = 0x00ff
      bMaxPacketSize0 = 0x0040
      idVendor = 0x12d1
      idProduct = 0x1506
      bcdDevice = 0x0102
      iManufacturer = 0x0003  <huawei technology="">iProduct = 0x0002  <huawei mobile="">iSerialNumber = 0x0005  <ffffffffffffffff>bNumConfigurations = 0x0001</ffffffffffffffff></huawei></huawei></huawei> 
    

    dmesg:

    ugen1.2: <huawei technology="">at usbus1
    u3g0: <huawei 0="" 2="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus1
    u3g0: Found 2 ports.</huawei></huawei> 
    

    system log:

    Feb 8 19:14:38 	kernel: ugen1.2: <huawei technology=""> at usbus1
    Feb 8 19:14:38 	kernel: u3g0: <huawei 0="" 2="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr=""> on usbus1
    Feb 8 19:14:38 	kernel: u3g0: Found 2 ports.</huawei></huawei>
    

    Create PPP (init string Z in GUI) and assign OPT1:

    Feb 8 19:24:54 	ppp: Multi-link PPP daemon for FreeBSD
    Feb 8 19:24:54 	ppp:
    Feb 8 19:24:54 	ppp: process 68232 started, version 5.7 (root@pfSense_RELENG_2_2_i386_i386-pfSense_RELENG_2_2-job-01 00:09 9-Jun-2015)
    Feb 8 19:24:54 	ppp: web: web is not running
    Feb 8 19:24:54 	ppp: [opt1] Bundle: Interface ng0 created
    Feb 8 19:24:54 	ppp: [opt1_link0] Link: OPEN event
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: Open event
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: state change Initial --> Starting
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: LayerStart
    Feb 8 19:24:54 	ppp: [opt1_link0] CHAT: Detected Custom modem.
    Feb 8 19:24:54 	ppp: [opt1_link0] CHAT: Dialing server at *99#...
    Feb 8 19:24:54 	ppp: [opt1_link0] CHAT: ATDT*99#
    Feb 8 19:24:54 	ppp: [opt1_link0] CHAT: Connected at an unknown speed.
    Feb 8 19:24:54 	ppp: [opt1_link0] MODEM: chat script succeeded
    Feb 8 19:24:54 	ppp: [opt1_link0] Link: UP event
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: Up event
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: state change Starting --> Req-Sent
    Feb 8 19:24:54 	ppp: [opt1_link0] LCP: SendConfigReq #1
    Feb 8 19:24:54 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:24:54 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:24:54 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:24:54 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:24:54 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:24:56 	ppp: [opt1_link0] LCP: SendConfigReq #2
    Feb 8 19:24:56 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:24:56 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:24:56 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:24:56 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:24:56 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:24:58 	ppp: [opt1_link0] LCP: SendConfigReq #3
    Feb 8 19:24:58 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:24:58 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:24:58 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:24:58 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:24:58 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:00 	ppp: [opt1_link0] LCP: SendConfigReq #4
    Feb 8 19:25:00 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:00 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:00 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:00 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:00 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:02 	ppp: [opt1_link0] LCP: SendConfigReq #5
    Feb 8 19:25:02 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:02 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:02 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:02 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:02 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:04 	ppp: [opt1_link0] LCP: SendConfigReq #6
    Feb 8 19:25:04 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:04 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:04 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:04 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:04 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:06 	ppp: [opt1_link0] LCP: SendConfigReq #7
    Feb 8 19:25:06 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:06 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:06 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:06 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:06 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:08 	ppp: [opt1_link0] LCP: SendConfigReq #8
    Feb 8 19:25:08 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:08 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:08 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:08 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:08 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:10 	ppp: [opt1_link0] LCP: SendConfigReq #9
    Feb 8 19:25:10 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:10 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:10 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:10 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:10 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:12 	ppp: [opt1_link0] LCP: SendConfigReq #10
    Feb 8 19:25:12 	ppp: [opt1_link0] ACFCOMP
    Feb 8 19:25:12 	ppp: [opt1_link0] PROTOCOMP
    Feb 8 19:25:12 	ppp: [opt1_link0] ACCMAP 0x000a0000
    Feb 8 19:25:12 	ppp: [opt1_link0] MRU 1500
    Feb 8 19:25:12 	ppp: [opt1_link0] MAGICNUM 41a42780
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: parameter negotiation failed
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: state change Req-Sent --> Stopped
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: LayerFinish
    Feb 8 19:25:14 	ppp: [opt1_link0] Link: DOWN event
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: Down event
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: state change Stopped --> Starting
    Feb 8 19:25:14 	ppp: [opt1_link0] LCP: LayerStart
    Feb 8 19:25:14 	ppp: [opt1_link0] Link: reconnection attempt 1 in 3 seconds
    Feb 8 19:25:17 	ppp: [opt1_link0] Link: reconnection attempt 1
    Feb 8 19:25:17 	ppp: [opt1_link0] CHAT: Detected Custom modem.
    Feb 8 19:25:20 	ppp: [opt1_link0] CHAT: The modem is not responding to "ATZ" at ModemCmd: label.
    Feb 8 19:25:20 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 8 19:25:20 	ppp: [opt1_link0] Link: DOWN event
    Feb 8 19:25:20 	ppp: [opt1_link0] LCP: Down event
    Feb 8 19:25:20 	ppp: [opt1_link0] Link: reconnection attempt 2 in 2 seconds
    Feb 8 19:25:22 	ppp: [opt1_link0] Link: reconnection attempt 2
    Feb 8 19:25:36 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 8 19:25:36 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 8 19:25:36 	ppp: [opt1_link0] Link: DOWN event
    Feb 8 19:25:36 	ppp: [opt1_link0] LCP: Down event
    Feb 8 19:25:36 	ppp: [opt1_link0] Link: reconnection attempt 3 in 1 seconds
    Feb 8 19:25:37 	ppp: [opt1_link0] Link: reconnection attempt 3
    Feb 8 19:25:52 	ppp: [opt1_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
    Feb 8 19:25:52 	ppp: [opt1_link0] MODEM: chat script failed
    Feb 8 19:25:52 	ppp: [opt1_link0] Link: DOWN event
    Feb 8 19:25:52 	ppp: [opt1_link0] LCP: Down event
    

    Disable OPT1, reboot pfsense:

    
    [2.2.4-RELEASE][root@pfSensetest.localdomain]/root: cu -l /dev/cuaU0.1
    Connected
    AT
    OK
    ATZ
    OK
    AT^SETPORT?
    ^SETPORT:FF;10,12
    ~
    [EOT]
    
    


  • I will probably need to write a detailed guide for Huawei modems. Some day 🙂

    This is a brief explanation of the configuration process, it was tested on 2.2.6-RELEASE (i386) and Huawei E3276.

    1. Clean-up. Remove pppX and Opt1 (or how it’s called) configurations left from the previous exercises
    2. Make sure the modem has the right firmware (21.XXX) and composition (see below), it is unlocked, etc.
    3. Plug the modem in
    4. reboot
    5. go to the console and check

    
    /root: dmesg  
    ...
    ugen1.2: <huawei technology="">at usbus1
    u3g0: <huawei 0="" 2="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus1
    u3g0: Found 2 ports.
    ...
    
    /root: usbconfig -d ugen1.2 dump_device_desc
    ugen1.2: <huawei mobile="" huawei="" technology="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
    
      bLength = 0x0012 
      bDescriptorType = 0x0001 
      bcdUSB = 0x0200 
      bDeviceClass = 0x0000 
      bDeviceSubClass = 0x0000 
      bDeviceProtocol = 0x00ff 
      bMaxPacketSize0 = 0x0040 
      idVendor = 0x12d1 
      idProduct = 0x1506 
      bcdDevice = 0x0102 
      iManufacturer = 0x0004  <huawei technology="">iProduct = 0x0003  <huawei mobile="">iSerialNumber = 0x0006  <ffffffffffffffff>bNumConfigurations = 0x0001 
    
    /root: ls -l /dev/cuaU*
    crw-rw----  1 uucp  dialer  0x6f Feb  9 14:35 /dev/cuaU0.0
    crw-rw----  1 uucp  dialer  0x70 Feb  9 14:35 /dev/cuaU0.0.init
    crw-rw----  1 uucp  dialer  0x71 Feb  9 14:35 /dev/cuaU0.0.lock
    crw-rw----  1 uucp  dialer  0x75 Feb  9 14:37 /dev/cuaU0.1
    crw-rw----  1 uucp  dialer  0x76 Feb  9 14:35 /dev/cuaU0.1.init
    crw-rw----  1 uucp  dialer  0x77 Feb  9 14:35 /dev/cuaU0.1.lock</ffffffffffffffff></huawei></huawei></huawei></huawei></huawei> 
    

    In fact, the following will appear above only if the right composition is set on the modem prior to insertion:

    
    u3g0: Found 2 ports
    /dev/cuaU0.0 and /dev/cuaU0.1
    idProduct = 0x1506
    
    

    Checking the modem information:

    
    /root: cu -l /dev/cuaU0.0
    Connected
    ATI
    Manufacturer: huawei
    Model: E3276
    Revision: 21.491.03.00.00
    ...
    
    

    … and it’s composition:

    
    AT^SETPORT?
    ^SETPORT:FF;10,12,16
    
    OK
    
    

    Actually, if composition is wrong, ports will not be visible to the router and cu will not be able to talk with the modem.

    6. leave the terminal (cu) and go to the browser to configure PPP interface:

    • Link Type = PPP, Link interface(s) = /dev/cuaU0.0

    • set the APN, Phone Number, username/password

    • put Z as the Init String in advanced settings

    7. Add/configure OPT1 interface - just select ppp0 from the list
    8. Enable OPT1
    9. at this point ppp0 should become visible in the console in ifconfig output
    10. Check Status - Interfaces - OPT1(PPP), PPP log, etc - connection should be UP



  • I just came across this thread and hope I can get some advice on setting up a Huawei E3372.

    I’m trying to get the modem working in NDIS mode, and not sure how to set this up in pfSense. I don’t have a userid and password. The modem simply connects on Windows using the Mobile Partner software provided.



  • I know from helping you over 3 threads and 2 forum that you have cu working.

    All that is left is set the right composition. (Call it mode if you want)

    Some Modems have several different comm protocols they speak. NCM, CDCE, MBIM, QMI, DIP.

    You have to set the mode that works with FreeBSD/pfSense.
    Like Andrew says, set it and do not put it back in Windows or it may get its composition changed.
    Windows does it automatically and you will not know. Ubuntu will as well.

    So the last 2 posts have all you need. auto2015 shows EXACTLY what to type and Andrews last post explains it.

    Time to focus on cu.
    AT^SETPORT=“FF;10,12”

    Get this wrong and it could brick your module. That is why I recommend (as does Andrew) you find a Generic or Universal Firmware for your device.
    Many carriers have a custom firmware that usually is not in your best interest(limited). Andrews post here gives the firmware for another similar model. You need to find one for your E3372.

    The only reason I recommend the newer firmware is the modules ‘compositions’ change with time. What Andrew recommends here may not be offered in your firmware(possibly from 2012). For example Sierra modems on Windows8/10 now get flashed to a very unfriendly mode with no AT console and MBIM only. They slip it in under the guise of Windows Updates. They do it via ‘compositions’ limiting the modes. Compositions set how the device  drivers will work. Another example, There are no Sierra QMI drivers for Windows XP so there I set the composition to DIP which works with the Sierra XP driver. So compositions control how the modem communicates with the host OS. The data protocol if you will.



  • @FranciscoFranco:

    I know from helping you over 3 threads and 2 forum that you have cu working.

    All that is left is set the right composition. (Call it mode if you want)

    Some Modems have several different comm protocols they speak. NCM, CDCE, MBIM, QMI, DIP.

    I feel ignorant enough, without someone rubbing it in :)….

    How do I tell what protocols my modem supports?

    Is there a beginners guide to all these protocols? All I want to do is get my Modem to act as an NDIS device. Do any of those protocols equate to NDIS? Excuse the dumb question but it seems that this has become too difficult for me to understand… AFAIUI using ppp, I need a Userid and password. I don’t have these and can get online without in other environments.


  • Netgate Administrator

    Ah, so he did manage to get the USB serial ports to appear? Last report in the other thread said no cuaU ports listed….

    Steve



  • @Balanga:

    How do I tell what protocols my modem supports?

    Assuming you have one of the popular Huawei LTE modems like 3272/3276/3372 the rule is very simple:

    • with 21.X firmware you have a choice of RAS (PPP) and NDIS (network card)
    • with 22.X firmware you have a NAT router (HiLink)

    All I want to do is get my Modem to act as an NDIS device. Do any of those protocols equate to NDIS?

    Here is an example with E3276:

    AT^SETPORT=?
    ^SETPORT:1: 3G MODEM
    ^SETPORT:2: 3G PCUI
    ^SETPORT:3: 3G DIAG
    ^SETPORT:5: 3G GPS
    ^SETPORT:A: BLUE TOOTH
    ^SETPORT:16: NCM
    ^SETPORT:A1: CDROM
    ^SETPORT:A2: SD
    ^SETPORT:10: 4G MODEM
    ^SETPORT:12: 4G PCUI
    ^SETPORT:13: 4G DIAG
    ^SETPORT:14: 4G GPS
    
    
    • this is what modem supports
    
    AT^SETPORT?                                                                     
    ^SETPORT:FF;10,12,16
    
    
    • this is what I have active
      This combination or composition as I referred to it earlier affects USB device PID which is presented to a host system and used by the device driver. In the example provided earlier this corresponds to “idProduct = 0x1506”.

    So ‘FF’ means I don’t need anything before the driver installed, 10 is PPP interface, 12 is a COM port used for commands (PC User Interface), 16 is a network card.
    3g driver in pfSense will pick first two.

    There is no native support for NDIS in pfSense, some people were successful using custom scripts to bring the connection up.

    using ppp, I need a Userid and password. I don’t have these and can get online without in other environments.

    In most cases you can leave those fields empty or put whatever you want in the username field.
    Some carriers may require the phonenumber to be used as username with no password.


 

© Copyright 2002 - 2018 Rubicon Communications, LLC | Privacy Policy