Problem with Edimax wifi dongle on Pi

I can download my Balena image to a Raspberry Pi ZeroW, and it connects fine.

When I use a Pi Zero (without the built-in wifi), if I use an Edimax (Realtek) wifi dongle it doesn’t connect, or even light up, and (going in through the console) it doesn’t seem to be finding the rtl8192cu driver for it.

It’s seeing the device, but not finding the driver:

[    2.705093] usb 1-1: New USB device found, idVendor=7392, idProduct=7811                                    
[    2.713584] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3      
[    2.722297] usb 1-1: Product: 802.11n WLAN Adapter                                                          
[    2.728656] usb 1-1: Manufacturer: Realtek                                                                  
[    2.734286] usb 1-1: SerialNumber: 00e04c000001              

I would expect to see: ’ usbcore: registered new interface driver rtl8192cu’ after this.

If I use the Official Raspberry Pi (Broadcom) wifi dongle, that works fine:

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=brcmfmac, 480M

I see there’s an ‘rtl8xxxu.ko’ driver in /lib/modules/4.14.98/kernel/drivers/net/wireless/realtek/rtl8xxxu
is that not quite the right one, maybe?
That’s exhausted my knowledge on device drivers.

What can I do to get it to see my Edimax WiFi dongle, please?

Hi,

This is a list of supported wifi dongles: https://www.balena.io/docs/reference/hardware/wifi-dongles/.

The official RPi dongle is on the supported list.

If you want additional supported dongles you should clone the https://github.com/balena-os/balena-raspberrypi repo, activate the driver and build the image.

Regards!

Hi,
thanks for the response.
I see it mentions:
Generally speaking, WiFi devices listed over at the elinux rpi wifi page or devices which use one of the linux-firmware-ath9k, linux-firmware-ralink and linux-firmware-rtl8192cu firmwares should work correctly.
The rtl8192cu is what the Edimax device uses (as well as the Adafruit dongle mentioned in that list also), so I’m surprised it’s not finding it.

When you say “activate the driver” do you mean in /etc/modules.d/modules.conf ? (just checking!)

Hi,

The rtl8xxxu.ko seems to be the module you need, but it’s not contained in our OS.

When I said to activate the driver I meant to activate the kernel config specific for that driver.

I think it’s CONFIG_RTL8XXXU and you would need to add it like this:

Regards!

Thanks -
there does seem to be an ‘rtl8xxxu.ko’ driver in /lib/modules/4.14.98/kernel/drivers/net/wireless/realtek/rtl8xxxu

in your current Pi 0/1 base OS.

I’ll have a look at a custom build, but it would be great if it was supported out of the box, of course :slight_smile:

Hi,
There is also the kernel-module-build (https://github.com/balena-io-projects/kernel-module-build), which could be one of your services, that builds this module as a driver and loads it. Maybe this is more convenient to try first, but I’m not a kernel expert, so I might be missing some knowledge and difference to the suggestion to make a custom OS build.

Ah I just realized, that won’t help you, because the device would already need the application in order to get the network device up and running. So you might have to preload the application in that case as well.

Thanks - we’ll have a look at the kernel-module-build.
Yes, a bit of a catch-22 there, isn’t it :confused:.

Anyway, in general PiZeroW and Pi3 are the way to go, with their built-in WiFi, but it would be good to work out a way to support older boards with these dongles in them.

Yeah, let us know if any of the options works for you or if you run into other problems.

Just in case anyone else runs into a problem with Edimax dongles. I noticed that my older Edimax dongle works fine on RPi with balena 2.26 but not with 2.48 (raspberry-pi-2.48.0+rev1-v10.8.0.img) for example. If I explicitly show outdated versions and choose a 2.26 (raspberry-pi-2.26.0+rev1-dev-v8.0.0.img) it works.

1 Like

Hi @joscha, what is the particular RPi model you are using? Also can you please run usb-devices in a host OS terminal and paste here the information about the Edimax dongle?
Thanks,
Zahari

The exact model is: IC:4701A-78111306

The output of usb-devices (on a 2.26.0 rev where it works) is:

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev=04.14
S:  Manufacturer=Linux 4.14.68 dwc_otg_hcd
S:  Product=DWC OTG Controller
S:  SerialNumber=20980000.usb
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480 MxCh= 5
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=02 MxPS=64 #Cfgs=  1
P:  Vendor=0424 ProdID=9514 Rev=02.00
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=2mA
I:  If#=0x0 Alt= 1 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=02 Driver=hub

T:  Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  3 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0424 ProdID=ec00 Rev=02.00
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=2mA
I:  If#=0x0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=ff Driver=smsc95xx

T:  Bus=01 Lev=02 Prnt=02 Port=04 Cnt=02 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=7392 ProdID=7811 Rev=02.00
S:  Manufacturer=Realtek
S:  Product=802.11n WLAN Adapter
S:  SerialNumber=00e04c000001
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA
I:  If#=0x0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8192cu
```

Hi Joscha, I think I know the reason this one is not working anymore. The in-kernel driver for this chipset was not working well so it was blacklisted - https://github.com/balena-os/balena-raspberrypi/issues/160. The newer driver does not seem to be loaded or something. I will discuss this issue with my colleagues and we will follow up with more information soon.
Thanks,
Zahari

Reenabling it would be great, so I can move on from 2.26 to the latest version!

Sorry for the late response. Apparently there were number of issues with the in-tree driver and we will need to retest everything again. This would be the issue for following this: https://github.com/balena-os/balena-raspberrypi/issues/420. I will post an update here as well once this is resolved.

hi @majorz, just wondering if any update on the edimax drivers? Thanks

No, I have not got any time to look into this.