When I first got it to work I used the driver signing method to get it to work with Secure Boot. It worked fine with Kernel version 4.4.0-23-generic and later also with 4.4.0-24-generic where I resigned it after the update.
The Additional Drivers tool now shows me this, so I am not sure if somehow the module files got messed up. I am pretty new to Ubuntu, so I wouldn't know how to tell.When it was still working it showed me this.
sudo lshw -C network only shows me the Ethernet and the internal WiFi (it has a very similar name). It is an integrated WiFi adapter which is working poorly under Ubuntu and is thus not useful for me.
Here is a quick script that I wrote to manually fix a broken rtl8812au-dkms driver issue that occurs after every kernel software update. Run the script with sudo after a kernel software update has occurred. The problem with this driver is that dkms builds it for the wrong kernel. It's a problem with dkms.conf, in the source code. I may have a permanent fix pending.
Update: the user was also using an older version of the 8812au driver, so we installed the current version of rtl8812au-dkms from the repositories, and it all worked. The script will be required immediately after the next kernel software update.
I preach you should use kernel modules that are fully signed and compiled to the right version... then I sin and force a module in that I can't figure out how to sign (I'm security-challenged). Indeed before learning dkms I think I must have digressed and forced the wrong kernel version in before (but hey it still worked!).
I have had a problem with the 8812au driver. My dongle is a Linksys WUSB6300 on openSUSE 15.3
I had read on another thread that secured boot has to be disabled for the module to load, which does seem to be accurate. Per instructions previously received, here is the output of lsusb:
The link in the Yast description of the driver points to a git hub version of the driver that is marked as obsolete, but that may not be an updated URL. I asked the git hub developer and he states that he is unaware of the problem and that it should work with secure boot, but that DKMS needs to be enabled.
DKMS has absolutely nothing to do with secure boot. You need to sign module with your key and enroll corresponding certificate into firmware. You did not explain where your driver comes from or how you built it so it is impossible to say anything more specific.
I've setup a Raspberry Pi 3+ which has a WiFi dongle and onboard WiFi to do this. The WiFi dongle is an AC600 with the 8812au chipset, requiring compiled kernel drivers, which I compiled installed. This is my wlan0, the onboard chipset is wlan1.
When I follow your guide and use the onboard as the AP, everything works fine. However, when I switch them around, and try to use wlan0 as my AP (which is the intention), then the access point doesn't get setup. When I inspect the journal I find:
One time you are switching the interfaces wlan0 and wlan1 and another time when referencing the instructions behind the link you have given, it is unclear if you also switch them. Raspbian always uses wlan0 for its on-board wifi chip by default. To not get confused please let us use wlan0 for the on-board wifi chip and wlan1 for your USB/wifi dongle, no matter what is used for an access point and for the client connection. It also fits to the naming of the physical devices phy0 and phy1. Following this you want to use wlan1 as access point but it doesn't work.
Using wlan0 as access point is working. It is unclear if the uplink client connection with wlan1 is also working in this case. Please ensure that it will do. Using the USB/wifi dongle for the client connection should be less error prone so you can better check if the compiled driver is working. If it is running then in the next step you can switch the usage of wlan0 and wlan1.
You will get a bunch of information. Please only look at the sections Supported interface modes:, Supported commands: and valid interface combinations:. Please edit your question and paste them into it.
Now, after each reboot, my wifi adapter is disabled and to get it working again, I have to go back to the source directory of rtl8812au driver (I go to the original dir, not the dkms-made one), ensure that make has been run for this kernel, and run insmod 8812au.ko. At this point, my adapter fires up and works until the next boot.
I am not familiar with RTL8812au, but I managed to set up a ath9k dongle driver for the Zybo Z7-20 with petalinux. For the ATH9K it's easier because it has the driver in the kernel you just need to activate it. Regarding the RTL8812au all I can tell you from experience is that some Wireless dongles need additional firmware, like the ATH9K, which will be loaded in to the wireless automatically over USB, provided you set up your USB port to identify mass storage devices. These should be copied in to the corresponding folder on the rootfs of your target.
Another critical issue is the driver dependencies, some Wireless drivers need to have certain Kernel drivers loaded in order for them to work, like the MAC80211 stack in the Kernel for instance. Please make sure that your driver is not depended on anything else. Based on the log you have sent us, I would start with this.
I am not familiar with RTL8812au, but I managed to set up a ath9k dongle driver for the Zybo Z7-20 with petalinux. For the ATH9K it's easier because it has the driver in the kernel you just need to activate it. Regarding the RTL8812au all I can tell you from experience is that some Wireless dongles need additional firmware, like the ATH9K, which will be loaded in to the wireless automatically over USB, provided you set up your USB port to identify mass storage devices. These should be copied in to the corresponding folder on the rootfs of your target.
Thank you very much for your reply! My teacher asked me to modify the Makefile and then use the cross-compilation toolchain to compile the WiFi driver. For example, modify CC=gcc, AR=ar, KSRC, ARCH etc.
My teacher limited me to make the WiFi AP in the above way, even though I have been able to configure the wifi driver in the
It seems to me that you teacher has asked you to write a kernel driver from scratch (more or less) for a wireless module. Depending on what he expects the driver module to contain, you could either write only the driver for the module it self (RTL8812au for example) or the module and the corresponding dependencies which will make development very hard because you will need to integrate a lot in to the kernel.
I have unfortunately no experience with WiFi kernel driver development, but I would take it one step at a time. Starting with understanding kernel drivers and what their role is and then looking over the WiFi kernel interface, you can read about this here, understanding the structure of it and then starting to write my own driver by looking at already existing one (RT3070 for example). I would also recommend to read about the various forms of kernel debugging like KGDB and how to do that or Xilinx has a brief step by step "tutorial" here about using Xilinx SDK for kernel debugging.
I bought a TP-Link AC1300 "High Gain" WiFi adapter, in order to try to get a connection between my house and my garage. I thought that the included rtl8812 driver was the right one, but it turns out the AC1300 is the "V3" version of the Archer T4U, and it requires the rtl8822 driver.
If we want to include it as we are including 8812AU it has to be maintained better. Things like has most likely be applied for kernel 5+ ... I know what to do, but don't have time to maintain this. If it's not maintained, compilations will break ... and that's not cool.
For my next camping trip I've bought a big USB3 2.4G/5G wifi antenna with the rtl88x2bu chip to have better camping wifi reception.
It didn't work out of the box in Armbian. I've installed it on all my images manually.
Question is if this driver can be baked into Armbian? It would save me a lot of work. And maybe many others too?
It depends on the driver maintenance quality. If this is more or less one time job, possible, but if I would need to patch the driver for this and that kernel ... this is out of question. While project is open, anyone can add this driver on example of 8812AU, tests on all kernels and add exceptions for where it doesn't ...
Adding 8812au was my side hobby project - to add driver which I needed ... and if someone needs some other driver inside the kernel, he/she use a working example of a similar driver and a process how to do it. That's it. I will not do anything more in this regard.
So, I used to use a different DKMS module for my USB wifi adapter called 8812au. Now I use rtl8812au which works. I've tried removing the old one, it's not installed or anything, but every time there's a kernel update, it tries to install it again (which doesn't work, because it doesn't exist).
Well how did you install it originally? If you didn't use pacman you practically set yourself up for this, if you don't have the original makefile where you could place a proper uninstall look into using lostfiles to identify files not belonging to a package.
The next step is to remove the item. The two pieces of info you need to take from the list are the name of the driver (8812au in this case) and the version number (4.2.3 in this case). You will then format your command this way:
64591212e2