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 65.8k 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
      last edited by

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

      .

      Yes, It was a logic problem but such things get overlooked quite often. As I said, Aloshi's work might not have been optimized for Pi but it can be.

      I agree Video screensaver is not a power saving feature but it is not intended to be. It is for systems that have a constant source of power and hence not battery friendly. But that does not mean that the feature is useless. A lot of effort and time went into making it worthwhile. :)

      The option to enable or disable is just for your satisfaction. The functionality is not compromised at all. It just got better at doing nothing :P

      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

      meleuM 1 Reply Last reply Reply Quote 0
      • meleuM
        meleu @Hex
        last edited by meleu

        Once you fixed all those "issues" related with screensaver (video/dim/blank), then will it be enabled by default and with no option to toggle it?

        • Useful topics
        • joystick-selection tool
        • rpie-art tool
        • achievements I made
        1 Reply Last reply Reply Quote 0
        • HexH
          Hex
          last edited by

          @meleu All bugs are fixed. The option is still there. Do you think the option should not be present?

          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

          meleuM 1 Reply Last reply Reply Quote 1
          • meleuM
            meleu @Hex
            last edited by meleu

            @Hex here's my reasoning:

            1. your change does power saving (optimizes the logic).
            2. dim/blank/video screensaver works fine no matter if the PS is enabled (by the way, you should update this info on OP).
            3. there isn't any advantage in leaving PS disabled.

            Then here's the big question: Why the heck would anyone leave this option disabled?

            If there's no answer for that question, then the conclusion is "leave it always enabled and remove the option to disable it"

            • Useful topics
            • joystick-selection tool
            • rpie-art tool
            • achievements I made
            1 Reply Last reply Reply Quote 1
            • HexH
              Hex
              last edited by Hex

              @meleu Okay let me remove the option.

              EDIT : Why are you highlighting it?? I wrote a lengthy answer and deleted everything. In short the answer is to disable PS if it misbehaves and yet not be shackled by a broken feature. On the other hand we have lots of Options already so screw it :D

              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

              meleuM 1 Reply Last reply Reply Quote 1
              • meleuM
                meleu @Hex
                last edited by

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

                Why are you highlighting it?

                I don't mean to sound like screaming, sorry if I sounded like that. :-)

                I was just trying to emphasize the conclusion. Maybe we can continue this conversation on the PR thread to get Jools opinion. I'll paste my reasoning above there.

                • Useful topics
                • joystick-selection tool
                • rpie-art tool
                • achievements I made
                1 Reply Last reply Reply Quote 0
                • HexH
                  Hex
                  last edited by

                  That would be a good idea

                  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 @meleu I haven't had a chance to test this yet, but based on my understanding of how it works, it seems likely that power saver will disable text scrolling for game descriptions and game names in the gamelist. If I am correct, this would be a reason to keep it as an option.

                    Another reason to do so would be to prevent any conflicts with future development. For example, there have been requests for the ability to include animated images in themes. If power saver was not an option, implementation of this feature would be dependent on implementing a way to detect and disable PS when necessary. I would hate to see a potential contributor decide not to implement something because of the extra effort involved with making it compatible with PS.

                    Get latest build of EmulationStation for Windows here

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

                      @jdrassa Firstly the text scrolling works as expected. That feature is what convoluted the entire logic from being very simple. I am glad that i got to implement this.

                      Secondly I concur with you on this but.... Features like animated images would be useful and it woult be easy to implement PS+animations as I have already done it for videos and users can just copy how i did it for Videos. Its two lines, one to stop powersaver when images are animated/video and another to start it again when images end. I thought about it a lot. Remember we are developing for Raspberry pi primarily. Thus we should strive to save as much processing as possible. Had it been difficult to incorporate in further development I would have said that switch would be ideal.

                      See the systemscreensaver.cpp here and tell me if i can make it easier.

                      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 2
                      • J
                        jdrassa @Hex
                        last edited by

                        @Hex I saw that is was easy enough to enable/disable. What I was referring to was the process of determining when it should be enabled vs. disabled. For video view, the logic is pretty simple, is the current view video view? However, if any animated element was supported as a theme extra, that logic would be slightly more complex. Whenever, switching views or themes, one would have to scan the list of "extra" elements to see if one was animated. It is not terribly difficult logic, but it is more complex. It would also lead to the scenario where a user may have to choose between a theme and power saver. An option would give the user the choice to still use the theme with power saver mode, even if some animated elements were disabled.

                        With regards to text scrolling, for the game description, the animation runs in a loop, It scrolls to the end, pauses for a bit, then resets back to the top and scrolls again. As I said, I haven't tested it yet, but I don't see how it could work based on reviewing the code. I am guessing that you have set the delay before power saving mode is enabled so that a single scroll is completed. I think that is a great way to approach it, but some users may still want/expect the old behavior, which is why I think keeping it as an option is a good idea.

                        Get latest build of EmulationStation for Windows here

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

                          @meleu Does this answer your question?

                          @jdrassa I am waiting for @BuZz 's response. I have both setups at hand (with and without switch). Regarding the Animated images I would have to think some more how I can get away with it without the switch. We currently have ImageComponent to show images. How would one incorporate GifComponent ? Can I interest you in a joint venture on this?

                          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
                          • meleuM
                            meleu @jdrassa
                            last edited by

                            @jdrassa @Hex @psyke83

                            Let's jump to conclusion: I'm OK with that being an option! :-)

                            But when I suggest to hide this option, I'm just giving an user point of view opinion. My only concern is with ES becoming a frontend like xmb/lakka, poluted with tons of options that casual/average users don't care and would prefer to just leave the default and don't see the option.

                            That being said, I think that if the text scrolls and then stops, I would label it as a bug (just like we did with the screensaver issue). But once it's fixed I believe that omit the option is the "user-friendlier" approach. If it's too complicated to "fix" this behavior, OK, leave it as an option.

                            Regarding to animated elements, I think that when this feature is implemented, it should setPowerSaver(false). As far as I understood @jdrassa said that this logic would be complex... Well TBH I'm afraid that such feature would bloat ES and make it heavier to use on a raspi1/zero...

                            • Useful topics
                            • joystick-selection tool
                            • rpie-art tool
                            • achievements I made
                            1 Reply Last reply Reply Quote 0
                            • HexH
                              Hex
                              last edited by

                              @meleu Isnt the default behaviour to scroll text and stop? It doesnt stop in the middle of the scroll if that is what you mean.

                              Dont be confused by logic being complex. It takes less than a ms to compute logic. Processing for a ms is always better than rendering for a minute.

                              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

                              meleuM 2 Replies Last reply Reply Quote 0
                              • meleuM
                                meleu @Hex
                                last edited by meleu

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

                                @meleu Isnt the default behaviour to scroll text and stop?

                                As @jdrassa said:

                                With regards to text scrolling, for the game description, the animation runs in a loop, It scrolls to the end, pauses for a bit, then resets back to the top and scrolls again.

                                I didn't really test to see this happens in your branch (will test in a couple of hours), but I think PS should keep the original behavior (scroll to the end, pause for a bit, go back to the top and scroll again).

                                @Hex said

                                Dont be confused by logic being complex. It takes less than a ms to compute logic.

                                I meant complex to code, not to the processor execute. :-)

                                • Useful topics
                                • joystick-selection tool
                                • rpie-art tool
                                • achievements I made
                                1 Reply Last reply Reply Quote 0
                                • meleuM
                                  meleu @Hex
                                  last edited by meleu

                                  @Hex Hey man! Really sorry for saying things before testing. I've just compiled and launched your branch and the game description scrolls just like the official branch (goes to the end and back to the start and scrolls again)!

                                  Huge thanks for adding this feature and really sorry for wasting your time...

                                  Cheers!

                                  • Useful topics
                                  • joystick-selection tool
                                  • rpie-art tool
                                  • achievements I made
                                  1 Reply Last reply Reply Quote 0
                                  • meleuM
                                    meleu
                                    last edited by

                                    @Hex
                                    UPDATE
                                    Ooops!

                                    The test I described above was made with video preview on. When I changed to detailed view, the text doesn't scroll at all. Maybe you want take a look at it.

                                    • Useful topics
                                    • joystick-selection tool
                                    • rpie-art tool
                                    • achievements I made
                                    1 Reply Last reply Reply Quote 0
                                    • HexH
                                      Hex
                                      last edited by Hex

                                      @meleu \m/ :)

                                      You guys dont ever waste my time. Your feedback is really important.

                                      Given enough eyeballs, all bugs are shallow -- Linus Torvalds

                                      EDIT : can you post some screenshots. That would be helpful

                                      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

                                      meleuM 2 Replies Last reply Reply Quote 0
                                      • meleuM
                                        meleu @Hex
                                        last edited by

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

                                        can you post some screenshots. That would be helpful

                                        I'll try a video, give me some minutes.

                                        • Useful topics
                                        • joystick-selection tool
                                        • rpie-art tool
                                        • achievements I made
                                        1 Reply Last reply Reply Quote 0
                                        • meleuM
                                          meleu @Hex
                                          last edited by

                                          @Hex sorry about the video quality, but here it is:

                                          • Useful topics
                                          • joystick-selection tool
                                          • rpie-art tool
                                          • achievements I made
                                          1 Reply Last reply Reply Quote 0
                                          • HexH
                                            Hex
                                            last edited by

                                            @meleu Firstly stop apologising. Secondly it was my mistake. Since I am using a theme that doesnt have description shown I was unaware that that is what was not working. I was under the impression that you were talking about the game name which scrolls nicely in my build:facepalm:

                                            So to makes things easy the description is not going to scroll. Asking the description to move is same as not having PS. Frames need to be rendered to show the moving text. This is a side effect. A switch would solve this trouble. Users will have to decide what is important for them. Both features are mutually exclusive just like Video preview and PS.


                                            Guys what do you think about this. Can anyone suggest a better way to handle this?

                                            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

                                            meleuM dankcushionsD 2 Replies 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.