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.
    • 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
                                        • I
                                          iwebs
                                          last edited by

                                          Well I just tried what you recommended and I couldn't get it to work, I tried assigning it as /dev/cua0 and cua1. but no luck then I went into interfaces and assign and I got a new device ue0 (58:2c:80:13:xx:xx) device, I tried assigning that but I couldn't get a connection to the net through it, id say pfSense can see it and knows what it is but can't communicate correctly with it?

                                          As for USB1.1 or 2.0; its an old box so I'd say it only has 1.1 but I don't see how that would matter, surely it should work but only at 12Mbps max? I mean would it cause problems?

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

                                            Yes it should work fine at 12Mbps it's just that I imagine it is capable of more. 21Mbps in the UK.

                                            What sort of interface did you assign it as?

                                            What you see from ifconfig?

                                            Steve

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