Jump to content

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


balbes150

Recommended Posts

Create such a file, You all will be grateful.

 

You mean you are creating such a file? That is very nice.

If we can help and extract some files from a device (each one from his own separate device model) so we can create a list of nearly all models with their device specific files I suppose we can do it.

 

 

Could you give an example how to use a dtb file? (for example on "that" file put instead of "this" line the line "dtb-file=XXXXXXX.dtb" or something like that).

 

Just tried the latest (15 Jan) jessie. First boot garbled command line, rebooted, fine- created user, rebooted, entered gui garbled, rebooted, entered gui fine.

Sound, wifi still not working. Inserted a cheap ralink usb-wifi and worked. Minor disconections though but worked.

Link to comment
Share on other sites

Did it. To be sure, I copied the file to the root of the BOOT partition (the one accessible from a windows machine when sdcard is inserted in a windows computer) and renamed the file to dtb.img (don't worry for correct extensions, hiding file types etc, I know those).

The result was the same as if no dtb file was used at all, meaning, no sound, no hw accellarated video, no wifi.

The test.mp4 file was playing extremely laggy.

Thank you for your effort anyway.

Any other ideas?

Link to comment
Share on other sites

Did it. To be sure, I copied the file to the root of the BOOT partition (the one accessible from a windows machine when sdcard is inserted in a windows computer) and renamed the file to dtb.img (don't worry for correct extensions, hiding file types etc, I know those).

The result was the same as if no dtb file was used at all, meaning, no sound, no hw accellarated video, no wifi.

The test.mp4 file was playing extremely laggy.

Thank you for your effort anyway.

Any other ideas?

1. Wi-fi solution https://forum.armbian.com/index.php/topic/2419-armbian-for-amlogic-s905-and-s905x/?p=20730

2. Sound issue do you try dtb from othe tree (007, from dtb folder in boot partition)?

3. HW acceleration don't work now. But s905/905x socs have successful cpu. And good play video with soft decoding http://imgur.com/a/JuoDw youtube 720p play smooth in chromium(some tearing in dynamic scene), in window and full sreen. (remark i use 720p screen resolution)

Link to comment
Share on other sites

Uploaded the version (20161217) of the images support WiFi. Please verify which models works WiFi.

 

 

The question of who and what your program uses to configure the WiFi network ? There is a way to add an image for testing. By the way, the music is good qmmp (placed further from online repositories). There is no fade effect play when the mouse focus on a window, as in the mpv.

Link to comment
Share on other sites

@balbes150,

 

Is your image supporting WiFi on GT1? Please check my post, I uploaded the binary drivers... it may help you!

https://forum.armbian.com/index.php/topic/2138-armbian-for-amlogic-s912/?p=20902

 

I don't know Wi-Fi is available in GT1 or not (I don't have this model). What prevents You to test it ? In the image already have the files you need.

Link to comment
Share on other sites

Nexbox A95x-b7n with a907x and 2/16 ram/storage.

Tested 20161217 debian.

Wifi WORKS !!!!!!!!!!!!

Opened test.mp4, mpv was laggy but I could hear sound !!!!!!!

Opened Iceweasel and tested youtube, no sound.

Thought it is a iceweasel problem, tried to install chromium but is not in the repositories. Tried Firefox but resulted in a segmentation fault. Now making card to test Ubuntu 20161217.

Link to comment
Share on other sites

Update. The Ubuntu image (20161218) test support HW libMali. Firefox works quite smoothly when playing video from youtube. Tried KODI from online repositories (version 15.2), with 720P video plays back. Not ideal, but not a slideshow . You can comment out the startup desktop (comment out the last line in the file .bashrc in your home directory) and run KODI with the command "startx kodi". To enable sound you need to change the settings.

Link to comment
Share on other sites

Nexbox A95x-b7n with a907x and 2/16 ram/storage.

Tested Ubuntu 20161217.

With firefox I finally had sound on youtube. Tested also a sound generator app (hydrogen) to see how it performs and did well.

Installed chromium and played video from other sites that Firefox would ask to download the video  :rolleyes:.

Couldn't enable flash for browser. 

Now is the time to test the new 1218 ubuntu but it is getting late and I need time to download.

Very nice work Oleg.

 

Did run the 1218 ubuntu finally. Youtube played smoothly indeed.

Link to comment
Share on other sites

Could you provide "mode" variables for use of resolutions not so standard meaning "1440x900", 1024x600", "800x480", "1280x1024 (for use of older VGA monitors).

Or even the widely used "1024x768".

 

By the way it works perfect with HDMI2VGA adapter (except that the monitor was 1280X1024 and the screen was a bit stretched).

Trying "bpp=32" resulted in a strange looking unusable desktop with a black mouse pointer and other color problems.

Link to comment
Share on other sites

Thanks, balbes150... I'ts realy good work)

Some tip from me, arm64 browser unstable, want so many memory... but we have good and stable armhf builds in default repo. They stable, fast, and don't eat your memory(even chromium ~x1.5 - 2 lower memory consuming, mayby they have memory leak?). but in my case, i can't take sound from them. Easy solution - install armhf alsa and pulse(if you need pulse).

Link to comment
Share on other sites

@dchatz

Using a screen resolution different from the 1080 and 720 - there is a problem. In the current drivers they are not working. I'll try to see what the problem is, but it will not be fast.

 

@talraash

You write a list of packages to install. What would the users were able to install and test this option. If the test is successful on different models , I can include them in the image.

Link to comment
Share on other sites

I tested only with analog audio out, list of minimal necessary package to have sound in armhf browser(default firefox in last ubuntu desktop build 20161218). Before uninstall arm64 packages. I tested only some arm64 soft, but smplayer, qmmp works fine with alsa:armhf. Also if your know solution, take sound from armhf browser in alsa and pulse arm64, please post it)

be careful this solution may take problem with alsa(crash)

 

alsa-utils:armhf libasound2-plugins:armhf libasound2:armhf

pulseaudio:armhf pavucontrol:armhf pulseaudio-utils:armhf libpulse-mainloop-glib0:armhf libpulse0:armhf libpulsedsp:armhf

 

 

Change setting in /etc/asound.conf

 

 

pcm.!default {

type pulse
}

ctl.!default {
type pulse
}

 

 

Some strange browser behavior, less memory consuption on chromium 55 than firefox 50(both armhf). If you can test both browser i would appreciate.

 

Ðикогда не думал, что увижу картину, в которой firefox будет потреблÑÑ‚ÑŒ больше ОЗУ. Ðо, chromium:armhf 55 на моих ÑиÑтемах работает лучше потреблÑÑ Ð¼ÐµÐ½ÑŒÑˆÐµ оперативной памÑти, что крайне актуально Ð´Ð»Ñ Ð±Ð¾ÐºÑов Ñ 1гб. Скрины теÑтов, одна и та же Ñтраница, в каждом. Из раÑширений в каждом Ñтоит ublock Ñ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñ‹Ð¼ набором фильтров. СобÑтвенно, интереÑны теÑÑ‚Ñ‹ у других, такое же поведение браузеров, и прав ли Ñ Ð² Ñвоих утверждениÑÑ… или что-то упуÑкаю.

http://imgur.com/a/OkNZd

http://imgur.com/a/RxqyE

 

Link to comment
Share on other sites

Compiled a test version uInitrd in which activation of the screen occurs in two stages. Checked, according to my observations, in the spreading of the pictures (when failure of synchronization) this option allows you to normalize uInitrd image. Please to those who have the picture falls apart to check what happens to the image when you replace the FAT section of the uInitrd file in the new version. Note that in the spreading of the pictures at the time of system start-up, you need to wait for the full run that would have completed the second stage of activation.

 

https://yadi.sk/d/3mYLzUis34FwHz

Link to comment
Share on other sites

To avoid conflict between modules Wi-Fi, I recommend in turn to test the different modules. This, in turn, to remove from the download list (file /etc/module) from the beginning of the dhd module, verify the WiFi network. Then remove the module wifi_dummy (returning the dhd module) and check the operation of the network. The results leave list one module (dhd or wifw_dummy). Since some conditions may be a conflict of modules and TV box can not run.

Link to comment
Share on other sites

Image update 20161222. Changed the composition of the pre-installed modules. The necessary modules are loaded automatically.

 

 

 

Is it possible for you to compile the latest v4l/media_build drivers for LinuxTV, I've been trying to compile it on the box but it needs linux headers using command "apt-get install linux-headers-$(uname -r)" and "linux-firmware-nonfree" both say not found.

 

This is the guide im trying to use https://wiki.ubuntuusers.de/v4l-dvb/

 

The core of the system is "handcrafted". In network repo no packages with headers for that kernel. They need to be installed from the deb packages from the site.

Link to comment
Share on other sites

A95x-b7n. Tested 20161222 xenial.

All modules loaded properly. Wifi and sound work as they should.

Modifyng the init script for bpp=32 resulted in a strange looking black cursor and bad colors in windows, bpp=24 is working fine.

@ balbes150 :  Still good work

 

 

ARGHH!: just discovered bluetooth is not working

Link to comment
Share on other sites

I'm looking for users to test the installation Armbian in the internal memory, which is connected to the console UART. In their models of TV boxes I've tested the installation to the internal memory. It works for me. Now I need to check how will be the process of installation on other devices. First of all I'm interested in the values of the variables in u-boot. Depends on the contents of the installation script. With care you can try to install to the internal memory without a console UART, but then I need a USB cable for reprogramming the device in case of errors in the installation process.

 

 

Я ищу пользователей Ð´Ð»Ñ Ñ‚ÐµÑÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑƒÑтановки Armbian во внутреннюю памÑÑ‚ÑŒ, у которых еÑÑ‚ÑŒ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ð°Ñ ÐºÐ¾Ð½Ñоль UART. Ðа Ñвоих моделÑÑ… ТВ бокÑов Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€Ð¸Ð» уÑтановку во внутреннюю памÑÑ‚ÑŒ. У Ð¼ÐµÐ½Ñ Ñто работает. Теперь мне нужно проверить, как будет проиÑходить процеÑÑ ÑƒÑтановки на других уÑтройÑтвах. Ð’ первую очередь Ð¼ÐµÐ½Ñ Ð¸Ð½Ñ‚ÐµÑ€ÐµÑуют Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ñ‹Ñ… в u-boot. От Ñтого завиÑит Ñодержимое уÑтановочного Ñкрипта. С оÑторожноÑтью можно попробовать уÑтановить ÑиÑтему во внутреннюю памÑÑ‚ÑŒ без конÑоли UART, но тогда нужен кабель USB Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¿Ñ€Ð¾ÑˆÐ¸Ð²ÐºÐ¸ уÑтройÑтва в Ñлучае ошибок в процеÑÑе уÑтановки ÑиÑтемы.

Link to comment
Share on other sites

@balbes150, how can I help you to test Armbian on eMMC for GT1? What are the steps? What feedback do you need?

 

Download a test image. Record an image on the medium. Run the test system c external media on a TV box. Configure the system. Open terminal and switch to root "su -" (su space minus) . Run the command "fw_printenv" and its result send me. Only after I will see the contents of variables u-boot, I will write further steps.

Link to comment
Share on other sites

@balbes150

 

I found this post about fw_env.config, so I tried to change it to GT1... but I don't know if the offsets are correct

/etc/fw_env.config# Device        Env. Offset   Env. Size    Flash Sector Size
/dev/mmcblk1    0x60000       0x2000       0x1000

fw_printenv output

root@amlogic-s905x:/etc# fw_printenv
Warning: Bad CRC, using default environment
bootargs=
bootcmd=
bootdelay=2
baudrate=115200
stdin=serial,cros-ec-keyb,usbkbd
stdout=serial,lcd
stderr=serial,lcd
ethaddr=00:00:11:22:33:44
eth1addr=00:00:11:22:33:45




eth3addr=00:00:11:22:33:46
eth5addr=00:00:11:22:33:47
ipaddr=1.2.3.4
host_boot=if host dev ${devnum}; then setenv devtype host; run scan_dev_for_boot_part; fi
boot_prefixes=/ /boot/
boot_scripts=boot.scr.uimg boot.scr
boot_script_dhcp=boot.scr.uimg
boot_targets=host1 host0
boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}extlinux/extlinux.conf
scan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}extlinux/extlinux.conf; then echo Found ${prefix}extlinux/extlinux.conf; run boot_extlinux; echo SCRIPT FAILED: continuing...; fi
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done
scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done
bootcmd_host1=setenv devnum 1; run host_boot
bootcmd_host0=setenv devnum 0; run host_boot
distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
bootm_size=0x10000000
kernel_addr_r=0x1000000
fdt_addr_r=0xc00000
ramdisk_addr_r=0x2000000
scriptaddr=0x1000
pxefile_addr_r=0x2000
root@amlogic-s905x:/etc# vim /etc/fw_env.config
root@amlogic-s905x:/etc# fw_printenv
Warning: Bad CRC, using default environment
bootargs=
bootcmd=
bootdelay=2
baudrate=115200
stdin=serial,cros-ec-keyb,usbkbd
stdout=serial,lcd
stderr=serial,lcd
ethaddr=00:00:11:22:33:44
eth1addr=00:00:11:22:33:45




eth3addr=00:00:11:22:33:46
eth5addr=00:00:11:22:33:47
ipaddr=1.2.3.4
host_boot=if host dev ${devnum}; then setenv devtype host; run scan_dev_for_boot_part; fi
boot_prefixes=/ /boot/
boot_scripts=boot.scr.uimg boot.scr
boot_script_dhcp=boot.scr.uimg
boot_targets=host1 host0
boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}extlinux/extlinux.conf
scan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}extlinux/extlinux.conf; then echo Found ${prefix}extlinux/extlinux.conf; run boot_extlinux; echo SCRIPT FAILED: continuing...; fi
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done
scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done
bootcmd_host1=setenv devnum 1; run host_boot
bootcmd_host0=setenv devnum 0; run host_boot
distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
bootm_size=0x10000000
kernel_addr_r=0x1000000
fdt_addr_r=0xc00000
ramdisk_addr_r=0x2000000
scriptaddr=0x1000
pxefile_addr_r=0x2000
Link to comment
Share on other sites

 

@balbes150,

root@amlogic-s905x:~# fw_printenv
Cannot parse config file '/etc/fw_env.config': No such file or directory

 

What version image are You using ? You need to use the latest version 20161227.

 

In the data that You have provided, I see no useful information. This is not a complete output.

Link to comment
Share on other sites

@balbes150,

 

Please check the output with your latest image.

EnableSelinux=enforcing
aml_dt=gxm_q201_2g
baudrate=115200
bootcmd=run start_autoscript;run storeboot;
bootdelay=1
bootfromnand=0
bootfromrecovery=0
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
cvbs_drv=0
cvbsmode=576cvbs
display_bpp=24
display_color_bg=0
display_color_fg=0xffff
display_color_index=24
display_height=1080
display_layer=osd1
display_width=1920
dtb_mem_addr=0x1000000
ethaddr=00:15:18:01:81:31
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; 
fb_addr=0x3d800000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
firstboot=1
gatewayip=10.18.9.1
hdmimode=1080p60hz
hostname=arm_gxbb
init_display=osd open;osd clear;imgread pic logo bootup $loadaddr;bmp display $bootup_offset;bmp scale
initargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 
ipaddr=10.18.9.97
jtag=apee
loadaddr=1080000
netmask=255.255.255.0
outputmode=1080p60hz
preboot=run factory_reset_poweroff_protect;run upgrade_check;run init_display;run storeargs;run upgrade_key;forceupdate;run switch_bootmode;
recovery_from_flash=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi
recovery_from_sdcard=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_mem_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_from_udisk=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
serverip=10.18.9.113
start_autoscript=if usb start ; then run start_usb_autoscript;fi;if mmcinfo; then run start_mmc_autoscript;fi;
start_mmc_autoscript=if fatload mmc 0 1020000 s905_autoscript; then autoscr 1020000; fi
start_usb_autoscript=if fatload usb 0 1020000 s905_autoscript; then autoscr 1020000; fi
storeargs=setenv bootargs ${initargs} androidboot.selinux=${EnableSelinux} logo=${display_layer},loaded,${fb_addr},${outputmode} maxcpus=${maxcpus} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} cvbsdrv=${cvbs_drv} androidboot.firstboot=${firstboot} jtag=${jtag}; setenv bootargs ${bootargs} androidboot.hardware=amlogic;run cmdline_keys;
storeboot=if imgread kernel boot ${loadaddr}; then bootm ${loadaddr}; fi;run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;else if test ${reboot_mode} = cold_boot; then run try_auto_burn; fi;fi;fi;
try_auto_burn=update 700 750;
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else fi;
upgrade_key=saradc open 0; if saradc get_in_range 0x0 0x50; then echo detect upgrade key; run update;fi;
upgrade_step=2
usb_burning=update 1000
wipe_cache=successful
wipe_data=successful
Link to comment
Share on other sites

In this embodiment, the variables I see the setting. With some caution you can try to verify the installation to the internal memory. For this you need  be SURE to backup the internal memory. You can use the scripts included in the latest images. To register as a user "root" (su -) and execute one of the options backup "ddbr_backup_3g" or "ddbr_backup_full". The first script creates a minimal copy of the first 3 GB of emmc memory. The second script creates a complete copy of the entire memory. The media must have enough free space to create a selected option of the copy. After the copy, I recommend save it on PC in a safe place the backup file (from the directory /ddbr on the media). To install on internal memory. Start terminal and log in as the user "root" with the command "su -". Start the installation with the command "./install.sh". Avoid not understand the consequences of the script, don't use mode "sudo". The script will attempt to copy the working system to the internal memory. Therefore, before install need to perform all the necessary setup of the system on removable media and check that all the hardware would work as required (WiFi , sound, etc.). After copying is complete, you need to perform a logoff and try to start TV box without external media. Probably the first time the system fail to boot from the internal memory. You need to start the system from external media and reinstall. I when testing, the system started to work after the second reinstall.

Link to comment
Share on other sites

just tested latest armbian image Armbian_5.24_Amlogic-s905x_Debian_jessie_3.14.29_20161223.img.xz on my x96 tv box (s905x)

1) first boot, loging under root and creatig new user account is ok 

2) After reboot the screen resolution is strange, i can see two columns of text next to each other.

 

Any idea on how to fix screen resolution change after second boot?  Can i change it to mode which is being used in first boot?

SSH works well so i can change some configs remotely if that would solve the problem....

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