GPD xd plus/RA control conflict

Theres somekind of conflict going on with my GPDxd plus and RA. It will just randomly wig out in the menu UI of RA. Up goes down five spaces, down goes up, A goes down and then selects, and the only fix is a hard factory reset of the entire device. Ive tried uninstalling RA and manually pulling the files from the SDcard before re download, but itll still be there unless i wipe the entire device. I saw something about an autoconf thing and maybe a nightly mod thatll fix it but i dont know what those are lol, can someone walk me though it? HAAAALP

1 Like

I have the exact same problem on GPD XD (not the “+” version). I’ve never managed to make RA work on my GPD XD because of this controller frenzy. I’ve tried with both joypad modes (xbox and ps3).

I’m no C programmer but I went to github to see the android_input.c source code

There’s a hack for the XD but there’s a first problem there: strstr(device_name,“Playstation3”)

The device’s name is not “Playstation3” but "PLAYSTATION(R)3" so the condition can never be met in PS3 mode. From the logcat: I/EventHub( 460): New device: id=10, fd=207, path=’/dev/input/event8’, name='PLAYSTATION(R)3’, classes=0x80000141, configuration=’’, keyLayout=’/system/usr/keylayout/Vendor_054c_Product_0268.kl’, keyCharacterMap=’/system/usr/keychars/Generic.kcm’, builtinKeyboard=false, usingSuspendBlockIoctl=true, usingClockIoctl=true

Unfortunately that doesn’t seem to be the problem because in XBOX mode the condition should be met as the device is reported as “XBOX” like in the source code. And I have the same erratic behavior in XBOX mode.

I/InputReader(  460): Device added: id=11, name='XBOX', sources=0x01000511

It looks like RA doesn’t see the GPD’s gamepad. When I start RA, I press one of the gamepad button and I don’t have a yellow text saying that the gamepad is connected to a port. But I do have such a message when I press the back button and it registers one input device. The logcat seems to show this. When I press the A button, nothing happens in the logs, looks like handle_hotplug is not triggered. When I press the back button, handle_hotplug is triggered and registers the “rk29-keypad” device: I/RetroArch( 2311): Device model: (XD I/RetroArch( 2311): ). I/RetroArch( 2311): Using new lookup I/RetroArch( 2311): device name: rk29-keypad I/RetroArch( 2311): device vendor id: 1 I/RetroArch( 2311): device product id: 1 I/RetroArch( 2311): Special Device Detected: XD I/RetroArch( 2311): I/RetroArch( 2311): [Autoconf]: 145 profiles found. I/RetroArch( 2311): [autoconf]: selected configuration: /data/data/com.retroarch/autoconfig/android /GPD_XD.cfg

FYI, the gamepad is perfectly recognized in other standalone emulators like the .emu series or by Android apps such as “Gamepad Tester”. Both in PS3 and XBOX modes.

I have no solution for this problem, I can’t use RetroArch at all on my GPD XD.

Edit: the forum tends to replace ( R ) (without the spaces) by the registered trademark symbol but it is PLAYSTATION-left parenthese-R-right parenthese-3

Edit2: I have installed again the firmware with Rockchip batch tool, wiping clean all data on the device. The gamepad is now recognized in RA! But not the return key as the problem with the device name Playstation3 still exists