NControl

From AwkwardTV
Revision as of 14:59, 17 March 2019 by Nito (talk | contribs) (Troubleshooting)
Jump to: navigation, search

nControl - For AppleTV 4G Take 4 and Any iOS device from iOS 7-12
Current Version: 1.0-1

Release date: Mar 15th, 2019
Current as of: Mar 15th, 2019

Use Sony Dual Shock 4 / Slim, XBox One, Evo VR Pro / Mini controllers and Nintendo Switch Joy-Con controllers in any application that supports MFI controllers. Including emulators like Provenance.

This project is Copyright © 2018-2019 nito llc. All Rights Reserved.

Written By: Kevin Bradley & Luca Todesco

Change Log

1.0-1 2019 03 15

  • Initial release for tvOS and iOS

Install Instructions

tvOS

Currently it is only possible to buy the tweak from my Patreon account. I plan to have a standalone paypal option in a day or so. In the (hopefully) near future the nitoTV store will launch and purchase will be possible directly on device, at that point the patreon and paypal options will be shuttered in favor of the app store installation.

iOS

It is available through Cydia (and presumably Sileo) on chariz repo

Pairing

1. Open the nControl application.
2. Put your device in pairing mode (each controller has a different method for this)
3. The device should appear in the list momentarily (if it does not the action sheet has options to restart services, its advisable to try those if needed)
4. Select the device from the list after it appears.
5. On tvOS an action sheet will appear choose "Connect Device"
6. on iOS it will take you to another screen with additional details, click the action button in the top right
7. Choose "Connect Device"

Additional Notes

Make sure to unpair your controllers from other devices first, some controllers can be incredibly tempermental and take several tries to get working, the PS4 controller can be known to be somewhat painful to get pairing sometimes.

Using on macOS

You need to jailbreak your mac before using this daemon, instructions can be found here

macOS version is a free bonus for anyone who purchases the iOS or tvOS version. After downloading the file you can run it from any directory (i should package this into an installer that has sa LaunchDaemon, we'll see how popular the mac version becomes if it necessitates that.)

After that any games you have that support MFI controller should now support all the ones nControl does as well. I dont have any MFI games so I haven't thoroughly tested how well it works. But I do know, once jailbroken on Sierra that it does indeed work. Haven't tested in later OSes but no reason it shouldn't.


Supported Controllers

This software works through bluetooth, if you want a controller to be added to the list that is the bare minimum requirement.

  • PS4 / PS4 Slim
  • Xbox One (the newer model with Bluetooth)
  • EVO VR Pro
  • Nintendo Joycon (only the individual controllers, not the composite grip version)
  • EVO VR Controller

Known Supported Games

MFI Games

Special Notes

When pairing with the EVO VR Pro controller, make sure to pair it in 'android' mode by Pressing and hold the EVO VR and X Buttons until the light starts to blink rapidly to enter pairing mode.

Planned Features

  • Switch Pro controller support (in progress, 90% done)
  • L3/R3
  • Generic Controller Support with UI mapping interface
  • Trial version

Known Bugs

  • XBox one controller experiences sticky joystick issues from time to time, still a WIP to try and get this sorted out

Controllers attempted to Support

The following controllers I put an exhaustive amount of time into trying to support without any good results. Therefore they are not likely to get support in the future.

  • PS3 / SixAxis
  • Wiimote

FAQ

1. Does it support L3 / R3 buttons?

No and in its current form it can't, there is a certain template (so to speak) that constrains us to buttons that don't include the L3 / R3 set. It's something we will certainly explore, but its not on the immediate horizon.

2. Whats with the binary trigger sensitivity?

Same answer as above, which is a reason a new foundation may be needed to address the aforementioned constraints.

3. Does it support iopega controllers?

Not yet, but that has be asked frequently enough that I will order whatever is the most popular version and add support for it in a release in the near future.

4. Does it support fortnite?

No because they have pretty strict jailbreak detection, and to my knowledge nothing exists to circumvent that.

5. Does it support pubg?

Minimally, I think you can move a little bit, but nothing useful is possible. Its possible we could release a tweak to fix this.

6. PS3 / Wiimote support?

I've poured a TON of work into trying to get both of those to work, but to no avail. Controllers for All required BTStack so the custom pairing routines required for both of these controllers wasn't as challenging as implementing everything natively without any code injection or custom blue tooth stacks running. I doubt either of these controllers will see support, I'm open to trying still, but remain skeptical about it happening.

7. Mouse & Keyboard support?

Not currently supported but a really frequent request, so it's definitely on the list of possibilities in future updates.

Additional links

If you want a recentish version of provenance on iOS add my repo to cydia or sileo

https://nitosoft.com/beta2/

Troubleshooting

Helping us add controller support:

1. SSH in to your AppleTV (or browse your file systems to find the error log file "/Library/Logs/controllersupport-Error.log")
2. Attempt to pair your unsupported device
3. Check the log file for an entry similar to:

found device: EVO VG010 with vid: 6473 pid: 1026, reportDescriptor: <05010906 a1018501 75019508 050719e0 29e71500 25018102 95017508 81039505 75010508  19012905 91029501 75039103 95147508 150026ff 00050719 0029ff81 00c0050c 0901a101 85037508 95018101 15002680 0319002a 80037510 95048100 c0050109 02a10185  060901a1 00050919 01290315 00250175 01950381 02750595 01810105 01093009 31158125 7f750895 02810609 38158125 7f750895 018106c0 c0050109 05a10185 070901a1  00093009 31093209 35150026 ff007508 95048102 c0093915 00250735 00463b01 65147504 95018142 75049501 81010509 1901290f 15002501 75019510 81020502 150026ff  0009c409 c5950275 08810275 08950181 01c0>

4. Send us this information in our discord channel

Debug logs are available at /Library/Logs/controllersupport-Error.log
A support channel exists on the jailbreak discord server in the #ncontrol room.