Solved DWA-121 doesn't get an interface

So I have a DWA-121 USB wifi adapter. Its vendor/product ids are in kernel source code (14.3), I checked. When plugged in, it is assigned a usb ugen id, but not any sort of interface, like normally (as seen in dmesg).

I'm stumped.
 
The USB adapters I dealt with in the past required firmware so there were setting needed in loader.conf. {run,ran wifi}
It comes down to how the firmware blobs are handled in the driver.

You need this in loader:
if_rtwn_usb_load="YES"
 
If you look at /boot/kernel you can see the kernel modules.
rtwn.ko is the main driver module. When you load that it probably matches it with a firmware and loads.
The firmwares for the module are:
Code:
# ls -1 /boot/kernel/rtwn*
/boot/kernel/rtwn-rtl8188eefw.ko
/boot/kernel/rtwn-rtl8188eufw.ko
/boot/kernel/rtwn-rtl8192cfwE.ko
/boot/kernel/rtwn-rtl8192cfwE_B.ko
/boot/kernel/rtwn-rtl8192cfwT.ko
/boot/kernel/rtwn-rtl8192cfwU.ko
/boot/kernel/rtwn-rtl8192eufw.ko
/boot/kernel/rtwn-rtl8812aufw.ko
/boot/kernel/rtwn-rtl8821aufw.ko
/boot/kernel/rtwn.ko
So to hand load it you can try
kldload rtwn and see what the console messages show.
ifconfig wlan0 up
ifconfig wlan0 scan
The wpa_supplicant file can be tough to setup. bsdconfig wifi can be helpful for adding access points.

Needed /etc/rc.conf settings for a DHCP network connection:
wlans_rtwn0="wlan0"
ifconfig_wlan0="WPA DHCP"
 
Many times a USB only network connection needs longer to load than normal on bootup.
A netwait setting delays your bootup to allow time for wifi to connect and get dhcp address.

This adds a 45 second delay for wifi setup. If wifi is setup sooner rc system aborts the delay and proceeds. You can adjust this delay time to your wifi adapters needs.
/etc/rc.conf
Code:
netwait_enable="YES"            # Enable rc.d/netwait (or NO)
netwait_if="wlan0"                      # Wait for active link on each intf in t
netwait_if_timeout="45"         # Total number of seconds to monitor link state.
 
Ok, something is not right.

This is my kldstat:
Code:
 5    2 0xffffffff82170000    26348 rtwn.ko
 6    1 0xffffffff82197000     61d8 rtwn-rtl8188eufw.ko
 8    1 0xffffffff821ae000    19fb8 if_rtwn_usb.ko

This is my usbconfig:
Code:
ugen1.1: <EHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.1: <EHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.2: <Integrated Rate Matching Hub Intel Corp.> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.2: <Integrated Rate Matching Hub Intel Corp.> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
...
ugen1.6: <product 0x331b D-Link Corp.> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)

This is the only thing that dmesg spits out when this device is plugged in:
ugen1.6: <Realtek product 0x331b> at usbus1

:confused:
 
I would like to see a system where users could submit thier VID+PID to a website and we do a quarterly cull of the results. Bounce against credible sources do PR and add products to -CURRENT.
More automation and less single picking.

Scorpion looks like some serious business.
 
Back
Top