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

    command line to start ES screensaver

    Scheduled Pinned Locked Moved Help and Support
    command linescreensaverstart
    7 Posts 3 Posters 844 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.
    • B
      berndschroed
      last edited by

      Pi Model or other hardware: (3B+)
      Power Supply used: (adjustable 5a)
      RetroPie Version Used (4.4):
      Built From: (Pre made SD Image on RetroPie website)
      USB Devices connected: keyboard
      Controller used: keyboard

      Hey guys, i am still searching for a solution and need your help!

      I want the build in ES screensaver to start immediately after boot into ES an not to wait for 1 minute.
      My idea is to add a command line into the autostart.sh to start the screensaver after ES started. I think this should be possible because it is possible to start the screensver with the "select" button.... Unfortunatly i dont know the code and cant find it...

      could someone help me?

      pjftP 1 Reply Last reply Reply Quote 0
      • pjftP
        pjft @berndschroed
        last edited by pjft

        @berndschroed what you're saying for is not really going to be doable the way you're envisioning, because you won't be able to start the screensaver earlier. The screensaver is controlled through ES, so unless there'd be a way to communicate with the ES process and tell it do do that (which there isn't), you'll have to work around it.

        You can, however, play a video earlier over ES. If you time it right it can then finish before the screensaver one starts.

        What exactly are you trying to accomplish? Maybe that'd help.

        If you install htop on the pi and run it when the screensaver is on you'll be able to see the exact command line used for the video player, if using omx player. I don't know it by heart but I recall it needs to be on layer 10000 or above, because that's the layer SDL uses to render ES on.

        But if you're going down that route you could probably just use a splash start video to achieve the effect you're going for, and that's already built into RetroPie.

        Edit: ah, I see. You could try to simulate a "select" button press event and see if it gets registered in ES. That's certainly worth a shot.

        1 Reply Last reply Reply Quote 0
        • B
          berndschroed
          last edited by berndschroed

          hey pift

          thank you for your ideas and help!

          My main goal is to use my Pi as a digital picture frame 90% the time. And that is the reason why i dont want to see any ES dashboard unless i do some input (bluetooth controler will be added later).

          I killed all booting messages and added a booting image, but when ES is started i have to wait for 1min until the screensaver starts. Every idea that will hide the dahsboard or let the screensaver start immediately is fine for me ;-)

          I am new in in the Pi world and i am a german, so it is a little bit difficult for me to understand everything....

          so first i am going to find out (google) how to add events...

          edit:
          I tried to use a video but that does not work because the minute waiting time starts after the video fineshed....

          pjftP 1 Reply Last reply Reply Quote 0
          • pjftP
            pjft @berndschroed
            last edited by

            @berndschroed If that's what you're trying to accomplish, there's probably a better way to go about it - maybe you can just launch something before ES that just cycles through pictures, and only if you exit it will it launch ES?

            Just a thought. Otherwise I think the use case might be a bit hard to accomplish - kind of like the saying "if your only tool is a hammer, all your problems look like nails" :)

            I'd try looking for things like that.

            https://www.instructables.com/id/Easy-Raspberry-Pi-Based-ScreensaverSlideshow-for-E/

            Then I'd see how to set up RetroPie to start Kodi prior to ES and use the same approach to run whatever you settle on.

            1 Reply Last reply Reply Quote 0
            • B
              berndschroed
              last edited by berndschroed

              thank you pjft but i already implementet background music (used this: https://retropie.org.uk/forum/topic/9133/quick-and-easy-guide-for-adding-music-to-emulatonstation-on-retropie-noob-friendly) and want to switch back to "picture frame mode" without rebooting or something similar.

              it is so frustrating for me because in my opinion everything is already implementet in Retropie but i cant make it work like i wish

              edit:
              i checked the the retropie screensaver script ( i hope so) from here: https://github.com/RetroPie/EmulationStation/pull/207/files

              and as far as i understand i just have to use this code: void SystemScreenSaver::startScreenSaver()

              related to the background music script, this code should work in the autostart.sh

              could this possible work? (i have no access to the pi for several days and cant test it)

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

                @berndschroed said in command line to start ES screensaver:

                and as far as i understand i just have to use this code: void SystemScreenSaver::startScreenSaver()
                related to the background music script, this code should work in the autostart.sh

                No, that's not how source code works. That code is compiled into Emulationstation and it's not a script that can be called from outside. If you'd like this to be invoked at every start, then add the code at the end of the start-up sequence in Emulationstation and then re-compile it.

                1 Reply Last reply Reply Quote 0
                • B
                  berndschroed
                  last edited by

                  hey mitu, thank you!

                  could you explain me how to or give me a link to read how to do re-compiling?

                  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.