RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    EmulationStation Kiosk-USB Specific Crash - Can it be Replicated?

    Scheduled Pinned Locked Moved Help and Support
    kiosk modeemulationstaioncrash
    32 Posts 2 Posters 3.3k Views
    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.
    • hooperreH
      hooperre
      last edited by

      I'm having a very odd, and specific crash when loading roms off of my USB drive and only when I boot up the system for the first time and only in kiosk mode. Ran full system update last night before crash and have attempted with last night's EmulationStation's binary and source builds. Ok here goes:

      Crash:

      • Set to Kiosk Mode > Insert USB Rom Thumbdrive > Restart Pi > EmulationStation Crashes before Loading Systems ("Loading System Config")
      • Leave on Kiosk Mode > Remove USB Rom Thumbdrive > Restart Pi > EmulationStation Works Normally
      • Insert USB Rom Thumbdrive > Restart EmulationStation Only > EmulationStation Works Normally and Loads All Roms
      • Restart Pi > Leave in Kiosk Mode > EmulationStation again Crashes
      • SSH in and Change to Full Mode > Leave USB Rom Thumbdrive in > EmulationStation Works Normally Loads all Roms

      So the root of the problem seems to be having the USB inserted with Kiosk mode and only on initial boot of the pi. It crashes in the "Loading System Config" phase of EmulationStation. The es_log, I can post if anyone thinks it's necessary, but outside of a few lines I'll paste at the bottom, it's just a regurgitation of variations of the following lines.

      Attempted Fixes:

      • Changing to Carbon Theme
      • Removing Light Overclock
      • Resetting Rom Pathway Permissions

      Thoughts:

      I have read from the forums in the past that some subfolders can cause issues. I have dc and segacd subfolders so maybe that's causing the issue (I haven't been home to test it), but I thought if it could be replicated, maybe this should be mentioned since it was seemingly fixed previously.

      es_log.cfg Dumps:

      lvl2: 	 ARB_texture_non_power_of_two: MISSING
      
      lvl1: 	  Warning from theme "/etc/emulationstation/themes/switch/theme.xml"
        (from included file "/etc/emulationstation/themes/switch/config.xml")
        (from included file "/etc/emulationstation/themes/switch/settings/letters.xml")
          could not find file "./../assets/buttons/Xbox_Buttons_system.svg" (which resolved to "/etc/emulationstation/themes/switch/settings/../assets/buttons/Xbox_Buttons_system.svg") 
      
      lvl2: 	Couldn't find game referenced at '/home/pi/RetroPie/roms/megadrive/Master of Monsters (U) [!].zip' for system config '/home/pi/.emulationstation/collections/custom-Alex's Favorites.cfg'
      

      Everything else looks normal and I see a lot of these on a normal startup anyway. Just need to clean up a lot of my custom collections.

      Thanks, y'all.

      4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

      1 Reply Last reply Reply Quote 0
      • hooperreH
        hooperre
        last edited by hooperre

        Okay so appears I should have been looking at es_log.txt.bak. Here's a dump:

        Edit: I see this is a clean exit now... oops.

        lvl2: 	 req sound [detailed.launch]
        lvl2: 	   (missing)
        lvl2: 	Attempting to launch game...
        lvl0: 	VolumeControl::init() - Failed to find mixer elements!
        `lvl2: 		/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ nes /home/pi/RetroPie/roms/nes/Mega\ Man\ 4\ \(USA\).zip`
        lvl2: 	Creating surface...
        lvl2: 	Created window successfully.
        lvl2: 	Added known joystick Wireless Controller (instance ID: 0, device index: 0)
        lvl0: 	VolumeControl::init() - Failed to find mixer elements!
        lvl2: 	Added known joystick Wireless Controller (instance ID: 0, device index: 0)
        lvl2: 	Added/Updated 1 entities in '/home/pi/RetroPie/roms/nes/gamelist.xml'
        lvl2: 	EmulationStation cleanly shutting down.
        

        4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

        1 Reply Last reply Reply Quote 0
        • mituM
          mitu Global Moderator
          last edited by

          Looks like a case of 'USB not ready before ES starts' thus not finding any systems on the disk. Being in Kiosk Mode, the retropie system is also not available, so this might lead to a crash. Restarting ES works because the USB is available and the systems are correctly read.

          The messages from the log don't seem related to your problem and neither the fact that you have sub-folders.
          What you can do is to exit Kiosk mode and see what happens on the 1st run. If you get only the RetroPie system, then my guess is correct. Can you post your es_settings.cfg file from ~/.emulationstation ?

          hooperreH 1 Reply Last reply Reply Quote 0
          • hooperreH
            hooperre @mitu
            last edited by

            @mitu said in EmulationStation Kiosk-USB Specific Crash - Can it be Replicated?:

            Looks like a case of 'USB not ready before ES starts' thus not finding any systems on the disk. Being in Kiosk Mode, the retropie system is also not available, so this might lead to a crash. Restarting ES works because the USB is available and the systems are correctly read.

            The messages from the log don't seem related to your problem and neither the fact that you have sub-folders.
            What you can do is to exit Kiosk mode and see what happens on the 1st run. If you get only the RetroPie system, then my guess is correct. Can you post your es_settings.cfg file from ~/.emulationstation ?

            Thanks for responding, @mitu.

            https://pastebin.com/krfXpm0P

            4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

            mituM 1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator @hooperre
              last edited by

              @hooperre There doesn't seem anything special with your settings. I was checking if you're using the Local Art option, since that's something new in Emulationstation 2.8, this year's release.
              I'll see if I can reproduce this or get a simpler test case.
              As a workaround, try adding a delay before Emulationstation starts, add a line with sleep 3 in the autostart.sh file in /opt/retropie/configs/all/autostart.sh, just before the line that starts emulationstation.

              hooperreH 1 Reply Last reply Reply Quote 0
              • hooperreH
                hooperre @mitu
                last edited by hooperre

                @mitu Mannnn I hate to report this but sleep 3 sleep 5 and sleep 50 all failed.

                I’ll paste the es_log.txt here: https://pastebin.com/6hJgYatE
                es_log.txt.bak: https://pastebin.com/wq6Vc7jh (seems the same)

                4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                mituM 1 Reply Last reply Reply Quote 0
                • mituM
                  mitu Global Moderator @hooperre
                  last edited by

                  @hooperre Did you forget to post the log ?

                  1 Reply Last reply Reply Quote 0
                  • hooperreH
                    hooperre
                    last edited by hooperre

                    @mitu Posted. Seems like the log is just abruptly interrupted.

                    4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                    1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator
                      last edited by mitu

                      Yes, the logs are the same, it seems the crash happens when loading the collections starting with [space]. You say that it only happens on 1st load ? Did you have another ES version before this crash started happening ?

                      EDIT: is there any crash error message on the terminal ?

                      hooperreH 1 Reply Last reply Reply Quote 0
                      • hooperreH
                        hooperre @mitu
                        last edited by

                        @mitu To be honest, I only use Kiosk when copying my SD for my cousin and brother so I'm not sure pre vs. post update.

                        The crash message is the "Emulationstation has crashed" blue screen. Suggests I reset rom permissions / check gpu split. I can post a picture later if you're not sure what I'm referring to from memory.

                        Is there another character I can use to bring the collections to the top besides a space? I can test that when I'm back from work.

                        4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                        mituM 1 Reply Last reply Reply Quote 0
                        • mituM
                          mitu Global Moderator @hooperre
                          last edited by mitu

                          @hooperre said in EmulationStation Kiosk-USB Specific Crash - Can it be Replicated?:

                          The crash message is the "Emulationstation has crashed" blue screen. Suggests I reset rom permissions / check gpu split. I can post a picture later if you're not sure what I'm referring to from memory.

                          Aha, I know that message. It happens when ES crashes, but the actual crash might behind that message (in the terminal screen). Is there such message ?

                          EDIT:

                          Is there another character I can use to bring the collections to the top besides a space? I can test that when I'm back from work.

                          Try using _ or !.

                          hooperreH 1 Reply Last reply Reply Quote 0
                          • hooperreH
                            hooperre @mitu
                            last edited by hooperre

                            @mitu How would I get underneath the message? I've tried Ctrl+C but it seems that the keyboard doesn't work. I know there is an exit or back option, but there's no way for me to select it because it seems like all the inputs don't work at that point. Can I SSH in and somehow see it there? exit?

                            4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                            mituM 1 Reply Last reply Reply Quote 0
                            • mituM
                              mitu Global Moderator @hooperre
                              last edited by

                              @hooperre Maybe Esc or Enter ?

                              hooperreH 2 Replies Last reply Reply Quote 0
                              • hooperreH
                                hooperre @mitu
                                last edited by

                                @mitu I’m fairly certain I’ve tried both as I have a keyboard with it currently. No other way to see that error?

                                4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                1 Reply Last reply Reply Quote 0
                                • hooperreH
                                  hooperre @mitu
                                  last edited by hooperre

                                  @mitu Confirmed. Basically freezes the system. No inputs work.

                                  4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                  mituM 1 Reply Last reply Reply Quote 0
                                  • mituM
                                    mitu Global Moderator @hooperre
                                    last edited by

                                    @hooperre Try to login to the system via SSG and run killall dialog when the message is on-screen. I forgot about this option.

                                    1 Reply Last reply Reply Quote 0
                                    • hooperreH
                                      hooperre
                                      last edited by hooperre

                                      @mitu I basically just see the error screen above a regular terminal as if you exited EmulationStation after using the killall dialog command, but I don't see the actual error message anywhere.

                                      Only have collections starting with letters. es_log.txt here: https://pastebin.com/hszxWE2V.

                                      4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                      1 Reply Last reply Reply Quote 0
                                      • mituM
                                        mitu Global Moderator
                                        last edited by

                                        OK, time to bring up the big guns. If you have SSH access to the Pi, you can try to get a backtrace from the crash:

                                        1. Install gdb with
                                        apt -y install gdb
                                        
                                        1. Replace the autostart.sh command to start ES with
                                        gdb -batch -ex "run" -ex "bt" -ex "quit" /opt/retropie/supplementary/emulationstation/emulationstation 2>&1 > /tmp/es.log
                                        

                                        So, instead of the normal autostart.sh which contains just

                                        emulationstation #auto
                                        

                                        you should have

                                        # emulationstation #auto
                                        gdb -batch -ex "run" -ex "bt" -ex "quit" /opt/retropie/supplementary/emulationstation/emulationstation 2>&1 > /tmp/es.log
                                        

                                        You can find the autostart.sh file in /opt/retropie/configs/all/autostart.sh, do a backup of it just in case.

                                        Reboot, get the crash message, but don't stop the Pi right away, just SSH in and get the /tmp/es.log file which should contain the crash place in Emulationstation.

                                        hooperreH 1 Reply Last reply Reply Quote 0
                                        • hooperreH
                                          hooperre @mitu
                                          last edited by hooperre

                                          @mitu

                                          My autostart.sh appears as follows:

                                          emulationstation #auto
                                          gdb -batch -ex "run" -ex "bt" -ex "quit" /opt/retropie/supplementary/emulationstation/emulationstation 2>&1 > /tmp/es.log
                                          

                                          I did have to change file permissions to 777 in the created directories above to view them. Am I missing a sudo command anywhere? (sudo gdb doesn't seem to make it work.)

                                          sudo nano /tmp/es.log shows nothing.

                                          Am dumb was missing the comment part of # emulationstation #auto on line 1.

                                          es.log: https://pastebin.com/BpXY8K3A

                                          4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                          mituM 1 Reply Last reply Reply Quote 0
                                          • mituM
                                            mitu Global Moderator @hooperre
                                            last edited by

                                            @hooperre Well, that's the error right there :|. Let's see how we can solve that.

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

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.