RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    [Merged] Power Saver feature

    Scheduled Pinned Locked Moved Ideas and Development
    emulationstatiotestingpowersaver
    164 Posts 10 Posters 62.1k 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.
    • HexH
      Hex @pjft
      last edited by

      @pjft said in Testers needed :: Power Saver features :: PR #172:

      @hex great! Then start with just on and off. There will be no need to complicate things if you head in that direction.

      Its not that complicated to implement. I shall be submitting final updates soon. Was just interested in checking if others had any better suggestions to the names: None/Min/Full

      I know that keeping defaulted to Min will be sufficient for majority of users. Optionally None is also worth using if you are connected to wall socket and have good cooling. Full is for portable setups and there is a whole community for it : sudomod.com

      As for the code, as I mention, it was pseudo code.

      Yes I know. Your psudo code had nested while loops which wouldnt work and hence i pointed it out. Nothing more than that.

      Sent from 20,000 leagues under the sea.

      Powersaver Emulation station : https://github.com/hex007/EmulationStation
      ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

      TMNTturtlguyT 1 Reply Last reply Reply Quote 1
      • TMNTturtlguyT
        TMNTturtlguy @Hex
        last edited by

        @hex I have another thought which might not be popular, but I am not sure that these options need to be available in the main build. I don't know if a third ES build is worth the effort to keep updated but it seems to me that havin a RPI1 a RPI2/3 and a RPI-handheld might make sense. This build could be created efficiently to work for handhelds and you could maximize it to the fullest PS settings.

        1 Reply Last reply Reply Quote 0
        • HexH
          Hex
          last edited by

          @TMNTturtlguy I wouldnt vouch for code divergence.

          Sent from 20,000 leagues under the sea.

          Powersaver Emulation station : https://github.com/hex007/EmulationStation
          ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

          J 1 Reply Last reply Reply Quote 0
          • J
            jdrassa @Hex
            last edited by

            @hex Please correct me if I am wrong, but is the only difference between Minimal, Full, and MAX the time delay between switching from SDL_PollEvent to SDL_WaitEventTimeout?

            If so, I have a suggestion.

            • PowerSaver mode is always on. There are no menu options to enable or configure it.
            • The default delay before enabling PowerSaver mode is the users configured Screen Saver delay.
            • If a user wants to change the delay to achieve more power savings, they can modify es_settings.cfg directly to specify a different value. This process can be documented on the RetroPie wiki. This is how the hide splashscreen option works.

            I think this approach will give the most benefit to all users without changing functionality, while still giving users who want more power savings the ability to do so.

            Get latest build of EmulationStation for Windows here

            HexH 1 Reply Last reply Reply Quote 2
            • HexH
              Hex @jdrassa
              last edited by Hex

              @jdrassa said in Testers needed :: Power Saver features :: PR #172:

              @hex Please correct me if I am wrong, but is the only difference between Minimal, Full, and MAX the time delay between switching from SDL_PollEvent to SDL_WaitEventTimeout?

              @jdrassa Very simply, yes. Although there is an enforcer in addition to the counter. Enforcer ensures counter is overridden when PS is disabled and Counter ensures trailing animations after last event. Both are equally important.

              If so, I have a suggestion.

              • PowerSaver mode is always on. There are no menu options to enable or configure it.

              Auto scroll doesnt work in that case

              • The default delay before enabling PowerSaver mode is the users configured Screen Saver delay.

              Screensaver delay is at minimum 1m so switching timeout goes from 12 secs to 1m which is not good. Also if video screensaver is enabled PS will never be triggered (generally)

              • If a user wants to change the delay to achieve more power savings, they can modify es_settings.cfg directly to specify a different value. This process can be documented on the RetroPie wiki. This is how the hide splashscreen option works.

              The user base inerested in PS will be more than hide splashscreen guys. Not many users look at the documentation for latest features.

              Sent from 20,000 leagues under the sea.

              Powersaver Emulation station : https://github.com/hex007/EmulationStation
              ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

              cyperghostC 1 Reply Last reply Reply Quote 1
              • cyperghostC
                cyperghost @Hex
                last edited by cyperghost

                @hex Do you think it would be better to show no PS feature in main menu... so it's disabled by default and all users got a working ES as it looks like now. But create a bash-file within RetroPie menu. There you can choose between PS settings and can tell all advantages and disadvantages of each setting and ES reads out a value in a cfg file stored as you want?

                I'm very intereted in the PS feature your know and I personally would enable it by default. Because I have no scrolling filenames, I don't use video preview....
                I would also activate it in my Pi0 portable :)

                1 Reply Last reply Reply Quote 0
                • HexH
                  Hex
                  last edited by

                  @cyperghost I dont know if that is possible. Are there any Es settings currently in Retropie-setup?

                  Sent from 20,000 leagues under the sea.

                  Powersaver Emulation station : https://github.com/hex007/EmulationStation
                  ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                  cyperghostC 1 Reply Last reply Reply Quote 1
                  • cyperghostC
                    cyperghost @Hex
                    last edited by cyperghost

                    @hex Well you load Themes for ex. within RetroPie-Menu and activcate them through ES
                    So yes items for ES are changed through RP-Menu

                    and yes .sh files can be located to ~/RetroPie/retropiemenu/ and they are visible and executable by default. So why not using this way? You can even create an icon for your set and descripe it in gamelist.xml - very nifty possibilty to create a settings menu :)

                    Since we know How to: Restart ES via bash script an activation/change of values of ES is also possible :)

                    So you may create a file names advanced_settings.xml (is there a good place to locate??) and can descripe option there and it could be usefull for future tweaks. For changing file advanced users can do edit manually and/or you write a small bash-script that also explains every option and does a restart automatically after settings were done.


                    Here you can also find answer of what is ment by EUREKA

                    1 Reply Last reply Reply Quote 0
                    • HexH
                      Hex
                      last edited by

                      @cyperghost Themes are loaded via Retropie menu but selected using ES alone. I dont think it is a viable solution.

                      Sent from 20,000 leagues under the sea.

                      Powersaver Emulation station : https://github.com/hex007/EmulationStation
                      ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                      cyperghostC 1 Reply Last reply Reply Quote 0
                      • cyperghostC
                        cyperghost @Hex
                        last edited by cyperghost

                        @hex If ES is executed it checks presence/values of advanced_settings.xml one time. Is there is a tag like

                        <!--
                              Hello,
                                 I am a multi-line XML comment
                                 I want to tell you a new feature of ES, the powersaver....
                                0 = disabled
                                1 = min, value Video support works, Scrolling not....
                                9 = may the force be with you
                                       -->
                        
                        <powersaving>
                          <mode>0</mode>
                          <timeout>90</timeout>
                        </powersaving>
                        

                        or file is missing then PS is disabled.
                        via batch script and xmlstartlet you can change XML values easily and then force a restart. I think it's a possible solution and you don't need to mess around with explanations pop ups within ES but of course ES must be prepared for the value you've setted in PS-mode.

                        Of course it's your decision but it will also help to keep ES menu slim but it's still easy configurable by scripting menus.

                        1 Reply Last reply Reply Quote 0
                        • HexH
                          Hex
                          last edited by Hex

                          @cyperghost I do not want to complicate this further. It has already been decided to have PS enabled by default and a timeout set such that description scrolls. I want to have a setting for people not using/caring about descriptions, hence the Full option. I might think about MAX:EXP option for instant and no carousel users (Might not be implemented). Timeout access shall not be available to user as wrong setting will render ES unusable.

                          So None/Minimal/Full are three options thought of being implemented for certain. I want your input on changing the names of these modes if necessary. I had name changing suggestions at a later stage while submitting additional animations. I dont want to repeat that. Hence if you have better suggestions for Mode Names, let me know.

                          Sent from 20,000 leagues under the sea.

                          Powersaver Emulation station : https://github.com/hex007/EmulationStation
                          ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                          Z 1 Reply Last reply Reply Quote 0
                          • Z
                            Zigurana @Hex
                            last edited by Zigurana

                            @hex
                            Good idea's all around, even better to come to a decision 😀.
                            Question: For users, there is no difference between none and minimal, right? Why do we need both?

                            I would go for default / Improved

                            If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                            cyperghostC 1 Reply Last reply Reply Quote 0
                            • cyperghostC
                              cyperghost @Zigurana
                              last edited by

                              @zigurana @hex

                              I would go for usecase disabled/comfortable/portable

                              1 Reply Last reply Reply Quote 0
                              • HexH
                                Hex
                                last edited by

                                @Zigurana

                                None -> PS is disabled always
                                Minimal -> PS is enabled after Description has scrolled once (approximately)
                                Full -> Game name scrolls, Description doesnt scroll
                                MAX:EXP -> PS has very short trigger time. Great for instant and no carousel transition users. For those who dont care about animations

                                MAX might not be implemented, who knows. There is currently just one bug. PS isnt disabled while running scrapper (Fetch MD). That needs to be taken care of.

                                Timeouts

                                • MAX -> 20-40 cycles (Needs testing to reduce range)
                                • Full -> 100-200 cycles
                                • Min -> 10-12 secs ~ 1000-1200 cycles
                                • None -> Not needed

                                Do you have any suggestions for Mode names?

                                Sent from 20,000 leagues under the sea.

                                Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                                J 1 Reply Last reply Reply Quote 0
                                • HexH
                                  Hex
                                  last edited by

                                  @cyperghost Nice suggestions. Lets see what others think.

                                  Sent from 20,000 leagues under the sea.

                                  Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                  ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                                  1 Reply Last reply Reply Quote 0
                                  • Z
                                    Zigurana
                                    last edited by

                                    Why would you want to disable PS?

                                    If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                                    pjftP 1 Reply Last reply Reply Quote 1
                                    • HexH
                                      Hex
                                      last edited by

                                      I dont know. I think having an option to disable it prevents complaints about unexpected behaviour. Another reason would be if we decide to default it no None while merging.

                                      Sent from 20,000 leagues under the sea.

                                      Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                      ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

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

                                        @Hex Does PS stop the animations or no longer?

                                        1 Reply Last reply Reply Quote 0
                                        • HexH
                                          Hex
                                          last edited by Hex

                                          @pjft PS doesnt stop animations if running in Minimal Mode, Description scrolls once. This would ideally be the default if we are leaving PS enabled in Default setting (first run).

                                          Sent from 20,000 leagues under the sea.

                                          Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                          ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

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

                                            @hex and does the text animation in the text list Component also scroll if needed?

                                            Is it "once" or is it timer related?

                                            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.