Huawei K5150 LTE modem not showing as ethernet device
-
Hi
I have a Huawei K5150 LTE modem that I am trying to use on pfSense but it doesn't seem to activate the cdc_ncm and cdc_wdm (or similar) drivers when the device is plugged.
When I plug the device on Linux it is detected correctly and made available as a mobile broadband ethernet connection.
I tried using different usb_modeswitch options and parameters (with no luck) and compared the results and configurations with that of my Linux machine and they appear to be similar. The only difference seems to be that Linux sees the device as a USB ethernet device.
Here is my Linux dmesg output:
kern :info : [We Jun 26 20:30:36 2019] usb 2-2: new high-speed USB device number 6 using xhci_hcd kern :info : [We Jun 26 20:30:36 2019] usb 2-2: New USB device found, idVendor=12d1, idProduct=1f16, bcdDevice= 1.02 kern :info : [We Jun 26 20:30:36 2019] usb 2-2: New USB device strings: Mfr=6, Product=5, SerialNumber=8 kern :info : [We Jun 26 20:30:36 2019] usb 2-2: Product: K5150 kern :info : [We Jun 26 20:30:36 2019] usb 2-2: Manufacturer: Vodafone (Huawei) kern :info : [We Jun 26 20:30:36 2019] usb 2-2: SerialNumber: FFFFFFFFFFFFFFFF kern :info : [We Jun 26 20:30:37 2019] usb-storage 2-2:1.0: USB Mass Storage device detected kern :info : [We Jun 26 20:30:37 2019] scsi host6: usb-storage 2-2:1.0 kern :info : [We Jun 26 20:30:37 2019] usbcore: registered new interface driver usb-storage kern :info : [We Jun 26 20:30:37 2019] usbcore: registered new interface driver uas kern :info : [We Jun 26 20:30:37 2019] usb-storage 2-2:2.2: USB Mass Storage device detected kern :info : [We Jun 26 20:30:37 2019] scsi host6: usb-storage 2-2:2.2 kern :info : [We Jun 26 20:30:37 2019] usbcore: registered new interface driver cdc_ncm kern :info : [We Jun 26 20:30:37 2019] usbcore: registered new interface driver cdc_wdm kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0: setting rx_max = 16384 kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0: setting tx_max = 16384 kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0: NDP will be placed at end of frame for this device. kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0: cdc-wdm0: USB WDM device kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-2, CDC MBIM, 5a:af:db:92:d2:56 kern :info : [We Jun 26 20:30:37 2019] usbcore: registered new interface driver cdc_mbim kern :info : [We Jun 26 20:30:37 2019] cdc_mbim 2-2:2.0 wwp0s20u2c2: renamed from wwan0 kern :notice: [We Jun 26 20:30:38 2019] scsi 6:0:0:0: Direct-Access Vodafone Storage(Huawei) 2.31 PQ: 0 ANSI: 2 kern :notice: [We Jun 26 20:30:38 2019] sd 6:0:0:0: Attached scsi generic sg1 type 0 kern :notice: [We Jun 26 20:30:38 2019] sd 6:0:0:0: [sdb] Attached SCSI removable disk
and here is the output of pfSense' dmesg and usbconfig:
ugen4.2: <Vodafone Huawei K5150> at usbus4 umass0 on uhub0 umass0: <Vodafone Huawei K5150, class 0/0, rev 2.00/1.02, addr 2> on usbus4 da0 at umass-sim0 bus 0 scbus4 target 0 lun 0 da0: <Vodafone Storage(Huawei) 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>
usbconfig -d ugen4.2 dump_device_desc
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x1f16 bcdDevice = 0x0102 iManufacturer = 0x0006 <Vodafone (Huawei)> iProduct = 0x0005 <K5150> iSerialNumber = 0x0008 <FFFFFFFFFFFFFFFF> bNumConfigurations = 0x0002
usbconfig -d ugen4.2 dump_all_desc
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x1f16 bcdDevice = 0x0102 iManufacturer = 0x0006 <Vodafone (Huawei)> iProduct = 0x0005 <K5150> iSerialNumber = 0x0008 <FFFFFFFFFFFFFFFF> bNumConfigurations = 0x0002 Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0020 bNumInterfaces = 0x0001 bConfigurationValue = 0x0001 iConfiguration = 0x0001 <configuration 0> bmAttributes = 0x00a0 bMaxPower = 0x00fa Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x0008 <Mass storage> bInterfaceSubClass = 0x0006 bInterfaceProtocol = 0x0050 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0001 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Configuration index 1 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0076 bNumInterfaces = 0x0003 bConfigurationValue = 0x0002 iConfiguration = 0x0009 <configuration 1> bmAttributes = 0x00a0 bMaxPower = 0x00fa Additional Descriptor bLength = 0x08 bDescriptorType = 0x0b bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x08, 0x0b, 0x00, 0x02, 0x02, 0x0e, 0x00, 0x03 Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0002 <Communication device> bInterfaceSubClass = 0x000e bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x05, 0x24, 0x00, 0x10, 0x01 Additional Descriptor bLength = 0x0c bDescriptorType = 0x24 bDescriptorSubType = 0x1b RAW dump: 0x00 | 0x0c, 0x24, 0x1b, 0x00, 0x01, 0x00, 0x04, 0x10, 0x08 | 0x14, 0xdc, 0x05, 0x20 Additional Descriptor bLength = 0x08 bDescriptorType = 0x24 bDescriptorSubType = 0x1c RAW dump: 0x00 | 0x08, 0x24, 0x1c, 0x00, 0x01, 0x10, 0xdc, 0x05 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x05, 0x24, 0x06, 0x00, 0x01 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0040 bInterval = 0x0005 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0000 bNumEndpoints = 0x0000 bInterfaceClass = 0x000a <CDC-data> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0002 iInterface = 0x0000 <no string> Interface 1 Alt 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0001 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a <CDC-data> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0002 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0083 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0020 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0002 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0020 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 2 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x0008 <Mass storage> bInterfaceSubClass = 0x0006 bInterfaceProtocol = 0x0050 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0003 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000
Thanks, I appreciate any help or assistance with this.
-
Try running
usbconfig -d ugen4.2 set_config 1
.If that works you can add a loader usb quirk to make it do that every time.
Steve
-
Thanks
I tried the command and I can see that it changes the device's configuration but it still isn't detected as a USB ethernet device.
-
What is it detected as? I assume the storage device detaches?
You might need the urndis driver for example if that's what it appears as.
Steve
-
You need usb_modeswitch
https://monach.us/operations/usb_modeswitch_on_pfsense/well, not all the instruction there was working for me so after you have installed usb_modeswitch you need to launch
usb_modeswitch -c /usr/local/share/usb_modeswitch/12d1:1f16
where 12d1:1f16 is a file you need to modify, add
DefaultVendor=0x12d1
DefaultProduct=0x1f16something like this should come out
-
@stephenw10
When I insert the device dmesg reports the followingugen4.2: <Vodafone Huawei K5150> at usbus4 umass0 on uhub0 umass0: <Vodafone Huawei K5150, class 0/0, rev 2.00/1.02, addr 2> on usbus4 da0 at umass-sim0 bus 0 scbus4 target 0 lun 0 da0: <Vodafone Storage(Huawei) 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>
usbconfig -d ugen4.2 show_ifdrv
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) ugen4.2.2: umass0: <Vodafone Huawei K5150, class 0/0, rev 2.00/1.02, addr 2>
I then run the usbconfig command
usbconfig -d ugen4.2 set_config 1usbconfig -d ugen4.2 show_ifdrv
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) ugen4.2.2: umass0: <Vodafone Huawei K5150, class 0/0, rev 2.00/1.02, addr 2>
No additional information was logged in dmesg
If I run
usbconfig -d ugen4.2 set_config 2I can see that the device configuration changed
usbconfig -d ugen4.2 show_ifdrvugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=255 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
dmesg
umass0: at uhub0, port 5, addr 2 (disconnected) da0 at umass-sim0 bus 0 scbus4 target 0 lun 0 da0: <Vodafone Storage(Huawei) 2.31> detached (da0:umass-sim0:0:0:0): Periph destroyed umass0: detached
Using usbconfig set_config does change the configuration but despite this it still isn't detected correctly.
-
@kiokoman
I modified the /usr/local/share/usb_modeswitch/12d1:1f16 file accordingly# Vodafone K5150 TargetVendor=0x12d1 TargetProductList="14f8,1575" HuaweiNewMode=1 DefaultVendor=0x12d1 DefaultProduct=0x1f16
I replugged the device and then ran
usb_modeswitch -c /usr/local/share/usb_modeswitch/12d1:1f16Look for target devices ... No devices in target mode or class found Look for default devices ... Found devices in default mode (1) Access device 002 on bus 004 Get the current device configuration ... Current configuration number is 2 Use interface number 0 with class 2 Error: can't use storage command in MessageContent with interface 0; interface class is 2, expected 8. Abort
I encounter the same error with usb_modeswitch on Linux yet it still provides the USB ethernet interface.
-
What does
usbconfig -d ugen4.2 dump_device_desc
show? in either config mode?Steve
-
before that command, you had posted above
Interface 0
bLength = 0x0009
bDescriptorType = 0x0004
bInterfaceNumber = 0x0000
bAlternateSetting = 0x0000
bNumEndpoints = 0x0002
bInterfaceClass = 0x0008 <Mass storage>error message say
Error: can't use storage command in MessageContent with interface 0; interface class is 2, expected 8. Abort
so the bInterfaceClass should have changed to 0x0002 <Communication device>pls confirm
if so, it's strange that it's not creating the network interface
it's possible that you need a specific driver not available on pfsensei found a different config to try if you want
# Vodafone K5150 TargetVendor=0x12d1 TargetProductList="14f8,1575" #HuaweiNewMode=1 MessageContent="55534243123456780002000080000a11062000000000000100000000000000" DefaultVendor=0x12d1 DefaultProduct=0x1f16
-
@stephenw10
Here are the results in the default mode as well as the different modes.dmesg after plugging the device
ugen4.2: <Vodafone Huawei K5150> at usbus4 umass0 on uhub0 umass0: <Vodafone Huawei K5150, class 0/0, rev 2.00/1.02, addr 2> on usbus4 da0 at umass-sim0 bus 0 scbus4 target 0 lun 0 da0: <Vodafone Storage(Huawei) 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>
usbconfig -d ugen4.2 dump_device_desc after plugging the device
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x1f16 bcdDevice = 0x0102 iManufacturer = 0x0006 <Vodafone (Huawei)> iProduct = 0x0005 <K5150> iSerialNumber = 0x0008 <FFFFFFFFFFFFFFFF> bNumConfigurations = 0x0002
usbconfig -d ugen4.2 set_config 1
usbconfig -d ugen4.2 dump_device_desc
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=1 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x1f16 bcdDevice = 0x0102 iManufacturer = 0x0006 <Vodafone (Huawei)> iProduct = 0x0005 <K5150> iSerialNumber = 0x0008 <FFFFFFFFFFFFFFFF> bNumConfigurations = 0x0002
usbconfig -d ugen4.2 set_config 2
usbconfig -d ugen4.2 dump_device_desc
ugen4.2: <Vodafone Huawei K5150> at usbus4, cfg=255 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x00ff bMaxPacketSize0 = 0x0040 idVendor = 0x12d1 idProduct = 0x1f16 bcdDevice = 0x0102 iManufacturer = 0x0006 <Vodafone (Huawei)> iProduct = 0x0005 <K5150> iSerialNumber = 0x0008 <FFFFFFFFFFFFFFFF> bNumConfigurations = 0x0002
dmesg
umass0: at uhub0, port 5, addr 2 (disconnected) da0 at umass-sim0 bus 0 scbus4 target 0 lun 0 da0: <Vodafone Storage(Huawei) 2.31> detached (da0:umass-sim0:0:0:0): Periph destroyed umass0: detached
-
@kiokoman said in Huawei K5150 LTE modem not showing as ethernet device:
error message say
Error: can't use storage command in MessageContent with interface 0; interface class is 2, expected 8. Abort
so the bInterfaceClass should have changed to 0x0002 <Communication device>
pls confirmYes, that is correct.
I tried the new config with the MessageContent but the result is still the same.
I also suspect that I require a specific driver.
Unfortunately I don't know pfSense or FreeBSD well enough to dig further.
-
Thanks for the help everyone
-
I decided to compare the results of the Vodafone (Huawei) K5150 LTE to a Vodafone (ZTE) K4201-Z HSPA device.
Both of them are ethernet over USB devices and the K4201-Z works fine but doesn't support LTE.Here is the K4201-Z's information
dmesgcd0 at umass-sim0 bus 0 scbus4 target 0 lun 0 cd0: <Vodafone USB SCSI CD-ROM 2.31> detached (cd0:umass-sim0:0:0:0): Periph destroyed umass0: detached ugen4.2: <Vodafone ZTE ZTE WCDMA Technologies MSM> at usbus4 cdce0 on uhub0 cdce0: <Vodafone ZTE ZTE WCDMA Technologies MSM, class 2/0, rev 2.00/f0.55, addr 2> on usbus4 ue0: <USB Ethernet> on cdce0 ue0: Ethernet address: 00:a0:c6:00:00:00 umass0 on uhub0 umass0: <Vodafone ZTE ZTE WCDMA Technologies MSM, class 2/0, rev 2.00/f0.55, addr 2> on usbus4 umass0: Get Max Lun not supported (USB_ERR_TIMEOUT) cd0 at umass-sim0 bus 0 scbus4 target 0 lun 0 cd0: <Vodafone USB SCSI CD-ROM 2.31> Removable CD-ROM SCSI-2 device cd0: 40.000MB/s transfers cd0: 45MB (23425 2048 byte sectors) cd0: quirks=0x10<10_BYTE_ONLY>
usbconfig -d ugen4.2 dump_device_desc
ugen4.2: <Vodafone ZTE ZTE WCDMA Technologies MSM> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0002 <Communication device> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x19d2 idProduct = 0x1024 bcdDevice = 0xf055 iManufacturer = 0x0004 <Vodafone (ZTE)> iProduct = 0x0003 <ZTE WCDMA Technologies MSM> iSerialNumber = 0x0005 <> bNumConfigurations = 0x0001
usbconfig -d ugen4.2 dump_all_desc
ugen4.2: <Vodafone ZTE ZTE WCDMA Technologies MSM> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0002 <Communication device> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x19d2 idProduct = 0x1024 bcdDevice = 0xf055 iManufacturer = 0x0004 <Vodafone (ZTE)> iProduct = 0x0003 <ZTE WCDMA Technologies MSM> iSerialNumber = 0x0005 <> bNumConfigurations = 0x0001 Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0067 bNumInterfaces = 0x0003 bConfigurationValue = 0x0001 iConfiguration = 0x0002 <ZTE Configuration> bmAttributes = 0x00c0 bMaxPower = 0x00fa Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0002 <Communication device> bInterfaceSubClass = 0x0006 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x05, 0x24, 0x00, 0x10, 0x01 Additional Descriptor bLength = 0x0d bDescriptorType = 0x24 bDescriptorSubType = 0x0f RAW dump: 0x00 | 0x0d, 0x24, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08 | 0x00, 0x20, 0x01, 0x00, 0x00 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x05, 0x24, 0x06, 0x00, 0x01 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0040 bInterval = 0x0005 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0000 bNumEndpoints = 0x0000 bInterfaceClass = 0x000a <CDC-data> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Interface 1 Alt 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0001 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a <CDC-data> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0020 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0001 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0020 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 2 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x0008 <Mass storage> bInterfaceSubClass = 0x0006 bInterfaceProtocol = 0x0050 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0002 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0083 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000
usbconfig -d ugen4.2 show_ifdrv
ugen4.2: <Vodafone ZTE ZTE WCDMA Technologies MSM> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) ugen4.2.0: cdce0: <Vodafone ZTE ZTE WCDMA Technologies MSM, class 2/0, rev 2.00/f0.55, addr 2> ugen4.2.2: umass0: <Vodafone ZTE ZTE WCDMA Technologies MSM, class 2/0, rev 2.00/f0.55, addr 2>
There is no /usr/local/share/usb_modeswitch/19d2:1024 file for usb_modeswitch
ifconfig ue0
ue0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether 00:a0:c6:00:00:00 hwaddr 00:a0:c6:00:00:00 nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
As you can see it is detected as a USB ethernet device and assigned an interface so it would seem that everything on the OS's side is fine.
The question is, what do I need to do in order for the K5150 to be detected in the same manner?
-
Maybe try
usbconfig -d ugen4.2 dump_curr_config_desc
just to make sure it really is using config index 1 with the 3 available interfaces.Steve
-
it could be because it's still not defined here ? https://github.com/pfsense/FreeBSD-src/blob/RELENG_2_5/sys/dev/usb/usbdevs
even on freebsd12 there are "only" this modem defined
/* HUAWEI products */ 2284 product HUAWEI MOBILE 0x1001 Huawei Mobile 2285 product HUAWEI E220 0x1003 HSDPA modem 2286 product HUAWEI E220BIS 0x1004 HSDPA modem 2287 product HUAWEI E1401 0x1401 3G modem 2288 product HUAWEI E1402 0x1402 3G modem 2289 product HUAWEI E1403 0x1403 3G modem 2290 product HUAWEI E1404 0x1404 3G modem 2291 product HUAWEI E1405 0x1405 3G modem 2292 product HUAWEI E1406 0x1406 3G modem 2293 product HUAWEI E1407 0x1407 3G modem 2294 product HUAWEI E1408 0x1408 3G modem 2295 product HUAWEI E1409 0x1409 3G modem 2296 product HUAWEI E140A 0x140a 3G modem 2297 product HUAWEI E140B 0x140b 3G modem 2298 product HUAWEI E180V 0x140c E180V 2299 product HUAWEI E140D 0x140d 3G modem 2300 product HUAWEI E140E 0x140e 3G modem 2301 product HUAWEI E140F 0x140f 3G modem 2302 product HUAWEI E1410 0x1410 3G modem 2303 product HUAWEI E1411 0x1411 3G modem 2304 product HUAWEI E1412 0x1412 3G modem 2305 product HUAWEI E1413 0x1413 3G modem 2306 product HUAWEI E1414 0x1414 3G modem 2307 product HUAWEI E1415 0x1415 3G modem 2308 product HUAWEI E1416 0x1416 3G modem 2309 product HUAWEI E1417 0x1417 3G modem 2310 product HUAWEI E1418 0x1418 3G modem 2311 product HUAWEI E1419 0x1419 3G modem 2312 product HUAWEI E141A 0x141a 3G modem 2313 product HUAWEI E141B 0x141b 3G modem 2314 product HUAWEI E141C 0x141c 3G modem 2315 product HUAWEI E141D 0x141d 3G modem 2316 product HUAWEI E141E 0x141e 3G modem 2317 product HUAWEI E141F 0x141f 3G modem 2318 product HUAWEI E1420 0x1420 3G modem 2319 product HUAWEI E1421 0x1421 3G modem 2320 product HUAWEI E1422 0x1422 3G modem 2321 product HUAWEI E1423 0x1423 3G modem 2322 product HUAWEI E1424 0x1424 3G modem 2323 product HUAWEI E1425 0x1425 3G modem 2324 product HUAWEI E1426 0x1426 3G modem 2325 product HUAWEI E1427 0x1427 3G modem 2326 product HUAWEI E1428 0x1428 3G modem 2327 product HUAWEI E1429 0x1429 3G modem 2328 product HUAWEI E142A 0x142a 3G modem 2329 product HUAWEI E142B 0x142b 3G modem 2330 product HUAWEI E142C 0x142c 3G modem 2331 product HUAWEI E142D 0x142d 3G modem 2332 product HUAWEI E142E 0x142e 3G modem 2333 product HUAWEI E142F 0x142f 3G modem 2334 product HUAWEI E1430 0x1430 3G modem 2335 product HUAWEI E1431 0x1431 3G modem 2336 product HUAWEI E1432 0x1432 3G modem 2337 product HUAWEI E1433 0x1433 3G modem 2338 product HUAWEI E1434 0x1434 3G modem 2339 product HUAWEI E1435 0x1435 3G modem 2340 product HUAWEI E1436 0x1436 3G modem 2341 product HUAWEI E1437 0x1437 3G modem 2342 product HUAWEI E1438 0x1438 3G modem 2343 product HUAWEI E1439 0x1439 3G modem 2344 product HUAWEI E143A 0x143a 3G modem 2345 product HUAWEI E143B 0x143b 3G modem 2346 product HUAWEI E143C 0x143c 3G modem 2347 product HUAWEI E143D 0x143d 3G modem 2348 product HUAWEI E143E 0x143e 3G modem 2349 product HUAWEI E143F 0x143f 3G modem 2350 product HUAWEI E1752 0x1446 3G modem 2351 product HUAWEI K4505 0x1464 3G modem 2352 product HUAWEI K3765 0x1465 3G modem 2353 product HUAWEI E1820 0x14ac E1820 HSPA+ USB Slider 2354 product HUAWEI K3770 0x14c9 3G modem 2355 product HUAWEI K3772 0x14cf K3772 2356 product HUAWEI K3770_INIT 0x14d1 K3770 Initial 2357 product HUAWEI E3131_INIT 0x14fe 3G modem initial 2358 product HUAWEI E392 0x1505 LTE modem 2359 product HUAWEI E3131 0x1506 3G modem 2360 product HUAWEI K3765_INIT 0x1520 K3765 Initial 2361 product HUAWEI K4505_INIT 0x1521 K4505 Initial 2362 product HUAWEI K3772_INIT 0x1526 K3772 Initial 2363 product HUAWEI E3272_INIT 0x155b LTE modem initial 2364 product HUAWEI R215_INIT 0x1582 LTE modem initial 2365 product HUAWEI R215 0x1588 LTE modem 2366 product HUAWEI ETS2055 0x1803 CDMA modem 2367 product HUAWEI E173 0x1c05 3G modem 2368 product HUAWEI E173_INIT 0x1c0b 3G modem initial 2369 product HUAWEI E3272 0x1c1e LTE modem
maybe it's better if you search for one of this modem and sell the one you have
-
Indeed it isn't but not all drivers need to have the device explicitly defined there. The ZTE device above also isn't in that file.
Steve
-
Good day
Fortunately I only borrowed the K5150 to test the failover and load balancing before I invest in proper hardware.
It seems like there isn't a quick or easy solution to this so we might just as well close this issue.
Thanks for the help everyone.