RTL8188EU wireless usb dongle is recognized but will not configure/tether as an interface
-
Hi, I'm having trouble getting pfsense 2.5.2 to recgonize a USB wireless dongle as a wlan interface. It seems to me this chipset is supported and should work with pfsense 2.5.2. I would appreciate any help diagnosing and fixing the problem (or my assumption that this hardware should work).
Hardware:
- PC Engines apu2e4, has been running 2.5.2 and earlier versions happily for months. Boots off hard drive. No other hardware or peripherals (board has 3 NICs).
- TP-Link "Wireless N Nano USB Adapter." Uses RTL8188EU chipset. New. Tested and working on Windows 11.
What I've learned and tried:
-
The relevant modules seem to be loaded (build into the kernel).
-
"usbconfig ... set_config 1" executes and has consequences but doesn't cause pfsense to recognize the dongle as an interface.
-
No observed difference between inserting the dongle after boot and booting with the dongle inserted.
-
I have no customizations to pfsense outside of normal operational configuration through the GUI.
Following are excerpts of an ssh shell session in which I show the above and what seems like relevant context. I've boldfaced the shell prompts. "(...)" in red means an omission and some comments are in red in parentheses (I can't figure how to colorize square brackets).
The full shell prompt is:
[2.5.2-RELEASE][admin@Bluebird.manage.RP]/root:
abbreviated below to just:
root:root: uname -a
FreeBSD Bluebird.manage.RP 12.2-STABLE FreeBSD 12.2-STABLE fd0f54f44b5c(RELENG_2_5_0) pfSense amd64(immediately after boot with the dongle inserted)
root: dmesg
(...)
xhci0: <AMD FCH USB 3.0 controller> mem 0xf7f22000-0xf7f23fff irq 18 at device 16.0 on pci0
xhci0: 32 bytes context size, 64-bit DMA
usbus0 on xhci0
usbus0: 5.0Gbps Super Speed USB v3.0
ahci0: <AMD Hudson-2 AHCI SATA controller> port 0x4010-0x4017,0x4020-0x4023,0x4018-0x401f,0x4024-0x4027,0x4000-0x400f mem 0xf7f25000-0xf7f253ff at device 17.0 on pci0
ahci0: AHCI v1.30 with 2 6Gbps ports, Port Multiplier supported with FBS
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ehci0: <AMD FCH USB 2.0 controller> mem 0xf7f26000-0xf7f260ff irq 18 at device 19.0 on pci0
usbus1: EHCI version 1.0
usbus1 on ehci0
usbus1: 480Mbps High Speed USB v2.0
(...)
ugen0.1: <0x1022 XHCI root HUB> at usbus0
ugen1.1: <AMD EHCI root HUB> at usbus1
Root mount waiting for:uhub0: usbus0 CAM usbus1
<0x1022 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
uhub1: <AMD EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
uhub0: 4 ports with 4 removable, self powered
Root mount waiting for: usbus0 CAM usbus1
ugen0.2: <Realtek 802.11n NIC> at usbus0
rtwn0: <Realtek 802.11n NIC, class 0/0, rev 2.00/0.00, addr 1> on usbus0
uhub1: 2 ports with 2 removable, self powered
rtwn0: MAC/BB RTL8188EU, RF 6052 1T1R
ugen1.2: <vendor 0x0438 product 0x7900> at usbus1
uhub2 on uhub1
uhub2: <vendor 0x0438 product 0x7900, class 9/0, rev 2.00/0.18, addr 2> on usbus1
uhub2: 4 ports with 4 removable, self powered
Root mount waiting for: CAM
(repeats)
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <Hoodisk SSD SBFM01.3> ACS-4 ATA SATA 3.x device
(...)
(LAST FIVE LINES - for reference later)
load_dn_sched dn_sched FQ_PIE loaded
load_dn_aqm dn_aqm CODEL loaded
load_dn_aqm dn_aqm PIE loaded
ovpnc3: link state changed to UP
ovpnc4: link state changed to UP(THE USB INTERFACE IS NOT LISTED; grep here just omits the details of each IF)
root: ifconfig | grep '^[a-zA-Z1-9]'
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
enc0: flags=0<> metric 0 mtu 1536
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
pflog0: flags=100<PROMISC> metric 0 mtu 33160
pfsync0: flags=0<> metric 0 mtu 1500
igb1.2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb2.20: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb1.52: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb1.200: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb1.1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
igb2.5: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ovpns1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
ovpns2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
ovpnc3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
ovpnc4: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500root: usbconfig
ugen0.1: <0x1022 XHCI root HUB> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen1.1: <AMD EHCI root HUB> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.2: <Realtek 802.11n NIC> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen1.2: <vendor 0x0438 product 0x7900> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (100mA)root: usbconfig -d ugen0.2 set_config 1
root: dmesg | tail -5
load_dn_aqm dn_aqm CODEL loaded
load_dn_aqm dn_aqm PIE loaded
ovpnc3: link state changed to UP
ovpnc4: link state changed to UP
rtwn0: at uhub0, port 4, addr 1 (disconnected)(The italicized last message line is new; the list of interfaces has not changed)
root: usbconfig -d ugen0.2 set_config 0
root: dmesg | tail -5
ovpnc3: link state changed to UP
ovpnc4: link state changed to UP
rtwn0: at uhub0, port 4, addr 1 (disconnected)
rtwn0: <Realtek 802.11n NIC, class 0/0, rev 2.00/0.00, addr 1> on usbus0
rtwn0: MAC/BB RTL8188EU, RF 6052 1T1R(So set_config back to 0 gives the same two lines emitted to messages during boot)
root: kldload rtwn
kldload: can't load rtwn: module already loaded or in kernel
root: kldload rtwn_usb
kldload: can't load rtwn_usb: module already loaded or in kernel
root: kldload rtwn_rtl8188eufw_fw
kldload: can't load rtwn_rtl8188eufw_fw: module already loaded or in kernelroot: kldstat
Id Refs Address Size Name
1 21 0xffffffff80200000 3aea720 kernel
2 1 0xffffffff83f21000 1000 cpuctl.ko
3 1 0xffffffff83f22000 2698 intpm.ko
4 1 0xffffffff83f25000 b40 smbus.ko
5 1 0xffffffff83f26000 8cb0 aesni.ko
6 1 0xffffffff83f2f000 10e18 dummynet.ko -
Did you create a WLAN interface from it first in Interfaces > Assignments > Wireless ?
-
-
@stephenw10 I want to do that! But the device is not on the list of available interfaces. The output of ifconfig [given above] is the same list of (device) interfaces available in the console and web (user) interfaces. If there's a shell command I should do such as "ip link add link ..." then that is the information I am lacking. Momentarily will add usbconfig details which I forgot in first post.
-
-
@msswift OK well, the little "add" button there is the trick. Thank you! I had been working from the command line and then only in the "interface assignments" page.
I would like to know what is the command-line equivalent of the wireless "add interface" button does, for future understanding.
thank you again,
Matthew -
Available wifi interfaces are shown by the sysctl:
[22.01-RELEASE][root@pfSense.home.arpa]/root: sysctl -n net.wlan.devices ath0
See: https://docs.freebsd.org/en/books/handbook/advanced-networking/#network-wireless
Steve