Forum Replies Created

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
  • tossy
    Post count: 9

    [quote=111570]Any help to make the L and R buttons as hotkeys, for instance, save and load save games?


    For me with my SNES30, R-Select and L-Select work fine, but I have to press R or L first. Pressing Select first doesn’t work.

    Post count: 9

    I’m doing some more testing and things seem to be working now. I have noticed that failing to exit the emulator with Start-Select and just unplugging will cause the save-data to not take. Probably after a few key gaming sessions, this was the culprit. Pretty lousy fault in the system if you ask me, oh well. I will try the autosave_interval setting, since I can’t always expect a clean exit (either someone will not know, or forget, or my bluetooth controller will turn off and I have no way of reconnecting it without pulling the power, usually)

    Post count: 9

    My save/load state function works fine with Select-L/R with SNES. But the in-game save feature doesn’t work. This is supposed to just work “out of the box” right? All my ROMs are unzipped in the SNES folder. Also, ES always shows “last played / # times played” metadata as zero when that’s not true. How should I troubleshoot this??

    There are .SRM files created for the games I’ve played. A problem with loading?

    Post count: 9

    Thanks for the info, are you experiencing any troubles when you try to reconnect the Pad??


    I tested again this morning, both SNES30 are reconnecting at startup still.

    Post count: 9

    OK, so far things ARE WORKING PERFECTLY.

    First of all, I want to just say that I took the small step to get PuTTY so I could control my Pi from my Windows PC and it made a world of difference being able to copy and paste and see my screen etc. Everyone should do this.

    I can’t explain how the “Invalid exchange 52” problem was solved. I removed and re-added the devices many times, usually the error would persist. But now, after removing all the paired BT devices and just re-adding the Start-R booted SNES30, so far RetroPie is connecting everytime. *knock on wood*

    What ended up working for me? I have:
    two 8Bitdo SNES30 gamepads (firmware 2.63)
    RetroPie v2.3.1 on RPi 2.
    BT usb adapter (Kinivo)
    Wireless usb keyboard

    Boot SNES30 with Start-R (Joystick mode, I guess). It won’t appear to blink differently.
    Confirm it booted in the right mode with hcitool scan
    For me, instead of showing 01:06:F6:0E:xx:xx 8Bitdo SNES30 GamePad
    it would show FE:F9:09:F1:xx:xx 8Bitdo SNES30 GamePad Joystick

    Set up your first SNES30 as per Floob’s wiki instructions

    sudo bluez-simple-agent -c DisplayYesNo hci0 XX:XX:XX:XX:XX:XX
    sudo bluez-test-device trusted XX:XX:XX:XX:XX:XX yes
    sudo bluez-test-input connect XX:XX:XX:XX:XX:XX

    Repeat the above for the second SNES30. Again, as per the wiki instructions, add sudo bluez-test-input connect XX:XX:XX:XX:XX:XX twice in the startup file, each line for each SNES30 MAC address.

    Now, as per instructions on the first page of this post we will modify the keyboard direction input in retroarch.cfg to nul.
    type sudo nano /opt/retropie/configs/all/retroarch.cfg
    under the Keyboard input section change
    input_player1_left = left
    input_player1_right = right
    input_player1_up = up
    input_player1_down = down

    into ..

    input_player1_left = nul
    input_player1_right = nul
    input_player1_up = nul
    input_player1_down = nul

    My SNES30’s have been previously configured with Emulation Station, so I did not perform step 4 on the wiki guide.

    On to step 5, I ensured there was no retroarch .cfg file for my gamepads. Then I ran, from PuTTY, the RetroArch controller configuration script.
    sudo /home/pi/RetroPie-Setup/
    Running this from PuTTY allowed me to avoid the prior bug I had where my TV screen would turn black near the beginning of the mapping. I believe I only had to do this with the one controller, since they are identical and write the same 8BitdoSNES30GamePadJoystick.cfg file anyway.

    I think that’s basically it. To use the SNES30’s, I just turn them on with Start-R just before or after turning on my Pi. The blue flashing turns to solid blue around the time Emulation Station splash screen comes on. I have tested in 2-player simultaneous games in NES and SNES that both controllers work great for P1 and P2 with no d-pad crossover as before. Hopefully some of this info can be helpful to others. In the meantime I hope that “Invalid exchange 52” bluetooth connection issue stays away.

    Post count: 9

    So it’s the same MAC with Start-B (BT keyboard), but if I use Start-R (whatever that is, it’s not in the 8bitdo SNES30 manual, but from my research it’s gamepad mode with controller D-pad, not keyboard…sounds good, right?), it gets a different MAC address! Also a changed name: “8Bitdo SNES30 Gamepad Joystick” instead of “8Bitdo SNES30 Gamepad” So, something new to try.

    I repeated the same steps in the wiki, pairing, trusting, and connecting the two new MAC addresses, and adding these to the startup file. Both were connected fine, even after a RetroPie reboot, and I could then configure both controllers with ES and Retroarch configurator as described. (I still got a black screen with the second controller config, but if I pressed enter after starting, and started pressing the right buttons in order [memorized..] the screen would come back after a button press or two.) Both controllers worked fine simultaneously in a SNES game TMNT4, although START and SELECT were swapped, possibly my error on config process.

    SUCCESS! Except on next system boot, neither SNES30 would reconnect. On manual connection attempt “sudo bluez-test-input connect xx:xx:xx:xx:xx:xx”, I would get the message

    Traceback (most recent call last):
    File "/usr/bin/bluez-test-input", line 40, in <module>
    File "/usr/lib/python2.7/dist-packages/dbus/", line 70, in __call__
      return self._proxy_method(*args, **keywords)
    File "/usr/lib/python2.7/dist-packages/dbus/", line 145, in __call__
    File "/usr/lib/python2.7/dist-packages/dbus/", line 651, in call_blocking
      message, timeout)
    dbus.exceptions.DBusException: org.bluez.Error.Failed: Invalid exchange (52)

    And now I can’t get either controller to connect again. It appears a few others have had this but I’m not sure what the solution is…

    Post count: 9

    You know, I thought of that but I’m quite certain hcitool scan showed the same MAC addresses.

    Regarding the boot modes for these 8bitdo, I have seen online some people mention booting with Start-R, but I’m not sure what that is. The sheet for my SNES30 has Start for normal, Start-B for keyboard (two player mode keyboard, second one does Start-B-R).

    My original post here was using only normal mode for both, as per your Wiki guide, and it alllmost worked.

    Post count: 9

    I tried that but then RetroPie would not connect to the SNES30 on RetroPie bootup anymore. Thanks for your work on this, Floob, by the way.

    Post count: 9

    (Edit: I am using a newly, successfully installed RetroPie 3.2.1 on Raspberry Pie 2. The SNES30’s have the latest firmware)

    How does the process differ in the wiki article ( if I have two SNES30 controllers?

    I followed all the instructions, and I set up both controllers for bluetooth with command lines and edited the startup file so both will automatically connect with each boot.

    On Step 4, my controller D-pads work fine in the GUI, but on the Emulation Station controller configuration the d-pads do not register as assigned keypresses, but just move the selection around. (edit: I have noticed when it’s looking for a controller button to be pressed, and if I press a SNES30 dpad, it will display “keyboard” as the to-be configured device.)

    On Step 5, I was able to configure my first controller using the described method. For the next controller, I did not delete the file again, and when I went into the “Configure input devices for RetroArch” tool, this time the screen goes completely black. Mashing buttons for a while will bring the screen back but with a bunch of timeouts and some assigned buttons to the config tool.

    In practice, I could play a NES game where P1 controller would work fine, but the P2 controller would also work fine except its dpad would control both player 1 and player 2.

    I’m somewhat worried that when I did the “cd /opt/retropie/configs/all/retroarch-joypads/
    ls -lah”
    Aside from my XBOX360 USB I had tried earlier, it only showed the one config file for my gamepads (there was a bak copy as well). I have noticed in Emulation Station my gamepads have identical names. Should there be a config file for each gamepad?

    This is proving to be far more complicated than I ever anticipated. If anyone can help me figure this out I would greatly appreciate it.

Viewing 9 posts - 1 through 9 (of 9 total)