Jump to content

Search the Community

Showing results for 'tv'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Armbian
    • Armbian project administration
  • Community
    • Announcements
    • SBC News
    • Framework and userspace feature requests
    • Off-topic
  • Using Armbian
    • Beginners
    • Software, Applications, Userspace
    • Advanced users - Development
  • Standard support
    • Amlogic meson
    • Allwinner sunxi
    • Rockchip
    • Other families
  • Community maintained / Staging
    • TV boxes
    • Amlogic meson
    • Allwinner sunxi
    • Marvell mvebu
    • Rockchip
    • Other families
  • Support

Categories

  • Volunteering opportunities
  • Part time jobs

Categories

  • Official giveaways
  • Community giveaways
  • Raffles

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Matrix


Mastodon


IRC


Website URL


XMPP/Jabber


Skype


Github


Discord


Location


Interests

  1. How to put armbian on this tvbox? 8GB+128GB Media Player H.265 Q96 MAX Smart TV Box Android 11 Amlogic S905L Quad Core 2.4G WIFI 4K Set Top Box Home Theater. The latest TV Box in 2022, supports 4K resolution, enjoy super-definition images and breathtaking viewing effect. H.265 decoding technology saves half of the bandwidth than H.264, so it can show vivid and rich image details. 2/4/8GB RAM and 16/64/128GB ROM, large capacity allows you to download more applications and games in your TV box. Amlogic S905L quad core processor is adopted for smooth and flexible operation, no worries about slow running problem. The latest Android 11.1 system, with open-source application store, you can enjoy whatever you like. Supports HDMI 2.0 version, convenient to stream your photos, video to TV screen. 2.4G WIFI Connection offers more stable wireless signal for you to enjoy HD media and playing game experience. Supports mouse and keyboard via USB port; Also support 2.4GHz wireless mouse and keyboard via 2.4G USB dongle. Multiple-using scenes: office work, home entertainment, meeting demonstrate, school education, digital advertising etc. Specifications: CPU: Amlogic S905L2 up to 1.5 GHz, Quad core ARM Cortex-A53 Wifi: 2.4G HDMI Out: HDMI2.0 to support maximum 4Kx2K display USB Port: 2 High speed USB 2.0,support U DISK and USB HDD AV Out: AV(3 in 1) port Lan: RJ45 10/100M Power Supply: DC Jack 5V/2A OS Version: Android 11.1 K0DI: K0di 18.1
  2. 🏆 help to add other boards in armbian standart, you don't need to be a programmer to help the community, just need a copy of the ARM BOARD and a x86 computer to compile new versions. If you like what you see here and want to help: Donate Armbian, the like button only costs a few dollars. Armbian Needs you help! This Armbian adventure was summarized in my Public Github Repository. EMMC Mainline Boot Latest official images: Armbian EMMC image official Armbian Desktop Gnome Latest official Debian BookWorm Server Minimal Latest official H96 MAX V56 RK3566 8gb Vendor Kernel 5.1.16 Tutorial Build Your own Armbian Rockchip Kernel vendor Kernel 5.1.16 Armbian Joshua Riek Ubuntu Rockchip Images kernel 5.1 H96 MAX V56 RK3566 8gb Vendor Kernel 6.1.43 Tutorial Build Your own Armbian Rockchip Kernel vendor Kernel 6.1.43 Armbian Joshua Riek Ubuntu Rockchip Images Kernel 6.1 H96 MAX V56 RK3566 Desktop Mainline Kernel 6.6.34 Pre-Build Desktop 22.04 Armbian Test Image (PT-BR) unofficial images: Edge: [Link] Desktop Resolute Server Resolute Server Trixie Current: [Link] Desktop Resolute Server Resolute Server Trixie How to Flash it: [Link] Emmc SD-Card unofficial images: Tutorial SD-Card Version v0.5 DEBIAN12 BETA unofficial Tutorial SD-Card Version v0.5 ARMBIAN23 BETA unofficial EMMC unofficial images: Tutorial MMC Version V0.7 DEBIAN12 BETA unofficial Tutorial MMC Version V0.7 ARMBIAN23 BETA unofficial EMMC HZDM unofficial images: Tutorial EMMC Version v0.9 ARMBIAN BETA unofficial EMMC unofficial images: Tutorial EMMC Version v1.0 ARMBIAN unofficial EMMC Hzdm Mainline Boot Custom unofficial images: Tutorial Build Your own Armbian EMMC image unofficial EMMC Raspiblitz HotnikQ unofficial images: Tutorial Build Raspiblitz on EMMC Armbian Bullseye unofficial EMMC Hzdm Mainline Boot unofficial images: Tutorial Build Your own Armbian EMMC image unofficial Community Official Images: From @fevangelou Tutorial Flash on linux desktop Software description: V0.5 = @armbian The Armbian SD card image "Compiled From Armbian Project" V0.8 = @hzdm Project with Mainline Bootloader "Boot the 64gb Emmc Armbian with Mainline Rockchip" V0.9 = @hzdm Release Mainline Bootloader "Boot the 32gb and 64gb Emmc Armbian with Mainline Rockchip" V1.0 = @hotnikq The Armbian SD card inside the Android Legacy Rockchip Image "Glued Image: Android boot for Linux" V1.2 = @ning Release Device Tree and Bootloader to longterm 6.6.27 Kernel "Boot with Mainline Rockchip" V1.3 = @Hqnicolas Github PR Enable h96 Rk3566 TV-Box device for Kernel 6.8 V1.4 = @pocosparc Github PR Enable h96 Rk3566 TV-Box OpenVFD and IR controller V1.5 = @dfahren Github PR Update U-boot 2025.01 for Kernel 6.12+ @fevangelou Linux Flash Tutorial @WINEDS Build Armbian for Maxios Lan Chip Board Video drivers: https://developer.arm.com/downloads/-/mali-drivers/bifrost-kernel https://docs.mesa3d.org/download.html https://docs.mesa3d.org/drivers/panfrost.html Wifi Drivers: https://drive.google.com/file/d/1B1LmAylalETcnBEWiPiJHL0MjK5xlIV4/view?usp=sharing Front Panel Display: Tutorial Repo:https://github.com/jefflessard/tm16xx-display UEFI: https://github.com/hqnicolas/h96v56_uefi/releases/tag/v1.2.1 Or Just Live install Wifi Driver: cd /lib/firmware/brcm/ sudo wget https://github.com/LibreELEC/brcmfmac_sdio-firmware/raw/master/BCM4335A0.hcd sudo wget https://github.com/CoreELEC/brcmfmac_sdio-firmware-aml/raw/master/firmware/brcm/fw_bcm4335b0_ag.bin sudo ln -s fw_bcm4335b0_ag.bin brcmfmac4335-sdio.h96-TVbox,rk3566.bin sudo reboot now nmcli dev wifi sudo rmmod brcmfmac_wcc brcmfmac brcmutil modprobe brcmfmac Topic description: This topic aims to demonstrate the path taken to the Armibian EMMC solution. In our path we create a lot of ready-to-use ROM files, some users burn an use this images without learning with the Linux compilation process. the name of the topic is efforts but that's no effort at all, you should try compile your own images. Device Capability Test: Using Rockchip SoCs NPU. Drivers: https://github.com/rockchip-linux/rknpu2 User Guide: https://github.com/rockchip-linux/rknpu2/blob/master/doc/Rockchip_RKNPU_User_Guide_RKNN_API_V1.4.0_EN.pdf OpenCV: https://opencv.org/blog/2022/11/29/working-with-neural-processing-units-npus-using-opencv/ A discussion on Reddit: https://www.reddit.com/r/OrangePI/comments/12b3jmj/accessing_the_npu_on_the_orange_pi/ Transformers models: https://github.com/usefulsensors/useful-transformers Usage: https://www.crowdsupply.com/useful-sensors/ai-in-a-box/ Usage: https://youtu.be/pN8mKZ5wpdQ
  3. I have a Hannspree TV box with RK3288 (Android mini PC) on which I would like to install Armbian according to instructions from this forum (Multitool). Multitool booted Backup of the original firmware Flash written with Armbian. Reboot (did not happen, box does not respond) Power off and power on. Monitor stays black, monitor goes into standby Just now I have to note that there would have been a more appropriate thread (without Q8), so I fucked up from the start. I tried to recover the box with the original firmware I had backed up with the multitool using a USB-A to USB-A cable. But this image was not recognized. I tried to install the Rikomagic firmware (MK902II seems to be identical in construction), but it kept aborting at 99% (download firmware fail). I tried several times, but after some time the recovery tool under Windows (*sic*), did not recognize the box. Also under Ubuntu, the box no longer appears under lsusb. I made a connection via UART. The first error message is: GPT 0x3337df8 signature is wrong recovery gpt... GPT 0x3337df8 signature is wrong recovery gpt fail! UBoot still seems to work? CPU: rk3288 cpu version = 0 CPU's clock information: arm pll = 8160000HZ periph pll = 3000000HZ ddr pll = 3960000HZ codec pll = 5940000HZ Board: Rockchip platform Board Uboot as second level loader or not? #Boot ver: 2019-07-11#2.54 empty serial no. normal boot. checkKey vbus = 1 board_fbt_key_pressed: ir_keycode = 0x0, frt = 0 no fuel gauge found no fuel gauge found Rockchip UBOOT DRM driver version: develop-v1.0.0 Warn: route-hdmi: can't find connector driver read logo on state from dts [1] no fuel gauge found Sorry, this is rather new territory for me. Anyway, the boot process ends with: [ 19.162284] init: Starting service 'clear-bcb'... [ 19.173024] fs_mgr: Warning: unknown flag resize [ 19.959316] read descriptors [ 19.959347] read strings [ 19.959992] pcd_pullup, is_on 1 [ 20.162759] fs_mgr: Warning: unknown flag resize [ 20.165006] init: Service 'clear-bcb' (pid 1802) exited with status 0 Nevertheless a Linux starts: cat /proc/version Linux version 4.4.143 (work2@czkj) (gcc version 4.9 20150123 (prerelease) (GCC) ) #23 SMP PREEMPT Fri Jul 5 16:35:06 CST 2019 But there is no signal output via HDMI. How should I proceed to bring the box back to life? Does anyone have a link to a manual that could help me? Thanks in advance Mierscheid
  4. I was trying to flash the eMMC of my X88 PRO 10, which bricked it. I need some help to unbrick it. So far, I have managed to put it into maskrom mode by conneting the two contact pads in the red circles and pluging in a USB A to A cable in the USB 2.0 port of the tv box and my computer. I took a backup of the firmware with the multitool from here: https://forum.armbian.com/topic/17597-csc-armbian-for-rk3318rk3328-tv-box-boards/page/1 but I could not find a way to restore it. I tried Android tool reports, which says "Found One MASKROM Device", but threw an error when I tried to load my backup. So I searched for the origional firmware, but could not find a source that was working. Can someone help me unbricking my TV box?
  5. Google has launched the new Chromecast with Google TV (HD) powered by an Amlogic S805X2 quad-core Cortex-A35 CPU that offers a cheaper alternative to the Chromecast with Google TV (4K) that is limited to 1080p60 resolution, instead of the 4Kp60 video output supported by the Amlogic S905X3 model. While the processor is slower, the system comes with less memory (1.5GB vs 2GB), and only supports 1080p60, it supports the more efficient AV1 video decoding and as well as A/B partitions for seamless updates since the firmware does not need to be downloaded to the internal storage before the Chromecast with Google TV (HD) specifications: SoC – Amlogic S805X2 quad-core Cortex-A35 processor with Mali-G31 MP2 GPU, 1080p60 H.265, H.264, VP9, AV1 video decoder System Memory – 1.5GB RAM Storage – 8GB eMMC flash with support for “virtual A/B updates with compression“ Video output – HDMI up to 1080p60 with HDR support [...] The post Chromecast with Google TV (HD) features Amlogic S805X2 CPU with AV1 video support appeared first on CNX Software - Embedded Systems News. View the full article
  6. Hi all i am a newbuy to this topic i have a tv box laying around named mxq pro 5g. I checked the processor information which found to be rock chip rk3128 is there any chance to install armbian on the box?
  7. Good time of the day! There is such a board, a TV set-top box from Aliexpress. Processor: Allwinner H3 Memory: JWA60 (I understand emcp) r69-EMCP The board has inscriptions R69-EMCP_v2.0 and EMCP_LPDDR3_EMCP. Installed Linux kernel localhost 4.4.55 #1 SMP PREEMPT Thu Nov 11 15:35:09 CST 2021 armv7l The question is, when installing any Armbian image on mSD, I get the following result of booting from mSD: U-Boot SPL DRAM: 0MiB ### ERROR ### Please RESET the board ### I understand that he does not see RAM, tell me how to set up RAM. Poke where the assembly process for LPDDR3 is described in detail. If you need more information, I'll be happy to provide. Tried loading H3Droid from SD and via FEL. Everything is the same in UART "U-Boot SPL DRAM: 0MiB ### ERROR ### Please RESET the board ###"
  8. Hw Spec Soc: Amlogic S912-H, (S192 with dolby, DTS) Mem: 2G Ddr3 Emmc: 16G 4K HDMi AV out ethernet ?? Wifi/Bt ?? USB port *1 5V DC-IN IR receiver Reset hole OS: Ali YunOS Steps 1, connect UART from mainboard test points, (I can only find M17's UART port) 2, build u-boot follow q200.rst in u-boot doc, use VIM2 config and use VIM2 fip blobs (hope that works) 3, build Arm64 debian bookworm with default debian kernel to USB driver, and config system. 4, falsh u-boot to USB driver 5, connect to device with UART, hope to stop at u-boot cmdline, and erase emmc. if failed, find other way to erase, maybe Amlogic flash tool. 6, instert USB driver, and reboot device potaintial issues: can't find UART port on mainboard VIM2 mainline Uboot can't boot M16S device does not support boot from USB. No schematics for next step dev.
  9. Hello. I have a problem with Orange Pi Zero LTS. I also have an expansion board and the required 3.5-jack cable. I have read many different forums and sites where people have described problems with video signal output. Often there are solutions such as: 1. Editing the file /boot/script.bin But this file does not exist. 2. They also talk about the launch of "tv". You need to add an entry to /etc/modules. But that doesn't work either, since ./tvout doesn't exist. As I understand it, in new versions there is no TV support, but there is no way to download old versions either. The latest version that can be downloaded is 5.59, but it also does not support TV. Some people since ~2019-2020 are wondering when this ability will be returned. I have the following questions: 1. Where can I download a version like 5.25 or older? 2. Or is there another way for Armbian to turn on the video signal? 3. Why did the developers remove this function? 4. And why haven't they brought this function back yet? P.S. Sorry for my english
  10. TV Box Name MXQ MBX Model M201 CPU (example: amlogic s805 Meson 8B 4 cores 1.5 Ghz Armbian build file name:Armbian_5.67_Aml-s805_Ubuntu_bionic_default_3.10.108_desktop_20181207 DTB file used: Kernel Version:3.10.108 #14 SMP preenpt Distribution Installed (focal, buster, etc):Bionic Working Ethernet not tested Max Ethernet Speed that works (100/1000): Does wifi work Yes sort of, makes breaks connection continually, it will download updates Does bluetooth work (Yes/No):NA I don't know if the box has it Does HDMI audio work (Yes/No):Not tested Additional Comments (provide any additional information you feel is important): Headphone audio works although it is not perfect. Keyboard and mouse work fine, I have no remote to test Sound:AML8AUDIO Video playback is slow, I'm not sure if accelerated video is working Video:Mali-450 MP Booted fine, and updated fine 815 available memory
  11. Hi, Firstly sorry for the bad english(By Google Translator). I've been searching for a long time on how to use linux on my tv box, without success. I searched here on the forum in several topics, I didn't find anything related to the tx6s, the closest I came was the Orange-Pi Zero 2, which uses the same processor. In one of the topics, from 2020 if I'm not mistaken, a user warned that because it was the same processor or similar hardware, it wouldn't necessarily work. Even so I ventured out and tried in hopes of working, some versions of Armbian for OrangePi Z2 and other linux for ARM. With other ARM versions the tv box, booted normally on Android, with Armbian, it didn't even start and no led lit up. What made me believe that somehow with Armbian, the tv box recognized the SD card as bootable, but for some problem it can't boot. Maybe it's the u-boot used. if some of the versions I tried to install: https://drive.google.com/drive/folders/1HsD11VGl-CSv98GgmWoVSlnFYEE1jMNM - Orange-Pi Zero2 IMG [Armbian_22.05.0-trunk_Orangepizero2_jammy_edge_5.17.5_minimal.img] - (No_Boot) - {Problema_com_o_U-boot?} https://drive.google.com/file/d/1wZulOr6_Sur_btcqqzBFTpjPmhPX0fZ1/view?usp=sharing - Orange-Pi Zero2 IMG [Armbian_22.05.0-trunk_Orangepizero2_focal_current_5.15.35.img] - (No_Boot) - {Problema_com_o_U-boot?} https://drive.google.com/drive/folders/13pY93TozoF2omgKYnCiSZrONbBvBPxAh - Orange Pi Zero2 Linux5.13 IMG [] e [] https://armbian.hosthatch.com/archive/orangepizero2/archive/Armbian_21.08.1_Orangepizero2_hirsute_edge_5.13.12.img.xz - Orange Pi Zero2 IMG [Armbian_21.08.1_Orangepizero2_hirsute_edge_5.13.12.img] https://mirrors.dotsrc.org/armbian-dl/orangepizero2/archive/ Orange Pi Z2 IMG [FOCAL Armbian_22.02.1_Orangepizero2_focal_edge_5.16.11][Armbian_22.02.1_Orangepizero2_bullseye_legacy_4.9.255.img] TV BOX MODEL: https://linux-sunxi.org/Tanix_TX6s I also found this about u-boot, I don't know if it can be useful or how to use this information, I have no technical knowledge: https://gist.github.com/heitbaum - u-boot https://github.com/jernejsk/u-boot -u-boot https://github.com/jernejsk/u-boot/tree/h616-v2 - u-boot If anyone knows how to install this tv box, please show me the way to the stones. it could be the server version.
  12. TV Box Status Information Template Version 1.0 TV Box Name: MXQ Pro 4k 5G (fake 16GB RAM/128GB ROM) CPU: Allwinner H3 Armbian build file name: Armbian_21.08.1_Orangepipcplus_focal_current_5.10.60.img.xz / Armbian_21.08.1_Orangepipcplus_buster_current_5.10.60.img.xz (both works) DTB file used: <none> Kernel Version: 5.10.60 Distribution Installed: focal and buster Working Ethernet (Yes/No): yes Max Ethernet Speed that works (100/1000): 100M Does wifi work (Yes/No): yes Does bluetooth work (Yes/No): not available Does HDMI audio work (Yes/No): yes Additional Comments (provide any additional information you feel is important): all other functionalities for Orange Pi PC Plus is not available (eg OTG function of USB and no GPIO). You can also run "nand-sata-install" command to install armbian to emmc, works fine, no issues.
  13. Guest

    RK3566 and Armbian

    Recently has appeared some 3566 tv boxes in the wild, would be doable to run armbian on them? Since Rockchip seems kinda dedicated to openness the same goes for the RK3566?
  14. ­DISCLAIMER (PLEASE READ): everything you can find in this thread (binaries, texts, code snippets, etc...) are provided AS-IS and are not part of official Armbian project. For this reason not people from Armbian project nor myself are responsible for misuse or loss of functionality of hardware. Please don't ask about support or assistance in other non-community forums nor in the official Armbian github repository, instead post your questions in this thread, in the TV Boxes forum section (hardware related) or in the Peer-to-peer support section (general linux/software related). Thank you! This thread is to give stable and mature long-term range support to rk3318/rk3328 found in many tv boxes in Armbian project as Community Supported Configuration (CSC). The current work is mainlined into Armbian project, but your mileage may vary; most recent developments live on my personal fork on github -> here <- Important notes: is just a personal opinion, but apparently widely supported, that rk3318 chip is not an official rockchip part. They probably are scrap rk3328 parts which have not passed conformance tests but are sold anyway to tv boxes manufacturers. They don’t reach the same operating frequency of the rk3328, have much higher leakage currents (and thus higher temperatures) and often the boards they are installed on are low quality with low quality components, in fact a very very common issue is the eMMC failure due to bad parts and bad soldering. So said, I personally suggest not to buy any rk3318 tv box, but instead find a properly supported SBC (Single Board Computer) if you need a reliable product. In the unfortunate case you already have such product, this thread may help you have some fun with them. What works: • Works on RK3318 and RK3328 TV boxes with DDR3 memories • Mainline u-boot • Mainline ATF provided as Trusted Execution Environment • All 4 cores are working • Ethernet • Serial UART (configured at stock 1.5Mbps) • Thermals and frequency scaling • OTG USB 2.0 port (also as boot device!) • EHCI/OHCI USB 2.0 ports and XHCI USB 3.0 ports • MMC subsystem (including , SD and sdio devices) • Hardware video acceleration (fully supported via RKMPP on legacy kernel, support via hantro and rkvdec kernel driver on mainline) • Various WIFI over SDIO are supported • Full acceleration on legacy kernel and mainline kernel • U-boot boot order priority: first the sdcard, then the USB OTG port and eventually the internal ; you can install u-boot (and the whole system) in the internal and u-boot will always check for images on external sdcard/USB first. Unbrick: Technically, rockchip devices cannot be bricked. If the internal flash does not contain a bootable system, they will always boot from the sdcard. If, for a reason, the bootable system on the internal flash is corrupted or is unable to boot correctly, you can always force the maskrom mode shorting the clock pin on the PCB. The procedure is explained here for rk322x, but for rk3318/28 is the same. In most of the rk3318/28 boards, shorting the clock pin is difficult or impossible because eMMC are BGA chips with no exposed pins. Pay double attention when burning something on the internal flash memory and always test first the image booting from the sdcard to be sure it works before burning anything in internal flash. This is a list of posts where forum users have been able to spot the eMMC clock pin to trigger the maskrom mode: H96 Max+ (board signature: RK3318_V1.4) by @Gausus X88 PRO 10 (board signature: X88_PRO_B) by @mathgaming HK1 Max (board signature YX_RK3318) by @Constantin Gatej Ninkbox N1 Max RK3318 by @enigmasphinx Hongtop H50 (board signature t98-3318-221-v11) by @GmP Partecipation and debugging: If you want to partecipate or need help debugging issues, do not hesitate to share your experience with the installation procedure of the boxes. In case of issues and missed support, provide as many as possible of these things is very useful to try and bring support for an unsupported board: some photos of both sides of the board. Details of the eMMC, DDR and Wifi chips are very useful! upload the device tree binary (dtb) of your device. We can understand a lot of things of the hardware from that small piece of data; and alternative is a link to the original firmware (you can do a full backup with the Multitool); dmesg and other logs (use armbianmonitor -u that automatically collects and uploads the logs online) attach a serial converter to the device and provide the output of the serial port; Multimedia: Mainline kernel: 3D acceleration is provided by Lima driver and is already enabled. Hardware video decoding: https://forum.armbian.com/topic/19258-testing-hardware-video-decoding-rockchip-allwinner/ Legacy kernel: If you need multimedia features, like OpenGL/OpenGL ES acceleration, hardware accelerated Kodi, ffmpeg and mpv you can take a look to this post Installation (via SD card): Building: You can build your own image follow the common steps to build armbian for other tv boxes devices: when you are in the moment to choose the target board, switch to /TVB/ boards and select "rk3318-box" from the list. Prebuilt images: Nightly stables - built from trunk by Armbian servers and GPG-signed: https://github.com/armbian/community Multitool: Multitool - A small but powerful image for RK3318/RK3328 TV Box maintenance. Download it from here Quick installation instructions on eMMC: Build or download your preferred Armbian image and a copy of the Multitool; Burn the Multitool on an SD card; once done, place the Armbian image in images folder of the SD card NTFS partition; Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears; OPTIONAL: you can do a backup of the existing firmware with "Backup flash" menu option; Choose "Burn image to flash" from the menu, then select the destination device (usually mmcblk2) and the image to burn; Wait for the process to complete, then choose "Shutdown" from main menu; Unplug the power cord and the SD card, then replug the power cord; Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt. On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run rk3318-config to configure the board specific options Run armbian-config to configure timezone, locales and other personal options Congratulations, Armbian is now installed! Despite the procedure above is simple and reliable, I always recommend to first test that your device boots Armbian images from SD Card. Due to the really large hardware variety, there is the rare chance that the images proposed here may not boot. If a bad image is burned in , the box may not boot anymore forcing you to follow the unbrick section at the top of this post. Quick installation instructions to boot from SD Card: If you are already running Armbian from eMMC, skip to the next step. Instead if you are running the original firmware you need to first erase the internal flash; to do so download the Multitool, burn it on an SD Card, plug the SD Card and power the TV Box. Use "Backup flash" if you want to do a backup of the existing firmware, then choose "Erase flash" menu option. Build or download your preferred Armbian image; Uncompress and burn the Armbian image on the SD Card; Plug the SD Card in the TV Box and power it on; Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt; On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run rk3318-config to configure the board specific options Run armbian-config to configure timezone, locales and other personal options, or also to transfer the SD Card installation to internal ; Congratulations, Armbian is running from SD Card! Tutorial - How to install Armbian on your TV Box (by @awawa) : https://www.hyperhdr.eu/2022/01/tv-box-mania-i-part-x88-pro-10.html A note about boot device order: With Armbian also comes mainline U-boot. If you install Armbian, the bootloader will look for valid bootable images in this order: External SD Card External USB Stick in OTG Port Internal The Multitool does not boot / How to burn image directly on eMMC: Some boards have the sdcard attached to an auxiliary (called also sdmmc_ext or external) controller which is not the common one. Forum findings declare that those boards are not able to boot from sdcard with stock firmware and they neither do in maskrom mode: the stock firmware always boots even if you put the multitool on sdcard. In such case, burning images directly on eMMC is the only way to have a working Armbian installation. You can follow these instructions by @fabiobassa to burn images directly on eMMC: https://forum.armbian.com/topic/17597-csc-armbian-for-rk3318rk3328-tv-box-boards/?do=findComment&comment=130453 Notes and special hardware: Script to change DDR memory frequency here Wireless chip AP2734, SP2734, HY2734C and similars: they are clones of AmPAK AP6334 which is combo wifi + bluetooth of broadcom BCM4334/B0 chips. You may need a special nvram file, instructions by @paradigman are here Critics, suggestions and contributions are welcome! Credits: @fabiobassa for his ideas, inspiration, great generosity in giving the boards for development and testing. The project of bringing rk3318 into armbian would not have begun without his support! @hexdump for his precious support in early testing, ideas and suggestions @MX10.AC2Nfor his patience in testing mxq-rk3328-d4 board support All the rockhip64 maintainers at Armbian project who have done and do most of the work to support the platform
  15. I've taken peeks at threads related to hardware decoding (of H.264 and HEVC, mainly) on Allwinner and Rockchip platforms on and off, sometimes dabbled in trying and failing to implement solutions recommended there. Being a complete amateur, I find the topic very opaque and confusing, with various different components that need to interface with each other, be patched in sync, and sometimes change drastically between kernel versions, etc. Today I sat down and read up on these subjects, scouring wikis, documentation, this forum, and assorted other sources to try and understand how this works. In this post I will attempt to compile what I've learned on the different software components involved, their relationships, their current status, and solutions to the problem. I hope people more knowledgeable will correct me when I get something wrong or cite outdated information. Stuff which I am highly uncertain of I will print in italics. (This post is going to focus on mainline implementations of Cedrus/Allwinner, I haven't looked into Hantro/Rkvdec/Rockchip specifics yet. I will speak only of H.264 and H.265/HEVC; I don't understand the high/low stuff and didn't pay attention to other codecs.) Components: Basics: Video codecs like H.264, H.265/HEVC, MPEG-2, etc. are standardised methods which serve to more efficiently encode and decode videos, reducing their filesize. Software en-/decoding is very CPU-intensive. Modern GPUS and ARM SoCs therefore contain specialised hardware (VPUs) to delegate these tasks to. Working hardware decoding is particularly important for underpowered ARM CPUs. Drivers: Topmost in the stack are the VPU drivers. These are Sunxi-Cedrus/Cedrus V4L2 M2M and Cedar [Is this the legacy one?] on Allwinner; Hantro and Rkvdec on Rockchip. These are all still in development, but Cedrus already fully supports H.264, and partially supports HEVC, and is already usable in the mainline kernel. APIs: In order for anything (userspace APIs, libraries) to make use of the VPU drivers, you need backends/APIs. For Cedrus, there is the unmaintained libva-v4l2-request backend which implements VA-API, the legacy VDPAU implementation libvdpau-sunxi, and as of kernel version 5.11, H.264 has been merged into the uAPI headers. Different applications may make recourse to one or another of these APIs. Libraries: FFmpeg and GStreamer. provide libraries and APIs of their own to other applications but can (importantly!) also output directly to the framebuffer. FFmpeg must be patched to access either libva-v4l2-request or the Cedrus driver headers. GStreamer directly accesses kernel headers since 1.18 (works on 5.9, not on 5.10; 1.20 will support 5.11.) Media players: mpv and depends on FFmpeg for hardware acceleration (and must be patched together with it). VLC can be set to access libva-v4l2-request directly. Kodi 19.0+ supports hardware acceleration out of the box without any out-of-tree patches. Display server: An additional complication is drawing the output of any of the above on screen. Most successful implementations I've seen bypass X11 and either output directly to the framebuffer or force a plane/display layer on top of any X windows. Wayland apparently makes this easier by allowing applications to use their own DRM planes, but this hasn't been explored much yet. Kodi 19.0 works with all three windowing systems (X, Wayland, and gbm). Codec status: Taken from the LibreElec thread (which reflects LibreElec's status and is ahead of what works elsewhere, but outlines hardware limitations): Approaches: Many people have managed to make it work on their machines using different approaches. Note that some of these solutions are one or two years old, and kernel developments since may have changed the situation. Ordered from newer to older: LibreElec – kernel + ffmpeg + Kodi: LibreElec is a Just-Enough-OS with the sole purpose of running Kodi, a media player. It's at the bleeding edge and usually implements codecs and features well before mainline or other distros. It achieves this by heavily patching everything up and down the stack, from the Linux kernel over FFmpeg to Kodi itself. These patches could all be applied to an Armbian build, but there are a lot of them, they're poorly documented, and you'd need to dig into their github to understand what they all do. LibreElec runs Kodi directly without a desktop. kodi-gbm is a package that can be installed on Armbian and functions similarly. Key contributors to the project are @jernej and @Kwiboo, who sometimes post about their work here (and have been very helpful with questions, thank you). @balbes150 includes some of LibreElec's patches in his Armbian-TV builds, but I don't know which. Kodi 19.0: LibreElec patches + mpv: @megous – Kernel 5.11 + GStreamer: This implementation, done here on a PinePhone (A64), patches the 5.9 kernel and uses a recent version of GStreamer (1.18 and up), whose output is rendered directly to a DRM plane via kmssink. (No X or Wayland.) GStreamer 1.18 works with the 5.9 kernel. It does not work with 5.10, because of numerous changes to the kernel headers in this version. In 5.11 the H.264 headers were moved into the uAPI; the master branch of GStreamer reflects this, but there haven't been any releases with these patches yet. It'll probably be in repositories with GStreamer 1.20; until then you can build it from source. @Sash0k – patched libva-v4l2-request + VLC: This updates bootlin's libva-v4l2-request and follows the Sunxi wiki's instructions for enabling VLC to make use of it. It works on the desktop. This only works for H.264 and breaks HEVC. When I tried to replicate this approach on a recent Armbian build, I discovered that the h264.c files in the kernel (that libva-v4l2-request draws on) have changed considerably between 5.8 and 5.10, and I lack the understanding to reconcile libva-v4l2-request with them. @ubobrov – old kernel + libcedrus + libvdpau-sunxi + ffmpeg + mpv: This approach, which supports encoding decoding of H.264 uses the libvdpau-sunxi API and ports the legacy driver to mainline as a loadable kernel module and if I understand it correctly, ubobrov ported a legacy feature to mainline. In the post quoted below the kernel is 4.20, but the same method has been successfully applied to 5.7.8 by another user. It requires that the board's device tree be patched, as documented in ubobrov's github repository. The summary seems to be that none of the current implementations on Allwinner boards really play nice with X or desktop sessions, and it's best to output directly to the framebuffer. Kwiboo has forked FFmpeg and mpv to make good use of new and unstable kernel features/hardware acceleration which will take a while to make their way upstream. The recent 5.11 move of stateless H.264 out of staging and into the uAPI should facilitate further developments. I intend to try some of these things in the nearer future. Thanks to everyone who works on mainlining all of this VPU stuff, and to users here who contribute solutions and readily & patiently answer questions (Jernej especially). I hope I didn't post any falsehoods out of ignorance, and welcome any corrections. Other related threads here: https://forum.armbian.com/topic/11551-4kp30-video-on-orange-pi-lite-and-mainline-hardware-acceleration/ https://forum.armbian.com/topic/16804-orange-pi-pc-h3-armbian-focal-5104-sunxi-av-tv-out-cvbs-enable/page/2/ https://forum.armbian.com/topic/11184-hardware-graphicvideo-acceleration-in-h3-mainline/ https://forum.armbian.com/topic/13622-mainline-vpu/
  16. DISCLAIMERS (PLEASE READ): Everything you can find in this thread (binaries, texts, code snippets, etc...) are provided AS-IS and are not part of official Armbian project. For this reason not people from Armbian project nor myself are responsible for misuse or loss of functionality of hardware. THIS POST explains very well the troubles with TV Boxes and why they are not suitable for everyone Please don't ask about support or assistance in other non-community forums nor in the official Armbian github repository, instead post your questions in this thread, in the TV Boxes forum section (hardware related) or in the Peer-to-peer support section (general linux/software related). Following the recent thread on LibreElec forum about an unofficial image for rk3229 devices, I would like to make public the work made by me and @fabiobassa about bringing rk322x support to armbian. The project is now in -> mainline Armbian <- development fork -> here <- This first page and the last 3 or 4 pages of the thread are enough to get up to date with recent developments. Many useful experiences are scattered through the thread, but the most important things are collected here in the first page, so please read it carefully! Mainline kernel is fully supported and will receive most support in the future. Legacy kernel 4.4 is deprecated, but is kept around only for special purposes. What works: Should boot and work flawlessy on all boards with RK3228a, RK3228b and RK3229, with either DDR2 and DDR3 memories. Mainline u-boot Proprietary OPTEE provided as Trusted Execution Environment (needed for DRAM frequency scaling) All 4 cores are working Ethernet Serial UART (configured at 115200 bps, not 1.5Mbps!) Thermals, CPU and DRAM frequency scaling OTG USB 2.0 port (also as boot device!) EHCI/OHCI USB 2.0 ports MMC subsystem (including eMMC, SD and sdio devices) Hardware video acceleration NAND is available only on legacy kernel. To fully boot from NAND, use the Multitool and its steP-nand installation (instructions are below) Various WIFI over SDIO are supported (SSV6051P, SSV6256P, ESP8089, Realtek chips, etc...), ssv6256p driver is available only on legacy kernel Full GPU acceleration U-boot boot order priority: first the sdcard, then the USB OTG port and eventually the internal eMMC; you can install u-boot (and the whole system) in the internal eMMC and u-boot will always check for images on external sdcard/USB first. Unbrick: Technically, rockchip devices cannot be bricked. If the internal flash does not contain a bootable system, they will always boot from the sdcard. If, for a reason, the bootable system on the internal flash is corrupted or is unable to boot correctly, you can always force the maskrom mode shorting the eMMC clock pin on the PCB. Here there is the procedure, but you can also google around if you get stuck on a faulty bootloader, the technique is pretty simple and requires a simple screwdriver. There are however some unfortunate cases (expecially newer boards) where shorting the eMMC clock pin is difficult or impossibile, like eMMC or eMCP BGA chips with no exposed pins. In those cases pay double attention when burning something on the internal eMMC/eMCP and always test first the image from the sdcard to be sure it works before burning anything on eMMC/eMCP. Some useful links with pins, pads or procedures for some boards: Generic procedure for boards with non-BGA eMMC MXQPRO_V71 - eMCP H20 - eMCP ZQ01 - eMCP NAND vs eMMC vs eMCP difference: RK3228 and RK3229 tv boxes comes with three different flash memory chips: eMMC, NAND and eMCP. It does not depend upon the market name of the tv box and neither the internal board; manufacturers put whatever they find cheaper when they buy the components. NAND chip is just the non-volatile memory eMMC chip contains both the non-volatile memory plus a controller. eMCP chip contains the non-volatile memory, a controller for the non-volatile memory (like eMMC), but also contains a bank of DDR SDRAM memory on the same physical chip. The difference is very important, because eMMC and eMCP are far easier to support at various levels: the controller deals with the physical characteristics of the non-volatile memory, so the software has no to deal with. NAND chips instead are harder to support, because the software is required to deal with the physical characteristics and non-standard things that depends upon the NAND manufacturer. If you have a NAND chips you're unlucky because mainline kernel currently cannot access it, but also because you need special care and instructions explained later. You can discover if you have a NAND, eMMC or eMCP chip looking on the board are reading the signature on the flash memory chip. The Multitool (see later) also can detect which chip you have onboard: the program will warn you at startup if you have a NAND chip. NAND bootloader upgrade: IMPORTANT: don't do this is you have an eMMC or eMCP; skip this paragraph if you are unsure too! For very expert people who are having issues when (re)booting images, there is the chance to upgrade the bootloader on NAND. The NAND bootloader is nothing else than a regular idbloader (see official rockchip documentation) but contains some bits to correctly access the data on your flash memory. Upgrading requires to erase the existing flash content, in the worst case will require you to follow the Unbrick procedure above or restore an older but more compatible bootloader. If you are not mentally ready to overcome possible further issues, don't do this! The detailed instructions and the binaries are available at this post Multimedia: Mainline kernel: 3D acceleration is provided by Lima driver and is already enabled. Hardware video decoding: https://forum.armbian.com/topic/19258-testing-hardware-video-decoding-rockchip-allwinner/ Deprecated legacy kernel: multimedia features, like OpenGL/OpenGL ES acceleration, hardware accelerated Kodi, ffmpeg and mpv you can take a look to this post An effective tutorial from @Hai Nguyen on how to configure a box as a hi-quality music player using an USB audio card, and controlling it via remote control is available in this post Brief explanation about kernel naming: current kernel is the mainline LTS kernel version, most maintained and tested. This is the suggested version for production devices. If you don't know what to pick, pick this. legacy kernel (version 4.4) is provided by manufacturer; it is deprecated, unmaintained and not suggested. edge kernel is the development mainline kernel version, with experimental features and drivers; usually stable but perhaps suitable for production devices. You can switch from one kernel flavour to another using armbian-config or manually via apt. Installation (via SD card): Building: You can build your own image follow the common steps to build armbian for other tv boxes devices: when you are in the moment to choose the target board, switch to CSC/TVB/EOL boards and select "rk322x-box" from the list. Download prebuilt images from the following links: Archive builds (GPG-signed) - https://imola.armbian.com/dl/rk322x-box/archive/ SUGGESTED - Nightly built from trunk each week by Armbian servers (GPG-signed) - https://github.com/armbian/community Old images provided by me (unsigned and outdated) - https://users.armbian.com/jock/rk322x/armbian/stable Archived/older images: https://armbian.hosthatch.com/archive/rk322x-box/archive/ Multitool: The Multitool is a small but powerful tool to do quick backup/restore of internal flash, but also burn images and general system rescue and maintenance via terminal or SSH. Compressed images will be uncompressed on fly. Multitool - A small but powerful image for RK322x TV Box maintenance (instructions to access via network here) Quick installation instructions on eMMC: Build or download your preferred Armbian image and a copy of the Multitool; Burn the Multitool on an SD card; once done, place the Armbian image in images folder of the SD card NTFS partition; Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears; OPTIONAL: you can do a backup of the existing firmware with "Backup flash" menu option; Choose "Burn image to flash" from the menu, then select the destination device (usually mmcblk2) and the image to burn; Wait for the process to complete, then choose "Shutdown" from main menu; Unplug the power cord and the SD card, then replug the power cord; Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt. On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run sudo rk322x-config and select your board characteristics to enable leds, wifi chips, high-speed eMMC, etc... Run sudo armbian-config to configure timezone, locales and other personal options Congratulations, Armbian is now installed and configured! Despite the procedure above is simple and reliable, I always recommend to first test that your device boots Armbian images from SD Card. Due to the really large hardware variety, there is the rare chance that the images proposed here may not boot. If a bad image is burned in eMMC, the box may not boot anymore forcing you to follow the unbrick section at the top of this post. Quick installation instructions on NAND: Build or download your preferred Armbian image and a copy of the Multitool; Burn the Multitool on an SD card; once done, place the Armbian legacy kernel image in images folder of the SD card NTFS partition; Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears; OPTIONAL: you can do a backup of the existing firmware with "Backup flash" menu option; Choose "Burn Armbian image via steP-nand" from the menu, then select the destination device (usually rknand0) and the image to burn; Wait for the process to complete, then choose "Shutdown" from main menu; Unplug the power cord and the SD card, then replug the power cord; Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt. On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run sudo rk322x-config and select your board characteristics to enable leds, wifi chips, etc... Run armbian-config to configure timezone, locales and other personal options Congratulations, Armbian is now installed! Alternative: you can install the bootloader in NAND and let it boot from SD Card or USB: Download a copy of the Multitool and burn it on an SD card; Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears; RECOMMENDED: make a backup of the existing firmware with "Backup flash" menu option; Choose "Install Jump Start for Armbian" menu option: the Jump Start uses the internal NAND to boot from external SD Card or external USB Stick; Follow the general instructions to boot from SD Card below, skip the first erase eMMC step. Quick installation instructions to boot from SD Card: If you are already running Armbian from eMMC, skip to the next step. Instead if you are running the original firmware you need to first erase the internal eMMC; to do so download the Multitool, burn it on an SD Card, plug the SD Card and power the TV Box. Use "Backup flash" if you want to do a backup of the existing firmware, then choose "Erase flash" menu option. Build or download your preferred Armbian image; Uncompress and burn the Armbian image on the SD Card; Plug the SD Card in the TV Box and power it on; Wait for 10 seconds, then the led should start blinking and HDMI will turn on. The first time the boot process will take a couple of minutes or more because the filesystem is going to be resized, so be patient and wait for the login prompt; On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run sudo rk322x-config and select your board characteristics to enable leds, wifi chips, high-speed eMMC or NAND, etc... Run armbian-config to configure timezone, locales and other personal options, or also to transfer the SD Card installation to internal eMMC; Congratulations, Armbian is running from SD Card! A note about boot device order: With Armbian also comes mainline U-boot. If you install Armbian or just the bootloader in the eMMC or the Jump Start on internal NAND, the bootloader will look for valid bootable images in this order: External SD Card External USB Stick in OTG Port Internal eMMC Installation (without SD card, board with eMMC) If you have no sd card slot and your board has an eMMC, you can burn the armbian image directly on the internal eMMC using rkdeveloptool and a male-to-male USB cable: Download your preferred Armbian image from Armbian download page and decompress it. Download the rk322x bootloader: rk322x_loader_v1.10.238_256.bin Download a copy of rkdeveloptool: a compiled binary is available in the official rockchip-linux rkbin github repository. Unplug the power cord from the tv box Plug an end of an USB Male-to-male cable into the OTG port (normally it is the lone USB port on the same side of the Ethernet, HDMI, analog AV connectors) while pressing the reset microbutton with a toothpick. You can find the reset microbutton in a hole in the back of the box, but sometimes it is hidden into the AV analog jack Plug the other end of the USB Male-to-male cable into an USB port of your computer If everything went well, run lsusb: you should see a device with ID 2207:320b Run sudo rkdeveloptool rd 3 (if this fails don't worry and proceed to next step) Run sudo rkdeveloptool db rk322x_loader_v1.10.238_256.bin Run sudo rkdeveloptool wl 0x0 image.img (change image.img this with the real Armbian image filename) Unplug the power cord Done! Installation (without SD card, board with NAND) If you are in the unfortunate case you can't use an SD card for installation and your board has a NAND chip, you still have an option to use the quick Multitool installation steps via USB. Obtain a copy of rkdeveloptool: a compiled binary is available in the official rockchip-linux rkbin github repository. Unplug the power cord from the tv box Plug an end of an USB Male-to-male cable into the OTG port (normally it is the lone USB port on the same side of the Ethernet, HDMI, analog AV connectors) while pressing the reset microbutton with a toothpick. You can find the reset microbutton in a hole in the back of the box, but sometimes it is hidden into the AV analog jack Plug the other end of the USB Male-to-male cable into an USB port of your computer If everyting went well, using lsusb you should see a device with ID 2207:320b Run sudo rkdeveloptool wl 0x4000 u-boot-main.img (download u-boot-main.img.xz , don't forget to decompress it!) Unplug the power cord Now you can follow the instructions on how to install on eMMC/NAND via SD card, just use instead an USB stick to do all the operations and plug it into the USB OTG port. Once you reboot, USB OTG port will be used as a boot device. NOTE: NAND users without SD slot may be unhappy to know that it will be difficult to do extra maintenance with Multitool in case something breaks in the installed Armbian system: installing u-boot-main.img makes the installed system unbootable because it is missing the NAND driver. Alternative backup, restore and erase flash for EXPERTS: These backup, restore and erase flash procedures are for experts only. They are kept here mostly for reference, since the Multitool is perfectly able to do same from a very comfy interface and is the suggested way to do maintenance. Backup: Obtain a copy of rkdeveloptool: a compiled binary is available in the official rockchip-linux rkbin github repository. If you prefer, you can compile it yourself from the sources available at official rockchip repository Unplug the power cord from the tv box Plug an end of an USB Male-to-male cable into the OTG port (normally it is the lone USB port on the same side of the Ethernet, HDMI, analog AV connectors) while pressing the reset microbutton with a toothpick. You can find the reset microbutton in a hole in the back of the box, but sometimes it is hidden into the AV analog jack Plug the other end of the USB Male-to-male cable into an USB port of your computer If everyting went well, using lsusb you should see a device with ID 2207:320b change directory and move into rkbin/tools directory, run ./rkdeveloptool rfi then take note of the FLASH SIZE megabytes (my eMMC is 8Gb, rkdeveloptool reports 7393 megabytes) run ./rkdeveloptool rl 0x0 $((FLASH_SIZE * 2048)) backup.data (change FLASH_SIZE with the value you obtained the step before) once done, the internal eMMC is backed up to backup.data file Restore: first we have to restore the original bootloader, then restore the original firmware. Running rkdeveloptool with these switches will accomplish both the jobs: ./rkdeveloptool db rk322x_loader_v1.10.238_256.bin Downloading bootloader succeeded. ./rkdeveloptool ul rk322x_loader_v1.10.238_256.bin Upgrading loader succeeded. ./rkdeveloptool wl 0x0 backup.data Write LBA from file (100%) Download here: Erase the flash memory: clearing the internal eMMC/NAND memory makes the SoC look for external SD Card as first boot option. If there isn't any suitable SD Card, the SoC enters maskrom mode, which can then be used for full eMMC/NAND access using rkdeveloptool. This is perfectly fine if your box has an eMMC flash memory. NOTE: In case you have a NAND flash memory this option is however discouraged. The original bootloader contains some special parameters to correctly access the data. Clearing the flash memory will probably garbage the NAND data and restoring the bootloader may require some special instructions. Obtain a copy of rkdeveloptool: a compiled binary is available in the official rockchip-linux rkbin github repository. If you prefer, you can compile it yourself from the sources available at official rockchip repository Unplug the power cord from the board Plug an end of an USB Male-to-male cable into the OTG port (normally it is the lone USB port on the same side of the Ethernet, HDMI, analog AV connectors) while pressing the reset microbutton with a toothpick. You can find the reset microbutton in a hole in the back of the box, but sometimes it is hidden into the AV analog jack Plug the other end of the USB Male-to-male cable into an USB port of your computer If everyting went well, using lsusb you should see a device with ID 2207:320b run ./rkdeveloptool ef and wait a few seconds once done, the internal eMMC is erased and the device will boot from the sdcard from now on Partecipation and debugging: If you want to partecipate or need help debugging issues, do not hesitate to share your experience with the installation procedure of the boxes. In case of issues and missed support, provide as many as possible of these things is very useful to try and bring support for an unsupported board: some photos of both sides of the board. Details of the eMMC, DDR and Wifi chips are very useful! upload the device tree binary (dtb) of your device. We can understand a lot of things of the hardware from that small piece of data; and alternative is a link to the original firmware (you can do a full backup with the Multitool); dmesg and other logs (use armbianmonitor -u that automatically collects and uploads the logs online) attach a serial converter to the device and provide the output of the serial port; Critics, suggestions and contributions are welcome! Credits: @fabiobassa for his ideas, inspiration, great generosity in giving the boards for development and testing. The project of bringing rk322x into armbian would not have begun without his support! Justin Swartz, for his work and research to bring mainline linux on rk3229 (repository here) @knaerzche for his great contribution to libreelec support and mainline patches @Alex83 for his patience in testing the NAND bootloader upgrade procedure on his board @Jason Duhamell for his generous donation that allowed researching eMCP boards and esp8089 wifi chip
  17. Hi, after reading the very entertaining thread regarding the BPI-W2 and the following opening of the bsp-kernel on github, I became curious and when prices dropped for the Lake-1-TV-Box, I decided to play around with it. Without very much documentation there was a bunch of trial and error and still many things are not absolutely clear to me, but finally I could boot an armbian build today: _ _ _ | | __ _| | _____ / | | | / _` | |/ / _ \ | | | |__| (_| | < __/ | | |_____\__,_|_|\_\___| |_| Welcome to ARMBIAN 5.68 user-built Ubuntu 18.04.1 LTS 4.9.119-rtd1295 System load: 1.49 0.74 0.31 Up time: 3 min Memory usage: 4 % of 1631MB IP: CPU temp: 46°C Usage of /: 11% of 7.2G [ General system configuration (beta): armbian-config ] New to Armbian? Check the documentation first: https://docs.armbian.com Thank you for choosing Armbian! Support: www.armbian.com This is still connected over the serial port and completely untested. I had to use the strange chained double-u-boot and load kernel and dtb manually (from raw sd card sectors), so it is not even close to alpha. But it seems, that this can be improved. I plan to make a repeatable build config, but do not expect some really usable stuff anytime soon. The situation with the lack of mainline support was already discussed in the other thread and the future does not look very bright here. This is more or less a personal playground at the moment. But if anyone is interested, you can leave comments or questions here. Sticky part (updated 03-03-2019): RTD1295-Devices: Tested: Lake 1 Home Cloud TV Box Untested: Beelink SEA 1, Zidoo X9s, Zidoo X8, Zidoo X10, Probox2 AVA, WD My Cloud Home, ... All development and tests thus far have been done on the Lake-1-TV-Box. It can not be ruled out, that the other boxes have other u-boot-versions/-configurations. Prerequisites: Mandatory: Serial connection soldered to the PCB (to reach the u-boot-shell) and a suitable terminal software. Further information here: https://en.opensuse.org/HCL:Lake1 (I can not confirm that „SD rescan“ does not work. Only „fatls“ and „fatload“ never worked for me, that’s why raw sector reads are used.) Recommended: Access to a Windows-PC, a USB-male-to-male-cable and the knowledge to re-flash the device by yourself. If you are not comfortable in doing this, DON’T DO IT!!! YOU CAN BRICK YOUR DEVICE FOREVER !! Current installation process (booting from SD-Card): Build a full-OS-image with armbian selecting „lake1“ from this fork: https://github.com/Staars/build. This will create an image with kernel image and dtb written to sectors before the root partition. The u-boot-build of armbian is not used. Write the image (using etcher) to an SD-card. For the moment we will not touch the eMMC of the target device and therefore will work as non-destructive as possible. This might change in the future and it should be no problem to implement a eMMC-only solution, but at the moment there is no solution in sight, that would let you dual-boot Android and Linux. Create a terminal connection to the serial pins of your target device and intercept the boot process immediately after power up to reach the first u-boot-shell. Now we have to edit the BOOTCMD the following way: env edit bootcmd sd read $kernel_loadaddr 800 954a; sd read $fdt_loadaddr a440 5d; env set bootargs earlycon=uart8250,mmio32,0x98007800 console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rootfs=ext4 init=/sbin/init; b2ndbc; bootr env save This is a relatively harmless operation and can be reversed with the insertion of 'bootr' in step 2. The Android-installation on the eMMC stays untouched. 4. Now at every boot the device will initialize the SD (which can fail!!), load the image and dtb, change the bootargs and call the second u-boot, which then will (hopefully) boot the kernel. U-boot: At the moment u-boot will be build, but not used. Because of bootloader encryption this will likely stay that way. We can build the fsbl-parts, but without the proper encryption the boot stops, when the first part (hw_setting) is loaded. A separated u-boot-fork at https://github.com/Staars/u-boot-rtd is used for the armbian build, but that does not really matter. We must use the vendor-u-boot and we can not do real scripting (no RUN-command) but only chaining of commands. Kernel: The starting point from Sinovoip was labeled 4.9.119, but this is very likely not the whole story. Some parts are even newer and some are probably older, given the fact that git-cherry-picking showed possible updates when used with the stable linux-4.9-branch below tag:4.9.119. The additional phoenix drivers were partly integrated in the kernel-fork on https://github.com/Staars/linux-kernel-rtd/tree/latest_patched as an extra folder to keep them in one place. If there should be really an adoption of this platform in the future, it might be a good idea to go the other way around and merge the soc-specific parts into a generic linux-4.9.-fork. This is a bit of work, but it should be possible. The fork is currently patched to 4.9.174 New kernel fork started at https://github.com/Staars/linux-stable/tree/linux-4.19.y (not 4.20 because of LTS) and armbian build config updated. DTS/DTB: This is a minimal changed version for the banana-pi w2. Bluecore.audio: I do not really know if this (audio firmware?) is useful outside of Android. It is written to the SD-Image (directly behind the DTB), but not loaded. What works: -SATA-port (incl. booting with /root on SSD with bootarg 'root=/dev/sataa1') -WLAN (onboard 8821AU), but there are very short freezes every few seconds -simple software install (i.e. OMV) -reboot/restart works, but can take some time -bluetooth What does NOT work: -bluetooth -halt/restart Things to do: -waiting for someone, who confirms, that this is repeatable on other setups -working on the DTS/DTB -test Ethernet, USB -HDMI-in/-out or graphics in general (very low priority for me) -eMMC-only-install (must check first, where it is safe to write data) -test 4.19 (functional regression expected) Board_Pics:
  18. DISCLAIMER (PLEASE READ): everything you can find in this thread (binaries, texts, code snippets, etc...) are provided AS-IS and are not part of official Armbian project. For this reason not people from Armbian project nor myself are responsible for misuse or loss of functionality of hardware. Please don't ask about support or assistance in other non-community forums nor in the official Armbian github repository, instead post your questions in this thread, in the TV Boxes forum section (hardware related) or in the Peer-to-peer support section (general linux/software related). Thank you! This is CSC Armbian for XT-Q8L-V10 boards, also known as Chiptrip Q8, Vsmart Q8, ENY 3288 Q8, etc... All source code has been merged into Armbian mainline project. I still keep my personal public Armbian fork for experimental features: https://github.com/paolosabatino/armbian-build Nightly images: download directory Quick installation instructions on eMMC: Build or download your preferred Armbian image from Download directory and a copy of the Multitool; Burn the Multitool on an SD card; once done, place the Armbian image in images folder of the SD card NTFS partition; Plug the SD card in the TV box and plug in the power cord. After some seconds the blue led starts blinking and the Multitool appears; OPTIONAL: you can do a backup of the existing firmware with "Backup flash" menu option; Choose "Burn image to flash" from the menu, then select the destination device (usually mmcblk2) and the image to burn; Wait for the process to complete, then choose "Shutdown" from main menu; Unplug the sd card, then push the power button for 1 second (the led will turn blue) After 10 seconds HDMI will turn on and you will get logging messages; On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run armbian-config to configure timezone, locales and other personal options Congratulations, Armbian is now installed! Boot from SD Card/USB stick (with Armbian already installed in eMMC, empty eMMC or no eMMC😞 Build or download your preferred Armbian image from Download directory; Burn the image on your SD card/USB stick; Plug the SD card/USB stick in the device; Push the power button for 1 second (the led will turn blue); After 10 seconds HDMI will turn on and you will get logging messages; On first boot you will be asked for entering a password for root user of your choice and the name and password for a regular user Run armbian-config to configure timezone, locales and other personal options Congratulations, Armbian is now installed! Boot from SD Card/USB stick (with original firmware or other firmware): In case your box has the original firmware installed, use the Multitool to erase the internal flash. Don't worry, you will not brick your box: once the eMMC is emptied, the box will automatically boot from SD Card. This is called Maskrom mode and is common to all Rockchip devices. Instructions and download links for the Multitool are at the bottom of this post. After erasing the internal eMMC, just follow the "Boot from SD Card" procedure above and then you are fine. Boot priority: Newer images (those with mainline kernel >= 4.14.50) now support booting from multiple devices. Priority is fixed and boot devices are probed in this order: External SD card External USB storage device (Any USB Stick/Hard drive attached to USB host ports) Internal eMMC This way even if you install armbian to internal eMMC, you can still easily test different images booting from external devices. Experts notes: when armbian is installed into eMMC you get U-boot installed too in eMMC. This is important to know because the box won't boot in Maskrom Mode, but instead will always boot the embedded U-boot, no matter if you put an sdcard/usb stick. In practice the embedded U-boot is totally responsible for the boot priority. If you want to restore the Maskrom Mode, just erase U-boot from eMMC using this command: dd if=/dev/zero of=/dev/mmcblk2 seek=64 count=8128 conv=sync,fsync Current status: Wireless: works. pretty fast and stable, signal is strong on my box; Bluetooth: works. I was able to transfer files and stream audio without problems USB ports: works, with autosuspend too. A quick benchmark show that transfer rate is quite good (topped at 34 MB/s) USB OTG: works in host mode. Transfer rate is very good (> 40 MB/s) MMC: works and is perfectly accessible as storage device. The images above with "eMMC friendly" have been tested and work when installed in eMMC using the standard armbian-config eMMC installer SDCard: works. legacy kernel is limited to high speed, while mainline works fine in UHS mode too. A quick benchmark with a Samsung EVO card shows the promised 48Mb/s read speed. Gigabit Ethernet: works, fast and reliably HDMI: works perfectly Serial: works Audio: both HDMI audio and SPDIF connector works IR remote: works on legacy and mainline kernels Reboot/Suspend process: rebooting the device is a working in progress, at the moment sometimes it works and sometimes it doesn't. Suspend is still not available. Hardware acceleration: everything which works for rk3288 boards applies here too. This guide or maybe the Media Testing Script will help you gain an hardware accelerated X11 and Chromium (using GL4ES I enjoyed Quake 2 from the start till the end, but also Quake and Quake III Arena work flawlessy, here a quick how-to to compile and install GL4ES) Multimedia: On mainline kernel 3D acceleration is provided by Panfrost driver and is already enabled. Hardware video decoding: https://forum.armbian.com/topic/19258-testing-hardware-video-decoding-rockchip-allwinner/ Multitool: The Multitool is a small but powerful tool to easy operate on internal eMMC flash of RK3288 devices. Features: Backup the content of internal eMMC Restore a previously backed-up image to eMMC Erase the eMMC (via fast blkdiscard or zero-fill as fallback) Burn an Armbian (or LibreELEC) image directly on the eMMC Provide a recovery shell for manual maintenance Windows-friendly: everything is placed in a NTFS partition Image compression format autodetection: they are decompressed on-the-fly during burn process Network support for remote maintenance via SSH (instructions to access via network here) Instructions are simple: Download the image from here Burn it on an sdcard Open the NTFS partition with your preferred file manager Place the images you want to burn on the device in images directory (backups will be stored in backups directory) Plug the sd card in the RK3288 device Power the device and wait few seconds, the Multitool menu will appear on screen and can be navigated with the keyboard Last edit: 07/06/2020 - updated installation instructions
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines