Jump to content

jock

Members
  • Posts

    1846
  • Joined

  • Last visited

Reputation Activity

  1. Like
    jock got a reaction from Benedito Portela in CSC Armbian for RK322x TV box boards   
    Indeed it is a scrap chip, tvboxes are often made of scrap parts; so far I have seen that chip on other boxes with rk3318, this is the first time that wifi chip appears on a box with rk322x.
     
    By the way, the image you are using is ancient!
    You can take a newer image with legacy 4.4 kernel here (suitable for boards with NAND) and you can should use a recent mainline kernel image from here for the box with eMCP.
    Note that the mainline kernel image will also work flawlessy on boards with NAND, just the NAND flash won't be available and you will have to use an external SDcard for those boxes.
  2. Like
    jock reacted to occams razor in CSC Armbian for RK322x TV box boards   
    For the H20_221_v1.71 board I have worked out the uart connections and maskrom enable point.   For maskrom, this is shorting out either the data or clock line.  I have no way to determine which unless I take this thing to the office and look at it on a logic analyzer.  The test points are probably very similar to the v1.5 board with the blue solder mask.
     
     
     

  3. Like
    jock reacted to RaptorSDS in CSC Armbian for RK322x TV box boards   
    like i sad befor led are a old word it change some more
     
    jock explain :
    https://forum.armbian.com/topic/12656-csc-armbian-for-rk322x-tv-boxes/?do=findComment&comment=163046
     
     
     
     
    what do you mean recognize wifi ? complete empty SDIO device or a wifi with unknow id like 024c:D724 ( RTL8723DS , because i solder it myself  and no one else has this chip inside a rk322x box, so its not recognice automaticly )
    Is wifi another problem ?  i thing that HDMI was your problem ?
     
     
  4. Like
    jock reacted to occams razor in CSC Armbian for RK322x TV box boards   
    @n3o  The members trying to help you are highly experienced. The important point here is for you not to treat their specific instructions as merely "suggestions" after which you go off and do your own thing.   That is where the frustration lies. 
     
    Based on the energy other users and you have spent on this, I would just buy some other TV box or SBC that is already known to run Armbian without any issues instead of trying to resurrect an old tired piece of hardware.   Unless you are really short on cash,  this is what I would do.  However, if you really are so short on cash that you cannot afford another $20USD on something else, then I believe your priorities are all wrong.
     
    I have an H20 RK3228A tv box that is in transit that has some documented booting issues with Armbian.  In a way, I am happy to see how this whole episode has progressed.  I'm happy because now I know what NOT to do.
  5. Like
    jock got a reaction from Seth in CSC Armbian for RK322x TV box boards   
    Seriously, are you thinking that thousands of log lines of the original android (I read kernel 3.10) are of any use?
    Paste the logs of the problematic boot, not when it goes well, damn!
  6. Like
    jock got a reaction from Khánh Ngô in Testing hardware video decoding (rockchip, allwinner?)   
    !! DEPRECATED !!
    Instructions in this thread are oudated and superseded by the new experimental APT repository for hardware video decoding ffmpeg.
    Please refer to this thread from now on!
     
    Hello, recent upgrades to armbian are regarding kernel 5.15.
    I noticed that many v4l2 fixes and enhancements went into this release, so I decided to compile ffmpeg using LibreELEC patched version and mpv over it.
    mpv turns out to be statically linked with ffmpeg, so I propose it here for people who is interested in cutting edge kernel and wants to do some tests.
     
    This has been tested on Debian Bullseye and Ubuntu Hirsute on following platforms:
    Rockchip RK3228/9 (kernel 5.10, 5.14) Rockchip RK3288 (kernel 5.14) Rockchip RK3318/28 (kernel 5.15)  
    It should work on allwinner platforms too, but I didn't test it there.
    Binaries are built by me on developing boards.
     
    The binary for armhf is available here
    The binary for arm64 is available here
     
    Copy the binary into /usr/local/bin directory of your system (mpv-armhf for 32 bit systems, mpv-arm64 for 64 bit systems):
    sudo cp mpv-armhf /usr/local/bin/mpv  
    Install dependencies for Debian Bullseye and Ubuntu Hirsute:
    apt install libass9 libbluray2 librubberband2 libsdl2-2.0-0 libva-drm2 libva-wayland2 libva-x11-2 libva2 libvdpau1 libx264-160 libx265-192 libxss1 libxv1 libfdk-aac2  
    I have had issues with dependencies on Debian Buster/Ubuntu Focal, in particular libx264-160 and libx265-192 are not available there.
    I Solved the issue downloading the packages from Debian Bullseye web page and manually installing them.
    There may be the need for some other dependency depending upon your actual installation.
     
    Run mpv in a virtual terminal (videos up to 4K) with this CLI:
    mpv --vo=gpu --hwdec=drm --gpu-hwdec-interop=drmprime-drm --drm-draw-plane=overlay --drm-drmprime-video-plane=primary <video.mp4>  
    Mpv can be run in X11 with this other CLI, but due to buffer copying it requires a good CPU - rk3228 and rk3328 won't even play 720p, rk3288 do 720p fine:
    mpv --vo=gpu --hwdec=auto-copy --gpu-context=x11egl --gpu-hwdec-interop=drmprime-drm <video.mp4>  
    This is an experiment and your mileage may vary a lot:
    H.264 codec should be well supported around the boards; H.265 has more limited support VP8 should be generally supported VP9 seems to still require some work.
  7. Like
    jock got a reaction from MattWestB in CSC Armbian for RK322x TV box boards   
    Actually I forgot to update the first post: the FAT partition has now been changed to NTFS to overcome the 4GB maximum file size limitation of FAT32.
    I think I made a post about that, but forgot to update the first post. Sorry, I'm going to fix that right now!
     
    Despite that, the multitool works exactly the same as before.
  8. Like
    jock got a reaction from RaptorSDS in CSC Armbian for RK322x TV box boards   
    Actually I forgot to update the first post: the FAT partition has now been changed to NTFS to overcome the 4GB maximum file size limitation of FAT32.
    I think I made a post about that, but forgot to update the first post. Sorry, I'm going to fix that right now!
     
    Despite that, the multitool works exactly the same as before.
  9. Like
    jock reacted to RaptorSDS in CSC Armbian for RK322x TV box boards   
    @n3o
    Yes I know you want a box that will boot Armbian only with insert SD card and you are fine, now we have some difficulties and you try to read all that can help and try to do things by yourself while waiting.

    You try to do the right steps but as last time please be more patient.

    Yes we now know that you have some exp in software but not linux and not this box. Yes we understand that you try to understand every step and try to be a good help but please dont mix topic.
    Not every box is the same, not every chip is the same, so not all pictures are like your box.
     
     
    Jock want the log files, not picture of the boot from mutitool and/or log file of trying direct flash armbian on sd card and then boot.

    We can not support Android or anything that comes from Android.

    Yes we are very, very short in describing what we expect in every single step we want from everyone who has problem and ask for help.
    But here are so many who just post not working and thats it or people who dont read first topic.
    And also we are write so often to try to help and we think that many have already followed that our topic is Armbian on this box or dont understand that this all is also our free time and hobby. We think that people should understand that this is all at their own risk and that they need to understand something about what they are about to do like uart adapter or working with ssh or console.
     
  10. Like
    jock got a reaction from Benedito Portela in CSC Armbian for RK322x TV box boards   
    We don't know! The board is new and it just does not work 🤷‍♂️
    And please don't ask for solutions: proper serial logs, original device trees and firmware perhaps may help, but most we need the board in our hands to give the chance to support it.
  11. Like
    jock got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    @wslab wrong thread, please refer to the first page of the correct thread, everything is written in there: https://forum.armbian.com/topic/26978-csc-armbian-for-rk3318rk3328-tv-box-boards/
     
  12. Like
    jock reacted to RaptorSDS in CSC Armbian for RK322x TV box boards   
    Yes correct --> NAND install = legacy armbian
    but you can boot latest Armbian from SD card or USB and ignore NAND complete 
     
     
    Bootloader update only possible with male - male USB cable and rktool outside of the box
     
    there are 3 bootloader 
    1. open ones ,  SD-Card , USB and NAND boot allow , boot SD-CARD/USB also if there a OS in NAND or install Armbian legacy to nand
    2. open ones  , SD-Card USB Boot  NAND boot allow but boot NAND first , there you can try the new point in Multitool "Jump start " that always redirect boot to SD-Card   or install Armbian legacy to nand
    3 close ones (rare ones), that the ones with probleme where you have to update bootloader
     
     
    Please !!! do the simple steps first , simple install legacy to nand and try it --> flash multitool on SD-card , put image file in the folder , start multitool , save android , clean nand and install(flash) armbian to nand
     
    or flash image file on sd-card and boot armbian legacy or  newest
     
     
     
     
     
     
     
    we do need them only when all other failed  , RK322x have some already inside armbian , many work with many diffirent setups and hardware already no need to do 10 step ahead
    please simple first !!!!
     
    please dont do this 10 steps ahead , i only want to say make a backup of android its good to have one also if corrupt .
  13. Like
    jock got a reaction from Seth in CSC Armbian for RK3318/RK3328 TV box boards   
    @stroma Hello, thanks for the photos, they will be useful at least to have an idea of the issue.
    Anyway did you try the experimental image with kernel 5.19.15 and libreelec patches?
    They have several HDMI/DRM fixes, perhaps they fix your case. Since the LE patches are not mainlined into armbian, you should then not upgrade the kernel.
     
    I quickly looked back and  @Seth described similar issues you have had with his two boards.
  14. Like
    jock got a reaction from sadp in CSC Armbian for RK322x TV box boards   
    @sadp Your wifi chip is not supported by the brcmfmac driver; there is a patch for rockchip64 family but not for rk322x.
    I will make a Pull Request to add the patch for rk322x but have to be patient, wait a couple of weeks and it will be probably available for edge 6.4 kernel. You are on current 6.1 right now, so perhaps you may want to switch when the new kernel will be available.
     
    About the missing HDMI, it is a known problem for all R29 boards; @Hudson FAS gently offered to send me a board of such kind for me to inspect and try to fix the issue, so patience here too.
     
  15. Like
    jock reacted to cgutman in OPi 4 LTS - no HDMI output   
    Wow perfect timing. I just got an Orange Pi 4 LTS today and experienced the same HDMI issues reported by OP when trying to use the Armbian_23.5.1_Orangepi4-lts_bookworm_current_6.1.30_xfce_desktop image.
     
    Your experimental image works perfectly.
  16. Like
    jock got a reaction from LFPoulain in CSC Armbian for RK3318/RK3328 TV box boards   
    ­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 Ninkbox N1 Max RK3318 by @enigmasphinx  
     
    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:
    Archived images - built by Armbian servers and GPG-signed: https://imola.armbian.com/dl/rk3318-box/archive/ Nightly stables - built from trunk by Armbian servers and GPG-signed: https://github.com/armbian/community Stables provided by me (unsigned): https://users.armbian.com/jock/rk3318/  
    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
     
     
  17. Like
    jock got a reaction from ANKH in CSC Armbian for RK3318/RK3328 TV box boards   
    @ANKH I think there are no other things to try, so either we want or we don't, it's a dead end.
  18. Like
    jock got a reaction from dicky soeliantoro in CSC Armbian for RK3318/RK3328 TV box boards   
    @dicky soeliantoro On first page you can find the "Prebuilt images" links. The "archived" ones are quite recent with kernel 6.1.x are good to go with stable kernel.
    There are also the "nightly stables", which have 6.3.x kernel, which is newer and with more features, but also could be less stable.
     
    The choice is yours, it depends on what you want to do with the box.
  19. Like
    jock got a reaction from tommy in CSC Armbian for RK322x TV box boards   
    @fangis It is not a good idea to cut the stack trace in the middle when you want to do debug. Also put the log in a "spoiler" section to make easier to read the thread.
     
    @mattmar I don't understand the part about the usb adapter: if are you using it to program the sdcard on the PC then it does not matter. If you're using it on the box, then it won't work.
    Also I don't understand what does not boot: the multitool or the armbian image?
    AIDA is not useful, as usual we need the serial output and photos of the board.
  20. Like
    jock got a reaction from fangis in CSC Armbian for RK322x TV box boards   
    @fangis It is not a good idea to cut the stack trace in the middle when you want to do debug. Also put the log in a "spoiler" section to make easier to read the thread.
     
    @mattmar I don't understand the part about the usb adapter: if are you using it to program the sdcard on the PC then it does not matter. If you're using it on the box, then it won't work.
    Also I don't understand what does not boot: the multitool or the armbian image?
    AIDA is not useful, as usual we need the serial output and photos of the board.
  21. Like
    jock reacted to art3mis_17 in CSC Armbian for RK322x TV box boards   
    @jock & @fabiobassa, thanks for pointing out that my device was nand, I somehow mistook it for emmc. After struggling for long time I followed the unbrick guide and I was able to recover the device by flash it with the android using Android Tool. I got a new SD card, loaded it with multitool, however there was a slight hiccup in backing up the flash on rknand as the progress bar in multitool was stuck at 0% for a very long time, so I decide to skip the backup and used focal image with legacy kernel and my box is now running armbian. Thanks for helping out
  22. Like
    jock reacted to Maxxim in CSC Armbian for RK3318/RK3328 TV box boards   
    I'm trying to do that, but your forum software is giving me problems (Invision, you were at the forefront 20 years ago, but now you're way behind the curve). It can't copy its own formatting between Edit screens in different posts ("Press Ctrl+V to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.") I tried both Edge and Firefox, so two different engines. What does it want, Chrome? (Insert Cyberpunk reference here) I'll have to recreate the formatting from scratch. Anyway, I'm on it. ... Aaand done!
  23. Like
    jock got a reaction from Vasily Petrovich in CSC Armbian for RK322x TV box boards   
    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
  24. Like
    jock got a reaction from fangis in CSC Armbian for RK322x TV box boards   
    It's no secret indeed, but the armbian image has been engineered NOT to work that way on purpose because I did not wanted anything to do with existing old/buggy/limited bootloaders, miniloaders, trusts or whatever...
     
     
  25. Like
    jock reacted to ilmich in CSC Armbian for RK322x TV box boards   
    Hi all,
     
    I'm not writing to ask for help, but only to share my experience, and to thank @jock for his work in allowing us to use linux with these boxes.
    My board is an android tv with soc rk3229/NAND/DDR3/Wifi SSV6051p which I'm using as a network appliance (pihole - simple nas - network web server).
     
    I followed the instructions in the first post and understood that the NAND is not supported, I preferred to empty it to avoid old bootloader problems and installed armbian bookworm on the SD card.
    The rest is linux... I installed the software I needed and now the box provides services for my home network without any problems (and I reused hardware that otherwise would have gone in the trash).
    Thanks again @jock and of course the armbian community
     
    Cheers
    Michele
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines