[APP][2.3.3+] MOGA Universal Driver

Search This thread

jbl0ggs

Senior Member
Dec 5, 2011
107
12
Hi,

I hope someone can help me. I just found my PowerA Moga Pro controller and I wanted to connect it to my Android/Google TV (Built into Sony 850G TV) to play emulated games. After some searching and reading led me to this thread. I believe I need to install the Moga Universal (IME) driver, but the Moga Universal driver or the Moga Pivot app are no longer in the Google Play store.

I would appreciate it if anyone can help find the driver app that I could sideload on my Android TV.

Thank you!
 

EngineerMind

Senior Member
May 5, 2007
783
229
My recommendation would be to not waste your time with the Moga because is not a "full" bluetooth controller and will just cause you headaches.

I would just buy a $30 true bluetooth controller from amazon which will be more compatible for you.
 

jbl0ggs

Senior Member
Dec 5, 2011
107
12
I understand, but the controller feels so good in the hand and seems to be well made and if I can get it working then that would be nice. Someone mentioned that there are other apps that can be used to connect the Moga controller but didn't mention the name(s) of the apps :(
 

jbl0ggs

Senior Member
Dec 5, 2011
107
12
Ok, After trying several times, I was able to connect the Moga Pro controller to Android TV via Bluetooth and having the switch set to "B". Not sure why it took several times of trying.

Tested it with Mame4Droid and works great after mapping the main buttons.
 
Hi @twistedumbrella,

Can you please elaborate on the 'other' apps that can be used to connect the Moga Pro controller to Android TV?

Thanks!
I'm not entirely sure which app I had in mind five years ago. It seems like you already figured out the very next thing I was going to tell you, though.

In the last five years, Android has drastically improved native support for controllers and Mode B works out of the box. The only thing you would lose compared to using an app is any sort of global button configuration, but the Moga app was junk back when it was relevant.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 70
    promo.png


    Use your PowerA MOGA with any application!

    Provides full functionality for the PowerA MOGA™ Pocket and Pro controllers.

    This application includes both a Virtual Keyboard that should work on all devices and a Gamepad Mode that provides full gamepad functionality for rooted devices.

    NOTE: Only supports one controller at a time!

    Features:
    * Virtual Keyboard
    * Virtual Gamepad
    * Customizable profiles so you can make it work just right with your game or emulator
    * Exportable profiles
    * MOGA device management
    * Button to stop Pivot services (Root users only, non-root get taken to the Settings application to do it manually, sorry!)
    * Two Home-screen widgets:
    ** Small toggle widget
    ** Long toggle widget with profile switcher

    Virtual Keyboard Features:
    * Does not require root
    * Usable by any application that listens for keyboard input
    * Customizable!

    Virtual Gamepad Features:
    * Acts like a full Gamepad
    * Toggle the analog joysticks between digital and analog output depending on your needs
    * Customizable!

    Usage:

    1. Select your device:

    I'm going to assume you haven't already paired your controller with your phone. Skip to the end of the section if you've already got it paired.

    Make sure Bluetooth is enabled before continuing!

    Select the "Manage Controllers" button found at the top of the Settings application. You will see an empty list of paired controllers.

    Power on your Pocket or, if you have a Pro, turn it on into Mode A. Select "Add Controller" at the bottom of the screen. Your phone will start scanning for controllers and will add only MOGA devices to the list as it finds them. Once the scan completes select the controller you wish to pair with and click the "Select" button. It will begin the pairing process with your controller and you will most likely see a dialog pop up that asks you to confirm a PIN. Accept the PIN and the "Add Controller" screen will close, dropping you back to the "Manage Devices" screen. Click back once more unless you wish to repeat this step to add another controller.

    2. Running in Virtual Keyboard mode:

    This is the default mode for the driver but does require a few steps to configure.

    Scrolling down to the "Driver Mode" section on the main screen you'll see that the current mode for the driver is "Virtual Keyboard" (unless you've already changed it to Gamepad, in which case switch back to Virtual Keyboard to follow these instructions). Click on the "Configure Virtual Keyboards" button to be taken directly to the appropriate Settings screen to turn on the "MOGA Virtual Keyboard" this cannot be done automatically for security reasons which are explained when you turn on the MOGA Virtual Keyboard. After you've enabled it go back to the driver's Settings screen and click "Select Virtual Keyboard". This will pop up the system dialog to let you choose which keyboard you want to be the active one. This also cannot be done automatically, sorry!

    Finally toggle the button next to "Enable Driver" to turn on the driver. You'll see a MOGA icon appear in your notifications bar indicating the status of the driver: white for disconnected, green for connected.

    If you'd like to configure a profile scroll down to the "Configuring a Profile" section below!

    3. Running in Virtual Gamepad mode:

    Before you continue: you must have a rooted device with SuperUser installed in order to use the Virtual Gamepad mode. The button to enable the Virtual Gamepad is disabled if your device does not support SuperUser.

    Virtual Gamepad mode is significantly easier to configure. First, click on the "Switch" button next to the current mode which will pop up a dialog box explaining the two available modes. Feel free to read these before continuing. Select Gamepad from the list and you've successfully configured Gamepad mode!

    All you have to do next is enable the driver by toggling the "Enable Driver" button just as you would in the Virtual Keyboard mode.

    4. Configuring a Profile:

    The profile system was entirely rewritten in 3.0 to make the process easier and to provide the ability to share profiles with friends. If you scroll down to the bottom of the settings page you'll see the "Profiles" section with a couple of buttons. Clicking "Switch" will popup a dialog containing all of the valid profiles for the current controller type and driver mode (for example, you cannot use a MOGA Pocket profile that was configured for Virtual Keyboard mode on a MOGA Pro in Gamepad mode, with any variation therein).

    Selecting "Manage Profiles" will bring you to a list similar to the "Manage Controllers" screen. Here you can create new profiles, rename them, delete them, or reload them from the SD card if you've added new ones onto your SD card while the program was running.

    Click "Create Profile" to begin. You will first be prompted with a dialog that asks for the name of the profile. Enter what you'd like and click OK. You will then be presented with the default configuration for that profile. You can modify any of the mappings by clicking on the "Change" buttons associated with each input. When you click "Change" a dialog box will appear with a sorted list of output types. Select a type and then select the button you wish to map to that input. Changes are saved when you leave the edit page.

    If you are running in Virtual Gamepad mode you will have a few more options available to you. You can decide whether or not the Analog inputs (including the DPad) should send Analog outputs or standard Button outputs. The list will automatically update when you toggle the analog mode so scroll down afterwards to configure the outputs. Gamepad mode will not present you with a list of categories as the options are much more limited. Since it is pretending to be a controller it can only send controller messages to the system. For any analog input you will only be allowed to map analog outputs and for buttons, only button outputs.

    After creating a profile click the "Switch" button to select your profile and activate it!

    Profiles are automatically saved to "/sdcard/MOGA/IME" for Virtual Keyboard mode and "/sdcard/MOGA/System" for Virtual Gamepad mode.

    Troubleshooting:

    Lots of users have reported that the driver does not properly connect on certain devices (I'm noticing most are Samsung TouchWiz-enabled devices). I am still actively investigating this and will hopefully be able to resolve it sooner rather than later!

    * Make sure that the Pivot is NOT running when you run my driver! It will connect to the controller and prevent my driver from connecting. There is a button at the bottom of the settings screen that will help you ensure Pivot isn't running.
    * If you turn on your MOGA Pocket and the light immediately turns green then turn it off and back on until the blue light blinks consistently. I've noticed on my own that this happens almost every time I turn it on after a long period of not using the controller.
    * Some users have reported that disabling WiFi has allowed them to connect their controllers.
    * There is a bit of voodoo that one user found that helped them connect to their controller on a Samsung device:
    I was having the same problem on my Note 2 also. The only way I've been able to connect to this MOGA Universal Driver app is by connecting first to the MOGA Pivot app then starting the Universal Driver and then turning my phones screen off for about a second then turning it back on. For whatever reason after turning my screen back on it instantly connects to the Universal Driver app.

    Download:

    Google Play

    This product is not affiliated with, nor authorized, endorsed or licensed in any way by Bensussen Deutsch and Associates, Inc., its affiliates or subsidiaries. All trademarks are property of their respective holders.

    Buy me a soda!
    11
    Progress Update:

    Gamepad mode has now been implemented! Just as I had hoped, implementing it was pretty straight-forward and it's working very nicely with profiles. You can enable or disable analog output on-the-fly and the driver will automatically apply the changes without needing to restart.

    I've still got UI changes I need to make before it's all done but I just finished playing some Zelda: A Link To the Past in both Virtual Keyboard and Gamepad mode (on both a Pro and Pocket) and it's all working very nicely!
    10
    Just thought I'd throw you guys a bone:

    gitlog.png


    I'm rapidly completing the driver now that I've actually had the time. The IME mode is now connected to the Bluetooth service and is receiving data (albeit incorrect at the moment). Once I get that debugged I'm going to run some tests but I'm pretty confident the IME will no longer have lag issues like it used to thanks to the new architecture. Adding in the Pro support was pretty simple since the data protocol is identical sans a few changes to which bits translate to which buttons. Luckily my new profile system is flexible enough that I was able to quickly add the new Pro buttons and axes to the list of configurable inputs.

    I'm not going to add any new outputs besides Virtual Keyboard and Gamepad in 3.0 but with this new architecture I should be able to add new outputs such as Touch fairly easily in subsequent updates.
    10
    So... what ever happened to the developer of this app? Did he fall off a cliff and die? He had all these amazing features planned for this driver and then just kind of left it to stagnate. Quite a shame, as it is a very handy little app :(

    I'm afraid holidays and life got in the way of continued development for the time being. I've got a full-time job and just finished the Thankgiving/Christmas/New Years holiday shuffle. I'm still planning on adding more features like the ones discussed in this thread but please be patient with my IRL responsibilities :)
    9
    Changelog:

    3.1:
    Brought back the widgets!
    New, long widget: change profiles from your desktop
    Fixed a few more crashes reported by users. Keep 'em coming -- but hopefully not!

    3.0.3:
    Rewrote connection code. Works on my devices that previously didn't. Please try!
    Fixed "Enable Bluetooth" bug where it was out-of-sync with Bluetooth Adapter state
    Added dialog when enabling driver to warn you if Pivot is detected to be running
    Fixed Pivot detection and stopping code to include all Pivot packages
    Moved SuperUser check from Application to Settings Activity to prevent it from popping up all the time

    3.0.2:
    Added Spacebar and the Numpad numbers to the Virtual Keyboard mappable keys
    Fixed some crashes users had reported
    Removed old WAKE_LOCK permission
    Fixed "Stop Pivot Services" button

    3.0.1:
    Fixed crash on older devices due to a typo when discovery started
    Fixed Left stick's Right being mapped to DpadUp by default (Pocket)
    Fixed Left/Right shoulder buttons being flipped (Pro/Pocket)

    3.0:
    Completely rewritten!
    Supports MOGA Pro
    Profiles are saved as XML files on the SD card for easy sharing

    2.2:
    Fixed crash (So sorry for the broken update!)

    2.1:
    Added System Service toggle widget
    Split Analog/DPad toggle into two options to have one DPad one Analog

    2.0:
    Completely rewritten to improve lag time.
    System-mode added.
    Analog support now available in System-mode.
    Analog can be toggled to allow DPAD use.
    Notification icons change according to connection status.

    1.1:
    KeyEvents are now broadcast as JOYSTICK and GAMEPAD sources.

    1.0:
    First release!