Hello all,
I write this topic to be my guide in future reference and maybe some help for other linux noobies like myself.
A the beginning my idea was to use AMLogic box to use Octoprint and 3d party software called Klipper for my DIY 3d prinetr.
Quick search in google shows that it is doable but there are old topics, posts and old images for s905 processors.
At first I had started with newer images from @balbes150 like Armbian_5.98_Aml-g12_Ubuntu_bionic_default_5.3.0_desktop_20191002.img and tried to start WIFI.
Like many other before me I tried modprobe wifi_dummy .. etc and nothing good happened - complete linux noob.
After trying with numerous images i bought wifi usb dongle with Realtek RTL8188FTV - nothing....
Everywhere there were some whispers - " you need to compile driver " , " you need to compile from source " , " you need to install headers " - DEVILS voice I must say.
So i started to digging dipper and with struggle I had managed to enable build-in RTL8189ES and usb dongle.
Many thanks to others before me, especially to @balbes150 for great work, and Chris Riley from his YT chanell, and creator of Klipper - KevinOConnor
To be honest I`m not completely understand what I`m doing but it is working for some reason :]
I`m using Armbian_5.98_Aml-g12_Ubuntu_bionic_default_5.3.0_desktop_20191002.img. This was my steps:
1. After properly installing on sd card and setting user and password I connected to the box with putty - it is more convenient because i had only small BT air mouse/keyboard
2. Then like armbina DOCs says https://docs.armbian.com/User-Guide_Advanced-Features/#how-to-build-a-wireless-driver):
sudo armbian-config
Software -> install kernel headers ,
you could also already apt get update here
exit
cd /usr/src/linux-headers-$(uname -r)
make scripts
3. I had use guides from this post
apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev
git clone https://github.com/150balbes/Amlogic_s905-kernel.git
cd Amlogic_s905-kernel
make oldconfig
make prepare
make modules_prepare
touch Module.symvers
I didn`t change utsrelease.h with sudo nano include/generated/utsrelease.h
cd ..
git clone https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git
cd wireless-regdb && cp regulatory.db regulatory.db.p7s /lib/firmware/
cd ..
4. For the USB dongle with RTL8188FTV :
git clone https://github.com/kelebek333/rtl8188fu.git
cd rtl8188fu
we need to change some EXTRA_CFLAGS too and I think it is self explanatory, just add the missing lines, remove #:
nano Makefile
EXTRA_CFLAGS += -Wno-error=incompatible-pointer-types
EXTRA_CFLAGS += -Wno-incompatible-pointer-types
EXTRA_CFLAGS += -Wno-vla
EXTRA_CFLAGS += -Wno-error=date-time
(exit with ctrl+x)
And now second difference form post above - we use different image so we have lib/modules/5.3.0-aml-g12 but we can use uname -r
make ARCH=arm64 KSRC=../Amlogic_s905-kernel CONFIG_POWER_SAVING=n
sudo install -p -m 644 rtl8188fu.ko /lib/modules/$(uname -r)/kernel/drivers/net/wireless
/sbin/depmod -a
sudo modprobe rtl8188fu
And Voila!
now we can use nmtui to activate and config new connection so hit it in terminal:
nmtui
5. For RTL8189ES
cd ~
git clone https://github.com/pazulin/rtl8189ES_linux.git
it has fix for 5.3 kernell
cd rtl8189ES_linux
change EXTRA_CFLAGS like above
nano Makefile
EXTRA_CFLAGS += -Wno-error=incompatible-pointer-types
EXTRA_CFLAGS += -Wno-incompatible-pointer-types
EXTRA_CFLAGS += -Wno-vla
EXTRA_CFLAGS += -Wno-error=date-time
(exit)
make ARCH=arm64 KSRC=../Amlogic_s905-kernel CONFIG_POWER_SAVING=n
sudo install -p -m 644 8189es.ko /lib/modules/$(uname -r)/kernel/drivers/net/wireless
/sbin/depmod -a
sudo modprobe 8189es
After that nmtui works and no need to add modprobe to autostart etc.
6. For octorpint use:
https://community.octoprint.org/t/setting-up-octoprint-on-a-raspberry-pi-running-raspbian/2337
and if you would like to watch nice guide :
Then you only need to install Klipper and configure it also from nice guide:
cd ~
git clone https://github.com/KevinOConnor/klipper
./klipper/scripts/install-ubuntu-18.04.sh
rest on:
https://www.klipper3d.org/Installation.html#configuring-klipper