post #1 of 1
Thread Starter 
First of all, I just found this and I would like to make it more widely known. All credits go to the original developers on GitHub.

Moga Serial to Windows Interface

The Moga line of Android controllers are neat pieces of kit, with one glaring issue. They don't work right in Windows! They could easily be a great all-in-one wireless controller, but no native driver meant being forced to use generic HID mode, and unfortunately this comes with a whole host of problems.

Connection issues aside, the Moga identifies the triggers via the HID codes AXIS_GAS and AXIS_BRAKE. Windows DirectInput doesn't recognize these, and thusly ignores them, despite the controller actually reporting trigger values. Fortunately there are alternatives!

MogaSerial is a solution that connects to the Moga gamepad directly via its mode A serial interface. It can then feed controller data into either the vJoy driver for full DirectInput support, or into the SCP driver for native XInput support. With this, the Moga can finally serve as a fully-functional wireless controller across mobile platforms, laptops, and desktops alike.



Usage

Make sure Bluetooth is enabled, and ensure the Moga is switched to MODE A.

Then just select your controller from the Bluetooth drop-down and click the Moga button in the lower-right. After a couple seconds, it will connect and begin feeding data to the selected driver. If your Moga is not in the list, click the orange refresh button to re-scan for local Bluetooth devices, and after a few seconds it ought to appear.

The Xbox Guide button is emulated in XInput mode with SCP. Press Start + Select together to trigger it.

Trigger mode is for vJoy only. This determines how Windows will see L2 and R2, either as the Z and Rz axis, as a combined Z axis, or as buttons 11 and 12. When using the SCP driver with DirectInput games, only combined trigger mode is available.

If the Moga disconnects due to sleeping, being shut off, or a Bluetooth error, the program will reset the connection, wait a few seconds, and try to reconnect. Click the Moga button again to stop the controller interface.

Notes

Some basic troubleshooting information is on the GitHub project wiki.

The Moga responds to polling at approximately 100 updates per second.

Curiously, there seems to be no way to get battery status through the serial interface. It's reported as a byte code when in HID mode B, but not here.

I only own a Moga Power Pro for testing, but MogaSerial ought to work with all Moga-brand controllers. From what I can tell, the serial communication protocol hasn't changed between models.

Changes

1.5.0
Added support for the SCP driver to get native XInput functionality.
1.4.0
GUI window now minimizes to the system tray.
1.3.2
Tweaks to try and address the reported input lag problem.
1.3.0
Program settings are now stored in the system registry under HKCU\Software\MogaSerial.
Added 'Combined Axes' option for the trigger mode. This mimics how the XBox360 controller behaves under DirectInput.
1.2.0
Debug switch added to display raw controller output.
First public release of the MFC GUI version of MogaSerial.

Thanks
Thanks to badfontkeming@gmail.com for first making a similar tool that works with vJoy and the Moga in HID mode B, and inspiring me to finish this project here. Thanks as well to the ZeeMouse author for showing that a serial mode A connection ought to be straightforward.

Moga controllers are (c) PowerA and MogaAnywhere.com
This application is (c) Jake Montgomery - jmont@sonic.net

Again, I take NO credits for the work done by the developers on GitHub. I just want to spread the word about this very useful program.

Original Thread on NGEMU

GitHub Link

Download link provided in GitHub.
BlackSugar
(13 items)
 
  
CPUMotherboardGraphicsRAM
Intel 4690K ASRock Z97E-ITX/ac Palit Jetstream GTX 970 Kingston HyperX Black Fury 
Hard DriveHard DriveCoolingOS
Crucial M500 Samsung 850 EVO Noctua L9i Windows 10 Pro 
MonitorKeyboardPowerCase
QNIX QX2710 Logitech G710+ SeaSonic M12II 620 Silverstone SG13 
Mouse
Logitech MX Master 
  hide details  
Reply
BlackSugar
(13 items)
 
  
CPUMotherboardGraphicsRAM
Intel 4690K ASRock Z97E-ITX/ac Palit Jetstream GTX 970 Kingston HyperX Black Fury 
Hard DriveHard DriveCoolingOS
Crucial M500 Samsung 850 EVO Noctua L9i Windows 10 Pro 
MonitorKeyboardPowerCase
QNIX QX2710 Logitech G710+ SeaSonic M12II 620 Silverstone SG13 
Mouse
Logitech MX Master 
  hide details  
Reply