This page will explain about how to build cheap over power router with single board computer (TV Box Tanix TX6), the absolutly good price come with ton of functionality i’ve done make to run webserver, even LLM it chaped at 1t/s at 0.3b.

Avatar

Zuhri

  |  4 min reads

Introduction #

The reason why is, this device have capability refers by here it say;

Specifications:

  • SoC: H6 Allwinner 1.8GHz
  • DRAM: 2/4GiB DDR3 @ 667MHz/800MHz
  • NAND: 16/32/64GB
  • POWER: DC 5V @ 2A
  • HDMI (Type A - full)

Features:

  • Video: HDMI (Type A - full)
  • Audio: HDMI, SPDIF
  • Network:
    • Wifi: 802.11 b/g/n/ac (47822BS-10 or RTL8822CS) or 802.11 b/g/n (XRadio XR819)
    • Ethernet: 10/100Mbps Ethernet (Manufacture Device)
  • Storage: MicroSD, eMMC
  • USB: 2 x USB-2.0, 1 x USB-3.0

Refers to that, that device absolutly beast! i bought this one just about 10$ like new of course, and just for information this site operated by it device, this server is my router btw. it running on 5GHz wifi as dump AP now. but not just that! this router running my Adguardhome DNS as a sinkhole. so, opensource power!

Before we go to the installation something you need to see is behind this product the label version! mine is, coded with just TX6 which mean 4/32gb with AC wifi support rtl8822bs (most important) you can see here.

Methodology #

Requirements #

Something you need before executing this device.

  • MicroSD
  • The device of course
  • Do with your own risk

Installation #

I will not explain about how to install the OS cuz i’ve been here, just burn it and flash to eMMC or you can run it on microsd, after that you need to convert this armbian into dietpi as i’ve done too here.

make sure this device connected to the internet.

After that you need to download kernel source on my git repo, but if you dont know how to put in yours, type this command.

mkdir kernel; cd kernel
wget https://github.com/twentysevns/tanix-tx6-armbian-kernel/releases/download/main/linux-image-legacy-sunxi64_25.2.1_arm64__6.1.104-S3679-D7b0b-P6b8d-Ccbc8Hec47-HK01ba-Vc222-B8de6-R448a.deb
wget https://github.com/twentysevns/tanix-tx6-armbian-kernel/releases/download/main/linux-headers-legacy-sunxi64_25.2.1_arm64__6.1.104-S3679-D7b0b-P6b8d-Ccbc8Hec47-HK01ba-Vc222-B8de6-R448a.deb

After you’ve done, you need to replace your current kernel with this command, Then reboot!

dpkg -i linux-image-legacy-sunxi64_25.2.1_arm64_6.1.104-S3679-D7b0b-P6b8d-Ccbc8Hec47-HK01ba-Vc222-B8de6-R448a.deb

Have done yet? if yes, then you need to install headers pakages

apt install make gcc libc6-dev bison flex libssl-dev libelf-dev
dpkg -i ~/kernel/linux-headers-legacy-sunxi64_25.2.1_arm64__6.1.104-S3679-D7b0b-P6b8d-Ccbc8Hec47-HK01ba-Vc222-B8de6-R448a.deb

The reason we use legacy (oldkernel) because the recent build (main build) of armbian aren’t capable to install wifi driver with AP mode, it always say segmentation fault.

Then hold the kernel with headers pkg to prevent from update, if you update it the wifi will gone and if you try to install with updated kernel maybe it will say segmentation fault too.

apt-mark hold linux-image-legacy-sunxi64 linux-headers-legacy-sunxi64

Kernel have been setup, something you need now the wifi driver.

apt install git
git clone https://github.com/twentysevns/rtl8822bs

Then compile the driver, and install it.

make -j$(nproc)
sudo make install
sudo modprobe 88x2bs

Then check the result with ip or ifconfig, if show like this wlan0 then you are done.

root@serve:~# uname -a
Linux serve 6.1.104-legacy-sunxi64 #1 SMP Sun Aug 11 17:36:02 WIB 2024 aarch64 GNU/Linux
root@serve:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 02:03:71:f1:e4:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.2/24 brd 192.168.2.255 scope global dynamic eth0
       valid_lft 28181sec preferred_lft 28181sec
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 94:e0:d6:d8:c5:20 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.1/24 brd 192.168.0.255 scope global wlan0
       valid_lft forever preferred_lft forever

Aren’t done yet! after you install the wifi, then how to build a powerfull router? you can refers over here or my posts, if you refers to my post! please do like i’ve been mentioned before in up there.

Alright next step, the wifi have been configured! then, lets we create Overpower Router like mine with dietpi.

dietpi-software

find wifi-hotspot then install it.

The default SSID and Password config is.

SSIDPASSWD
DietPi-HotSpotdietpihotspot

But if you wanna make changes to this configuration, you need to ssh login into device, then type dietpi-config. find menu about Network adapter, then go to Hotspot.

et cetera.

Supported interface modes:
		 * IBSS
		 * managed
		 * AP
		 * P2P-client
		 * P2P-GO
Interface wlan0
	ifindex 3
	wdev 0x1
	addr 94:e0:d6:d8:c5:20
	ssid twentysevns
	type AP
	wiphy 0
	txpower 12.00 dBm

The end #

Alright, thank you.