[Solved] Ipega PG-9017S incorrectly recognized as MOGA

Ask questions about DraStic or discuss compatibility issues here.
Post Reply
softchassis
Posts:4
Joined:Sun Jan 31, 2016 10:02 am
[Solved] Ipega PG-9017S incorrectly recognized as MOGA

Post by softchassis » Sun Jan 31, 2016 10:06 am

Hi, Drastic is incorrectly recognizing my Ipega PG-9017S controller as a MOGA Pro controller. This good news means the controller works immediately without having to be configured, however, since the Ipega PG-9017S only has an L1 and R1 button, Drastic is mapping those buttons as being screen-swap and fast forward.

Is there a way to unmap the Moga controls or disable them entirely? Or should I wait for a fix for this?

ETA: I seem to have it working-ish. I reinstalled the Ipega app, and tried configuring the Ipega in Drastic. I mapped the L and R keys to joystick moves and then mapped them back to my shoulder buttons, and it seems to recognize the Ipega, but only sometimes. Half the time it still recognizes it as a MOGA so my shoulder buttons are useless.

So it's half-working, but I think an option to remap or disable the MOGA controls would be beneficial.

This is in the demo and paid versions of the app, by the way. When I noticed the changelog for Drastic paid said it fixed "non-standard controllers" I bought it and tried it, but since it didn't work I already refunded it.

ETA2: I can get it to work consistently by unpairing the controller and pairing it again with the Ipega app, but it's a little inconvenient to have to do that each time. I have other games and emulators on my device with native MOGA support and so far Drastic is the only app having this kind of issue.

Credit where it's due, though--you've done an otherwise great job getting a DS emulator to run at near full speed on my mid-end device!
Last edited by softchassis on Wed Feb 03, 2016 3:32 pm, edited 1 time in total.

Lordus
Posts:517
Joined:Mon Aug 05, 2013 9:05 pm

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by Lordus » Sun Jan 31, 2016 6:11 pm

'Native' MOGA support works completely different than standard HID controllers.
As far as I know, the Ipega game center app emulates the MOGA so the Ipega works in games that have MOGA support.
That's not really ideal if it doesn't actually have all the same buttons.
The original MOGA Pro controller has a mode switch, and in mode B it will work like a standard HID controller, so you can then map it in the external controller settings.
I don't know if or how that works with your Ipega controller, though.
If there is no way to switch the mode, or a setting in the game center app, then it might be possible to pair it directly with the device as a standard HID controller without having the game center installed.

TkSilver
Posts:576
Joined:Wed Mar 25, 2015 3:30 am

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by TkSilver » Sun Jan 31, 2016 7:22 pm

As we mentioned, the IPEGA PG-9017 has 4 modes of use: Joystick, Keyboard, iCade and Mouse. You pick one of them when turning on this Bluetooth gamepad. Just hold down A, B, X or Y and then hold HOME button for a few seconds (SEARCH LED will start blinking).

Joystick X
true analogs
D-Pad and left analog are separated (different events)

Keyboard A
D-Pad and left analog are the same (no true analog)
no right analog

iCade Y
D-Pad and left analog are the same (no true analog)
no right analog
no START / SELECT (those two white buttons of a real iCade are not mapped)

Mouse B
L or R used as mouse click
right analog used to move mouse cursor
no left analog
no D-Pad
no ABXY buttons
no START / SELECT

The keyboard (A) option should be the bluetooth hid setting and should probably wprk the best with DraStic. You will probably have to make a custom keymap though like I did with my red samurai v2 controller.

TkSilver
Posts:576
Joined:Wed Mar 25, 2015 3:30 am

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by TkSilver » Sun Jan 31, 2016 7:27 pm

Btw Lordus these are the keyevent/motionevent codes in each mode except the mouse mode and icade mode since both are missing too many buttons.

Keyboard
A 38(J)
B 39(K)
X 41(M)
Y 37(I)
L 45(Q)
R 44(P)
Select 46(R)
Start 53(Y)
D-Pad Up 19(DPAD_UP)
D-Pad Down 20(DPAD_DOWN)
D-Pad Left 21(DPAD_LEFT)
D-Pad Right 22(DPAD_RIGHT)
L-Analog Up 19(DPAD_UP)
L-Analog Down 20(DPAD_DOWN)
L-Analog Left 21(DPAD_LEFT)
L-Analog Right 22(DPAD_RIGHT)

Joystick
A 189(Button 2)
B 190(Button 3)
X 191(Button 4)
Y 190(Button 3)
L 192(Button 5)
R 193(Button 6)
Select 196(Button 9)
Start 197(Button 10)
D-Pad Up AXIS_HAT_Y(-)
D-Pad Down AXIS_HAT_Y(+)
D-Pad Left AXIS_HAT_X(-)
D-Pad Right AXIS_HAT_X(+)
L-Analog Up AXIS_Y(-)
L-Analog Down AXIS_Y(+)
L-Analog Left AXIS_X(-)
L-Analog Right AXIS_X(+)
R-Analog Up AXIS_RZ(-)
R-Analog Down AXIS_RZ(+)
R-Analog Left AXIS_Z(-)
R-Analog Right AXIS_Z(+)

softchassis
Posts:4
Joined:Sun Jan 31, 2016 10:02 am

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by softchassis » Sun Jan 31, 2016 7:45 pm

TkSilver wrote:As we mentioned, the IPEGA PG-9017 has 4 modes of use: Joystick, Keyboard, iCade and Mouse. You pick one of them when turning on this Bluetooth gamepad. Just hold down A, B, X or Y and then hold HOME button for a few seconds (SEARCH LED will start blinking).
I've seen this mentioned everywhere but it never works. If I hold down a button while powering it on, the light just blinks forever and never connects.

TkSilver
Posts:576
Joined:Wed Mar 25, 2015 3:30 am

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by TkSilver » Sun Jan 31, 2016 7:56 pm

Each bluetooth mode counts as a completely separate device you have to pair the new mode just like you initially had to.

softchassis
Posts:4
Joined:Sun Jan 31, 2016 10:02 am

Re: Ipega PG-9017S being incorrectly recognized as MOGA

Post by softchassis » Mon Feb 01, 2016 6:38 am

Okay, I figured this out.

The Ipega app was the problem. When it's installed, it seems to intercept any input in Joystick mode as being from a MOGA controller (which, incidentally, was adding quite a bit of latency). I uninstalled the Ipega app and then paired my controller through my phone's native bluetooth as a joystick and it works just fine in Drastic now. My other apps that recognized the joystick as a MOGA no longer do, but that's fine because they still work. (Another benefit is that it connects instantly now.)

Now I feel like a jerk for buying and refunding the paid version of Drastic so quickly! But I'll absolutely be buying it again soon.

Basically, false alarm! Blame cheap bluetooth controllers and their shoddy documentation.

And of course thanks to everyone for their suggestions! They helped me come to the right answer.

Post Reply