Vodafone K3565 Rev 2 discovered via multiple serial ports



  • Hello pfSense guru's!

    I finally decided to post my question here after googling for many sites, reading other posts on this forum and losing some hairs… I'm still looking for a solution to my problem.

    My setup is: Soekris 6501 with a DSL line and a Vodafone K3565 Rev 2 connected to the USB port.
    Goal: setup a failover via 3G when my ADSL line has troubles.

    First of all, the setup is working. The USB stick is detected, PPP is up, gets an IP and I can ping a gateway through the link. The power of the signal is not at the maximum due to the location of the firewall, anyway...

    My problem is the following:

    At random intervals (going from a few hours to multiple days), the Vodafone stick seems to loose the connectivity (or restart) and his detected again and is assigned to another serial port.

    When the firewall boots, I'm using /dev/cuaU0.0 then the stick is available via /dev/cuaU1.0. Then if I disconnect / reconnect it, it comes back to the original /dev/cuaU0.0.

    This means that I need to switch manually the interface in the 3G interface and re-enable the interface to connect again. Boring!

    Any idea to solve this?

    KR,
    /x


  • Netgate Administrator

    Hmmm, curious.
    Does the original port remain?

    Do the logs show the complete device being re-detected? Perhaps it's some power saving mode that can be disabled.

    Steve



  • No, the original port is not available in the drop list. It's always switching between /dev/cuaU0.x and /dev/cuaU1.x.
    The idea of power-saving mode is interesting, I'll investigate this way but the 3G is always active with traffic (gateway monitoring).

    /x


  • Netgate Administrator

    IT looks to be appearing as a completely new device rather than a new port on the same device. That implies it's being redetected.

    Do the system logs show that happening?

    Steve



  • The problem occurs at random times… Now the 3G connection is up for 17h! I'm keeping an eye on logs...

    Status                  up
    PPP                    up
    Uptime                  17:10:43
    Cell Signal (RSSI)      rssi:13 level:-87dBm percent:42%
    Cell Mode              WCDMA, WCDMA Mode
    Cell SIM State          Invalid SIM/locked State
    Cell Service            Valid Service
    Cell Upstream          375
    Cell Downstream        3563
    Cell Current Up        1
    Cell Current Down      1
    MAC Address            00:00:00:00:00:00
    IPv4 Address            <redacted>Subnet mask IPv4        255.255.255.255
    Gateway IPv4            <redacted>IPv6 Link Local        <redacted>MTU                    1492
    In/out packets          630493/722426 (19.23 MiB/21.34 MiB)
    In/out packets (pass)  630493/722426 (19.23 MiB/21.34 MiB)
    In/out packets (block)  1/1 (75 B/81 B)
    In/out errors          0/0
    Collisions              0</redacted></redacted></redacted>



  • Ok, the problem occurred again!
    It seems that the 3G stick is rebooting (crashed?)
    From dmesg:

    ugen3.3: <huawei technology="">at usbus3 (disconnected)
    u3g0: at uhub8, port 4, addr 3 (disconnected)
    umass0: at uhub8, port 4, addr 3 (disconnected)
    cd0 at umass-sim0 bus 0 scbus4 target 0 lun 0
    cd0: <huawei mass="" storage="" 2.31="">detached
    (da0:umass-sim1:1:0:0): got CAM status 0x44
    (da0:umass-sim1:1:0:0): fatal error, failed to attach to device
    da0 at umass-sim1 bus 1 scbus5 target 0 lun 0
    da0: <huawei mmc="" storage="" 2.31="">detached
    (cd0:umass-sim0:0:(da0:0:umass-sim1:1:0): 0:Periph destroyed
    0): umass1: at uhub8, port 4, addr 3 (disconnected)
    Periph destroyed
    ugen3.3: <huawei technology="">at usbus3
    u3g0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">on usbus3
    u3g0: Found 3 ports.
    umass0: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">on usbus3
    umass1: <huawei 0="" 3="" technology="" huawei="" mobile,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">on usbus3
    cd0 at umass-sim0 bus 0 scbus4 target 0 lun 0
    cd0: <huawei mass="" storage="" 2.31="">Removable CD-ROM SCSI-2 device
    cd0: 40.000MB/s transfers
    cd0: Attempt to query device size failed: NOT READY, Medium not present
    cd0: quirks=0x10<10_BYTE_ONLY>
    da0 at umass-sim1 bus 1 scbus5 target 0 lun 0
    da0: <huawei mmc="" storage="" 2.31="">Removable Direct Access SCSI-2 device
    da0: 40.000MB/s transfers
    da0: Attempt to query device size failed: NOT READY, Medium not present
    da0: quirks=0x2 <no_6_byte>Is there a way to force the OS to assign always the same /dev entry to the device?</no_6_byte></huawei></huawei></huawei></huawei></huawei></huawei></huawei></huawei></huawei>



  • I changed the USB stick (just to test another one, who know?).
    It's a Huawei E3531. I installed usb_modeswitch and have the classic 3 ports… (good). But it rejects the default init string...
    Anybody knows if this stick is compatible with pfSense? Is there a specific init string to use?



  • Finally, I managed to get it working via HiLink… The USB stick is detected as an Ethernet device.
    I updated my /etc/devd.conf to execute usb_modeswitch when the USB stick is inserted but it's not working. Any tip?

    /x


  • Netgate Administrator

    Does your code run and fail or appear not to run at all?

    Perhaps appears as a different device ID initially and isn't triggering the setting.

    Steve



  • It does not execute my script at all (I've added some debug output to a temp log file).
    But, the good news is that the new 3G stick is stable! Online for 4 days now!


  • Netgate Administrator

    I found I have one of these devices. I'll plug it in for a few days and see what is logged. I don't have a SIM in it, not sure I have a valid one, which might make a difference. Though yours appeared to disconnect entirely.

    [2.3.3-DEVELOPMENT][root@alix.stevew.lan]/root: usbconfig -d ugen1.2 dump_device_desc 
    ugen1.2: <huawei mobile="" huawei="" technology="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
    
      bLength = 0x0012 
      bDescriptorType = 0x0001 
      bcdUSB = 0x0200 
      bDeviceClass = 0x0000  <probed by="" interface="" class="">bDeviceSubClass = 0x0000 
      bDeviceProtocol = 0x0000 
      bMaxPacketSize0 = 0x0040 
      idVendor = 0x12d1 
      idProduct = 0x1001 
      bcdDevice = 0x0000 
      iManufacturer = 0x0002  <huawei technology="">iProduct = 0x0001  <huawei mobile="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001</no></huawei></huawei></probed></huawei> 
    

    Steve


Log in to reply