And here are some relevant parts from dmesg:
#dmesg
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ar71xx-ehci ar71xx-ehci.0: Atheros AR91xx built-in EHCI controller
ar71xx-ehci ar71xx-ehci.0: new USB bus registered, assigned bus number 1
ehci_reset Intialize USB CONTROLLER in host mode: 3
ehci_reset Port Status 1c000000
ar71xx-ehci ar71xx-ehci.0: irq 3, io mem 0x1b000000
ar71xx-ehci ar71xx-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usb 1-1: new high-speed USB device number 2 using ar71xx-ehci
eth1: link down
device eth1 entered promiscuous mode
...
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
br0: port 2(ath0) entered forwarding state
usb 1-1: usbfs: process 1003 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 1236 (usb_modeswitch) did not claim interface 0 before use
device eth1 left promiscuous mode
br0: port 1(eth1) entered disabled state
device ath0 left promiscuous mode
br0: port 2(ath0) entered disabled state
eth1: link down
device eth1 entered promiscuous mode
eth1: link up (1000Mbps/Full duplex)[/url]
That is a problem in the last 2 builds, a kernel driver error which I believe Brainslayer has fixed now. _________________ Kernel panic: Aiee, killing interrupt handler!
I am not running a rev 19277 build, v24-sp2 (05/20/12) stdkong, on a Netgear WNR-3500L unit. I know it is not an Atheros, but I do not think this issue is processor dependent. I am also trying to use a Huawei e353 USB modem, locked to 3.se (Sweden).
Specifics: Huawei E353Ws-2, with Vendor=0x12d1, ProdID=1f01 (0x12d1:0x014db in modem mode).
OK, the E353 beast is seems to be a versatile device, sold in a number of versions.
Some are up and running with DD-WRT [2], but the 12d1:1f01 version do not work.
I think I found the reason in pfSense forum [3], and it is that the software is quite different than the 12d1:1446 (12d1:1506) E353 device. It seems that when you manage to mode_swtich a 12d1:1f01 device, out comes an 12d1:14db USB-ethernet adapter, instead of a “ordinary” modem. No wonder that stick does not work.
That is more or less the information I managed to gather from the threads above, and now I need som help of you guys that know what to make of this, and how to proceed.
This is what I can read out of the router, in consecutive order:
Linux version 2.6.24.111 (bluebat@linux-vm-os64) (gcc version 4.1.2) #132 Sun May 20 20:34:46 CEST 2012
CPU revision is: 00019740
Found a 8MB ST compatible serial flash
Determined physical RAM map:
memory: 04000000 @ 00000000 (usable)
Entering add_active_range(0, 0, 16384) 0 entries of 256 used
Zone PFN ranges:
Normal 0 -> 16384
HighMem 16384 -> 16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0 -> 16384
On node 0 totalpages: 16384
Normal zone: 0 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 16384 pages, LIFO batch:3
HighMem zone: 0 pages used for memmap
Movable zone: 0 pages used for memmap
Built 1 zonelists in Zone order. Total pages: 16384
Kernel command line: console=ttyS0,115200 root=1f02 rootfstype=squashfs noinitrd
Primary instruction cache 32kB, physically tagged, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, linesize 32 bytes.
Synthesized TLB refill handler (20 instructions).
Synthesized TLB load handler fastpath (32 instructions).
Synthesized TLB store handler fastpath (32 instructions).
Synthesized TLB modify handler fastpath (31 instructions).
PID hash table entries: 512 (order: 9, 2048 bytes)
CPU: BCM4716 rev 1 at 453 MHz
Using 226.500 MHz high precision timer.
console [ttyS0] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 58616k/65536k available (3550k kernel code, 6856k reserved, 1377k data, 188k init, 0k highmem)
Calibrating delay loop... 226.09 BogoMIPS (lpj=1130496)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Generic PHY: Registered new driver
PCI: Using membase 8000000
PCI: Disabled
PCI: no core
PCI: Fixing up bus 0
NET: Registered protocol family 2
Time: MIPS clocksource has been installed.
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
WNR3500V2 GPIO Init
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
io scheduler noop registered
io scheduler deadline registered (default)
HDLC line discipline: version $Revision: 4.8 $, maxframe=4096
N_HDLC line discipline registered.
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x0 (irq = is a 16550A
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
MPPE/MPPC encryption/compression module registered
NET: Registered protocol family 24
PPPoL2TP kernel driver, V1.0
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky
et_module_init: passivemode set to 0x0
PCI: Setting latency timer of device 0000:00:02.0 to 64
eth0: Broadcom BCM47XX 10/100/1000 Mbps Ethernet Controller 5.100.138.9
PCI: Setting latency timer of device 0000:00:01.0 to 64
pflash: found no supported devices
bootloader size: 262144
nvram size: 32768
sflash: Filesystem type: squashfs, size=0x51b17c
partition size = 5370880
Creating 6 MTD partitions on "sflash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x007b0000 : "linux"
0x001a0c00-0x006c0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
0x007f0000-0x00800000 : "nvram"
0x006c0000-0x007a0000 : "ddwrt"
0x007b0000-0x007f0000 : "board_data"
Broadcom Watchdog Timer: 0.07 initialized.
u32 classifier
Actions configured
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
ctnetlink v0.93: registering with nfnetlink.
IPv4 over IPv4 tunneling driver
GRE over IPv4 tunneling driver
ip_tables: (C) 2000-2006 Netfilter Core Team
ClusterIP Version 0.8 loaded successfully
TCP bic registered
TCP cubic registered
TCP westwood registered
TCP highspeed registered
TCP hybla registered
TCP htcp registered
TCP vegas registered
TCP scalable registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Welcome to PF_RING 3.2.1
(C) 2004-06 L.Deri
NET: Registered protocol family 27
PF_RING: bucket length 128 bytes
PF_RING: ring slots 4096
PF_RING: sample rate 1 [1=no sampling]
PF_RING: capture TX No [RX only]
PF_RING: transparent mode Yes
PF_RING initialized correctly.
PF_RING: registered /proc/net/pf_ring/
802.1Q VLAN Support v1.8 Ben Greear
All bugs added by David S. Miller
decode 1f02
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 188k freed
roboswitch: Probing device eth0: found a 53115!
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
USB20H mdio control register : 0x80000010
PCI: Setting latency timer of device 0000:00:04.1 to 64
ehci_hcd 0000:00:04.1: EHCI Host Controller
ehci_hcd 0000:00:04.1: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:04.1: irq 5, io mem 0x18004000
ehci_hcd 0000:00:04.1: USB 0.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
USB Universal Host Controller Interface driver v3.0
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
USB20H mdio control register : 0x80000010
PCI: Setting latency timer of device 0000:00:04.0 to 64
ohci_hcd 0000:00:04.0: OHCI Host Controller
ohci_hcd 0000:00:04.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:04.0: irq 5, io mem 0x18009000
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
SCSI subsystem initialized
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
br0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device vlan1 entered promiscuous mode
device eth0 entered promiscuous mode
device eth1 entered promiscuous mode
br0: port 2(eth1) entering learning state
br0: port 1(vlan1) entering learning state
device vlan2 entered promiscuous mode
device vlan2 left promiscuous mode
br0: topology change detected, propagating
br0: port 2(eth1) entering forwarding state
br0: topology change detected, propagating
br0: port 1(vlan1) entering forwarding state
usb 1-1: new high speed USB device using ehci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
scsi0 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi 0:0:0:0: CD-ROM HUAWEI Mass Storage 2.31 PQ: 0 ANSI: 2
usb-storage: device scan complete
device vlan1 left promiscuous mode
br0: port 1(vlan1) entering disabled state
device eth1 left promiscuous mode
br0: port 2(eth1) entering disabled state
device vlan1 entered promiscuous mode
br0: port 1(vlan1) entering learning state
device eth1 entered promiscuous mode
br0: port 2(eth1) entering learning state
device vlan2 entered promiscuous mode
usbcore: registered new interface driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1.1
usb 1-1: usbfs: process 1541 (usb_modeswitch) did not claim interface 0 before use
br0: topology change detected, propagating
br0: port 1(vlan1) entering forwarding state
br0: topology change detected, propagating
br0: port 2(eth1) entering forwarding state
usb 1-1: usbfs: process 1716 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 1825 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 1914 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2018 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2107 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2197 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2303 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2390 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2479 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2569 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 2675 (usb_modeswitch) did not claim interface 0 before use
Now we run usb_modeswitch with the arguments found in [3], [4]
Taking all parameters from the command line
* usb_modeswitch: handle USB devices with multiple modes
* Version 1.1.4 (C) Josua Dietze 2010
* 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
GCTMode=0
MessageEndpoint= not set
MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
NeedResponse=0
ResponseEndpoint= not set
Interface=0x00
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
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
searching devices, found USB ID 0000:0000
Found devices in default mode or class (1)
Accessing device 002 on bus 001 ...
Using endpoints 0x0f (out) and 0x8f (in)
Using endpoints 0x0f (out) and 0x8f (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
No driver found. Either detached before or never attached
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 ...
libusb:error [op_clear_halt] clear_halt failed error -1 errno 71
libusb:error [op_clear_halt] clear_halt failed error -1 errno 71
OK, message successfully sent
Resetting response endpoint 0x8f
Error resetting endpoint: -99
Resetting message endpoint 0x0f
Error resetting endpoint: -99
Device is gone, skipping any further commands
-> Run lsusb to note any changes. Bye.
Now, is the 12d1:14db a modem or an Ethernet device?
Interface #0 is a command interface, input only.
Interface #1 is an ethernet interface (Cls 0a = USB_CLASS_CDC_DATA, Sub 06 = USB_CDC_SUBCLASS_ETHERNET) and the driver it needs is cdc_ether which would have created an eth device in the system.
dd-wrt does currently only support serial 3G interfaces which this stick probably can present when using a different modeswitch message.
Please modify your modeswitch message, substitute the "a" before 11062 with a "0" so that it becomes a standard Huawei switch message for serial interface modems. Then check if the stick now exposes serial interfaces in the device file. _________________ Kernel panic: Aiee, killing interrupt handler!
However, this new usb_modeswitch argument is not identical to the one in the current DD-WRT builds. The DD-WRT one for a 12d1:1f01 device have no effect, and lib3g.c needs to be updated.
Linux version 2.6.24.111 (bluebat@linux-vm-os64) (gcc version 4.1.2) #132 Sun May 20 20:34:46 CEST 2012
CPU revision is: 00019740
Found a 8MB ST compatible serial flash
Determined physical RAM map:
memory: 04000000 @ 00000000 (usable)
Entering add_active_range(0, 0, 16384) 0 entries of 256 used
Zone PFN ranges:
Normal 0 -> 16384
HighMem 16384 -> 16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0 -> 16384
On node 0 totalpages: 16384
Normal zone: 0 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 16384 pages, LIFO batch:3
HighMem zone: 0 pages used for memmap
Movable zone: 0 pages used for memmap
Built 1 zonelists in Zone order. Total pages: 16384
Kernel command line: console=ttyS0,115200 root=1f02 rootfstype=squashfs noinitrd
Primary instruction cache 32kB, physically tagged, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, linesize 32 bytes.
Synthesized TLB refill handler (20 instructions).
Synthesized TLB load handler fastpath (32 instructions).
Synthesized TLB store handler fastpath (32 instructions).
Synthesized TLB modify handler fastpath (31 instructions).
PID hash table entries: 512 (order: 9, 2048 bytes)
CPU: BCM4716 rev 1 at 453 MHz
Using 226.500 MHz high precision timer.
console [ttyS0] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 58616k/65536k available (3550k kernel code, 6856k reserved, 1377k data, 188k init, 0k highmem)
Calibrating delay loop... 226.09 BogoMIPS (lpj=1130496)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Generic PHY: Registered new driver
PCI: Using membase 8000000
PCI: Disabled
PCI: no core
PCI: Fixing up bus 0
NET: Registered protocol family 2
Time: MIPS clocksource has been installed.
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
WNR3500V2 GPIO Init
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
io scheduler noop registered
io scheduler deadline registered (default)
HDLC line discipline: version $Revision: 4.8 $, maxframe=4096
N_HDLC line discipline registered.
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x0 (irq = is a 16550A
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
MPPE/MPPC encryption/compression module registered
NET: Registered protocol family 24
PPPoL2TP kernel driver, V1.0
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky
et_module_init: passivemode set to 0x0
PCI: Setting latency timer of device 0000:00:02.0 to 64
eth0: Broadcom BCM47XX 10/100/1000 Mbps Ethernet Controller 5.100.138.9
PCI: Setting latency timer of device 0000:00:01.0 to 64
pflash: found no supported devices
bootloader size: 262144
nvram size: 32768
sflash: Filesystem type: squashfs, size=0x51b17c
partition size = 5370880
Creating 6 MTD partitions on "sflash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x007b0000 : "linux"
0x001a0c00-0x006c0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
0x007f0000-0x00800000 : "nvram"
0x006c0000-0x007a0000 : "ddwrt"
0x007b0000-0x007f0000 : "board_data"
Broadcom Watchdog Timer: 0.07 initialized.
u32 classifier
Actions configured
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
ctnetlink v0.93: registering with nfnetlink.
IPv4 over IPv4 tunneling driver
GRE over IPv4 tunneling driver
ip_tables: (C) 2000-2006 Netfilter Core Team
ClusterIP Version 0.8 loaded successfully
TCP bic registered
TCP cubic registered
TCP westwood registered
TCP highspeed registered
TCP hybla registered
TCP htcp registered
TCP vegas registered
TCP scalable registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Welcome to PF_RING 3.2.1
(C) 2004-06 L.Deri
NET: Registered protocol family 27
PF_RING: bucket length 128 bytes
PF_RING: ring slots 4096
PF_RING: sample rate 1 [1=no sampling]
PF_RING: capture TX No [RX only]
PF_RING: transparent mode Yes
PF_RING initialized correctly.
PF_RING: registered /proc/net/pf_ring/
802.1Q VLAN Support v1.8 Ben Greear
All bugs added by David S. Miller
decode 1f02
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 188k freed
roboswitch: Probing device eth0: found a 53115!
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
USB20H mdio control register : 0x80000010
PCI: Setting latency timer of device 0000:00:04.1 to 64
ehci_hcd 0000:00:04.1: EHCI Host Controller
ehci_hcd 0000:00:04.1: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:04.1: irq 5, io mem 0x18004000
ehci_hcd 0000:00:04.1: USB 0.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
USB Universal Host Controller Interface driver v3.0
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
USB20H mdio control register : 0x80000010
PCI: Setting latency timer of device 0000:00:04.0 to 64
ohci_hcd 0000:00:04.0: OHCI Host Controller
ohci_hcd 0000:00:04.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:04.0: irq 5, io mem 0x18009000
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usb 1-1: new high speed USB device using ehci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
SCSI subsystem initialized
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
br0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device vlan1 entered promiscuous mode
device eth0 entered promiscuous mode
device eth1 entered promiscuous mode
br0: port 2(eth1) entering learning state
br0: port 1(vlan1) entering learning state
device vlan2 entered promiscuous mode
scsi 0:0:0:0: CD-ROM HUAWEI Mass Storage 2.31 PQ: 0 ANSI: 2
usb-storage: device scan complete
br0: topology change detected, propagating
br0: port 2(eth1) entering forwarding state
br0: topology change detected, propagating
br0: port 1(vlan1) entering forwarding state
usbcore: registered new interface driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1.1
usb 1-1: usbfs: process 1074 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: usbfs: process 1244 (usb_modeswitch) did not claim interface 0 before use
usb 1-1: USB disconnect, address 2
usb 1-1: new high speed USB device using ehci_hcd and address 3
usb 1-1: configuration #1 chosen from 1 choice
option 1-1:1.0: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
Does this mean that the modem and driver is up and running?
I do not seem to get it to connect, but I can obviously have missed something. According to "Huawei e398 USB modem as WAN" http://www.dd-wrt.com/phpBB2/viewtopic.php?p=615196 you are supposed to "Setup everything in the setup section and use auto on network selection and no pin code. Dial command #99".
That qoute is not crystal clear to me.
1. No pin code, why, can the SIM card really work then?
2. "Auto on network selection", is this supposed
to be the same as "Force reconnect"?
I may add that my E353 is a Hilink version, specifically designed to be "driver and hazzle free", and that may also explain why it seem to work differently to other E353 versions.
OK, it works really impressive in a PC, but for DD-WRT use I do not know about "hazzle free"...
However, this new usb_modeswitch argument is not identical to the one in the current DD-WRT builds. The DD-WRT one for a 12d1:1f01 device have no effect, and lib3g.c needs to be updated.
The modeswitch message in dd-wrt was corrected a few days ago already, it is now the same as what you tried.
It was a test to see if the std Huawei message would switch the stick into a serial interface mode.
It didn't , the devices file looks like before and there are no serial modem interfaces just composite device interfaces.
Many of the new Huawei modems has dual or triple personalities and the modeswitch msg decides which of them gets activated after a modeswitch.
I start to believe that these "HiLink" type of sticks can only appear as composite devices, has no other personalities so can't be switched into normal/old fashion serial modems.
The E353 has not been "driver and hazzle free" in desktop linux distros and the way of connecting to the ISP is not directly supported in linux network manager or connection manager.
One guy who has it sussed out is "Uffe", this is from the usb_modeswitch forum:
"my e353 never register as s serial device instead it registers as an cdc_ether device after the mode switch. Hence the /dev/TTYUSBX is not applicable, instead in shows up as an ethernet device and can be seen with 'ifconfig -a'. There is a small private DHCP network (192.168.1/24) managed by the USB on the ethernet interface. I run the standard openwrt dhcpclient on the new interface, which takes care of setting up IP including routing and DNS. dongle setup via DHCP. I can obviously not use the standard 192.168.1/24 for my home network anymore... Then dongle has a web server on 192.168.1.1, with DNS redirects, to enter PIN and attach to the UTMS network." _________________ Kernel panic: Aiee, killing interrupt handler!
Yes, I have read that thread with Uffes comments (swedish short name by the way), and it certainly seems that an entirely new approach is used with newer sticks, especially 4G ones. I guess there is a risk this will cause more headache for you guys.
One thing that worries me a little bit is that the "3" SIM delivered with the E353 does not seem to connect when using other 3G modems. I have an unlocked Huawei E1550, successfully tried with multiple other operators, and this makes me wonder if the "3" SIM is a really a normal 3G one. Can not figure out any other reason why it should not work in other modems.
Ok, what to do...
I can try to find more working usb_modeswitch combinations. How do I recognize a serial modem type in a "cat /proc/bus/usb/devices" response?
One other way is to change E353 firmware to a non Hilink version. To bad Huawei have not released any new firmwares for this device, but there may be som third party software that may work. It may also brick the stick forever :-/
Changing the firmware is the same as downgrading the stick from a high speed eth device into a slower serial modem, it is not a good approach.
Serial interfaces has Cls=255 decimal (or ff hex) and when there are many of those then the first one which has an input endpoint with Attribute=03 (Interrupt) is the modem interface.
Here, interface #0 is the serial modem interface, #1 is the tf/sd card reader, #2 is diagnostics/sms _________________ Kernel panic: Aiee, killing interrupt handler!
By the way, what is the reason a firmware change result in a slower modem? Does this imply that the other E353 versions, for example a 12d1:1446(12d1:1506) device, do not run in full speed (HSPA 21.0/5.76) with DD-WRT?
First, the latest (rev 91415) DD-WRT file lib3g.c is as you mentioned updated, but it is still incorrect for the 12d1:1f01 device, I have tested and it does not switch the device.
55534243123456780000000000000011062000000100000000000000000000 <- Current DD-WRT, does NOT work
55534243123456780000000000000011062000000000000100000000000000 <- Switches to alternative device setup 1
55534243123456780000000000000011062000000000000200000000000000 <- Switches to alternative device setup 2
The modeswitch message in r19415 was an attempt to make it switch into a serial device and the message I used was the same as for all modern Huawei sticks.
That your modem doesn't do that is a quite strong indicator that there is no serial personality that you can switch it to.
Your new modeswitch message exposed 3 additional interfaces but of wrong type and the stick got a new USB pid, 1441 instead of 14db.
It is unfortunately not of any help. _________________ Kernel panic: Aiee, killing interrupt handler!
The modeswitch message in r19415 was an attempt to make it switch into a serial device and the message I used was the same as for all modern Huawei sticks.
That your modem doesn't do that is a quite strong indicator that there is no serial personality that you can switch it to.
Your new modeswitch message exposed 3 additional interfaces but of wrong type and the stick got a new USB pid, 1441 instead of 14db.
It is unfortunately not of any help.
Wouldnt it be possible use the modem as a Ethernet device in some way or does dd-wrt only support serial modems?
As LOM stated, these sticks require another driver, cdc_ether, and the routing must also be changed, currently using scripts. Since many new 4G USB modems use the same approach, it will probably be "standard" part of the DD-WRT USB versions at some point, and I saw that BrainSlayer added the cdc_ether source code 4 months ago.
I am absolutely no linux expert, but as I understand it, additional code modules can be loaded into the router using a ipkg command, and then be made available using the insmod command. When that is done, the added functionality can then be accessed using a script.
This means that new functionality can be added without the need to recompile the entire DD-WRT software.
I found an "example" script in the referenced thread above: