Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Recalbox 8 and Odroid XU4 OGST

    Recalbox General
    recalbox odroid xu4 ogst
    9
    18
    2664
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • cedric-debuiselle
      cedric-debuiselle @davidb2111 last edited by

      @davidb2111 said in Recalbox 8 and Odroid XU4 OGST:

      Hi all,

      For those who can't enable OGST LCD screen and running on eMMC, here is a little guide to follow:

      1. make sure to enable ogst profile in /boot/config.ini:
      [generic]
      ; Device Tree Overlay
      overlay_resize=16384
      ; uncomment next line to enable Odroid XU4 OGST
      overlay_profile=hktft_cs_ogst
      overlays="spi0 i2c0 i2c1 uart0"
       
      [overlay_hktft_cs_ogst]
      overlays="hktft-cs-ogst i2c0"
      
      1. enable minitft in recalbox.conf:
      system.secondminitft.enabled=1
      system.secondminitft.type=overlay
      
      1. download https://github.com/hardkernel/u-boot/releases/download/travis%2Fodroidxu3-108/u-boot-odroidxu3-108.tar.gz
      2. Execute:
      tar xzvf u-boot-odroidxu3-108.tar.gz
      cd sd_fuse
      
      1. overwrite sd_fusing.sh with this one:
      #
      # Copyright (C) 2011 Samsung Electronics Co., Ltd.
      #              http://www.samsung.com/
      #
      # This program is free software; you can redistribute it and/or modify
      # it under the terms of the GNU General Public License version 2 as
      # published by the Free Software Foundation.
      #
      ####################################
      set -x
      
      if [ -z $1 ]
      then
          echo "usage: ./sd_fusing.sh <SD Reader's device file>"
          exit 0
      fi
      
      if [ -b $1 ]
      then
          echo "$1 reader is identified."
      else
          echo "$1 is NOT identified."
          exit 0
      fi
      
      if [ -d /sys/block/${1##*/}boot0 ]; then
          echo "$1 is an eMMC card, disabling ${1##*/}boot0 ro"
          if ! echo -n 0 > /sys/block/${1##*/}boot0/force_ro; then
          echo "Enabling r/w for $1boot0 failed"
          exit 1
          fi
          emmc=1
      fi
      
      ####################################
      # fusing images
      
      if [ -n "$emmc" ]; then
          signed_bl1_position=0
          bl2_position=30
          uboot_position=62
          tzsw_position=2110
          device=$1boot0
      else
          signed_bl1_position=1
          bl2_position=31
          uboot_position=63
          tzsw_position=2111
          device=$1
      fi
      
      # Get the U-Boot blob
      if [ -f ./u-boot-dtb.bin ]; then
        uboot="./u-boot-dtb.bin"
      elif [ -f ./u-boot.bin ]; then
        uboot="./u-boot.bin"
      else
        echo "U-Boot blob not found."
        exit
      fi
      
      #<BL1 fusing>
      echo "BL1 fusing"
      dd if=./bl1.bin.hardkernel of=$device seek=$signed_bl1_position conv=notrunc
      
      #<BL2 fusing>
      echo "BL2 fusing"
      dd if=./bl2.bin.hardkernel.1mb_uboot of=$device seek=$bl2_position conv=notrunc
      
      #<u-boot fusing>
      echo "u-boot fusing"
      dd if=$uboot of=$device seek=$uboot_position conv=notrunc
      
      #<TrustZone S/W fusing>
      echo "TrustZone S/W fusing"
      dd if=./tzsw.bin.hardkernel of=$device seek=$tzsw_position conv=notrunc
      
      ####################################
      #<Message Display>
      echo "U-boot image is fused successfully."
      echo "Eject $1 and insert it again."
      
      1. execute:
      bash sd_fusing.sh /dev/mmcblk0
      sync
      reboot
      

      PS: I will not be held responsible for any damages

      question un peu bête à faire directement sur pc pc avec linux ou il faut avoir les deux carte sur le xu4 et faire ça a distance?

      cedric-debuiselle 1 Reply Last reply Reply Quote 0
      • davidb2111
        davidb2111 Staff last edited by

        Hello

        Alors, on me prévient que ça ne marche pas. Pour l'instant, merci de ne rien faire, cela risquerait de ne plus faire booter le xu4.

        cedric-debuiselle 2 Replies Last reply Reply Quote 1
        • cedric-debuiselle
          cedric-debuiselle @davidb2111 last edited by

          @davidb2111 said in Recalbox 8 and Odroid XU4 OGST:

          Hello

          Alors, on me prévient que ça ne marche pas. Pour l'instant, merci de ne rien faire, cela risquerait de ne plus faire booter le xu4.

          Merci pour l'avertissement bien fait d'avoir attendu

          Alvin cedric-debuiselle 2 Replies Last reply Reply Quote 0
          • Alvin
            Alvin Banned @cedric-debuiselle last edited by

            @cedric-debuiselle
            @davidb2111

            This is he ENGLISH Part of the Board and the Thread started in ENGLISH.
            So if you have something to say here, please post in ENGLISH !

            Bkg2k 1 Reply Last reply Reply Quote 0
            • Bkg2k
              Bkg2k Staff @Alvin last edited by

              @alvin Hey calm down a bit please.

              Something like "This is an english board, could you please write in english" or even "Could you please rewrite your response in english so that everyone could understand" would be A LOT MORE appreciated than "So if you have something to say here, please post in ENGLISH !".

              1 Reply Last reply Reply Quote 0
              • cedric-debuiselle
                cedric-debuiselle @cedric-debuiselle last edited by

                @cedric-debuiselle said in Recalbox 8 and Odroid XU4 OGST:

                linux

                @cedric-debuiselle said in Recalbox 8 and Odroid XU4 OGST:

                @davidb2111 said in Recalbox 8 and Odroid XU4 OGST:

                Hi all,

                For those who can't enable OGST LCD screen and running on eMMC, here is a little guide to follow:

                1. make sure to enable ogst profile in /boot/config.ini:
                [generic]
                ; Device Tree Overlay
                overlay_resize=16384
                ; uncomment next line to enable Odroid XU4 OGST
                overlay_profile=hktft_cs_ogst
                overlays="spi0 i2c0 i2c1 uart0"
                 
                [overlay_hktft_cs_ogst]
                overlays="hktft-cs-ogst i2c0"
                
                1. enable minitft in recalbox.conf:
                system.secondminitft.enabled=1
                system.secondminitft.type=overlay
                
                1. download https://github.com/hardkernel/u-boot/releases/download/travis%2Fodroidxu3-108/u-boot-odroidxu3-108.tar.gz
                2. Execute:
                tar xzvf u-boot-odroidxu3-108.tar.gz
                cd sd_fuse
                
                1. overwrite sd_fusing.sh with this one:
                #
                # Copyright (C) 2011 Samsung Electronics Co., Ltd.
                #              http://www.samsung.com/
                #
                # This program is free software; you can redistribute it and/or modify
                # it under the terms of the GNU General Public License version 2 as
                # published by the Free Software Foundation.
                #
                ####################################
                set -x
                
                if [ -z $1 ]
                then
                    echo "usage: ./sd_fusing.sh <SD Reader's device file>"
                    exit 0
                fi
                
                if [ -b $1 ]
                then
                    echo "$1 reader is identified."
                else
                    echo "$1 is NOT identified."
                    exit 0
                fi
                
                if [ -d /sys/block/${1##*/}boot0 ]; then
                    echo "$1 is an eMMC card, disabling ${1##*/}boot0 ro"
                    if ! echo -n 0 > /sys/block/${1##*/}boot0/force_ro; then
                    echo "Enabling r/w for $1boot0 failed"
                    exit 1
                    fi
                    emmc=1
                fi
                
                ####################################
                # fusing images
                
                if [ -n "$emmc" ]; then
                    signed_bl1_position=0
                    bl2_position=30
                    uboot_position=62
                    tzsw_position=2110
                    device=$1boot0
                else
                    signed_bl1_position=1
                    bl2_position=31
                    uboot_position=63
                    tzsw_position=2111
                    device=$1
                fi
                
                # Get the U-Boot blob
                if [ -f ./u-boot-dtb.bin ]; then
                  uboot="./u-boot-dtb.bin"
                elif [ -f ./u-boot.bin ]; then
                  uboot="./u-boot.bin"
                else
                  echo "U-Boot blob not found."
                  exit
                fi
                
                #<BL1 fusing>
                echo "BL1 fusing"
                dd if=./bl1.bin.hardkernel of=$device seek=$signed_bl1_position conv=notrunc
                
                #<BL2 fusing>
                echo "BL2 fusing"
                dd if=./bl2.bin.hardkernel.1mb_uboot of=$device seek=$bl2_position conv=notrunc
                
                #<u-boot fusing>
                echo "u-boot fusing"
                dd if=$uboot of=$device seek=$uboot_position conv=notrunc
                
                #<TrustZone S/W fusing>
                echo "TrustZone S/W fusing"
                dd if=./tzsw.bin.hardkernel of=$device seek=$tzsw_position conv=notrunc
                
                ####################################
                #<Message Display>
                echo "U-boot image is fused successfully."
                echo "Eject $1 and insert it again."
                
                1. execute:
                bash sd_fusing.sh /dev/mmcblk0
                sync
                reboot
                

                PS: I will not be held responsible for any damages

                question un peu bête à faire directement sur pc pc avec linux ou il faut avoir les deux carte sur le xu4 et faire ça a distance?

                I couldn't figure out how to edit my post.
                A bit stupid question to do directly on pc pc with linux or you have to have both cards on the xu4 and do it remotely?

                1 Reply Last reply Reply Quote 0
                • cedric-debuiselle
                  cedric-debuiselle @cedric-debuiselle last edited by

                  @cedric-debuiselle said in Recalbox 8 and Odroid XU4 OGST:

                  voir attendu

                  I couldn't figure out how to edit my post.
                  Thanks for the warning, I did well to wait

                  1 Reply Last reply Reply Quote 0
                  • cedric-debuiselle
                    cedric-debuiselle @davidb2111 last edited by

                    @davidb2111 said in Recalbox 8 and Odroid XU4 OGST:

                    Alors, on me prévient que ça ne marche pas. Pour l'instant, merci de ne rien faire, cela risquerait de ne plus faire booter le xu4.

                    @davidb2111 Write
                    So, I am told that it does not work. For now, please don't do anything, it might stop the xu4 from booting.

                    davidb2111 1 Reply Last reply Reply Quote 0
                    • davidb2111
                      davidb2111 Staff @cedric-debuiselle last edited by

                      @cedric-debuiselle

                      Sorry for the issue. However, we have found that the emmc is shipped with an older uboot that does not support overlays.

                      So the trick is to upgrade emmc uboot which is located on /dev/mmcblk0boot0.

                      A user kindly accepted to make some tests. We were able to flash (an apparent) newer uboot over the older one and it seemed to boot, but he forget to set the switch to emmc boot and booted on sd instead. He reported to mistake few days later...

                      However, he's ok to send me his emmc so that I can understand how to update the emmc uboot. So stay tuned!

                      1 Reply Last reply Reply Quote 1
                      • davidb2111
                        davidb2111 Staff @tomikitwo last edited by

                        Hi all

                        I've just tested to flash 8.1 (beta) on an eMMC. After flashing with RPI Imager, I've started the XU4 with the eMMC only.
                        Then, I've done the regular configuration as explained here:

                        • https://wiki.recalbox.com/en/tutorials/video/tft/second-minitft-or-ogst-for-scraps-and-videos#odroid-game-station-turbo-ogst-xu4 (EN)
                        • https://wiki.recalbox.com/fr/tutorials/video/tft/second-minitft-or-ogst-for-scraps-and-videos#odroid-game-station-turbo-ogst-xu4 (FR)

                        and rebooted. The display was functional.

                        I post here the SSH commands:

                        mount -o remount,rw /boot
                        cp /boot/boot.ini.sample /boot/boot.ini
                        cp /boot/config.ini.sample /boot/config.ini
                        sed -i '/overlay_profile=hktft_cs_ogst/s/^;//' /boot/config.ini
                        cd
                        sed -i -E 's/;?(system.secondminitft.enabled)=.*/\1=1/' recalbox.conf
                        sed -i -E 's/;?(system.secondminitft.type)=.*/\1=overlay/' recalbox.conf 
                        sed -i -E 's/;?(system.secondminitft.resolution)=.*/\1=240p/' recalbox.conf
                        sed -i -E 's/;?(system.secondminitft.imagestretchenabled)=.*/\1=1/' recalbox.conf
                        sed -i -E 's/;?(system.secondminitft.imageenlargeenabled)=.*/\1=0/' recalbox.conf
                        sed -i -E 's/;?(system.secondminitft.imagealphaenabled)=.*/\1=1/' recalbox.conf
                        sed -i -E 's/;?(system.secondminitft.imageignoreaspectenabled)=.*/\1=1/' recalbox.conf
                        reboot
                        
                        karl0ss 1 Reply Last reply Reply Quote 1
                        • karl0ss
                          karl0ss @davidb2111 last edited by

                          @davidb2111 AMAZING david!

                          1 Reply Last reply Reply Quote 0
                          • khaneki239
                            khaneki239 last edited by

                            Alors, on me prévient que ça ne marche pas. Pour l'instant, merci de ne rien faire, cela risquerait de ne plus faire booter le xu4.

                            https://get-vidmateapp.com/
                            https://get-mobdroapk.com

                            davidb2111 1 Reply Last reply Reply Quote 1
                            • davidb2111
                              davidb2111 Staff @khaneki239 last edited by

                              Hello @khaneki239

                              Tu peux détailler, stp ?

                              1 Reply Last reply Reply Quote 0
                              • davidb2111
                                davidb2111 Staff @tomikitwo last edited by

                                Great news all!

                                We were able to make it work finally. So, when using eMMC, the XU4 boot from a "hidden" partition which is not overwritten when flashing a Recalbox image nor upgrading.
                                You must flash data to that partition manually.
                                Here are the commands to do that : https://wiki.recalbox.com/en/tutorials/video/tft/second-minitft-or-ogst-for-scraps-and-videos

                                Thanks to @karl0ss who sent me his eMMC and @cedric-debuiselle for testing.

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                Want to support us ?

                                71
                                Online

                                99.6k
                                Users

                                28.1k
                                Topics

                                187.1k
                                Posts

                                Copyright © 2021 recalbox.com