ARMBIAN for Amlogic S905 and S905X (ver 5.44 =<)


Recommended Posts

Armbian is a community driven open source project. Do you like to contribute your code?

I want to install a very light headless linux on my A95X (2G/16G), images found here are fine (great work btw!), but i wish i had more control over what my installation will be.

Any advice on:

- steps for making my own image? (was thinking on simple kernel + initrd that already has the tools i need, self-contained)

- what should i compile and from where for my specific device?

- how can it be deployed?

Thanks!

Link to post
Share on other sites
On 3/4/2017 at 0:50 AM, Shimon said:

About the `dd_backup_x` script - it already hardcodes `pv` as a reqirement, so there's no reason not to use `pigz`, if present at least, for better performance .

  • pigz does a great job in compression part, but decompession is still single core ( correct me if things has changed ).
  • SD/USB read/write bandwidth may be a bottleneck to backup/restore operations even with pigz in action ( just a guess ).
  • I am testing a rikomagic MK36 the last 2 weeks, so i don't have easy access to my armbian box right now. Thus i don't know if balbes150 images have already installed pigz, but if it is, or if balbes150 wishes to include pigz in future images, we can create and test a new version of the script with pigz.

Thats all :D

Link to post
Share on other sites

few questions regarding A95X on my quest to a Linux from scratch

Is it possible to modify the partitions layout? I would like to keep a minimum number of them, what are the mandatory ones? I see cache and others i would like to get rid off and get the space.

I decompiled the dtb for my device and found the list, if i modify that is it enough or is the partition layout stored someplace else (U-Boot for eg.)?

How safe is to play around with the eMMC from a bricking perspective? Can the device be rescued with a defective partition layout or none at all? If i do for eg a dd if=/dev/zero of=/dev/mmcblk0 completely zeroing the eMMC can i still un-brick? This would mean U-Boot would be missing completely and everything else, but what will happen at start time? Will he still try to boot from an alternate storage (SD-Card or USB) or just simply halt and that's all.

What are the scenarios under which one needs to to that ugly fix of shorting the pins on the eMMC in order to unbrick?
 

Darn, i hate this ARM stuff (or ARM hates me)... x86, x86 where are thee?

 

Link to post
Share on other sites
6 hours ago, Ian Pat said:

Darn, i hate this ARM stuff (or ARM hates me)... x86, x86 where are thee?

 

x86 is here http://www.gearbest.com/tv-box-mini-pc/pp_562952.html?wid=21

 

Partitions are mostly android related (at least for the android image provided by the manufacturer), i don't know for sure but i remember seeing some emmc with non android scheme but if you get it wrong you'll brick your device.

 

if you clear your emmc you will brick the device, the same way you flash a wrong uboot to it.

uboot in on the emmc and it initiates alternate boot (sd / usb). i don't now about low level boot sequence (before uboot), it's usually related to your specific soc or arm platform. 

 

unbricking a really bricked device involves flashing the emmc with an external tool and usually making a hardware modification to the circuit (shorting pins, nand only ?).

 

but other more experienced users will tell you more about that..

 

 

 

 

Link to post
Share on other sites
On 4/1/2017 at 9:12 PM, balbes150 said:

Test versions images (20170401) server and mate  kernel 4.10.8. When run from SD card the system starts up and allows you to log in through the console UART. Network and USB does not work yet. Error with the eMMC. Note that these images are for experienced users only, if you would be willing to help with debugging and testing.

 

thx for those images i will test them shortly.

Do you need tests on both s905 and s905x (i also have s912), do you want testers to check for specific things ?

 

i'm using your latest 5.27 image on emmc, it seems to work fine, i haven't had time to try some fbset things to see if i can get hdmi output on my a95x (s905).

Link to post
Share on other sites
On 4/5/2017 at 5:47 PM, xXx said:
  • pigz does a great job in compression part, but decompession is still single core ( correct me if things has changed ).
  • SD/USB read/write bandwidth may be a bottleneck to backup/restore operations even with pigz in action ( just a guess ).

Pigz could be checked for and used if present (not installed in the default images). 

 

It's true decompression would be unaffected but it doesn't matter, as a single A53 core is powerful enough to provide enough throughput.  However, it's not true for compression, and backing up with pigz to a 10MB/s memory stick already offers a sizeable speedup (i.e. until you hit empty space).

 

@Ian Pat

You probably meant "where art thou"? ;)

Link to post
Share on other sites

I managed to get myself a new SD card Sandisk Ultra 32BG HC I Class 10 and i just put

Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img  on it.

I will mail the Rikomagic MK36 to its owner tommorrow ( fixed it :D ),

so i have some time again to spend with my mini M8S box and armbian.

First of all:

The gui error about mate-panel and trash ( KEEP / DELETE ) should be  gone if mate-applets

package was present in the default images. The error comes up because the default panel layout have

trash applet icon hardcoded in the far right of the bottom panel, but trash applet is not installed.

Also:

A good alternative image viewer for mate could be viewnior

I also remove at first start:

everything about xfce (mirage*, thunar*,lxtask*) also libreoffice*,mc*,thunderbird*,vim*

I also always install:

adwaita-icon-theme-full,gnome-themes-standard,gnome-themes-standard-data

in order to have a pleasant desktop, and mate-applets and viewnior at first boot.

Now:

I am going to make some tests with pigz and report the time savings :D

 

Link to post
Share on other sites

Here are the results for pigz VS gzip:

 

backup and compress

pigz 7752122368 bytes (7.8 GB, 7.2 GiB) copied, 193.749 s, 40.0 MB/s

gzip 7752122368 bytes (7.8 GB, 7.2 GiB) copied, 292.576 s, 26.5 MB/s

 

test the compressed backup

pigz 0m26.781s

gzip 1m18.495s

 

decompress

pigz 9m55.684s

gzip 9m51.756s

 

All in all pigz will be a good addition in the dd_backup script.

So if balbes150 feels like adding pigz in his images, he only have to do:

sed -i "s/gzip/pigz/g" /usr/sbin/dd_backup(_x)

and if decompession is also desired

sed -i "s/gunzip/unpigz/g" /usr/sbin/dd_backup(_x)

and compression step will be faster and maybe decompression also a bit (according to pigz man pages).

 

The only thing to be checked is if restoring will be working as expected ( should be, but not tested ).

Screenshot at 2017-04-06 18:24:48.png

Link to post
Share on other sites

Added to the website test option image kernel 4.11.1 (test\20170407). Pay attention - video output NOT working (monitor NOT working). Management connection via SSH.

 

As part of your image there are options to the dtb for all the chips s905 s905x s905d s912.

 

 

ADD

Pay attention to the way the working environment MATE. At least the monitor doesn't work, but in this way it is possible to connect via ssh with-X and run remotely (displaying on the workstation) graphics program. For example - gparted , synaptic, etc. This is useful to simplify system maintenance or debugging programs.

Edited by balbes150
Link to post
Share on other sites

i managed to compile 4.9 from amlogic and i have all the stuff i need for using this a95x box as a tvheadend headless server for my dvb-c usb tuner (astrometa, mn88473 only supported for digital cable in kernels > 4.7). working usb, sd, emmc, ethernet (those were the only i tested/needed, others might or might not work, worked from uart until network was configured), now lets add a minimal linux userspace to that kernel and forget about it.

that's it! bye bye Arm world

 

dmesg.log

Link to post
Share on other sites
On 4/6/2017 at 10:14 PM, xXx said:

I managed to get myself a new SD card Sandisk Ultra 32BG HC I Class 10 and i just put

Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img  on it.

I will mail the Rikomagic MK36 to its owner tommorrow ( fixed it :D ),

so i have some time again to spend with my mini M8S box and armbian.

First of all:

The gui error about mate-panel and trash ( KEEP / DELETE ) should be  gone if mate-applets

package was present in the default images. The error comes up because the default panel layout have

trash applet icon hardcoded in the far right of the bottom panel, but trash applet is not installed.

Also:

A good alternative image viewer for mate could be viewnior

I also remove at first start:

everything about xfce (mirage*, thunar*,lxtask*) also libreoffice*,mc*,thunderbird*,vim*

I also always install:

adwaita-icon-theme-full,gnome-themes-standard,gnome-themes-standard-data

in order to have a pleasant desktop, and mate-applets and viewnior at first boot.

Now:

I am going to make some tests with pigz and report the time savings :D

 

 

Hi xXx, i want to ask you about Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img  , i want to try it, did its have RTL8723BS Wifi Driver on it?
or perhaps balbes150 can confirm about RTL8723BS Wifi Driver for Mini M8S (S905) on it?

The last time i use Armbian ( 3 month ago ), it's doesn't have it, i have to get it from LibreELEC in https://github.com/kszaq/linux/tree/amlogic-3.14.y and get the driver in folder drivers/amlogic/wifi/

I need it, because i use wifi to connect internet through my handphone wifi thethering.


Thanks before.

Link to post
Share on other sites
8 minutes ago, sukanime said:

i want to ask you about Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img  , i want to try it, did its have RTL8723BS Wifi Driver on it?

For Mini M8S the wifi drivers was always working for me, even with previous versions.

All i had to do with Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img was simply dd it ( Rufus it indeed  as i was working

with Rikomagic win10 32bit at the time) in my SD card, put it in the slot, and give power.

Everything worked right from the start.

No sources, no compilations, no dtb's, nada.

Link to post
Share on other sites
4 minutes ago, xXx said:

For Mini M8S the wifi drivers was always working for me, even with previous versions.

All i had to do with Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img was simply dd it ( Rufus it indeed  as i was working

with Rikomagic win10 32bit at the time) in my SD card, put it in the slot, and give power.

Everything worked right from the start.

No sources, no compilations, no dtb's, nada.

 

Thanks for the quick answer, if i remember corectly, the last time i use i Armbian 5.24 and its doesn't have the wifi driver.
I will download it after i finished downloading http://dn.odroid.com/S905/Ubuntu/ubuntu64-16.04.2lts-mate-odroid-c2-20170301.img.xz
i hope i still have Internet Quota for it... :D

Link to post
Share on other sites

 @mdel I've just iperf'ed my Beelink MXIII and a friend's MXQ PRO+ and the gigabit performance results are as follows:

 

UDP: both achieve about 800Mbit/s in either direction

TCP:  both can RX at 930 Mbit/s, but for some reason MXQ PRO+ can only TX at about 200Mbit/s (after fiddling with the tcp window size, it was closer to 130 in the beginning)

 

Probably needs some tuning? 

 

edit:

2.4G Wi-Fi performance on that MXQ (dhd driver):  38.6 up/44.4 down

 

 

 

Link to post
Share on other sites

@balbes150 I'll try investigating. I used two different Linux images and neither box was affected by the changing dtb files (old format mxq_pro_plus.dtb and new gxbb_p200_2G.dtb in their respective images) yielding equally good/bad performance.

 

I remember from an old freaktab thread about MXQ Pro+, Android gigabit performance seemed to suck as well, so maybe there's a hardware issue too?

 

edit:

I got about 700Mbit/s TX'ing to a different device, so I'll leave it there for now.

Link to post
Share on other sites

Update test images  kernel 4.11.0 (20170412). They have added modules for WiFi networks and many other elements. An important feature of primary configuration is possible only through the SSH connection. Network support is based on modules, so it is important when building your kernel to assure that the name of the directory with the modules , the name of the kernel.

 

https://yadi.sk/d/kZHc0uQE34z5jR

Link to post
Share on other sites

For initial setup through the console UART (for connectivity with root user), you need to add to the file /etc/securetty  line description of the interface ttyAML0.

 

 

2 hours ago, umiddelb said:

Which kernel source tree and kernel configuration are you taking? At this time the Khadas VIM suffers from strange network timeouts (similar to those to be found on the ODROID-C2 with older mainline kernels), no matter what source tree I have taken (khilman, xdarklight, mainline). 

I use the 4.12 branch/integ (correction TEXT_OFFSET for direct download command booti) and a modified config. What patches are we talking ? Can you provide me ?

Link to post
Share on other sites
On 4/9/2017 at 8:30 PM, xXx said:

For Mini M8S the wifi drivers was always working for me, even with previous versions.

All i had to do with Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img was simply dd it ( Rufus it indeed  as i was working

with Rikomagic win10 32bit at the time) in my SD card, put it in the slot, and give power.

Everything worked right from the start.

No sources, no compilations, no dtb's, nada.

 

Hi @xXx  today i have the time to try it, but i'am stuck on Google TV Screen.

 sukanime@Asus-X201EV:~/Anime > sudo dd if=Armbian_5.27_S9xxx_Ubuntu_xenial_3.14.29_mate_20170323.img of=/dev/sdb bs=4M
[sudo] password for sukanime:
944+0 records in
944+0 records out
3959422976 bytes (4,0 GB) copied, 519,527 s, 7,6 MB/s
sukanime@Asus-X201EV:~/Anime > sync
sukanime@Asus-X201EV:~/Anime > 


After that, i don't do anything, just take out SDCard from Card Reader Then i put to my Mini M8S.
Turn it on, then i'am stuck on Google TV logo , i wait for so long, but still Google TV Logo on my TV Screen.

Then i change s905_autoscript and aml_autoscript from my running Odroid Ubuntu Mate, its just go to blank then go back to Google TV Logo, and its go on until i turn it off.

Link to post
Share on other sites
8 hours ago, sukanime said:

but still Google TV Logo on my TV Screen.

Some times i had to unplug the power, and plug it back again, 2 or 3 times.

Not with the image in question, but anyway, you should try that a few times.

Also some times the waiting time may be a minute or more. Make sure you wait enough.

And a last bit of info about my situation: i have LibreELEC installed in my MiniM8S's eMMC,

and i really don't know if this has any effect on booting this image. balbes150 is the expert

on that field, and maybe he ( and others in this forum i believe ) can tell you more about that.

I have many years of experience in Linux, but i am not "the hardware guy", and especially for

these android boxes, i know even less for the hardware, and the stuff that makes them boot.

Link to post
Share on other sites
5 hours ago, xXx said:

Some times i had to unplug the power, and plug it back again, 2 or 3 times.

Not with the image in question, but anyway, you should try that a few times.

Also some times the waiting time may be a minute or more. Make sure you wait enough.

And a last bit of info about my situation: i have LibreELEC installed in my MiniM8S's eMMC,

and i really don't know if this has any effect on booting this image. balbes150 is the expert

on that field, and maybe he ( and others in this forum i believe ) can tell you more about that.

I have many years of experience in Linux, but i am not "the hardware guy", and especially for

these android boxes, i know even less for the hardware, and the stuff that makes them boot.

 

Thanks for the reply, i will try to get LibreELEC 8.0.1e and see how this will come.
When i got my Mini M8S for the first time, booting the Mini M8S with LibreELEC on SD Card will make booting Armbian much better.

And i hope @balbes150 will give some advice too.

Update, after i post it, i try to boot it again:
1. I Try to add dtb image from dtb folder in BOOT Partition, i choose gxbb_p200_2G.dtb then rename it to dtb.img and put it in BOOT partition.
it passing the Google TV Logo, but afteraround 5 secons in my samsung tv give me "no signal" message.

 

2. Try it with LibreELEC dtb with the name gxbb_p200_2G_m8s+_k3_pro.dtb and rename it to dtb.img , its just like above.

 

3. The last time i do is try to run Libre ELEC with the SD Card, because i though there something wrong with it.
 So Delete all files in BOOT Partition, and put the renamed gxbb_p200_2G_m8s+_k3_pro.dtb to dtb.img and put all files from LibreELEC Boot Partition.
 So in BOOT Partition now have these files:  aml_autoscript      dtb.img     kernel.img.md5   SYSTEM  aml_autoscript.zip  kernel.img  s905_autoscript  SYSTEM.md5
 Then Boot the SDCard on my Mini M8S , and i succesfully enter LibreELEC, so nothing wrong with the SD Card.

Edited by sukanime
try it to run with dtb
Link to post
Share on other sites
7 hours ago, xXx said:

And a last bit of info about my situation: i have LibreELEC installed in my MiniM8S's eMMC,

This is an important point. Together with the installation LE in the internal memory and writing a new dtb. So when you start Armbian, without a file "dtb.img" on the carrier will use this new version of the dtb from the internal memory.

 

6 hours ago, sukanime said:

will give some advice too.

You need to pick up the correct version of the dtb file. Maybe xXx will clarify which exact version of the LE it is used (in each version, there could be differences in dtb data). Another important point - Armbian works with "personal" versions of the dtb , i.e. if you try to just copy the dtb file (which is a multi-dtb) from the image LE, the system may not start.

Link to post
Share on other sites
Guest
This topic is now closed to further replies.