Navigation

    RetroPie forum home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    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

    Error after updating retropie-setup to 4.4.9 (a161774a)

    Help and Support
    error retropie-setup update
    7
    70
    1586
    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.
    • hiulit
      hiulit last edited by

      After updating retropie-setup to 4.4.9 (a161774a) I get this error:

      pi@raspberry: ~-RetroPie-Setup_001.png

      I'm using a Virtual Machine with PIXEL, if that's helpful.

      Efriim mitu 2 Replies Last reply Reply Quote 0
      • Efriim
        Efriim @hiulit last edited by

        @hiulit
        I have this too!
        After update cores and sixaxishelper I didn't know what caused it.
        It only happens when I connect a Wii controller to bluetooth, PS3 controller okay, logitech okay.

        My device

        • Raspberry Pi 3 B+ same retropie version.
        1 Reply Last reply Reply Quote 0
        • mitu
          mitu Global Moderator @hiulit last edited by

          @hiulit What controller/keyboards do you have configured on this system ?

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

            @mitu None that I know of. It's a Virtual Machine running PIXEL, so I guess I only have a keyboard.

            Efriim mitu 2 Replies Last reply Reply Quote 0
            • Efriim
              Efriim @hiulit last edited by

              @hiulit
              What virtual machine? Linux could pass through anything on your system to the vm.
              Like I said before, I had the exact same error, thrown across my screen, line numbers and everything, though it was thrown with a slightly different pattern more horizontally skewed, probably the screen resolution.

              1 Reply Last reply Reply Quote 0
              • Efriim
                Efriim last edited by

                cat /proc/bus/input/devicesin the vm, I think that is what mitu told me.

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

                  @hiulit I also have a similar setup (albeit running Ubuntu) in a VM and I don't get this message. But it's definitely something that's changed in the RetroPie's side.
                  Can you check to see if you have any configuration files (for a gamepad) in the /opt/retropie/configs/all/retroarch-joypads folder ?

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

                    Nevermind, I managed to reproduce the error. It seems that the update to joy2key might have something to do with it.
                    @psyke83 Can you take a look at the error reported by @hiulit ?
                    I get the same error on a stock RetroPie 4.4, installed from scratch and updated to the latest master. Started raspi-config, got the error and the gamepad doesn't work.
                    If i revert to 6ebb8150 then the error is gone.
                    I only have 1 gamepad configured (USB,2-axis 8-button gamepad .cfg) in /opt/retropie/configs/all/retroarch-joypads)

                    input_device = "USB,2-axis 8-button gamepad  "
                    input_driver = "udev"
                    input_l_btn = "4"
                    input_load_state_btn = "4"
                    input_start_btn = "7"
                    input_exit_emulator_btn = "7"
                    input_down_axis = "+1"
                    input_r_btn = "5"
                    input_save_state_btn = "5"
                    input_right_axis = "+0"
                    input_state_slot_increase_axis = "+0"
                    input_select_btn = "6"
                    input_left_axis = "-0"
                    input_state_slot_decrease_axis = "-0"
                    input_up_axis = "-1"
                    input_a_btn = "0"
                    input_b_btn = "1"
                    input_reset_btn = "1"
                    input_enable_hotkey_btn = "6"
                    input_x_btn = "2"
                    input_menu_toggle_btn = "2"
                    input_y_btn = "3"
                    

                    Everything else is the default on a RetroPie 4.4 image.

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

                      @mitu Doesn't the error say index out of range? My Wii controller threw it and it has like 4 configurations(accelerometer, IR, controller, blah) but only 6 buttons on the js1 and it doesnt work. Are the buttons out of range? is there really 8 buttons on the js0?

                      But I mostly agree, I didn't get this pre-update, although I never got a chance to use the wii controller, because the PS3 driver used to kick it off before it could sync.

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

                        @Efriim I don't think it's specific to the controller used. I don't get an error if the autoconfig folder is empty - on my Ubuntu test machine for instance, where only a keyboard is used.
                        For the PS3 one, remove the ps3driver and install the sibling sixaxis driver. This uses the Linux BT stack and it will allow you to pair and register other BT controllers - like the Wii controller.

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

                          I synced the wii controller again, triggering joy2key in retropie menu triggers the error.
                          I don't have a Nintendo Wii config in /opt/retropie/configs/all/retroarch-joypads, I emptied the directory, and I still get the error. Only when the wii controller is connected.

                          Do you know what folder joy2key references for fds file descriptors? other than /dev/input/

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

                            @Efriim Well, let's take it one step at a time. If you want to get rid of the error in this topic, checkout a later revision of the RetroPie-Setup script

                            cd $HOME/RetroPie-Setup
                            git checkout 6ebb8150
                            

                            then take it on from here.
                            To revert to the normal RetroPie-Setup branch (once the error in this topic is resolved), just run

                            cd $HOME/RetroPie-Setup
                            git checkout master
                            
                            1 Reply Last reply Reply Quote 0
                            • psyke83
                              psyke83 Global Moderator last edited by

                              Thanks for letting me know @mitu. It looks like your config is not being detected and falls back to the main retroarch config which doesn't have any mappings. Will work on a fix soon.

                              1 Reply Last reply Reply Quote 1
                              • psyke83
                                psyke83 Global Moderator last edited by psyke83

                                Please let me know if this fixes the issue: https://github.com/RetroPie/RetroPie-Setup/pull/2651

                                @mitu - although I'm confident the above will resolve the errors, I think that we might have highlighted the issue that joy2key (even when reverted to the commit you specified) isn't utilizing your mappings for that controller correctly, and falling back to retroarch.cfg instead. I can try to troubleshoot that in more detail if you can confirm that my suspicion is correct.

                                You said that you only have one gamepad configured; the error triggers if an unconfigured or partially mapped controller is connected, so if you also had a different, unmapped controller connected, then the script doesn't need any further fixing beyond the current PR.

                                psyke83 created this issue in RetroPie/RetroPie-Setup

                                closed joy2key: protect against IndexError and KeyError exceptions #2651

                                mitu 1 Reply Last reply Reply Quote 1
                                • mitu
                                  mitu Global Moderator @psyke83 last edited by mitu

                                  @psyke83 The PR seems to work, thank you.

                                  Indeed, I have 3 /dev/input/jsX devices present, but only 1 of them was configured - the one I mentioned (USB,2-axis 8-button gamepad , mapped to /dev/input/js0). The configuration was done from Emulationstation, without any other external edits.

                                  There's one more message (probably related to the signal handling updates for joy2key) that appears now every time joy2key starts

                                  Exception OSError: (9, 'Bad file descriptor') in <module 'threading' from '/usr/lib/python2.7/threading.pyc'> ignored
                                  

                                  It stays in the background (doesn't clutter the dialog boxes), but it doesn't appeared before. Also reported here.

                                  Thank you. We can debug further if you like, so let me know if you want to be to test other things.

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

                                    @mitu

                                    Unfortunately I can't reproduce this error. Can you isolate whether it's triggered by a specific controller in particular? I only have two PS3 controllers, and I can't trigger the error with none, one or both connected.

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

                                      @psyke83 said in Error after updating retropie-setup to 4.4.9 (a161774a):

                                      Unfortunately I can't reproduce this error. Can you isolate whether it's triggered by a specific controller in particular?

                                      I use only 1 controller (the one I mentioned), though there are 3 /dev/input/jsX entries from the other 2 controllers. If I unplug the other 2 controllers (which actually it's just a 2SNES-to-USB adapter without any controllers connected), I still get the same Exception OSError: (9, 'Bad file descriptor') ..., so it doesn't look like it's related to a particular controller.
                                      I'm on a fully updated Raspbian Stretch, maybe there's something from a package update.

                                      I tried (on the master branch) to reproduce the original error (the one reported by @hiulit) without the other 2 controllers connected and it seems ok - the problem appears only when I have the other (un-configured) 2 controllers connected.

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

                                        @mitu

                                        Would it be possible for you to isolate the part of the script triggering the warning via some manual edits? See: https://github.com/RetroPie/RetroPie-Setup/commit/f614804f23c6280b1441b187e36c414b8cb41191

                                        In the three instances where I replaced except: with a more specific exception, you could change one back to a naked exception and see if it eliminates the warning. If I could at least know which one of the three is the trigger, it should help me evaluate the exact origin of the error. Thanks!

                                        0 psyke83 committed to RetroPie/RetroPie-Setup
                                        joy2key: fix sys.exit() by avoiding naked exceptions
                                        
                                        The sys.exit() function actually calls an exception (SystemExit), but our
                                        script handles naked exceptions which can result in the script not terminating
                                        properly. Fix by ensuring that all exceptions specify the relevant exception type only.
                                        
                                        Additionally:
                                        * Send default TERM signal, as issuing INT during early initialization can raise a KeyboardInterrupt exception.
                                        * Open tty with 'append' flag to avoid ghost input
                                        * Add check for 'js_fds' to avoid rare exception on quit during early init
                                        * Modify script to quit automatically when parent process exits.
                                        * Add joy2keyStop/stop_joy2key for certain rare edge cases.
                                        Efriim mitu 3 Replies Last reply Reply Quote 0
                                        • Efriim
                                          Efriim @psyke83 last edited by Efriim

                                          @psyke83
                                          Line 163.
                                          OSError and ValueError both throw exceptions individually, if one of them is a parent, probably ValueError.

                                          1 Reply Last reply Reply Quote 1
                                          • mitu
                                            mitu Global Moderator @psyke83 last edited by

                                            @psyke83 thanks, I'll do some testing tonight, don't have access right now to the system.

                                            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.