Jump to content

rtl88x2bu support in Armbian


Recommended Posts

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.

 

Well, it turns out that the driver at https://github.com/jeremyb31/rtl8822bu works straight up.  I followed tkaiser's directions here:

 

 

...but changed "8812au" to "8822bu".  Commands executed cleanly.  I blacklisted 88XXau and rebooted, and everything worked great.  And, I got the signal I needed, so it was worth the effort.

 

Anyway, I just thought it might be worth to include this driver in future builds of Armbian.  Consider this a "testimonial"  :-)

 

Oh, BTW:  NanoPi Neo, Armbian 5.85, Linux 4.19.38-sunxi, Stable.

 

Link to comment
Share on other sites

16 hours ago, richardk said:

Anyway, I just thought it might be worth to include this driver in future builds of Armbian.  Consider this a "testimonial"  :-)


If we want to include it as we are including 8812AU it has to be maintained better. Things like https://github.com/jeremyb31/rtl8822bu/commit/04abf4d089f1c93b40502f150f0a06e29006f2f1 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.

Link to comment
Share on other sites

Hi all.

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?

 

 

For others who need this driver:

Go to : sudo armbian-config -> software -> install headers

Download the zip file : https://github.com/cilynx/rtl88x2BU_WiFi_linux_v5.3.1_27678.20180430_COEX20180427-5959

Unzip

You'll also need to install dkms :  sudo apt install dkms

Then follow the instructions in the readme file in the rtl88... folder

cd rtl88x2BU_WiFi_linux_v5.3.1_27678.20180430_COEX20180427-5959
VER=$(sed -n 's/\PACKAGE_VERSION="\(.*\)"/\1/p' dkms.conf)
sudo rsync -rvhP ./ /usr/src/rtl88x2bu-${VER}
sudo dkms add -m rtl88x2bu -v ${VER}
sudo dkms build -m rtl88x2bu -v ${VER}
sudo dkms install -m rtl88x2bu -v ${VER}
sudo modprobe 88x2bu

 

Link to comment
Share on other sites

9 hours ago, NicoD said:

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 ...

Link to comment
Share on other sites

In principle this is needed:

Spoiler

diff --git a/lib/compilation.sh b/lib/compilation.sh
index 7a35cc5c..06c3723f 100644
--- a/lib/compilation.sh
+++ b/lib/compilation.sh
@@ -318,6 +318,28 @@ compile_kernel()
                $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/Kconfig
        fi
 
+       # add drivers for Realtek 88x2bu chipsets
+        if linux-version compare $version ge 3.14 && [ "$RTL8812AU" == yes ]; then
+                display_alert "Adding" "Wireless drivers for Realtek 88x2bu chipsets" "info"
+                rm -rf $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu
+                mkdir -p $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu/
+                cp -R $SRC/cache/sources/rtl8812au/{core,hal,include,os_dep,platform} $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu
+
+                # Makefile
+                cp $SRC/cache/sources/rtl88x2bu/Makefile $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu/Makefile
+                cp $SRC/cache/sources/rtl88x2bu/Kconfig $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu/Kconfig
+
+                # Adjust path
+                sed -i 's/include $(src)\/hal\/phydm\/phydm.mk/include $(src)\/drivers\/net\/wireless\/rtl88x2bu\/hal\/phydm\/phydm.mk/' \
+                $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/rtl88x2bu/Makefile
+
+                # Add to section Makefile
+                sed -i '/obj-$(CONFIG_.*ATMEL).*/a obj-$(CONFIG_RTL8822B) += rtl88x2bu/' \
+                $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/Makefile
+                sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl88x2bu\/Kconfig"' \
+                $SRC/cache/sources/$LINUXSOURCEDIR/drivers/net/wireless/Kconfig
+        fi
+
        # create linux-source package - with already patched sources
        local sources_pkg_dir=$SRC/.tmp/${CHOSEN_KSRC}_${REVISION}_all
        rm -rf ${sources_pkg_dir}
diff --git a/lib/main.sh b/lib/main.sh
index 2803f9c3..5bbd1465 100644
--- a/lib/main.sh
+++ b/lib/main.sh
@@ -265,6 +265,7 @@ if [[ $IGNORE_UPDATES != yes ]]; then
        fetch_from_repo "https://github.com/armbian/odroidc2-blobs" "odroidc2-blobs" "branch:master"
        fetch_from_repo "https://git.zx2c4.com/WireGuard" "wireguard" "branch:master"
        fetch_from_repo "https://github.com/aircrack-ng/rtl8812au" "rtl8812au" "branch:v5.2.20"
+       fetch_from_repo "https://github.com/cilynx/rtl88x2BU_WiFi_linux_v5.3.1_27678.20180430_COEX20180427-5959" "rtl88x2bu" "branch:master"
        fetch_from_repo "https://github.com/armbian/testings" "testing-reports" "branch:master"
 fi

 


... but it doesn't work OOB. Now one need to figure out why a module is not made ... Its some discrepancy in the Makefile. I have little time/wish to proceed from here.

Link to comment
Share on other sites

1 hour ago, Tido said:

could this be tagged as low hanging fruit on github issues for newcomers?

 

Not tagging anything? Armbian is not Linux wireless networking project.

 

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.

Link to comment
Share on other sites

Hi richark,

would you mind to post detailed steps you realized?

I’m also trying to install the rtl8822bu for my to-link archer T3U. I’m working with the 4.4 kernel image but may be the 5.1 kernel image are working better?

thanks for your help

Link to comment
Share on other sites

On 6/18/2019 at 5:47 PM, hein said:

I’m working with the 4.4 kernel image but may be the 5.1 kernel image are working better?


If you build new image (LIB_TAG="cosmetics" EXPERT="yes") or kernel it will work out of the box. If you wait a while it will come with an update.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines