[APP] EMPIO - The Enhanced Multi-Peripheral Input/Output System

pspkicks316

Member
Nov 16, 2008
32
6
0
Original release thread here over at reddit.

Hey guys. This is a project I've been working on for a while.
EMPIO is an application that allows you to fully remap your controller. At the moment, it supports Ouya and wired/wireless PS3 controllers (tested with sixaxis).
The biggest feature of this app is that it allows you to map your controller to TOUCH SCREEN presses - even though there's no touch screen on the console!

Upon launch, you're greeted with a setup activity that gives you some information about the app. The main screen is a 2x3 grid of the applications you have installed. Pressing U brings up the options menu. Pressing Y brings up a basic file browser to install an apk.

Upon selecting an app to run, it checks your license to determine features and also checks if your console is rooted. If it's not rooted, it asks you to return after rooting it. Then it runs the background service.
I might be able to have it root itself in the future but I'd rather not.

The service gets exclusive control over your controller and loads the map file on the internal storage. Once the map is loaded, it interprets whatever your controller is doing and maps it to whatever you specified.


* Current supported controllers:

1. Ouya
2. PS3 Sixaxis wired/wireless


* Future planned controller support:

1. 360
2. wiimote
3. custom

* Features:

1. Map controller to various things
2. Add cycles - a grid of points you can cycle through
3. Multiple sets - set of mappings, includes cycles and button maps
4. Assign a map to be called when pressing a cycle point
5. Assign a map to be called when selecting/cycling to a point
6. Map analog stick to on screen analog - choose center position, radius, and deadzone. Analog stick moves around the center position, up to the radius and stops when the deadzone is reached
7. Set a variable and then retrieve it later

* Current map types:

1. Button/key
2. Touch
3. Callback

* Future planned map types:

1. drag
2. gesture
3. Macro (touch & button)

The free version will allow only key/touch mappings. ie: map buttons to other buttons or touch screen presses.
The paid version will have an on screen map creation tool, will root the console, and allow all other map types as well as any functions (cycle, cycle callbacks, etc)

Full documentation will be available at reddit/r/empio as I have time to add it.


This app is **BETA** as it is not anywhere near "completion".
**note** this requires you to create the mapping file on your computer first. The on screen mapping tool is not setup yet, however it will be one of the next features.

The paid version of the app is $4.99. I'm a student and it's a ton of work doing this on my own, so even if you don't need the pro version I appreciate donations.

If you have any questions, feel free to post them.


EMPIO Subreddit with information: http://reddit.com/r/empio

APK File: - Temporarily removed due to license bug - IF YOU'RE USING IT, DON'T PAY FOR IT. If you do, I'll refund you - the license does not save correctly.

**PLEASE POST ANY BUGS THAT YOU EXPERIENCE**

Thanks for checking it out! I'll have pictures and a video up soon.
 
Last edited:

pspkicks316

Member
Nov 16, 2008
32
6
0
thanks buddy! i cant wait to get home to try this!
Let me know what you think! If you have any problems let me know and I'll help you set it up. Documentation is a little lacking since I've been busy with school, but I'll help anyone out with making map files until I have more time to write stuff up
 

cronikman84

Senior Member
Dec 8, 2012
241
38
0
Holyoke
Let me know what you think! If you have any problems let me know and I'll help you set it up. Documentation is a little lacking since I've been busy with school, but I'll help anyone out with making map files until I have more time to write stuff up
Thanks for this app dude:D...this is awesome, i currently installed the app on my OUYA then when i start the game app it says "Creating controller mapper" then "Staring controller mapper" after that it says SUPERUSER GRANTED TO EMPIO. when the game starts in the bottom left corner it says CURRENT SET: OUYA but it wont do anything...I was wondering if you can please help me map some buttons or give me some instructions on how to use this tool?:D
 

Asadullah

Senior Member
Aug 24, 2010
1,029
350
0
casselberry
Some apps have this annoying feature that checks for updates automatically and then won't let you use them even though you paid for them until you update. Is this app like that or will it ever be?
 

cronikman84

Senior Member
Dec 8, 2012
241
38
0
Holyoke
This app don't have many features as it is which is a bummer, but it's a good start :good:. I feel like i have to buy the paid version of this app to see what it can offer but not being able to get the free version working :confused: or mapped and haven't seen it working yet and the instruction are not very clear is what keeps me from buying the full paid version...
 

pspkicks316

Member
Nov 16, 2008
32
6
0
Can it allow to use PS3 controllers on games that only use the OUYA controller?
Yes, it will by default map the PS3 controller buttons to the standard Ouya ones, allowing it to be used in ANY app or game. However, depending on how the app/game detects the buttons, some tweaking will be needed to get it fully working.
 

pspkicks316

Member
Nov 16, 2008
32
6
0
Some apps have this annoying feature that checks for updates automatically and then won't let you use them even though you paid for them until you update. Is this app like that or will it ever be?
As of right now, since it's not on any market, it can't do this. With that said, I find this annoying too and won't be adding that.
 
  • Like
Reactions: Asadullah

pspkicks316

Member
Nov 16, 2008
32
6
0
This app don't have many features as it is which is a bummer, but it's a good start :good:. I feel like i have to buy the paid version of this app to see what it can offer but not being able to get the free version working :confused: or mapped and haven't seen it working yet and the instruction are not very clear is what keeps me from buying the full paid version...
Actually, there's a ton of features. The mapping system is very extensive as it is. The free version will let you play any basic touch app, but if you need anything more advanced then the pro version is needed. Free is just touch/key mappings.

From what you said, the app is working fine. Once you start it, everything should work the same; all buttons work normally. That's because it's using the default Ouya map. You have to create a map for each specific game. I'm currently working on an on-screen mapping utility, but for now you have to do it manually.

To do this, plug your Ouya into your computer and find your app/game's mapping file in /sdcard/Ouya Mappings/package.name.ini
That .ini file is the map for the game. Each game/app has it's own, based on the package name.
If this file isn't there, enable map file auto-create in the settings.

At first, the file will be blank. You can follow the information HERE to start working on your map.
To get your x/y coordinates, you can take screenshots and then use mspaint to get the coordinates of where you want to touch the screen (if you're doing touch mappings). In mspaint, the bottom left corner has the x,y coordinates of the mouse on the picture. Just put those values into your map file when needed.

Let me know what game you're trying to play and I can help you out a bit more.
 

cronikman84

Senior Member
Dec 8, 2012
241
38
0
Holyoke
Actually, there's a ton of features. The mapping system is very extensive as it is. The free version will let you play any basic touch app, but if you need anything more advanced then the pro version is needed. Free is just touch/key mappings.

From what you said, the app is working fine. Once you start it, everything should work the same; all buttons work normally. That's because it's using the default Ouya map. You have to create a map for each specific game. I'm currently working on an on-screen mapping utility, but for now you have to do it manually.

To do this, plug your Ouya into your computer and find your app/game's mapping file in /sdcard/Ouya Mappings/package.name.ini
That .ini file is the map for the game. Each game/app has it's own, based on the package name.
If this file isn't there, enable map file auto-create in the settings.

At first, the file will be blank. You can follow the information HERE to start working on your map.
To get your x/y coordinates, you can take screenshots and then use mspaint to get the coordinates of where you want to touch the screen (if you're doing touch mappings). In mspaint, the bottom left corner has the x,y coordinates of the mouse on the picture. Just put those values into your map file when needed.

Let me know what game you're trying to play and I can help you out a bit more.
i'm trying to play Gangstar Vegas from gameloft, i also want to buy the full version of the app and give it a try, where can i get it from?
 
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone