Hi, All,
D-Link DWM-222, a USB 4G cellular modem, is supposed to be supported since FreeBSD 11.4; however, I can't seem to be able to make it work.
If I connect it to a Windows 11 machine, I get the following ID from Device Manager:
I created a VM with FreeBSD 14 (using Proxmox) to experiment with it and passed the entire USB through to it.
I then get:
Shouldn't I be seeing multiple configurations?
Shouldn't I be seeing Product ID 0x7e3d?
I have very little experience with this, but it seems to me that I would not be able to do a mode switch on this given that it the OS is unaware of the other configs. Am I right?
If this device is truly supported, what else could I do?
D-Link DWM-222, a USB 4G cellular modem, is supposed to be supported since FreeBSD 11.4; however, I can't seem to be able to make it work.
If I connect it to a Windows 11 machine, I get the following ID from Device Manager:
I created a VM with FreeBSD 14 (using Proxmox) to experiment with it and passed the entire USB through to it.
I then get:
Code:
[root@freebsd ~]# freebsd-version
14.0-RELEASE
Code:
[root@freebsd ~]# usbconfig
ugen0.1: <Intel UHCI root HUB> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen1.1: <(0x1033) XHCI root HUB> at usbus1, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.2: <QEMU QEMU USB Tablet> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen1.2: <Mobile Connect Mobile Connect> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
Code:
[root@freebsd ~]# usbconfig -d ugen1.2 dump_all_desc
ugen1.2: <Mobile Connect Mobile Connect> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0201
bDeviceClass = 0x0000 <Probed by interface class>
bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0040
idVendor = 0x2001
idProduct = 0xac01
bcdDevice = 0x0228
iManufacturer = 0x0001 <Mobile Connect>
iProduct = 0x0002 <Mobile Connect>
iSerialNumber = 0x0003 <b2cf4407d97f>
bNumConfigurations = 0x0001
Configuration index 0
bLength = 0x0009
bDescriptorType = 0x0002
wTotalLength = 0x0020
bNumInterfaces = 0x0001
bConfigurationValue = 0x0001
iConfiguration = 0x0000 <no string>
bmAttributes = 0x0080
bMaxPower = 0x00fa
Interface 0
bLength = 0x0009
bDescriptorType = 0x0004
bInterfaceNumber = 0x0000
bAlternateSetting = 0x0000
bNumEndpoints = 0x0002
bInterfaceClass = 0x0008 <Mass storage>
bInterfaceSubClass = 0x0006
bInterfaceProtocol = 0x0050
iInterface = 0x0004 <Mass Storage>
Endpoint 0
bLength = 0x0007
bDescriptorType = 0x0005
bEndpointAddress = 0x0081 <IN>
bmAttributes = 0x0002 <BULK>
wMaxPacketSize = 0x0200
bInterval = 0x0000
bRefresh = 0x0000
bSynchAddress = 0x0000
Endpoint 1
bLength = 0x0007
bDescriptorType = 0x0005
bEndpointAddress = 0x0001 <OUT>
bmAttributes = 0x0002 <BULK>
wMaxPacketSize = 0x0200
bInterval = 0x0001
bRefresh = 0x0000
bSynchAddress = 0x0000
Shouldn't I be seeing multiple configurations?
Shouldn't I be seeing Product ID 0x7e3d?
I have very little experience with this, but it seems to me that I would not be able to do a mode switch on this given that it the OS is unaware of the other configs. Am I right?
If this device is truly supported, what else could I do?