Recalbox Forum

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

    Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2

    Recalbox General
    recalbox 8.0 [sdl2] fatal initializing sdl2
    4
    26
    827
    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.
    • fh1105
      fh1105 last edited by

      Hello!

      I installed a fresh download of Recalbox 8.0-Electron on my RPi 3, and it leaves a black screen when booting.

      It shows 'Experimental Pi' logo, but then it remains black.

      The es_log.txt:

      [2021/12/09 10:45:57.364] (INFO ) : [StaticLifeCycleControler] RecalboxConf instance created.
      [2021/12/09 10:45:57.364] (INFO ) : [StaticLifeCycleControler] NotificationManager instance created.
      [2021/12/09 10:45:57.366] (INFO ) : [MainRunner] EmulationStation - v 8.0-Electron, built Dec  1 2021 - 13:30:17
      [2021/12/09 10:45:57.366] (WARN!) : [Locale] /usr/bin/locale/lang/en_US/LC_MESSAGES/emulationstation2.mo not found.
      [2021/12/09 10:45:57.366] (WARN!) : [Locale] /usr/bin/locale/lang/en/LC_MESSAGES/emulationstation2.mo not found.
      [2021/12/09 10:45:57.366] (WARN!) : [Locale] /usr/share/locale/en_US/LC_MESSAGES/emulationstation2.mo not found.
      [2021/12/09 10:45:57.366] (INFO ) : [Locale] Using /usr/share/locale/en/LC_MESSAGES/emulationstation2.mo
      [2021/12/09 10:45:57.405] (ERROR) : [SDL2] Fatal error initializing SDL 2
      

      Any ideas are welcome!
      Thanks!

      Scavy 1 Reply Last reply Reply Quote 0
      • Scavy
        Scavy Global moderator @fh1105 last edited by

        @fh1105 hi
        Did you try to reupload the recalbox 8.0 image and to reinstall it ? Thanx.

        • RPi0w : GPi Case
        • RPi4-2Go : Nespi4case - SN30 pro+ & PS3 DualShock pads - Logitech M170 (BT) keyboard/mouse set
        • Odroid Go Advance
        • PC : CPU i5 core 2.8/3.4 GHz - GPU GeForce 850M - RAM 8Go DDR3L
        fh1105 1 Reply Last reply Reply Quote 0
        • fh1105
          fh1105 @Scavy last edited by

          @scavy Yes, I actually downloaded it and installed it on a freshly formatted SD card. What does the error mean?

          davidb2111 Wizzard 2 Replies Last reply Reply Quote 0
          • davidb2111
            davidb2111 Staff @fh1105 last edited by

            Hello @fh1105

            Could you put the file recalbox-boot.conf from RECALBOX partition please (specifically, the case= attribute of that file)

            David.

            fh1105 1 Reply Last reply Reply Quote 0
            • Wizzard
              Wizzard @fh1105 last edited by

              @fh1105 I guess you are using composite out. Please, check this solution, it worked for me
              https://gitlab.com/recalbox/recalbox/-/issues/2059#note_752813367

              fh1105 1 Reply Last reply Reply Quote 0
              • fh1105
                fh1105 @Wizzard last edited by

                @wizzard said in Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2:

                https://gitlab.com/recalbox/recalbox/-/issues/2059#note_752813367

                Thanks for the advice! I am, however, using HDMI. I tried the two config file alterations provided in that tutorial, but that would cause the RPi to be not even connecting to the network after rebooting (and a black screen, oddly). I redownloaded the image from the Recalbox website, but the original problem persists. Strange!

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

                  Thanks for looking into this, @davidb2111

                  recalbox-boot.conf is in /boot in my image, not in /recalbox – that's correct, right?

                  Here it is:

                  ### /boot/recalbox-boot.conf
                  ### This file holds configuration related to hardware/peripheral detection
                  
                  # The `sharedevice` variable indicates where to find the SHARE folder/partition.
                  # It can have the following values:
                  #   INTERNAL      => the partition immediately following the partition mounted as /boot, on the same disk (e.g. `/dev/mmcblk0p2`)
                  #                    (this is the default)
                  #   RAM           => a temporary in-memory file system (tmpfs)
                  #                    (use at your own risks, specially on boards with low memory!)
                  #   ANYEXTERNAL   => any storage device other than the one the system booted on
                  #                    (use this when you have several USB keys/drives, but plug only one at a time)
                  #   DEV [FSUUID]  => the storage device with the [FSUUID] unique identifier
                  #                    (use this if you plug multiple storage devices together but want a specific one to hold SHARE)
                  #   NETWORK       => a network-mounted filesystem
                  #                    (see complementary `sharenetwork_*` directives below)
                  ;sharedevice=INTERNAL
                  
                  # Network mount directives define how network filesystem should be mounted.
                  # You can define as many as you like, they will be executed in order.
                  # You can even mix basic and avanced commands.
                  #
                  # 1. Basic use (NFS or SMB):
                  #
                  #   sharenetwork_<nfs|smb>=<SHARE|ROMS|SAVES|BIOS|MUSIC>@<remote host>:<remote directory>[:<mount options>]
                  #
                  #   Examples:
                  #     sharenetwork_nfs=SHARE@192.168.0.1:/Documents/recalbox
                  #     <or>
                  #     sharenetwork_nfs=ROMS@192.168.0.1:/Documents/recalbox/roms
                  #     sharenetwork_nfs=SAVES@192.168.0.1:/Documents/recalbox/saves
                  #     <or>
                  #     sharenetwork_smb=SHARE@192.168.0.1:Documents/recalbox:guest
                  #
                  # 2. Advanced use (custom commands, usually `mount`):
                  #
                  #   sharenetwork_cmd=<command to run>
                  #
                  #   Examples:
                  #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox /recalbox/share
                  #     <or>
                  #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox/roms /recalbox/share/roms
                  #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox/saves /recalbox/share/saves
                  #     <or>
                  #     sharenetwork_cmd=mount.cifs //192.168.0.1/recalbox /recalbox/share -o guest
                  #
                  ;sharenetwork_smb=SHARE@192.168.0.1:Documents/recalbox:guest
                  
                  # The `case` variable enables presets for the given case (if supported by Recalbox).
                  # It will enable some out-of-the-box configuration for fixed peripherals like screens, pads, etc...
                  # Supported values:
                  #   GPiCaseV1:1   => RetroFlag GpiCase (version 1)
                  # Default: <unset>
                  case=PiBoy:1
                  
                  # The `sharewait` variable defines the maximum time to wait for the SHARE partition to be mounted.
                  # This is usually used with USB drives (since they are infamously slow) or network mounts.
                  # Recalbox will regularly check if the device/host is ready to be mounted, up to <sharewait> seconds.
                  # Note: in `NETWORK` mode, Recalbox will wait up to `sharewait` seconds for *each* `sharenetwork_*` directive.
                  # Default: 7 for `DEV [FSUUID]` and `ANYEXTERNAL`, 20 for `NETWORK`
                  ;sharewait=30
                  
                  
                  case=PiBoy:1
                  

                  ... that could be the problem?

                  davidb2111 fh1105 2 Replies Last reply Reply Quote 0
                  • davidb2111
                    davidb2111 Staff @fh1105 last edited by

                    @fh1105 said in Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2:

                    Thanks for looking into this, @davidb2111

                    recalbox-boot.conf is in /boot in my image, not in /recalbox – that's correct, right?

                    Here it is:

                    ### /boot/recalbox-boot.conf
                    ### This file holds configuration related to hardware/peripheral detection
                    
                    # The `sharedevice` variable indicates where to find the SHARE folder/partition.
                    # It can have the following values:
                    #   INTERNAL      => the partition immediately following the partition mounted as /boot, on the same disk (e.g. `/dev/mmcblk0p2`)
                    #                    (this is the default)
                    #   RAM           => a temporary in-memory file system (tmpfs)
                    #                    (use at your own risks, specially on boards with low memory!)
                    #   ANYEXTERNAL   => any storage device other than the one the system booted on
                    #                    (use this when you have several USB keys/drives, but plug only one at a time)
                    #   DEV [FSUUID]  => the storage device with the [FSUUID] unique identifier
                    #                    (use this if you plug multiple storage devices together but want a specific one to hold SHARE)
                    #   NETWORK       => a network-mounted filesystem
                    #                    (see complementary `sharenetwork_*` directives below)
                    ;sharedevice=INTERNAL
                    
                    # Network mount directives define how network filesystem should be mounted.
                    # You can define as many as you like, they will be executed in order.
                    # You can even mix basic and avanced commands.
                    #
                    # 1. Basic use (NFS or SMB):
                    #
                    #   sharenetwork_<nfs|smb>=<SHARE|ROMS|SAVES|BIOS|MUSIC>@<remote host>:<remote directory>[:<mount options>]
                    #
                    #   Examples:
                    #     sharenetwork_nfs=SHARE@192.168.0.1:/Documents/recalbox
                    #     <or>
                    #     sharenetwork_nfs=ROMS@192.168.0.1:/Documents/recalbox/roms
                    #     sharenetwork_nfs=SAVES@192.168.0.1:/Documents/recalbox/saves
                    #     <or>
                    #     sharenetwork_smb=SHARE@192.168.0.1:Documents/recalbox:guest
                    #
                    # 2. Advanced use (custom commands, usually `mount`):
                    #
                    #   sharenetwork_cmd=<command to run>
                    #
                    #   Examples:
                    #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox /recalbox/share
                    #     <or>
                    #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox/roms /recalbox/share/roms
                    #     sharenetwork_cmd=mount -o port=2049,nolock,proto=tcp 192.168.0.1:/Documents/recalbox/saves /recalbox/share/saves
                    #     <or>
                    #     sharenetwork_cmd=mount.cifs //192.168.0.1/recalbox /recalbox/share -o guest
                    #
                    ;sharenetwork_smb=SHARE@192.168.0.1:Documents/recalbox:guest
                    
                    # The `case` variable enables presets for the given case (if supported by Recalbox).
                    # It will enable some out-of-the-box configuration for fixed peripherals like screens, pads, etc...
                    # Supported values:
                    #   GPiCaseV1:1   => RetroFlag GpiCase (version 1)
                    # Default: <unset>
                    case=PiBoy:1
                    
                    # The `sharewait` variable defines the maximum time to wait for the SHARE partition to be mounted.
                    # This is usually used with USB drives (since they are infamously slow) or network mounts.
                    # Recalbox will regularly check if the device/host is ready to be mounted, up to <sharewait> seconds.
                    # Note: in `NETWORK` mode, Recalbox will wait up to `sharewait` seconds for *each* `sharenetwork_*` directive.
                    # Default: 7 for `DEV [FSUUID]` and `ANYEXTERNAL`, 20 for `NETWORK`
                    ;sharewait=30
                    
                    
                    case=PiBoy:1
                    

                    ... that could be the problem?

                    Yes, that's the problem... There is a system recovery that starts after 3 unsuccessful system start. To trigger it you just have to power up the recalbox, wait 15 seconds, power it off (remove the plug) 3 times.
                    After that, it will enter recovery, delete PiBoy things and so on and it should boot.

                    fh1105 2 Replies Last reply Reply Quote 0
                    • fh1105
                      fh1105 @fh1105 last edited by

                      I changed that to

                      # case=PiBoy:1
                      

                      but to no success, unfortunately.

                      /recalbox/var/log/messages
                      

                      shows:

                      Dec 10 21:35:44 RECALBOX user.info kernel: [  156.254230] XPi Gamecon CRC Error: 0000 15143
                      Dec 10 21:35:44 RECALBOX user.info kernel: [  156.264208] XPi Gamecon CRC Error: 0000 15144
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.274228] XPi Gamecon CRC Error: 0000 15145
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.284203] XPi Gamecon CRC Error: 0000 15146
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.294195] XPi Gamecon CRC Error: 0000 15147
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.304211] XPi Gamecon CRC Error: 0000 15148
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.314212] XPi Gamecon CRC Error: 0000 15149
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.324202] XPi Gamecon CRC Error: 0000 15150
                      Dec 10 21:35:45 RECALBOX user.info kernel: [  156.334194] XPi Gamecon CRC Error: 0000 15151
                      

                      (The buttons of my arcade cabinet are connected to the RPI's GPIO pins:

                      https://raw.githubusercontent.com/DigitalLumberjack/mk_arcade_joystick_rpi/master/wiki/images/mk_joystick_arcade_GPIOsb+.png

                      )

                      Thanks for your help!

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

                        @davidb2111 Oh wow, I'll try that!

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

                          I think it didn't enter recovery, even though I did the power-off-power-on-15-second loop at least 4 times ... can I trigger it manually? Also, it doesn't seem to come back to the network (it's LAN connected, but I can't reach the 'recalbox' host from the network anymore).

                          The screen shows 'Experimental Pi' twice while booting, then remains black.

                          I do have a keyboard connected, which I could use to press something to interrupt the failing boot sequence?

                          Thanks! @davidb2111

                          davidb2111 3 Replies Last reply Reply Quote 0
                          • davidb2111
                            davidb2111 Staff @fh1105 last edited by

                            @fh1105 said in Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2:

                            I think it didn't enter recovery, even though I did the power-off-power-on-15-second loop at least 4 times ... can I trigger it manually? Also, it doesn't seem to come back to the network (it's LAN connected, but I can't reach the 'recalbox' host from the network anymore).

                            The screen shows 'Experimental Pi' twice while booting, then remains black.

                            I do have a keyboard connected, which I could use to press something to interrupt the failing boot sequence?

                            Thanks! @davidb2111

                            Ok, so you have things connected to GPIO. That may be the reason.
                            Could you connect through ssh and execute:

                            /usr/bin/piboy-tester
                            

                            David.

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

                              @fh1105
                              And to force boot without detecting case, you may:

                              1. set case=none:1 in /boot/recalbox-boot.conf
                              2. execute rm -rf /overlay/upper/*

                              and reboot

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

                                @fh1105
                                And finally, I've modified the code that detects the piboy. Could you please test it on your setup ?

                                Simply put piboy-tester in /tmp of your recalbox and run /tmp/piboy-tester and give me the output.

                                Thanks

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

                                  This post is deleted!
                                  1 Reply Last reply Reply Quote 0
                                  • fh1105
                                    fh1105 @davidb2111 last edited by

                                    @davidb2111 said in Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2:

                                    /tmp/piboy-tester

                                    Yes, this is it:

                                    try 0, CRC error
                                    try 1, CRC error
                                    try 2, CRC error
                                    try 3, CRC error
                                    try 4, CRC error
                                    try 5, CRC error
                                    try 6, CRC error
                                    try 7, CRC error
                                    try 8, CRC error
                                    try 9, CRC error
                                    piboy not found
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • fh1105
                                      fh1105 @davidb2111 last edited by

                                      @davidb2111 said in Recalbox 8.0: (ERROR) : [SDL2] Fatal error initializing SDL2:

                                      @fh1105
                                      And to force boot without detecting case, you may:

                                      1. set case=none:1 in /boot/recalbox-boot.conf
                                      2. execute rm -rf /overlay/upper/*

                                      and reboot

                                      I tried this, but still the screen remains black.

                                      fh1105 davidb2111 2 Replies Last reply Reply Quote 0
                                      • fh1105
                                        fh1105 @fh1105 last edited by

                                        Before the modified tester, the output was:

                                        CRC error
                                        198
                                        
                                        davidb2111 1 Reply Last reply Reply Quote 0
                                        • davidb2111
                                          davidb2111 Staff @fh1105 last edited by

                                          Hi @fh1105

                                          Great news, that helps me a lot. I will include a fixed piboy-tester that will not wrongly detect a PiBoy when something is connected to GPIO.

                                          At the moment, you can cleanup overlay and set case=none:1 to disable autodection.
                                          The fix will be included in the next release a few days (weeks)

                                          David

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

                                            @fh1105

                                            Hum, what type of screen do you have ?
                                            Could you please execute cat /sys/class/drm/card*/modes and put result here ?

                                            fh1105 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Want to support us ?

                                            81
                                            Online

                                            90.4k
                                            Users

                                            26.3k
                                            Topics

                                            181.8k
                                            Posts

                                            Copyright © 2021 recalbox.com