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

    Huawei E353 3G modem

    Scheduled Pinned Locked Moved Hardware
    39 Posts 6 Posters 46.6k 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.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      To get this working (or even to try) we will need to know the USB vendor and device IDs reported when it is connected.
      You can get this using:

      usbconfig dump_device_desc
      
      

      Then look at the usb_modeswitch forum to see if anyone else with those same IDs has successfully used it.
      E.g. http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?t=796&highlight=e353

      Some of these newer modems can be either a modem or appear as a USB ethernet device. However I have never managed to get a CDC ethernet device to work reliably with pfSense because the driver invents a new MAC address at each boot!  >:(

      Steve

      1 Reply Last reply Reply Quote 0
      • W
        wallabybob
        last edited by

        That the /dev/cuaUx.x devices apparently show up suggests to me that the u3g driver recognises the modem and the modeswitch handshake is either not needed or already happens, though no harm in verifying that the driver recognises the modem.

        More details on what is in the PPP logs would be helpful.

        1 Reply Last reply Reply Quote 0
        • stephenw10S
          stephenw10 Netgate Administrator
          last edited by

          Good point.  ::)

          1 Reply Last reply Reply Quote 0
          • E
            exetrix
            last edited by

            Thanks for the help.

            I did the usbconfig thing, here is the result:

            ugen4.2: <huawei mobile="" huawei="" technologies="">at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON

            bLength = 0x0012
              bDescriptorType = 0x0001
              bcdUSB = 0x0200
              bDeviceClass = 0x0000
              bDeviceSubClass = 0x0000
              bDeviceProtocol = 0x0000
              bMaxPacketSize0 = 0x0040
              idVendor = 0x12d1
              idProduct = 0x14ac
              bcdDevice = 0x0000
              iManufacturer = 0x0003  <huawei technologies="">iProduct = 0x0002  <huawei mobile="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001

            I searched the draisberghof forum but all the entries re E353 are for Linux, not BSD

            I recreated everything acc to instructions, for cuaU0.0, and managed to catch the relevant bit in the PPP log before all the retries scrolled it off the screen, which only gives the last 50 entries.

            Apr 26 14:44:19 ppp: [opt3_link0] ACCMAP 0x000a0000
            Apr 26 14:44:19 ppp: [opt3_link0] MRU 1500
            Apr 26 14:44:19 ppp: [opt3_link0] MAGICNUM 88cab1f2
            Apr 26 14:44:19 ppp: [opt3_link0] LCP: state change Ack-Sent –> Opened
            Apr 26 14:44:19 ppp: [opt3_link0] LCP: auth: peer wants CHAP, I want nothing
            Apr 26 14:44:19 ppp: [opt3_link0] LCP: LayerUp
            Apr 26 14:44:19 ppp: [opt3_link0] LCP: rec'd Discard Request #1 (Opened)
            Apr 26 14:44:19 ppp: [opt3_link0] CHAP: rec'd CHALLENGE #1 len: 35
            Apr 26 14:44:19 ppp: [opt3_link0] Name: "UMTS_CHAP_SRVR"
            Apr 26 14:44:19 ppp: [opt3_link0] CHAP: Using authname "user"
            Apr 26 14:44:19 ppp: [opt3_link0] CHAP: sending RESPONSE #1 len: 25
            Apr 26 14:44:19 ppp: [opt3_link0] CHAP: rec'd SUCCESS #1 len: 4
            Apr 26 14:44:19 ppp: [opt3_link0] LCP: authorization successful
            Apr 26 14:44:19 ppp: [opt3_link0] Link: Matched action 'bundle "opt3" ""'
            Apr 26 14:44:19 ppp: [opt3_link0] Link: Join bundle "opt3"
            Apr 26 14:44:19 ppp: [opt3] Bundle: Status update: up 1 link, total bandwidth 21600000 bps
            Apr 26 14:44:19 ppp: [opt3] can't config [35]:: Invalid argument
            Apr 26 14:44:19 ppp: fatal error, exiting
            Apr 26 14:44:19 ppp: [opt3] IFACE: Close event
            Apr 26 14:44:19 ppp: [opt3] IPCP: Close event
            Apr 26 14:44:19 ppp: [opt3] Bundle: Shutdown
            Apr 26 14:44:19 ppp: [opt3_link0] Link: Shutdown
            Apr 26 14:44:19 ppp: process 44883 terminated
            Apr 26 14:44:34 ppp: Multi-link PPP daemon for FreeBSD
            Apr 26 14:44:34 ppp:
            Apr 26 14:44:34 ppp: process 42443 started, version 5.5 (root@FreeBSD_8.0_pfSense_2.0-snaps.pfsense.org 16:18 9-Jun-2011)
            Apr 26 14:44:34 ppp: web: web is not running
            Apr 26 14:44:34 ppp: [opt3] Bundle: Interface ng0 created
            Apr 26 14:44:34 ppp: [opt3_link0] Link: OPEN event
            Apr 26 14:44:34 ppp: [opt3_link0] LCP: Open event
            Apr 26 14:44:34 ppp: [opt3_link0] LCP: state change Initial –> Starting
            Apr 26 14:44:34 ppp: [opt3_link0] LCP: LayerStart
            Apr 26 14:44:47 ppp: [opt3_link0] chat: The modem is not responding to "AT" at ModemCmd: label.
            Apr 26 14:44:47 ppp: [opt3_link0] MODEM: chat script failed
            Apr 26 14:44:47 ppp: [opt3_link0] Link: DOWN event
            Apr 26 14:44:47 ppp: [opt3_link0] LCP: Down event
            Apr 26 14:44:47 ppp: [opt3_link0] Link: reconnection attempt 1 in 3 seconds
            Apr 26 14:44:50 ppp: [opt3_link0] Link: reconnection attempt 1
            Apr 26 14:45:03 ppp: [opt3_link0] chat: The modem is not responding to "AT" at ModemCmd: label.
            Apr 26 14:45:03 ppp: [opt3_link0] MODEM: chat script failed
            Apr 26 14:45:03 ppp: [opt3_link0] Link: DOWN event
            Apr 26 14:45:03 ppp: [opt3_link0] LCP: Down event
            Apr 26 14:45:03 ppp: [opt3_link0] Link: reconnection attempt 2 in 1 seconds
            Apr 26 14:45:04 ppp: [opt3_link0] Link: reconnection attempt 2
            Apr 26 14:45:19 ppp: [opt3_link0] chat: The modem is not responding to "AT" at ModemCmd: label.
            Apr 26 14:45:19 ppp: [opt3_link0] MODEM: chat script failed
            Apr 26 14:45:19 ppp: [opt3_link0] Link: DOWN event
            Apr 26 14:45:19 ppp: [opt3_link0] LCP: Down event
            Apr 26 14:45:19 ppp: [opt3_link0] Link: reconnection attempt 3 in 3 seconds
            Apr 26 14:45:22 ppp: [opt3_link0] Link: reconnection attempt 3</no></huawei></huawei></huawei>

            1 Reply Last reply Reply Quote 0
            • W
              wallabybob
              last edited by

              There are a number of hints in the log file that there has been successful data exchange.

              @exetrix:

              Apr 26 14:44:19 ppp: [opt3] can't config [35]:: Invalid argument

              I don't know what the above means - perhaps something weird in the ppp configuration file around line 35?

              @exetrix:

              Apr 26 14:44:19 ppp: fatal error, exiting

              Serious weirdness in the ppp configuration file?

              I suspect the apparent premature exit of ppp has left things in an inconsistent state from which it struggles to recover (if at all).

              What version of pfSense are you using?

              Please post the output of the pfSense shell command```

              more /var/etc/mpd_opt3.conf

              1 Reply Last reply Reply Quote 0
              • E
                exetrix
                last edited by

                version is 2.0-RC3(i386)
                $ more /var/etc/mpd_opt3.conf
                startup:

                configure the console

                set console close

                configure the web server

                set web close

                default:
                pppclient:
                create bundle static opt3
                set iface name ppp0
                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 opt3_link0 modem
                set link action bundle opt3
                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.0
                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 $APN "3internet"
                set modem var $APNum "1"
                open

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  @exetrix:

                  I searched the draisberghof forum but all the entries re E353 are for Linux, not BSD

                  That's true. usb_modeswitch was first written for Linux but there is a port for FreeBSD now.
                  Besides that it's often the best source if information about poorly documented modems.

                  Anyway it's not relevant because it seems your modem is already appearing as a serial port.

                  Steve

                  Edit: This may provide some insight: (it may be refered to as one of these models)
                  @http://www.draisberghof.de/usb_modeswitch/device_reference.txt:

                  Huawei E270+  (HSPA+ modem)

                  Huawei E1762

                  Huawei E1820

                  Contributor: Paranoid Paranoia

                  DefaultVendor=  0x12d1
                  DefaultProduct= 0x1446

                  TargetVendor=   0x12d1
                  TargetProduct=  0x14ac

                  MessageContent="55534243123456780000000000000011060000000000000000000000000000"

                  1 Reply Last reply Reply Quote 0
                  • W
                    wallabybob
                    last edited by

                    @exetrix:

                    version is 2.0-RC3(i386)

                    Is there a good reason you are running Release Candidate 3 rather than the official release or even version 2.0.1?

                    I don't know that the problem will be fixed in one of the official releases but I suspect it might be difficult to get a developer interested in producing a patch for an RC that has been superseded by two official releases. I suggest you upgrade to pfSense 2.0.1.

                    I didn't notice anything wrong in the PPP configuration file, but the rather uninformative error message didn't say it was complaining about the configuration file - I was guessing that might be the problem.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      Same problem and a solution is reported here:
                      http://forum.pfsense.org/index.php?topic=28649.0
                      Problem is old version of mpd can't handle anything over 10Mbps. (edit: not an accurate description!)
                      Updating to 2.0.1 should resolve this.

                      Steve

                      1 Reply Last reply Reply Quote 0
                      • E
                        exetrix
                        last edited by

                        Upgrading to 2.0.1 seems to have fixed this.
                        Thanks.

                        1 Reply Last reply Reply Quote 0
                        • I
                          iwebs
                          last edited by

                          Hi I have recently purchased a e353 usb modem and for the life of me i cant get it to work. I have the latest version of pfSense 2.1-DEVELOPMENT (i386)
                          [built on Sun May 13 00:54:34 EDT 2012 FreeBSD 8.3-RELEASE-p1] installed and cant get pfSense to recognize the modem, using my old (e1820) i get a list of 5 ports for the modem (/dev/cuaU0.0…to../dev/cuaU0.2 & /dev/cuau0 and cuau1) but with the e353 I only get /dev/cuau0 and /dev/cuau1. I've checked the ppp logs and it looks like a similar problem to the one being experienced in the 1st post but I can't fix it. Any suggestions?  ??? thanks!

                          log of ppp:

                          May 14 01:56:17 ppp: [wan_link0] LCP: Down event
                          May 14 01:56:17 ppp: [wan_link0] Link: DOWN event
                          May 14 01:56:17 ppp: [wan_link0] MODEM: Fail to open serial port /dev/cuau0 on speed 115200
                          May 14 01:56:17 ppp: [wan_link0] can't lock device cuau0
                          May 14 01:56:17 ppp: UuLock: read: File exists
                          May 14 01:56:17 ppp: [wan_link0] Link: reconnection attempt 8

                          1 Reply Last reply Reply Quote 0
                          • W
                            wallabybob
                            last edited by

                            @iwebs:

                            but with the e353 I only get /dev/cuau0 and /dev/cuau1.

                            You should have devices /dev/cuaU0.0 /dev/cuau0.1 etc.

                            If you didn't restart the box with the USB modem connected please do so then provide the output of the pfSense shell command```

                            #  dir /dev/cua*; dmesg

                            
                            It is possible your modem is not recognised by the 3g modem driver. The requested output should settle the issue.
                            1 Reply Last reply Reply Quote 0
                            • I
                              iwebs
                              last edited by

                              Again when I plug in the e353 and reboot the pfSense box it only shows /dev/cuau0 and /dev/cuau1. the output of the command is below. All help is greatly appreciated thanks again!

                              $ dir /dev/cua*; dmesg
                              Copyright © 1992-2012 The FreeBSD Project.
                              Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
                              The Regents of the University of California. All rights reserved.
                              FreeBSD is a registered trademark of The FreeBSD Foundation.
                              FreeBSD 8.3-RELEASE-p1 #1: Sun May 13 02:11:06 EDT 2012
                                  root@FreeBSD_8.3_pfSense_2.1.snaps.pfsense.org:/usr/obj./usr/pfSensesrc/src/sys/pfSense_SMP.8 i386
                              Timecounter "i8254" frequency 1193182 Hz quality 0
                              CPU: Intel Pentium III (797.42-MHz 686-class CPU)
                                Origin = "GenuineIntel"  Id = 0x686  Family = 6  Model = 8  Stepping = 6
                                Features=0x387f9ff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,sep,mtrr,pge,mca,cmov,pat,pse36,pn,mmx,fxsr,sse>real memory  = 402653184 (384 MB)
                              avail memory = 370208768 (353 MB)
                              wlan: mac acl policy registered
                              ipw_bss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                              ipw_bss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                              module_register_init: MOD_LOAD (ipw_bss_fw, 0xc07a9370, 0) error 1
                              ipw_ibss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                              ipw_ibss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                              module_register_init: MOD_LOAD (ipw_ibss_fw, 0xc07a9410, 0) error 1
                              ipw_monitor: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
                              ipw_monitor: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
                              module_register_init: MOD_LOAD (ipw_monitor_fw, 0xc07a94b0, 0) error 1
                              kbd1 at kbdmux0
                              cryptosoft0: <software crypto="">on motherboard
                              padlock0: No ACE support.
                              acpi0: <ptltd  rsdt="">on motherboard
                              acpi0: [ITHREAD]
                              acpi0: Power Button (fixed)
                              Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
                              acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
                              cpu0: <acpi cpu="">on acpi0
                              pcib0: <acpi host-pci="" bridge="">port 0xcf8-0xcff on acpi0
                              pci0: <acpi pci="" bus="">on pcib0
                              pcib1: <acpi pci-pci="" bridge="">at device 30.0 on pci0
                              pci1: <acpi pci="" bus="">on pcib1
                              vgapci0: <vga-compatible display="">port 0x2400-0x24ff mem 0xed000000-0xedffffff,0xec101000-0xec101fff at device 1.0 on pci1
                              rl0: <realtek 10="" 8139="" 100basetx="">port 0x2800-0x28ff mem 0xec100400-0xec1004ff at device 2.0 on pci1
                              miibus0: <mii bus="">on rl0
                              rlphy0: <realtek internal="" media="" interface="">PHY 0 on miibus0
                              rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
                              rl0: [ITHREAD]
                              xl0: <3Com 3c905C-TX Fast Etherlink XL> port 0x2000-0x207f mem 0xec100000-0xec10007f irq 11 at device 4.0 on pci1
                              miibus1: <mii bus="">on xl0
                              xlphy0: <3c905C 10/100 internal PHY> PHY 24 on miibus1
                              xlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto, auto-flow
                              xl0: [ITHREAD]
                              isab0: <pci-isa bridge="">at device 31.0 on pci0
                              isa0: <isa bus="">on isab0
                              atapci0: <intel ich="" udma66="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1800-0x180f at device 31.1 on pci0
                              ata0: <ata channel="">at channel 0 on atapci0
                              ata0: [ITHREAD]
                              ata1: <ata channel="">at channel 1 on atapci0
                              ata1: [ITHREAD]
                              uhci0: <intel 82801aa="" (ich)="" usb="" controller="">port 0x1820-0x183f at device 31.2 on pci0
                              uhci0: [ITHREAD]
                              uhci0: LegSup = 0x2f00
                              usbus0: <intel 82801aa="" (ich)="" usb="" controller="">on uhci0
                              pci0: <serial bus,="" smbus="">at device 31.3 (no driver attached)
                              pci0: <multimedia, audio="">at device 31.5 (no driver attached)
                              acpi_button0: <power button="">on acpi0
                              atrtc0: <at realtime="" clock="">port 0x70-0x71 irq 8 on acpi0
                              atkbdc0: <keyboard controller="" (i8042)="">port 0x60,0x64 irq 1 on acpi0
                              atkbd0: <at keyboard="">irq 1 on atkbdc0
                              kbd0 at atkbd0
                              atkbd0: [GIANT-LOCKED]
                              atkbd0: [ITHREAD]
                              uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
                              uart0: [FILTER]
                              uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
                              uart1: [FILTER]
                              ppc0: <parallel port="">port 0x378-0x37f irq 7 on acpi0
                              ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode
                              ppc0: [ITHREAD]
                              ppbus0: <parallel port="" bus="">on ppc0
                              plip0: <plip network="" interface="">on ppbus0
                              plip0: [ITHREAD]
                              lpt0: <printer>on ppbus0
                              lpt0: [ITHREAD]
                              lpt0: Interrupt-driven port
                              ppi0: <parallel i="" o="">on ppbus0
                              pmtimer0 on isa0
                              orm0: <isa option="" roms="">at iomem 0xc0000-0xc7fff,0xc8000-0xc8fff,0xe4000-0xeffff pnpid ORM0000 on isa0
                              sc0: <system console="">at flags 0x100 on isa0
                              sc0: VGA <16 virtual consoles, flags=0x300>
                              vga0: <generic isa="" vga="">at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
                              Timecounter "TSC" frequency 797416343 Hz quality 800
                              Timecounters tick every 1.000 msec
                              IPsec: Initialized Security Association Processing.
                              usbus0: 12Mbps Full Speed USB v1.0
                              ad0: 152627MB <samsung sp1604n="" tm100-24="">at ata0-master UDMA66
                              ugen0.1: <intel>at usbus0
                              uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus0
                              Root mount waiting for: usbus0
                              uhub0: 2 ports with 2 removable, self powered
                              Root mount waiting for: usbus0
                              Root mount waiting for: usbus0
                              ugen0.2: <huawei>at usbus0
                              umass0: <huawei 0="" 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus0
                              umass0:  SCSI over Bulk-Only; quirks = 0x0100
                              umass0:0:0👎 Attached to scbus0
                              Trying to mount root from ufs:/dev/ad0s1a
                              (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
                              (probe0:umass-sim0:0:0:0): CAM status: SCSI Status Error
                              (probe0:umass-sim0:0:0:0): SCSI status: Check Condition
                              (probe0:umass-sim0:0:0:0): SCSI sense: NOT READY asc:3a,0 (Medium not present)
                              cd0 at umass-sim0 bus 0 scbus0 target 0 lun 0
                              cd0: <huawei mass="" storage="" 2.31="">Removable CD-ROM SCSI-2 device
                              cd0: 1.000MB/s transfers
                              cd0: Attempt to query device size failed: NOT READY, Medium not present
                              pflog0: promiscuous mode enabled
                              rl0: link state changed to UP</huawei></huawei></huawei></intel></intel></samsung></generic></system></isa></parallel></printer></plip></parallel></parallel></at></keyboard></at></power></multimedia,></serial></intel></intel></ata></ata></intel></isa></pci-isa></mii></realtek></mii></realtek></vga-compatible></acpi></acpi></acpi></acpi></acpi></ptltd ></software></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,sep,mtrr,pge,mca,cmov,pat,pse36,pn,mmx,fxsr,sse>

                              1 Reply Last reply Reply Quote 0
                              • W
                                wallabybob
                                last edited by

                                @iwebs:

                                Sorry,

                                $ dir /dev/cua*; dmesg

                                should have been

                                $ ls /dev/cua*; dmesg

                                but no matter for present purposes since there is no sign the u3g driver recognised your particular device.

                                Elsewhere in these forums it has been reported that it helps to initialise the modem on a Windows system, installing the driver software on the modem, connecting to the network, registering etc then disconnecting in the Windows software, removing the modem and taking it to the non Windows system. (It is possible the ISP tech support won't be interested in any problem report about the modem unless you can demonstrate it on a Windows system so it is possibly a good thing to do this to verify you have a working modem.) Apparently this step changes some state in the modem so that it reports itself not just as a CD device (as yours did):

                                $ dir /dev/cua*; dmesg
                                ugen0.2: <huawei>at usbus0
                                umass0: <huawei 0="" 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus0
                                umass0:  SCSI over Bulk-Only; quirks = 0x0100
                                umass0:0:0👎 Attached to scbus0
                                Trying to mount root from ufs:/dev/ad0s1a
                                (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
                                (probe0:umass-sim0:0:0:0): CAM status: SCSI Status Error
                                (probe0:umass-sim0:0:0:0): SCSI status: Check Condition
                                (probe0:umass-sim0:0:0:0): SCSI sense: NOT READY asc:3a,0 (Medium not present)
                                cd0 at umass-sim0 bus 0 scbus0 target 0 lun 0
                                cd0: <huawei mass="" storage="" 2.31="">Removable CD-ROM SCSI-2 device
                                cd0: 1.000MB/s transfers
                                cd0: Attempt to query device size failed: NOT READY, Medium not present</huawei></huawei></huawei>

                                but as CD plus serial devices.

                                There is a utility usb_modeswitch which apparently should get invoked on recognition of a 3G modem. I'm not sure of its action in relation to the Windows initialisation I described earlier.

                                The following pfSense shell commands might provide some additional useful information (no need to reboot before issuing them):```

                                $ usbconfig
                                $ usbconfig -d ugen0.2 dump_device_desc show_ifdrv

                                Note the "ugen0.2" in the second command comes from the ugen device reporting Huawei in the first command. Here's the equivalent on my system which has a Huawei E153 modem plugged in and reporting cuaU0.x devices:
                                
                                > $ usbconfig
                                > ugen0.1: <uhci root="" hub="" via="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                > ugen1.1: <uhci root="" hub="" via="">at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                > ugen2.1: <uhci root="" hub="" via="">at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                > ugen3.1: <ehci root="" hub="" via="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                                > ugen3.2: <802.11 n WLAN Ralink> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                > ugen3.3: <huawei mobile="" huawei="" technology="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                > $ usbconfig -d ugen3.3 dump_device_desc show_ifdrv
                                > ugen3.3: <huawei mobile="" huawei="" technology="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                > ugen3.3.0: u3g0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">ugen3.3.4: umass0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">ugen3.3.5: umass1: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">bLength = 0x0012
                                >   bDescriptorType = 0x0001
                                >   bcdUSB = 0x0200
                                >   bDeviceClass = 0x0000
                                >   bDeviceSubClass = 0x0000
                                >   bDeviceProtocol = 0x0000
                                >   bMaxPacketSize0 = 0x0040
                                >   idVendor = 0x12d1
                                >   idProduct = 0x14ac
                                >   bcdDevice = 0x0000
                                >   iManufacturer = 0x0003  <huawei technology="">iProduct = 0x0002  <huawei mobile="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001
                                > 
                                > $</no></huawei></huawei></huawei></huawei></huawei></huawei></huawei></ehci></uhci></uhci></uhci>
                                1 Reply Last reply Reply Quote 0
                                • I
                                  iwebs
                                  last edited by

                                  @wallabybob:

                                  @iwebs:

                                  Sorry,

                                  $ dir /dev/cua*; dmesg

                                  should have been

                                  $ ls /dev/cua*; dmesg

                                  but no matter for present purposes since there is no sign the u3g driver recognised your particular device.

                                  Elsewhere in these forums it has been reported that it helps to initialise the modem on a Windows system, installing the driver software on the modem, connecting to the network, registering etc then disconnecting in the Windows software, removing the modem and taking it to the non Windows system. (It is possible the ISP tech support won't be interested in any problem report about the modem unless you can demonstrate it on a Windows system so it is possibly a good thing to do this to verify you have a working modem.) Apparently this step changes some state in the modem so that it reports itself not just as a CD device (as yours did):

                                  $ dir /dev/cua*; dmesg
                                  ugen0.2: <huawei>at usbus0
                                  umass0: <huawei 0="" 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">on usbus0
                                  umass0:  SCSI over Bulk-Only; quirks = 0x0100
                                  umass0:0:0👎 Attached to scbus0
                                  Trying to mount root from ufs:/dev/ad0s1a
                                  (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
                                  (probe0:umass-sim0:0:0:0): CAM status: SCSI Status Error
                                  (probe0:umass-sim0:0:0:0): SCSI status: Check Condition
                                  (probe0:umass-sim0:0:0:0): SCSI sense: NOT READY asc:3a,0 (Medium not present)
                                  cd0 at umass-sim0 bus 0 scbus0 target 0 lun 0
                                  cd0: <huawei mass="" storage="" 2.31="">Removable CD-ROM SCSI-2 device
                                  cd0: 1.000MB/s transfers
                                  cd0: Attempt to query device size failed: NOT READY, Medium not present</huawei></huawei></huawei>

                                  but as CD plus serial devices.

                                  There is a utility usb_modeswitch which apparently should get invoked on recognition of a 3G modem. I'm not sure of its action in relation to the Windows initialisation I described earlier.

                                  The following pfSense shell commands might provide some additional useful information (no need to reboot before issuing them):```

                                  $ usbconfig
                                  $ usbconfig -d ugen0.2 dump_device_desc show_ifdrv

                                  Note the "ugen0.2" in the second command comes from the ugen device reporting Huawei in the first command. Here's the equivalent on my system which has a Huawei E153 modem plugged in and reporting cuaU0.x devices:
                                  
                                  > $ usbconfig
                                  > ugen0.1: <uhci root="" hub="" via="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                  > ugen1.1: <uhci root="" hub="" via="">at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                  > ugen2.1: <uhci root="" hub="" via="">at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                  > ugen3.1: <ehci root="" hub="" via="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                                  > ugen3.2: <802.11 n WLAN Ralink> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                  > ugen3.3: <huawei mobile="" huawei="" technology="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                  > $ usbconfig -d ugen3.3 dump_device_desc show_ifdrv
                                  > ugen3.3: <huawei mobile="" huawei="" technology="">at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                                  > ugen3.3.0: u3g0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">ugen3.3.4: umass0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">ugen3.3.5: umass1: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">bLength = 0x0012
                                  >   bDescriptorType = 0x0001
                                  >   bcdUSB = 0x0200
                                  >   bDeviceClass = 0x0000
                                  >   bDeviceSubClass = 0x0000
                                  >   bDeviceProtocol = 0x0000
                                  >   bMaxPacketSize0 = 0x0040
                                  >   idVendor = 0x12d1
                                  >   idProduct = 0x14ac
                                  >   bcdDevice = 0x0000
                                  >   iManufacturer = 0x0003  <huawei technology="">iProduct = 0x0002  <huawei mobile="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001
                                  > 
                                  > $</no></huawei></huawei></huawei></huawei></huawei></huawei></huawei></ehci></uhci></uhci></uhci>
                                  

                                  Hi Thanks again. I have initialized the modem on a windows 7 machine and installed all the software drivers etc. and it works fine, connects etc. As this is a new type of modem I have a feeling that its not yet supported under BSD yet. Anyway here's the output from the last command:

                                  $ usbconfig -d ugen0.2 dump_device_desc show_ifdrv
                                  ugen0.2: <huawei hilink="" huawei="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
                                  ugen0.2.0: umass0: <huawei 0="" 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr="">bLength = 0x0012
                                    bDescriptorType = 0x0001
                                    bcdUSB = 0x0200
                                    bDeviceClass = 0x0000
                                    bDeviceSubClass = 0x0000
                                    bDeviceProtocol = 0x0000
                                    bMaxPacketSize0 = 0x0040
                                    idVendor = 0x12d1
                                    idProduct = 0x1f01
                                    bcdDevice = 0x0102
                                    iManufacturer = 0x0002  <huawei>iProduct = 0x0001  <huawei hilink="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001</no></huawei></huawei></huawei></huawei>

                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    wallabybob
                                    last edited by

                                    Confirmed: the u3g driver doesn't recognise it.

                                    A search on the web turned up this thread http://www.dd-wrt.com/phpBB2/viewtopic.php?p=615196 which suggests to me the incantations necessary to get this modem to work have only "recently" been discovered, probably too recently to be included in FreeBSD 8.3.

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      iwebs
                                      last edited by

                                      I had a feeling that was the case  :(. Thanks anyway for all of your help with trying to sort this out. I guess Ill have to wait until pfSense becomes compatible with it, hopefully it will be sooner rather than later. All the best, iwebs!

                                      1 Reply Last reply Reply Quote 0
                                      • stephenw10S
                                        stephenw10 Netgate Administrator
                                        last edited by

                                        Just FYI, serial devices named with an upper-case U (e.g. cuaU0.1) are connected via USB hence you need to see these on your modem.
                                        You can almost certainly modeswitch this with the FreeBSD port of usb_modeswitch. Unfortunately it doesn't tie into the dev subsystem, like u3g does, so it's more of a manual process.

                                        Steve

                                        1 Reply Last reply Reply Quote 0
                                        • stephenw10S
                                          stephenw10 Netgate Administrator
                                          last edited by

                                          Also looking at the usb_modeswitch device list:

                                          
                                          # Huawei E353 (3.se)
                                          #
                                          # Contributor: Ulf Eklund
                                          
                                          DefaultVendor= 0x12d1
                                          DefaultProduct=0x1f01
                                          
                                          TargetVendor=  0x12d1
                                          TargetProduct= 0x14db
                                          
                                          MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
                                          
                                          # Driver is cdc_ether
                                          NoDriverLoading=1
                                          
                                          

                                          It appears as though this modem is of the newer '4g' style that appears as a usb ethernet device rather than a serial connected modem. Though they usually have serial port as well for diagnostics.

                                          Steve

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            iwebs
                                            last edited by

                                            @stephenw10:

                                            Also looking at the usb_modeswitch device list:

                                            
                                            # Huawei E353 (3.se)
                                            #
                                            # Contributor: Ulf Eklund
                                            
                                            DefaultVendor= 0x12d1
                                            DefaultProduct=0x1f01
                                            
                                            TargetVendor=  0x12d1
                                            TargetProduct= 0x14db
                                            
                                            MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
                                            
                                            # Driver is cdc_ether
                                            NoDriverLoading=1
                                            
                                            

                                            It appears as though this modem is of the newer '4g' style that appears as a usb ethernet device rather than a serial connected modem. Though they usually have serial port as well for diagnostics.

                                            Steve

                                            Yes it shows up under windows as a Remote NDIS based Internet Sharing Device and you go to 192.168.1.1 in the browser to configure the device so it seems its running a web server of some sort…

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