Jump to content

X96 (S905x) - driver RTL8189ES and RTL8188FTV for Octoprint and Klipper 3d printer


toonek

Recommended Posts

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

 

Link to comment
Share on other sites

Hello, I have running armbian on S905X tv box and already installed octoprint and klipper, it was running great with my tarantula pro printer.
is there any ways to control usb power through octoprint? I dont want my printer screen always turn on when not used.

Link to comment
Share on other sites

Hi there,

I've a device with similar configuration, and tried to download kernel headers with no success.

Is there any other place or option to do the job ?

 

I have  a question in my mind for a long long time :

why there is not a step by step guide to integrate wifi drivers to armbian versions?

where is the botle neck ?

I see a lot of people are interested in but hadn't find a way to do this.

 

I want to write a suitable instruction for my device atleast.

could you please give me a hand?

@toonek

@balbes150

Link to comment
Share on other sites

hi

yeah!

I think there numerous guys outside witch are interested in getting wifi to work(as i said: atleast for 8189es)

so if i have had access to  source of kernel header, i could have right a visual instruction to.

p.s: yesterday i doscovered the latest firmware (20.05.10 )added support for, but i'm at the first

place to help if possible.

so try me, i wont let you down :-)

 

finally : The latest version is AWESOME !!!   really eye catching !

I dont use desktop usually but i cas see a big work behind.

 

so Thank you all for all the hard work.

wish you best.

Link to comment
Share on other sites

49 minutes ago, amirdelta said:

so if i have had access to  source of kernel header, i could have right a visual instruction to.

You do have access to the source for these builds:  https://github.com/150balbes/Build-Armbian and https://github.com/150balbes/Amlogic_s905-kernel (actually these git trees are usually a few days behind the most recent balbes150's builds as he waits for code changes to stabilize before pushing them back to these github trees)

I would recommend you start by pulling the Build-Armbian environment, and building the equivalent of what you currently have installed.  You will see that the build system creates the kernel header package as part of the build process.  Then you can experiment with improvements and contribute back to the overall community.

Link to comment
Share on other sites

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

Important Information

Terms of Use - Privacy Policy - Guidelines