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

Retroflag GPI Case pcsx-rearmed controller config (SOLVED)



  • Been playing with the excellent gpi case for days now

    For good speed psx emulation on the raspberry pi zero lr-pcsx-rearmed is not the best choice, I installed some games here but speed is not o.k. controller works

    I now that the psx-rearmed emulator has better speed but in this version the controls of the gpi-case do nothing...

    Has anyone come up yet with a configuration file that works.... ?????



  • It seems you can change the controls in pcsx-rearmed by entering the menu by pressing the escape key...
    No escape key on the retroflag gpi case....



  • @eskodisk anyway to hook up a USB or Bluetooth keyboard?



  • @quicksilver I haven't tried beacause I don't own a retroflag case but it should work.



  • I said in Retroflag GPI Case pcsx-rearmed controller config:

    @quicksilver I haven't tried because I don't own a retroflag case but it should work.

    Sorry about the spelling error.



  • The Usb connector is constructed deeper in the case... Indeed connecting a keyboard would be a solution but it would need a special cable....
    Help with the configuration file would be nice...



  • @eskodisk You can't use Bluetooth keyboard ?



  • @lolo You should be able to but I don't have one to test it out.



  • I used a otg cable to connect a keyboard... Doing so seems to disable the buttons on the gpi case itself so.... still no good speed psx emulation here.... anyone succes with the non lr version of pcsx rearmed????



  • No, unfortunately the gpi case is detected like a X-Box 360 pad in the emulator.
    And if you test PCSX-ReARMed just on the Pi Zero W... with a X-Box 360 pad you will have the same thing. The D Pad don't works, just the left analog stick works.
    Ironically i've tested also with the "retroflag megapi pad" and it works. The pad is detected like a RetroFlag Wired Controller. I tested everything with the pcsx.cfg without success.
    A pity because PCSX-ReARMed works very well on the Pi Zero.



  • Well, it's a driver problem, thanks to SinisterSpatula:
    www.reddit.com/r/retroflag_gpi/comments/c1psvj/dpad_not_working_in_pcsxrearmed_and_gpsp/

    #######################
    
    sudo ./RetroPie-Setup/retropie_setup.sh
    go to manage packages, driver, xboxdrv, install from source.
    Takes 1 hour 15 mins to compile.
    
     'Enable xboxdrv'
    and then 'Disable xboxdrv'.
    
    ##############
    
    sudo reboot
    
    
    ################################################
    sudo nano /opt/retropie/configs/all/runcommand-onstart.sh
    
    #!/bin/sh
    
    if [ "$1" = "psx" ] || [ "$1" = "gba" ]
    then
        sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
        --evdev /dev/input/by-id/usb-RetroFlag_GPi_Case_RetroFlag_01-event-joystick \
        --detach-kernel-driver \
        --silent \
        --force-feedback \
        --deadzone-trigger 15% \
        --deadzone 4000 \
        --mimic-xpad \
        --dpad-as-button \
        --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_Z=lt,ABS_RZ=rt \
        --evdev-keymap BTN_SOUTH=a,BTN_EAST=b,BTN_NORTH=x,BTN_WEST=y,BTN_TL=lb,BTN_TR=rb,BTN_THUMBL=tl,BTN_THUMBR=tr,BTN_MODE=guide,BTN_SELECT=back,BTN_START=start,BTN_TRIGGER_HAPPY3=du,BTN_TRIGGER_HAPPY4=dd,BTN_TRIGGER_HAPPY1=dl,BTN_TRIGGER_HAPPY2=dr \
        --evdev-absmap ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
        --ui-buttonmap x=KEY_X,a=KEY_C,b=KEY_V,lb=KEY_A,Y=KEY_S,rb=KEY_D \
        --ui-buttonmap guide=KEY_B,start=KEY_ENTER,back=KEY_ESC \
        --ui-buttonmap du=KEY_UP,dd=KEY_DOWN,dl=KEY_LEFT,dr=KEY_RIGHT \
    &
    fi
    
    
    #########################################
    sudo nano /opt/retropie/configs/all/runcommand-onend.sh
    
    #!/bin/sh
    
    fbset -g 320 240 320 240 8
    fbset -g 320 240 320 240 32
    sudo killall xboxdrv
    
    ####################################
    
    That's it,  Now you'll need a bluetooth keyboard to hit esc and setup the controller 
    inputs, --Or try adding these to your pcsx.cfg
    
    nano /opt/retropie/configs/psx/pcsx/pcsx.cfg
    
    binddev = sdl:keys
    bind return = player1 START
    bind escape = player1 SELECT
    bind escape = Enter Menu
    bind a = player1 L1
    bind c = player1 SQUARE
    bind d = player1 R1
    bind s = player1 CIRCLE
    bind v = player1 CROSS
    bind x = player1 TRIANGLE
    bind up = player1 UP
    bind down = player1 DOWN
    bind right = player1 RIGHT
    bind left = player1 LEFT
    binddev = sdl:Microsoft X-Box 360 pad
    bind escape = Enter Menu
    
    #####################################
    
    useful test commands (while the emulator is running, do them on ssh session):
    
    cat /proc/bus/input/devices
    ls /dev/input/by-id/
    evtest /dev/input/event[1]
    


  • Yep, those instructions are a workaround to the issue. The D-pad on the GPi acts like an axis controller, and some older cores don't work with axis inputs. So the workaround is to use xboxdrv to map the axis to keyboard keys, and set keyboard key inputs in the core. This is not needed for any libretro cores, only standalone cores. It could also be solved in a future update from retroflag if they give us the ability to change from x-input to d-input. Let me know if I can be of help.



  • Great job SinisterSpatula, thanks! !



  • @lolo Most welcome! And thank you for sharing it here, I just happened across the thread looking to see if there was other fixes for GPi on here that I haven't seen yet. :)



  • Wow... So far indeed solved...
    Followed :
    https://www.reddit.com/r/retroflag_gpi/comments/c1psvj/dpad_not_working_in_pcsxrearmed_and_gpsp/

    .... and played crash bandicoot fullspeed !



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.