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

    Need help with slow boot on NESPi4 build

    Scheduled Pinned Locked Moved Help and Support
    boot uprpi4
    11 Posts 3 Posters 641 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.
    • quicksilverQ
      quicksilver @raymonte
      last edited by quicksilver

      @raymonte did you try disabling wait for wifi on startup? I believe the setting is in raspi-config menu.

      R 2 Replies Last reply Reply Quote 0
      • R
        raymonte @quicksilver
        last edited by

        @quicksilver No, but I’ll give it a try later this evening and let you know. Thanks for the reply.

        1 Reply Last reply Reply Quote 0
        • R
          raymonte @quicksilver
          last edited by

          @quicksilver I don’t see anything specific to WiFi but I set “Select wait for network connection on boot” to “No” and the boot time clocked in at 1:09. That’s me timing it with the clock app on my phone so accounting for human error that really didn’t change anything. Thanks for the suggestion though.

          1 Reply Last reply Reply Quote 0
          • R
            raymonte @raymonte
            last edited by

            @raymonte This is partly solved. I set “Parse Gameslists Only” to “On” and now my boot time is much improved. With a static image splash screen it boots in under 30 seconds and with my long video it’s around a minute. There is still a long pause with a black screen before the splash screen but maybe that can’t be helped.

            There are two, new, minor issues though.

            1. Sometimes it doesn’t play my custom splash screen startup video.
            2. Sometimes I get this text about 20 seconds or so into the startup process:
              0CB3BC39-DD5E-4E0D-8751-237ABE7B2693.jpeg

            I’ve been holding off on this post while experimenting with it and I don’t seem to be seeing those new issues anymore. The only thing that would make it perfect is if the splash screen startup video would start sooner but if this is how it has to be then it’s much better anyway.

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

              @raymonte said in Need help with slow boot on NESPi4 build:

              Sometimes it doesn’t play my custom splash screen startup video.

              If the splashscreen is on your external drive, it might not be available (i.e. the disk is not mounted) when the splashscreen service starts. You can work around by modifying the asplashscreen service and make it depend on dev-sda1.device , but if you have a static splashscreen it's better to keep the file on the sdcard (somewhere in /home/pi) and configure the splashscreen to use it.

              See if solving this will solve 2.

              R 1 Reply Last reply Reply Quote 0
              • R
                raymonte @mitu
                last edited by

                @mitu said in Need help with slow boot on NESPi4 build:

                dev-sda1.device

                Thanks for your help on this.

                It's interesting because now that you mention it, the splashscreen video played every time I rebooted and now that I think of it I don't think it played on a fresh startup. So it makes sense that it's because the external disk is not yet mounted and it was already mounted when I was rebooting.

                I had asplashscreen.sh open in Notepad++ but I couldn't figure out how to edit it to depend on dev-sda1.device so I moved my video to /opt/retropie/supplementary/splashscreen . That's the directory where the stock Retropie splashscreens are stored and it resides on my sd card so it should solve the disk mounting issue. Only difference is, when choosing my video from the Retropie splashscreen menu I have to look in "RetroPie splashscreens" not "Own/Extra splashscreens".

                I don't seem to be seeing the text message at startup now either.

                Only thing now is it takes 20 seconds before the splashscreen video starts, but it's been doing that all along. Is there a way to make it launch earlier so it runs during all the startup scripts? That was why I made it so long in the first place.

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

                  @raymonte said in Need help with slow boot on NESPi4 build:

                  I had asplashscreen.sh open in Notepad++ but I couldn't figure out how to edit it to depend on dev-sda1.device...

                  That's not how it's done, asplashscreen.sh is the script run by the service, the service itself is configured with a systemd unit file. You can edit the unit file with

                  sudo systemctl edit asplashscreen.service
                  

                  which opens up and editor. You can then add

                  After=local-fs.target
                  

                  and save the file, instructing systemd to start the splashscreen service after all filesystems have been mounted.

                  But the other method is easier and I'd recommend to use it.

                  Only thing now is it takes 20 seconds before the splashscreen video starts, but it's been doing that all along

                  Use systemd-analyze critical-chain asplashscreen.service to see which services are needed and starting before the splashscreen. The only hard dependency is on console-setup, but it will wait for dbus to start because omxplayer needs it.
                  Looking at the critical-chain output you posted, I think the mounting of the disk is the biggest contender.

                  R 1 Reply Last reply Reply Quote 0
                  • R
                    raymonte @mitu
                    last edited by mitu

                    @mitu Here's the output:

                    pi@retropie:~ $ systemd-analyze critical-chain asplashscreen.service
                    The time after the unit is active or started is printed after the "@" character.
                    The time the unit takes to start is printed after the "+" character.

                    asplashscreen.service +16ms
                    └─console-setup.service @4.397s +35ms
                      └─local-fs.target @4.377s
                        └─run-user-1000.mount @10.536s
                          └─local-fs-pre.target @1.884s
                            └─systemd-tmpfiles-setup-dev.service @1.805s +70ms
                              └─systemd-sysusers.service @1.705s +84ms
                                └─systemd-remount-fs.service @1.498s +200ms
                                  └─systemd-fsck-root.service @1.116s +374ms
                                    └─fake-hwclock.service @974ms +127ms
                                      └─systemd-journald.socket @938ms
                                        └─-.mount @919ms
                                          └─systemd-journald.socket @938ms
                                            └─...
                    

                    Sorry, I don't know how to post like the cool kids :(

                    R 1 Reply Last reply Reply Quote 0
                    • R
                      raymonte @raymonte
                      last edited by

                      @raymonte lol, thanks @mitu

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

                        Looking at the dependency chain startup, mounting of the media is taking the most, delaying the console-setup start.
                        You can try to disable the auto-mounting of the external disc and manually add the mount command in /opt/retropie/configs/all/autostart.sh, before ES starts. This way the splashscreen service will start sooner.

                        1 Reply Last reply Reply Quote 0
                        • 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.