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.
    • 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
                              • stephenw10S
                                stephenw10 Netgate Administrator
                                last edited by

                                Well give it a try.
                                Assuming you are running the full install of pfSense first install usb_modeswitch:

                                pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/usb_modeswitch.tbz
                                

                                Then  issue a rehash to make sure pfSense knows where the package is:

                                rehash
                                

                                Then try to modeswitch your device:

                                usb_modeswitch -v 12d1 -p 1f01 -V 012d1 -P 014db -M "55534243123456780000000000000a11062000000000000100000000000000" -W
                                

                                Or some variation on that!

                                Steve

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

                                  Hi again. I ran those commands and got the following:

                                  $ pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/usb_modeswitch.tbz
                                  tar: Failed to set default locale
                                  pkg_add: package 'usb_modeswitch-1.2.1' or its older version already installed

                                  and then

                                  $ usb_modeswitch -v 12d1 -p 1f01 -V 012d1 -P 014db -M "55534243123456780000000000000a11062000000000000100000000000000" -W
                                  Taking all parameters from the command line

                                  • usb_modeswitch: handle USB devices with multiple modes
                                  • Version 1.2.1 (C) Josua Dietze 2011
                                  • Based on libusb0 (0.1.12 and above)

                                  ! PLEASE REPORT NEW CONFIGURATIONS !

                                  DefaultVendor=  0x12d1
                                  DefaultProduct= 0x1f01
                                  TargetVendor=  0x12d1
                                  TargetProduct=  0x14db
                                  TargetClass=    not set
                                  TargetProductList=""

                                  DetachStorageOnly=0
                                  HuaweiMode=0
                                  SierraMode=0
                                  SonyMode=0
                                  QisdaMode=0
                                  GCTMode=0
                                  KobilMode=0
                                  SequansMode=0
                                  MobileActionMode=0
                                  CiscoMode=0
                                  MessageEndpoint=  not set
                                  MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
                                  NeedResponse=0
                                  ResponseEndpoint= not set

                                  InquireDevice enabled (default)
                                  Success check disabled
                                  System integration mode disabled

                                  Looking for target devices …
                                    searching devices, found USB ID 12d1:1f01
                                    found matching vendor ID
                                    searching devices, found USB ID 0000:0000
                                  No devices in target mode or class found
                                  Looking for default devices ...
                                    searching devices, found USB ID 12d1:1f01
                                    found matching vendor ID
                                    found matching product ID
                                    adding device
                                    searching devices, found USB ID 0000:0000
                                  Found device in default mode, class or configuration (1)
                                  Accessing device 002 on bus 000 ...
                                  Getting the current device configuration ...
                                  OK, got current device configuration (1)
                                  Using first interface: 0x00
                                  Using endpoints 0x0f (out) and 0x8f (in)
                                  Inquiring device details; driver will be detached ...
                                  Cant't do driver detection and detaching on this platform.

                                  SCSI inquiry data (for identification)

                                  Vendor String: HUAWEI 
                                    Model String: Mass Storage   
                                  Revision String: 2.31

                                  USB description data (for identification)

                                  Manufacturer: HUAWEI
                                      Product: HUAWEI HiLink
                                    Serial No.: not provided

                                  Setting up communication with interface 0
                                  Using endpoint 0x0f for message sending ...
                                  Trying to send message 1 to endpoint 0x0f ...
                                  OK, message successfully sent
                                  Resetting response endpoint 0x8f
                                  Resetting message endpoint 0x0f
                                  -> Run lsusb to note any changes. Bye.

                                  so any ideas on what that means?

                                  The modem is still not recognized by pfSense.

                                  once again all help is really appreciated! Thanks all.  ;D

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

                                    I get the impression that when these sort of devices are tickled in a specific way they can change their appearance on the USB. usb_modeswitch is apparently expecting that:
                                    @iwebs:

                                    Resetting response endpoint 0x8f
                                    Resetting message endpoint 0x0f
                                    -> Run lsusb to note any changes. Bye.

                                    There is no lsusb utility in FreeBSD. usbconfig is the nearest equivalent. I suggest you remove the modem then insert it and run the three shell commands```

                                    $ usbconfig show_ifdrv
                                    $ usb_modeswitch -v 12d1 -p 1f01 -V 012d1 -P 014db -M "55534243123456780000000000000a11062000000000000100000000000000" -W
                                    $ usbconfig show_ifdrv

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

                                      @wallabybob:

                                      I get the impression that when these sort of devices are tickled in a specific way they can change their appearance on the USB. usb_modeswitch is apparently expecting that:
                                      @iwebs:

                                      Resetting response endpoint 0x8f
                                      Resetting message endpoint 0x0f
                                      -> Run lsusb to note any changes. Bye.

                                      There is no lsusb utility in FreeBSD. usbconfig is the nearest equivalent. I suggest you remove the modem then insert it and run the three shell commands```

                                      $ usbconfig show_ifdrv
                                      $ usb_modeswitch -v 12d1 -p 1f01 -V 012d1 -P 014db -M "55534243123456780000000000000a11062000000000000100000000000000" -W
                                      $ usbconfig show_ifdrv

                                      The output of the above commands are below but they don't seem to show me anything i can decipher, maybe someone else can:

                                      $ usbconfig show_ifdrv
                                      ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                      ugen0.1.0: uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">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="">$ usb_modeswitch -v 12d1 -p 1f01 -V 012d1 -P 014db -M "55534243123456780000000000000a11062000000000000100000000000000" -W
                                      Taking all parameters from the command line

                                      • usb_modeswitch: handle USB devices with multiple modes
                                      • Version 1.2.1 (C) Josua Dietze 2011
                                      • Based on libusb0 (0.1.12 and above)

                                      ! PLEASE REPORT NEW CONFIGURATIONS !

                                      DefaultVendor=  0x12d1
                                      DefaultProduct= 0x1f01
                                      TargetVendor=  0x12d1
                                      TargetProduct=  0x14db
                                      TargetClass=    not set
                                      TargetProductList=""

                                      DetachStorageOnly=0
                                      HuaweiMode=0
                                      SierraMode=0
                                      SonyMode=0
                                      QisdaMode=0
                                      GCTMode=0
                                      KobilMode=0
                                      SequansMode=0
                                      MobileActionMode=0
                                      CiscoMode=0
                                      MessageEndpoint=  not set
                                      MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
                                      NeedResponse=0
                                      ResponseEndpoint= not set

                                      InquireDevice enabled (default)
                                      Success check disabled
                                      System integration mode disabled

                                      Looking for target devices …
                                        searching devices, found USB ID 12d1:1f01
                                        found matching vendor ID
                                        searching devices, found USB ID 0000:0000
                                      No devices in target mode or class found
                                      Looking for default devices ...
                                        searching devices, found USB ID 12d1:1f01
                                        found matching vendor ID
                                        found matching product ID
                                        adding device
                                        searching devices, found USB ID 0000:0000
                                      Found device in default mode, class or configuration (1)
                                      Accessing device 002 on bus 000 ...
                                      Getting the current device configuration ...
                                      OK, got current device configuration (1)
                                      Using first interface: 0x00
                                      Using endpoints 0x0f (out) and 0x8f (in)
                                      Inquiring device details; driver will be detached ...
                                      Cant't do driver detection and detaching on this platform.

                                      SCSI inquiry data (for identification)

                                      Vendor String: HUAWEI 
                                        Model String: Mass Storage   
                                      Revision String: 2.31

                                      USB description data (for identification)

                                      Manufacturer: HUAWEI
                                          Product: HUAWEI HiLink
                                        Serial No.: not provided

                                      Setting up communication with interface 0
                                      Using endpoint 0x0f for message sending ...
                                      Trying to send message 1 to endpoint 0x0f ...
                                      OK, message successfully sent
                                      Resetting response endpoint 0x8f
                                      Resetting message endpoint 0x0f
                                      -> Run lsusb to note any changes. Bye.

                                      $ usbconfig show_ifdrv
                                      ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                      ugen0.1.0: uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">ugen0.2: <huawei hilink="" huawei="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
                                      ugen0.2.0: cdce0:<huawei 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr=""></huawei></huawei></intel></uhci></huawei></huawei></intel></uhci>

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

                                        It appears to have correctly mode switched from a mass storage device into a usb ethernet device.
                                        This is not like other 'traditional' usb modems, it has no serial ports.
                                        I have never used one but I would guess that you add it as an interface and try talking down it.  ;)
                                        Perhaps set it as dhcp and see if it receives an IP address. More research needed.
                                        Steve

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

                                          @stephenw10:

                                          It appears to have correctly mode switched from a mass storage device into a usb ethernet device.

                                          To elaborate: before usb_modeswitch:
                                          @iwebs:

                                          $ usbconfig show_ifdrv
                                          ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                          ugen0.1.0: uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">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=""></huawei></huawei></intel></uhci>

                                          and after:
                                          @iwebs:

                                          $ usbconfig show_ifdrv
                                          ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                                          ugen0.1.0: uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">ugen0.2: <huawei hilink="" huawei="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
                                          ugen0.2.0: cdce0: <huawei 2="" huawei="" hilink,="" class="" 0,="" rev="" 2.00="" 1.02,="" addr=""></huawei></huawei></intel></uhci>

                                          New device cdce0 is a USB ethernet device (see FreeBSD man page at http://www.freebsd.org/cgi/man.cgi?query=cdce&apropos=0&sektion=0&manpath=FreeBSD+9.0-RELEASE&arch=default&format=html) and it should appear in the output of shell command ifconfig and as an available "network port" in pfSense after it has been added (click on "+" on Interfaces -> (assign) page).

                                          I wonder if the usbconfig output means the link speed won't exceed 12Mbps (spd=FULL). On my system with a Huawei E153 3G modem the matching bus speed is reported as 480Mbps:

                                          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=""></huawei></huawei></huawei></huawei>

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

                                            @wallabybob:

                                            I wonder if the usbconfig output means the link speed won't exceed 12Mbps (spd=FULL). On my system with a Huawei E153 3G modem the matching bus speed is reported as 480Mbps

                                            I was just thinking that myself. Perhaps it's plugged into a usb1.1 port. In fact reading back this is a Pentium 3 system, does it have USB2?

                                            Steve

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