Jump to content

hzdm

Members
  • Posts

    13
  • Joined

  • Last visited

Reputation Activity

  1. Like
    hzdm got a reaction from Hqnicolas in Efforts to develop firmware for H96 MAX M9 RK3576 TV Box 8G/128G   
    Hi all.
    When I saw this page (thanks @Hqnicolas) - looked at the specs of this board, and looked at its price ($85) - I knew I had to try to install Linux on it.
     
       
    First things first - I did an Android backup.   
    ====================================
    1. Turned on  Android box. I connected it to the local network 2. Turn on developer mode. Turn on debugging. 3. On the Linux computer, run $ adb connect 192.168.0.20:5555 $ adb root $ adb shell rk3576_box:/ # cat /proc/partitions | grep mmcblk  179        0  122142720 mmcblk2  179        1       4096 mmcblk2p1  179        2       4096 mmcblk2p2  179        3       4096 mmcblk2p3  179        4       4096 mmcblk2p4  179        5       4096 mmcblk2p5  179        6       1024 mmcblk2p6  179        7      65536 mmcblk2p7  179        8      98304 mmcblk2p8  179        9     393216 mmcblk2p9  179       10     393216 mmcblk2p10  179       11      65536 mmcblk2p11  179       12        512 mmcblk2p12  179       13       1024 mmcblk2p13  179       14    4194304 mmcblk2p14  179       15  116905440 mmcblk2p15  179       32       4096 mmcblk2boot0  179       64       4096 mmcblk2boot1 rk3576_box:/ # exit adb pull /dev/block/mmcblk2 /home/user/full-big.iso Next - using the dd utility, reduce the resulting file to 6Gb, since the image takes 120Gb dd if=/home/user/full-big.iso of=/home/user/H96_MAX_M9_RK3576-android-full.iso bs=512 count=11895122 
    Getting the dtb file
    -----------------------
    $binwalk --signature --term full_mini   Find the largest Flattened device tree.   DECIMAL       HEXADECIMAL     DESCRIPTION                                                                                                                                                                    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ………………..…… 55363843      0x34CC903       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55438666      0x34DED4A       Unix path: /lib/firmware/updates/6.1.57                                                                                                                                        55440137      0x34DF309       Unix path: /dev/disk/by-id/ may cause data corruption                                                                                                                          55466136      0x34E5898       Neighborly text, "NeighborAdvertisements6ip6t_REJECT: ECHOREPLY is not supported"                                                                                              55496752      0x34ED030       Unix path: /sys/kernel/debug/rk628/2-0050/hdmitx_color_bar                                                                                                                     55555249      0x34FB4B1       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        55760043      0x352D4AB       Unix path: /sys/kernel/debug/%s                                                                                                                                                55760097      0x352D4E1       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55846910      0x35427FE       Neighborly text, "Neighborenabling vblank on crtc %u, ret: %d"                                                                                                                 55855620      0x3544A04       Unix path: /lib/firmware/6.1.57                                                                                                                                                55878704      0x354A430       Unix path: /sys/firmware/devicetree/base                                                                                                                                       55913424      0x3552BD0       Unix path: /sys/kernel/debug/rk628/2-0050/scaler_color_bar                                                                                                                     55913634      0x3552CA2       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56002822      0x3568906       Neighborly text, "neighbor %.2x%.2x.%pM lostrward_delay_timer"                                                                                                                 56003414      0x3568B56       Neighborly text, "NeighboraversalTime"                                                                                                                                         56031712      0x356F9E0       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        56031782      0x356FA26       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56538119      0x35EB407       MySQL ISAM compressed data file Version 3                                                                                                                                      58589623      0x37E01B7       mcrypt 2.2 encrypted data, algorithm: blowfish-448, mode: CBC, keymode: 8bit                                                                                                   58682916      0x37F6E24       ASCII cpio archive (SVR4 with no CRC), file name: "dev", file name length: "0x00000004", file size: "0x00000000"                                                               58683032      0x37F6E98       ASCII cpio archive (SVR4 with no CRC), file name: "dev/console", file name length: "0x0000000C", file size: "0x00000000"                                                       58683156      0x37F6F14       ASCII cpio archive (SVR4 with no CRC), file name: "root", file name length: "0x00000005", file size: "0x00000000"                                                              58683272      0x37F6F88       ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"                                                        58782120      0x380F1A8       Intel x86 or x64 microcode, pf_mask 0xf4401f01, 2001-09-12, rev 0x30000000, size 1                                                                                             58888000      0x3828F40       AES S-Box                                                                                                                                                                      58888256      0x3829040       AES Inverse S-Box                                                                                                                                                              63311872      0x3C61000       gzip compressed data, from Unix, last modified: 1970-01-01 00:00:00 (null date)                                                                                                64777216      0x3DC6C00       Flattened device tree, size: 262377 bytes, version: 17                                                                                                                         65039872      0x3E06E00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65046528      0x3E08800       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65053184      0x3E0A200       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65059840      0x3E0BC00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65066496      0x3E0D600       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65073152      0x3E0F000       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                 ^C ~$    ~$dd if=full_1_mini of=h96-m9_original.dtb bs=1 skip=64777216 count=262377  ~$dtc -O dts h96-m9_original.dtb -o h96-m9_original.dts    
    How to burn an Android image to a box:
    ==================================
    Press the reset button. Turn on the power.
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 full_mini
     
    cc @El308
     
    Armbian
    =====================
    Copy the file h96-m9.csc directory to the directory build/config/boards/
    Create build/packages/blobs/h96-m9/ directory and copy h96-m9_original.dtb file into it
     
    Run the build
    ------------------
    build debian 12 DESKTOP
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=noble KERNEL_GIT=shallow BUILD_DESKTOP=yes DESKTOP_APPGROUPS_SELECTED= DESKTOP_ENVIRONMENT=gnome DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base
     
    build debian 12 server
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=bookworm KERNEL_GIT=shallow BUILD_DESKTOP=no EXPERT=yes KERNEL_CONFIGURE=no

    Installing
    ----------------
    Press the reset button. Turn on the power.
     
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
     
    Warning! This build has a very important drawback. After flashing, the reset button stops working. Without it it will be difficult to flash the console. If you don't have a console cable - don't flash with this firmware yet. I'll be working on finalizing it now. Wait for a while.
     
    If you have a console cable and you need to install another image.
    1. Connect the console cable.
    2. Start the console.
    3. At the same time try to stop loading by pressing ctrl+c in the console. It may not work the first time.
    3. Enter in the u-boot console
    part uuid mmc 0:1 partuuid
    4. Reboot the  box.
    5. Flash
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img

    Test debian 12 DESKTOP  and debian 12 server.
    ==================================================
    It works
    -----------
    1. USB2.0 and USB3.0 are working
    2. WiFi6 works: router shows 11ax 1x1 80 MHz

    Not working
    -----------
    1. Reset button in UBOOT
    2. When turning off the box, the lights are still on. Probably - it is not really turned off.
    3. video acceleration does not work.

    Tests
    ==============
    $ glmark2-es2-wayland  ----------------------------- MESA: error: ZINK: vkCreateInstance failed (VK_ERROR_INCOMPATIBLE_DRIVER) libEGL warning: egl: failed to create dri2 screen =======================================================     glmark2 2023.01 =======================================================     OpenGL Information     GL_VENDOR:      Mesa     GL_RENDERER:    llvmpipe (LLVM 17.0.6, 128 bits)     GL_VERSION:     OpenGL ES 3.2 Mesa 24.0.9-0ubuntu0.1     Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0     Surface Size:   800x600 windowed ======================================================= [build] use-vbo=false: FPS: 85 FrameTime: 11.857 ms [build] use-vbo=true: FPS: 86 FrameTime: 11.747 ms [texture] texture-filter=nearest: FPS: 128 FrameTime: 7.842 ms [texture] texture-filter=linear: FPS: 120 FrameTime: 8.345 ms [texture] texture-filter=mipmap: FPS: 104 FrameTime: 9.689 ms [shading] shading=gouraud: FPS: 63 FrameTime: 15.886 ms [shading] shading=blinn-phong-inf: FPS: 58 FrameTime: 17.303 ms [shading] shading=phong: FPS: 51 FrameTime: 19.827 ms [shading] shading=cel: FPS: 50 FrameTime: 20.407 ms [bump] bump-render=high-poly: FPS: 42 FrameTime: 24.208 ms [bump] bump-render=normals: FPS: 108 FrameTime: 9.273 ms [bump] bump-render=height: FPS: 99 FrameTime: 10.157 ms [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 58 FrameTime: 17.272 ms [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 34 FrameTime: 30.001 ms [pulsar] light=false:quads=5:texture=false: FPS: 96 FrameTime: 10.481 ms [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 21 FrameTime: 48.463 ms [desktop] effect=shadow:windows=4: FPS: 50 FrameTime: 20.021 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 59 FrameTime: 17.063 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 66 FrameTime: 15.303 ms [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 50 FrameTime: 20.203 ms [ideas] speed=duration: FPS: 48 FrameTime: 20.963 ms [jellyfish] <default>: FPS: 37 FrameTime: 27.768 ms [terrain] <default>: FPS: 2 FrameTime: 558.207 ms [shadow] <default>: FPS: 50 FrameTime: 20.170 ms [refract] <default>: FPS: 8 FrameTime: 127.994 ms [conditionals] fragment-steps=0:vertex-steps=0: FPS: 80 FrameTime: 12.594 ms [conditionals] fragment-steps=5:vertex-steps=0: FPS: 63 FrameTime: 15.980 ms [conditionals] fragment-steps=0:vertex-steps=5: FPS: 85 FrameTime: 11.845 ms [function] fragment-complexity=low:fragment-steps=5: FPS: 67 FrameTime: 14.929 ms [function] fragment-complexity=medium:fragment-steps=5: FPS: 54 FrameTime: 18.690 ms [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 49 FrameTime: 20.822 ms [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 50 FrameTime: 20.299 ms [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 47 FrameTime: 21.386 ms =======================================================                                   glmark2 Score: 61  =======================================================  
    First of all, you need to solve the problem with non-working reset button in U-boot.
    If possible, enable USB booting. This can be very useful if the emmc chip fails over time.
    Thanks for the links to RK3576_MiniLoaderAll.bin and the firefly repository.
    The firefly image in u-boot has the reset button working. Will have to look at their u-boot build settings.
     
    I continue to study...
     
    Links:
     
    RK3576_MiniLoaderAll.bin
    https://drive.google.com/file/d/1gkOdYMaqUBe0iykbIoBcTa5c-fZcjRQU/view?usp=sharing
     
    h96-m9_original.dtd/h96-m9_original.dts
    https://drive.google.com/file/d/1tIcK2nWX6hHQY66p1k4BiWnw3CCXRhFd/view?usp=sharing
    https://drive.google.com/file/d/1OkZhmmadyvwdTw7zIzExARgoYgO-JVs9/view?usp=sharing
     
    h96-m9.csc
    https://drive.google.com/file/d/1Eghh1MmzQoi8KTOPBHQS6i38db3YvF_-/view?usp=sharing
     
    H96 MAX M9 RK3576-android-full.iso.7z
    https://drive.google.com/file/d/1i4geoEatD7bagCkkIiRvYSBYGGELivWV/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
    https://drive.google.com/file/d/1smumqfmyCDFFaQjoVCFVgQfWG4MN0Shc/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_bookworm_vendor_6.1.75-test_1.img
    https://drive.google.com/file/d/1kfLxSNcN3ZJp8iKUVgtncFxhD2TsoNo3/view?usp=sharing
     
    Here are the pictures of the board:
    =============================
     
     
     
     
     
     
     
     
  2. Like
    hzdm got a reaction from Vincenzoernst1 in Efforts to develop firmware for H96 MAX M9 RK3576 TV Box 8G/128G   
    Hi all.
    When I saw this page (thanks @Hqnicolas) - looked at the specs of this board, and looked at its price ($85) - I knew I had to try to install Linux on it.
     
       
    First things first - I did an Android backup.   
    ====================================
    1. Turned on  Android box. I connected it to the local network 2. Turn on developer mode. Turn on debugging. 3. On the Linux computer, run $ adb connect 192.168.0.20:5555 $ adb root $ adb shell rk3576_box:/ # cat /proc/partitions | grep mmcblk  179        0  122142720 mmcblk2  179        1       4096 mmcblk2p1  179        2       4096 mmcblk2p2  179        3       4096 mmcblk2p3  179        4       4096 mmcblk2p4  179        5       4096 mmcblk2p5  179        6       1024 mmcblk2p6  179        7      65536 mmcblk2p7  179        8      98304 mmcblk2p8  179        9     393216 mmcblk2p9  179       10     393216 mmcblk2p10  179       11      65536 mmcblk2p11  179       12        512 mmcblk2p12  179       13       1024 mmcblk2p13  179       14    4194304 mmcblk2p14  179       15  116905440 mmcblk2p15  179       32       4096 mmcblk2boot0  179       64       4096 mmcblk2boot1 rk3576_box:/ # exit adb pull /dev/block/mmcblk2 /home/user/full-big.iso Next - using the dd utility, reduce the resulting file to 6Gb, since the image takes 120Gb dd if=/home/user/full-big.iso of=/home/user/H96_MAX_M9_RK3576-android-full.iso bs=512 count=11895122 
    Getting the dtb file
    -----------------------
    $binwalk --signature --term full_mini   Find the largest Flattened device tree.   DECIMAL       HEXADECIMAL     DESCRIPTION                                                                                                                                                                    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ………………..…… 55363843      0x34CC903       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55438666      0x34DED4A       Unix path: /lib/firmware/updates/6.1.57                                                                                                                                        55440137      0x34DF309       Unix path: /dev/disk/by-id/ may cause data corruption                                                                                                                          55466136      0x34E5898       Neighborly text, "NeighborAdvertisements6ip6t_REJECT: ECHOREPLY is not supported"                                                                                              55496752      0x34ED030       Unix path: /sys/kernel/debug/rk628/2-0050/hdmitx_color_bar                                                                                                                     55555249      0x34FB4B1       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        55760043      0x352D4AB       Unix path: /sys/kernel/debug/%s                                                                                                                                                55760097      0x352D4E1       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55846910      0x35427FE       Neighborly text, "Neighborenabling vblank on crtc %u, ret: %d"                                                                                                                 55855620      0x3544A04       Unix path: /lib/firmware/6.1.57                                                                                                                                                55878704      0x354A430       Unix path: /sys/firmware/devicetree/base                                                                                                                                       55913424      0x3552BD0       Unix path: /sys/kernel/debug/rk628/2-0050/scaler_color_bar                                                                                                                     55913634      0x3552CA2       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56002822      0x3568906       Neighborly text, "neighbor %.2x%.2x.%pM lostrward_delay_timer"                                                                                                                 56003414      0x3568B56       Neighborly text, "NeighboraversalTime"                                                                                                                                         56031712      0x356F9E0       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        56031782      0x356FA26       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56538119      0x35EB407       MySQL ISAM compressed data file Version 3                                                                                                                                      58589623      0x37E01B7       mcrypt 2.2 encrypted data, algorithm: blowfish-448, mode: CBC, keymode: 8bit                                                                                                   58682916      0x37F6E24       ASCII cpio archive (SVR4 with no CRC), file name: "dev", file name length: "0x00000004", file size: "0x00000000"                                                               58683032      0x37F6E98       ASCII cpio archive (SVR4 with no CRC), file name: "dev/console", file name length: "0x0000000C", file size: "0x00000000"                                                       58683156      0x37F6F14       ASCII cpio archive (SVR4 with no CRC), file name: "root", file name length: "0x00000005", file size: "0x00000000"                                                              58683272      0x37F6F88       ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"                                                        58782120      0x380F1A8       Intel x86 or x64 microcode, pf_mask 0xf4401f01, 2001-09-12, rev 0x30000000, size 1                                                                                             58888000      0x3828F40       AES S-Box                                                                                                                                                                      58888256      0x3829040       AES Inverse S-Box                                                                                                                                                              63311872      0x3C61000       gzip compressed data, from Unix, last modified: 1970-01-01 00:00:00 (null date)                                                                                                64777216      0x3DC6C00       Flattened device tree, size: 262377 bytes, version: 17                                                                                                                         65039872      0x3E06E00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65046528      0x3E08800       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65053184      0x3E0A200       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65059840      0x3E0BC00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65066496      0x3E0D600       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65073152      0x3E0F000       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                 ^C ~$    ~$dd if=full_1_mini of=h96-m9_original.dtb bs=1 skip=64777216 count=262377  ~$dtc -O dts h96-m9_original.dtb -o h96-m9_original.dts    
    How to burn an Android image to a box:
    ==================================
    Press the reset button. Turn on the power.
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 full_mini
     
    cc @El308
     
    Armbian
    =====================
    Copy the file h96-m9.csc directory to the directory build/config/boards/
    Create build/packages/blobs/h96-m9/ directory and copy h96-m9_original.dtb file into it
     
    Run the build
    ------------------
    build debian 12 DESKTOP
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=noble KERNEL_GIT=shallow BUILD_DESKTOP=yes DESKTOP_APPGROUPS_SELECTED= DESKTOP_ENVIRONMENT=gnome DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base
     
    build debian 12 server
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=bookworm KERNEL_GIT=shallow BUILD_DESKTOP=no EXPERT=yes KERNEL_CONFIGURE=no

    Installing
    ----------------
    Press the reset button. Turn on the power.
     
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
     
    Warning! This build has a very important drawback. After flashing, the reset button stops working. Without it it will be difficult to flash the console. If you don't have a console cable - don't flash with this firmware yet. I'll be working on finalizing it now. Wait for a while.
     
    If you have a console cable and you need to install another image.
    1. Connect the console cable.
    2. Start the console.
    3. At the same time try to stop loading by pressing ctrl+c in the console. It may not work the first time.
    3. Enter in the u-boot console
    part uuid mmc 0:1 partuuid
    4. Reboot the  box.
    5. Flash
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img

    Test debian 12 DESKTOP  and debian 12 server.
    ==================================================
    It works
    -----------
    1. USB2.0 and USB3.0 are working
    2. WiFi6 works: router shows 11ax 1x1 80 MHz

    Not working
    -----------
    1. Reset button in UBOOT
    2. When turning off the box, the lights are still on. Probably - it is not really turned off.
    3. video acceleration does not work.

    Tests
    ==============
    $ glmark2-es2-wayland  ----------------------------- MESA: error: ZINK: vkCreateInstance failed (VK_ERROR_INCOMPATIBLE_DRIVER) libEGL warning: egl: failed to create dri2 screen =======================================================     glmark2 2023.01 =======================================================     OpenGL Information     GL_VENDOR:      Mesa     GL_RENDERER:    llvmpipe (LLVM 17.0.6, 128 bits)     GL_VERSION:     OpenGL ES 3.2 Mesa 24.0.9-0ubuntu0.1     Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0     Surface Size:   800x600 windowed ======================================================= [build] use-vbo=false: FPS: 85 FrameTime: 11.857 ms [build] use-vbo=true: FPS: 86 FrameTime: 11.747 ms [texture] texture-filter=nearest: FPS: 128 FrameTime: 7.842 ms [texture] texture-filter=linear: FPS: 120 FrameTime: 8.345 ms [texture] texture-filter=mipmap: FPS: 104 FrameTime: 9.689 ms [shading] shading=gouraud: FPS: 63 FrameTime: 15.886 ms [shading] shading=blinn-phong-inf: FPS: 58 FrameTime: 17.303 ms [shading] shading=phong: FPS: 51 FrameTime: 19.827 ms [shading] shading=cel: FPS: 50 FrameTime: 20.407 ms [bump] bump-render=high-poly: FPS: 42 FrameTime: 24.208 ms [bump] bump-render=normals: FPS: 108 FrameTime: 9.273 ms [bump] bump-render=height: FPS: 99 FrameTime: 10.157 ms [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 58 FrameTime: 17.272 ms [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 34 FrameTime: 30.001 ms [pulsar] light=false:quads=5:texture=false: FPS: 96 FrameTime: 10.481 ms [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 21 FrameTime: 48.463 ms [desktop] effect=shadow:windows=4: FPS: 50 FrameTime: 20.021 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 59 FrameTime: 17.063 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 66 FrameTime: 15.303 ms [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 50 FrameTime: 20.203 ms [ideas] speed=duration: FPS: 48 FrameTime: 20.963 ms [jellyfish] <default>: FPS: 37 FrameTime: 27.768 ms [terrain] <default>: FPS: 2 FrameTime: 558.207 ms [shadow] <default>: FPS: 50 FrameTime: 20.170 ms [refract] <default>: FPS: 8 FrameTime: 127.994 ms [conditionals] fragment-steps=0:vertex-steps=0: FPS: 80 FrameTime: 12.594 ms [conditionals] fragment-steps=5:vertex-steps=0: FPS: 63 FrameTime: 15.980 ms [conditionals] fragment-steps=0:vertex-steps=5: FPS: 85 FrameTime: 11.845 ms [function] fragment-complexity=low:fragment-steps=5: FPS: 67 FrameTime: 14.929 ms [function] fragment-complexity=medium:fragment-steps=5: FPS: 54 FrameTime: 18.690 ms [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 49 FrameTime: 20.822 ms [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 50 FrameTime: 20.299 ms [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 47 FrameTime: 21.386 ms =======================================================                                   glmark2 Score: 61  =======================================================  
    First of all, you need to solve the problem with non-working reset button in U-boot.
    If possible, enable USB booting. This can be very useful if the emmc chip fails over time.
    Thanks for the links to RK3576_MiniLoaderAll.bin and the firefly repository.
    The firefly image in u-boot has the reset button working. Will have to look at their u-boot build settings.
     
    I continue to study...
     
    Links:
     
    RK3576_MiniLoaderAll.bin
    https://drive.google.com/file/d/1gkOdYMaqUBe0iykbIoBcTa5c-fZcjRQU/view?usp=sharing
     
    h96-m9_original.dtd/h96-m9_original.dts
    https://drive.google.com/file/d/1tIcK2nWX6hHQY66p1k4BiWnw3CCXRhFd/view?usp=sharing
    https://drive.google.com/file/d/1OkZhmmadyvwdTw7zIzExARgoYgO-JVs9/view?usp=sharing
     
    h96-m9.csc
    https://drive.google.com/file/d/1Eghh1MmzQoi8KTOPBHQS6i38db3YvF_-/view?usp=sharing
     
    H96 MAX M9 RK3576-android-full.iso.7z
    https://drive.google.com/file/d/1i4geoEatD7bagCkkIiRvYSBYGGELivWV/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
    https://drive.google.com/file/d/1smumqfmyCDFFaQjoVCFVgQfWG4MN0Shc/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_bookworm_vendor_6.1.75-test_1.img
    https://drive.google.com/file/d/1kfLxSNcN3ZJp8iKUVgtncFxhD2TsoNo3/view?usp=sharing
     
    Here are the pictures of the board:
    =============================
     
     
     
     
     
     
     
     
  3. Like
    hzdm got a reaction from cmuki in Efforts to develop firmware for H96 MAX M9 RK3576 TV Box 8G/128G   
    Hi all.
    When I saw this page (thanks @Hqnicolas) - looked at the specs of this board, and looked at its price ($85) - I knew I had to try to install Linux on it.
     
       
    First things first - I did an Android backup.   
    ====================================
    1. Turned on  Android box. I connected it to the local network 2. Turn on developer mode. Turn on debugging. 3. On the Linux computer, run $ adb connect 192.168.0.20:5555 $ adb root $ adb shell rk3576_box:/ # cat /proc/partitions | grep mmcblk  179        0  122142720 mmcblk2  179        1       4096 mmcblk2p1  179        2       4096 mmcblk2p2  179        3       4096 mmcblk2p3  179        4       4096 mmcblk2p4  179        5       4096 mmcblk2p5  179        6       1024 mmcblk2p6  179        7      65536 mmcblk2p7  179        8      98304 mmcblk2p8  179        9     393216 mmcblk2p9  179       10     393216 mmcblk2p10  179       11      65536 mmcblk2p11  179       12        512 mmcblk2p12  179       13       1024 mmcblk2p13  179       14    4194304 mmcblk2p14  179       15  116905440 mmcblk2p15  179       32       4096 mmcblk2boot0  179       64       4096 mmcblk2boot1 rk3576_box:/ # exit adb pull /dev/block/mmcblk2 /home/user/full-big.iso Next - using the dd utility, reduce the resulting file to 6Gb, since the image takes 120Gb dd if=/home/user/full-big.iso of=/home/user/H96_MAX_M9_RK3576-android-full.iso bs=512 count=11895122 
    Getting the dtb file
    -----------------------
    $binwalk --signature --term full_mini   Find the largest Flattened device tree.   DECIMAL       HEXADECIMAL     DESCRIPTION                                                                                                                                                                    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ………………..…… 55363843      0x34CC903       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55438666      0x34DED4A       Unix path: /lib/firmware/updates/6.1.57                                                                                                                                        55440137      0x34DF309       Unix path: /dev/disk/by-id/ may cause data corruption                                                                                                                          55466136      0x34E5898       Neighborly text, "NeighborAdvertisements6ip6t_REJECT: ECHOREPLY is not supported"                                                                                              55496752      0x34ED030       Unix path: /sys/kernel/debug/rk628/2-0050/hdmitx_color_bar                                                                                                                     55555249      0x34FB4B1       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        55760043      0x352D4AB       Unix path: /sys/kernel/debug/%s                                                                                                                                                55760097      0x352D4E1       Unix path: /sys/kernel/debug/%pd/%s                                                                                                                                            55846910      0x35427FE       Neighborly text, "Neighborenabling vblank on crtc %u, ret: %d"                                                                                                                 55855620      0x3544A04       Unix path: /lib/firmware/6.1.57                                                                                                                                                55878704      0x354A430       Unix path: /sys/firmware/devicetree/base                                                                                                                                       55913424      0x3552BD0       Unix path: /sys/kernel/debug/rk628/2-0050/scaler_color_bar                                                                                                                     55913634      0x3552CA2       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56002822      0x3568906       Neighborly text, "neighbor %.2x%.2x.%pM lostrward_delay_timer"                                                                                                                 56003414      0x3568B56       Neighborly text, "NeighboraversalTime"                                                                                                                                         56031712      0x356F9E0       Unix path: /sys/kernel/debug/rk628/2-0050/dsi_color_bar                                                                                                                        56031782      0x356FA26       Unix path: /sys/kernel/debug/rk628/2-0050/gvi_color_bar                                                                                                                        56538119      0x35EB407       MySQL ISAM compressed data file Version 3                                                                                                                                      58589623      0x37E01B7       mcrypt 2.2 encrypted data, algorithm: blowfish-448, mode: CBC, keymode: 8bit                                                                                                   58682916      0x37F6E24       ASCII cpio archive (SVR4 with no CRC), file name: "dev", file name length: "0x00000004", file size: "0x00000000"                                                               58683032      0x37F6E98       ASCII cpio archive (SVR4 with no CRC), file name: "dev/console", file name length: "0x0000000C", file size: "0x00000000"                                                       58683156      0x37F6F14       ASCII cpio archive (SVR4 with no CRC), file name: "root", file name length: "0x00000005", file size: "0x00000000"                                                              58683272      0x37F6F88       ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"                                                        58782120      0x380F1A8       Intel x86 or x64 microcode, pf_mask 0xf4401f01, 2001-09-12, rev 0x30000000, size 1                                                                                             58888000      0x3828F40       AES S-Box                                                                                                                                                                      58888256      0x3829040       AES Inverse S-Box                                                                                                                                                              63311872      0x3C61000       gzip compressed data, from Unix, last modified: 1970-01-01 00:00:00 (null date)                                                                                                64777216      0x3DC6C00       Flattened device tree, size: 262377 bytes, version: 17                                                                                                                         65039872      0x3E06E00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65046528      0x3E08800       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65053184      0x3E0A200       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65059840      0x3E0BC00       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65066496      0x3E0D600       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                                                                                  65073152      0x3E0F000       PC bitmap, Windows 3.x format,, 220 x 110 x 8                                                                 ^C ~$    ~$dd if=full_1_mini of=h96-m9_original.dtb bs=1 skip=64777216 count=262377  ~$dtc -O dts h96-m9_original.dtb -o h96-m9_original.dts    
    How to burn an Android image to a box:
    ==================================
    Press the reset button. Turn on the power.
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 full_mini
     
    cc @El308
     
    Armbian
    =====================
    Copy the file h96-m9.csc directory to the directory build/config/boards/
    Create build/packages/blobs/h96-m9/ directory and copy h96-m9_original.dtb file into it
     
    Run the build
    ------------------
    build debian 12 DESKTOP
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=noble KERNEL_GIT=shallow BUILD_DESKTOP=yes DESKTOP_APPGROUPS_SELECTED= DESKTOP_ENVIRONMENT=gnome DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base
     
    build debian 12 server
    ./compile.sh BOARD=h96-m9 BRANCH=vendor BUILD_MINIMAL=no DEB_COMPRESS=xz KERNEL_CONFIGURE=no RELEASE=bookworm KERNEL_GIT=shallow BUILD_DESKTOP=no EXPERT=yes KERNEL_CONFIGURE=no

    Installing
    ----------------
    Press the reset button. Turn on the power.
     
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
     
    Warning! This build has a very important drawback. After flashing, the reset button stops working. Without it it will be difficult to flash the console. If you don't have a console cable - don't flash with this firmware yet. I'll be working on finalizing it now. Wait for a while.
     
    If you have a console cable and you need to install another image.
    1. Connect the console cable.
    2. Start the console.
    3. At the same time try to stop loading by pressing ctrl+c in the console. It may not work the first time.
    3. Enter in the u-boot console
    part uuid mmc 0:1 partuuid
    4. Reboot the  box.
    5. Flash
    $rkdeveloptool db RK3576_MiniLoaderAll.bin
    $rkdeveloptool wl 0x0 Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img

    Test debian 12 DESKTOP  and debian 12 server.
    ==================================================
    It works
    -----------
    1. USB2.0 and USB3.0 are working
    2. WiFi6 works: router shows 11ax 1x1 80 MHz

    Not working
    -----------
    1. Reset button in UBOOT
    2. When turning off the box, the lights are still on. Probably - it is not really turned off.
    3. video acceleration does not work.

    Tests
    ==============
    $ glmark2-es2-wayland  ----------------------------- MESA: error: ZINK: vkCreateInstance failed (VK_ERROR_INCOMPATIBLE_DRIVER) libEGL warning: egl: failed to create dri2 screen =======================================================     glmark2 2023.01 =======================================================     OpenGL Information     GL_VENDOR:      Mesa     GL_RENDERER:    llvmpipe (LLVM 17.0.6, 128 bits)     GL_VERSION:     OpenGL ES 3.2 Mesa 24.0.9-0ubuntu0.1     Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0     Surface Size:   800x600 windowed ======================================================= [build] use-vbo=false: FPS: 85 FrameTime: 11.857 ms [build] use-vbo=true: FPS: 86 FrameTime: 11.747 ms [texture] texture-filter=nearest: FPS: 128 FrameTime: 7.842 ms [texture] texture-filter=linear: FPS: 120 FrameTime: 8.345 ms [texture] texture-filter=mipmap: FPS: 104 FrameTime: 9.689 ms [shading] shading=gouraud: FPS: 63 FrameTime: 15.886 ms [shading] shading=blinn-phong-inf: FPS: 58 FrameTime: 17.303 ms [shading] shading=phong: FPS: 51 FrameTime: 19.827 ms [shading] shading=cel: FPS: 50 FrameTime: 20.407 ms [bump] bump-render=high-poly: FPS: 42 FrameTime: 24.208 ms [bump] bump-render=normals: FPS: 108 FrameTime: 9.273 ms [bump] bump-render=height: FPS: 99 FrameTime: 10.157 ms [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 58 FrameTime: 17.272 ms [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 34 FrameTime: 30.001 ms [pulsar] light=false:quads=5:texture=false: FPS: 96 FrameTime: 10.481 ms [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 21 FrameTime: 48.463 ms [desktop] effect=shadow:windows=4: FPS: 50 FrameTime: 20.021 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 59 FrameTime: 17.063 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 66 FrameTime: 15.303 ms [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 50 FrameTime: 20.203 ms [ideas] speed=duration: FPS: 48 FrameTime: 20.963 ms [jellyfish] <default>: FPS: 37 FrameTime: 27.768 ms [terrain] <default>: FPS: 2 FrameTime: 558.207 ms [shadow] <default>: FPS: 50 FrameTime: 20.170 ms [refract] <default>: FPS: 8 FrameTime: 127.994 ms [conditionals] fragment-steps=0:vertex-steps=0: FPS: 80 FrameTime: 12.594 ms [conditionals] fragment-steps=5:vertex-steps=0: FPS: 63 FrameTime: 15.980 ms [conditionals] fragment-steps=0:vertex-steps=5: FPS: 85 FrameTime: 11.845 ms [function] fragment-complexity=low:fragment-steps=5: FPS: 67 FrameTime: 14.929 ms [function] fragment-complexity=medium:fragment-steps=5: FPS: 54 FrameTime: 18.690 ms [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 49 FrameTime: 20.822 ms [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 50 FrameTime: 20.299 ms [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 47 FrameTime: 21.386 ms =======================================================                                   glmark2 Score: 61  =======================================================  
    First of all, you need to solve the problem with non-working reset button in U-boot.
    If possible, enable USB booting. This can be very useful if the emmc chip fails over time.
    Thanks for the links to RK3576_MiniLoaderAll.bin and the firefly repository.
    The firefly image in u-boot has the reset button working. Will have to look at their u-boot build settings.
     
    I continue to study...
     
    Links:
     
    RK3576_MiniLoaderAll.bin
    https://drive.google.com/file/d/1gkOdYMaqUBe0iykbIoBcTa5c-fZcjRQU/view?usp=sharing
     
    h96-m9_original.dtd/h96-m9_original.dts
    https://drive.google.com/file/d/1tIcK2nWX6hHQY66p1k4BiWnw3CCXRhFd/view?usp=sharing
    https://drive.google.com/file/d/1OkZhmmadyvwdTw7zIzExARgoYgO-JVs9/view?usp=sharing
     
    h96-m9.csc
    https://drive.google.com/file/d/1Eghh1MmzQoi8KTOPBHQS6i38db3YvF_-/view?usp=sharing
     
    H96 MAX M9 RK3576-android-full.iso.7z
    https://drive.google.com/file/d/1i4geoEatD7bagCkkIiRvYSBYGGELivWV/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_noble_vendor_6.1.75_gnome_desktop-test_1.img
    https://drive.google.com/file/d/1smumqfmyCDFFaQjoVCFVgQfWG4MN0Shc/view?usp=sharing
     
    Armbian-unofficial_24.8.0-trunk_H96-m9_bookworm_vendor_6.1.75-test_1.img
    https://drive.google.com/file/d/1kfLxSNcN3ZJp8iKUVgtncFxhD2TsoNo3/view?usp=sharing
     
    Here are the pictures of the board:
    =============================
     
     
     
     
     
     
     
     
  4. Like
    hzdm got a reaction from ironiris in Efforts to develop firmware for H96 MAX V56 RK3566 8G/64G   
    Eventually I plan to add H96-max-v56 to the official Armbian repository.
     
    What else doesn't work in our images?
    What could be made better in them?
    1. VFD display.
    2. Temperature is not displayed in htop.
  5. Like
    hzdm got a reaction from Hqnicolas in Efforts to develop firmware for H96 MAX V56 RK3566 8G/64G   
    Unexpectedly, to start WiFi, you just need to copy the drivers for it to the right directory.
    Copy the brcmfmac4335-sdio.txt and brcmfmac4335-sdio.firefly,rk3566-roc-pc.bin files to the /lib/firmware/brcm directory and restart the device. After that we can connect to WiFi (at least via command line, I haven't checked it via GUI).
     
    If GUI doesn't work - you can connect to WiFi via console with the command
    nmcli device wifi connect My-WiFi-Point password 12345678
     
     
    https://drive.google.com/file/d/1TeoPe_pO5es247c-5TGLfc4cXiKcPr56/view?usp=share_link
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines