MissionControl Versions Save

Use controllers from other consoles natively on your Nintendo Switch via Bluetooth. No dongles or other external hardware neccessary.

v0.11.0

1 month ago

GitHub Releases Discord Server

Important: This release requires Atmosphere version 1.7.0 or later

This is the twenty-third official release of Mission Control.

This release adds support for firmware 18.0.0, a new controller, and binary patches allowing Android devices running Joycon-Droid to operate on firmware 12.0.0+ without the need for root access. See below for full changelog.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

PS: there is some ongoing testing of preliminary Bluetooth LE and USB support happening in my discord server (see #testing-ble and #testing-usb channels). If you own any of the controllers listed here or any BLE or USB controllers that are not on the list, we'd like to hear from you! (though I don't need any additional input on Xbox and Stadia controllers for now). Please note that these are alpha builds for the purpose of gathering controller information and furthering my understanding of how BLE/USB works on the console. They are NOT intended for general use. There will be bugs and issues. There are no ETAs. I will not be providing any support - if you can't follow the usage instructions, then this is not for you.

Changelog:

  • Added full support for firmware 18.0.0.
  • Added support for SCUF Vantage 2 controller.
  • Added binary patches to enable Joycon-Droid to operate without root access on firmware 12.0.0+.
  • Fixed an issue where analog trigger values were swapped for 8BitDo SN30 Pro Xbox Cloud Gaming Edition controller.

v0.10.0

7 months ago

GitHub Releases Discord Server

This is the twenty-second official release of Mission Control.

This release adds support for firmware 17.0.0, a new controller, and a few bugfixes and improvements. See below for full changelog.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

PS: there is some ongoing testing of preliminary Bluetooth LE support happening in my discord server (see #testing). If you own any of the controllers listed here or any LE controllers that are not on the list, we'd like to hear from you! (though I don't need any additional input on Xbox and Stadia controllers for now). Please note that these are alpha builds for the purpose of gathering controller information and furthering my understanding of how BLE works on the console. They are NOT intended for general use. There will be bugs and issues. There are no ETAs. I will not be providing any support - if you can't follow the usage instructions, then this is not for you.

Changelog:

  • Added full support for firmware 17.0.0.
  • Added support for Atari Modern Wireless Controller.
  • Mapped 8BitDo Zero D-pad as left analog stick to improve game compatibility.
  • Removed unnecessary gyro scaling factor for Sony controllers. Controller rotations should now be more sensitive/accurate.
  • Fixed an issue where capture button state wasn't being reset after Dualshock 4 touchpad button released.

v0.9.4

8 months ago

GitHub Releases Discord Server

This is the twenty-first official release of Mission Control.

This is a hotfix release to address the freezing issue some users reported when pairing controllers on 16.1.0

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

PS: there is some ongoing testing of preliminary Bluetooth LE support happening in my discord server (see #testing). If you own any of the controllers listed here or any LE controllers that are not on the list, we'd like to hear from you! (though I don't need any additional input on Xbox and Stadia controllers for now). Please note that these are alpha builds for the purpose of gathering controller information and furthering my understanding of how BLE works on the console. They are NOT intended for general use. There will be bugs and issues. There are no ETAs. I will not be providing any support - if you can't follow the usage instructions, then this is not for you.

Changelog:

  • Fixed a bug in the exefs patches for 16.1.0 that caused the system to get stuck in an infinite loop and freeze when pairing new controllers not already in the bluetooth pairing database
  • Check vendor/product ID in addition to name when identifying official Switch controllers

v0.9.3

8 months ago

GitHub Releases Discord Server

This is the twentieth official release of Mission Control.

This release adds support for firmware version 16.1.0, along with some new controllers, settings, and bugfixes. See below for the full changelog.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

PS: there is some ongoing testing of preliminary Bluetooth LE support happening in my discord server (see #testing). If you own any of the controllers listed here or any LE controllers that are not on the list, we'd like to hear from you! (though I don't need any additional input on Xbox and Stadia controllers for now). Please note that these are alpha builds for the purpose of gathering controller information and furthering my understanding of how BLE works on the console. They are NOT intended for general use. There will be bugs and issues. There are no ETAs. I will not be providing any support - if you can't follow the usage instructions, then this is not for you.

Changelog:

  • Added support for Steelseries Stratus XL controller
  • Added support for 8BitDo Ultimate 2.4G Wireless Controller
  • Added support for Betop 2585N2 controller
  • Added .ini config option for setting the analog trigger activation threshold
  • Added new "hybrid" mode to .ini settings for Dualshock 3 player indicator LEDs to display the Switch LED pattern, but reversed to align with the numbers printed on the controller
  • Changed behaviour of Dualshock 4/Dualsense touchpad so that the outer edges are mapped to +/- in order to prevent accidental screenshots being taken when pressing those buttons
  • Dualsense mute button is now additionally mapped as capture button
  • Updated list of official controller names to include a new name introduced in HOS 15.0.0. This fixes an issue where some newer PowerA licensed Switch controllers don't register inputs with Mission Control running.
  • Fixed a bug that could cause the console to spam commands when trying to set the player indicator LEDs to flash

v0.9.2

1 year ago

GitHub Releases Discord Server

This is the nineteenth official release of Mission Control.

This release addresses a couple of critical issues introduced in the previous version.

  • An issue caused by setting up a USB interface filter with the same parameters as the one used by the hid module. This caused the hid module to stop receiving USB connection events, breaking support for official and third-party USB wired controllers and dongles. Sorry guys!

  • An issue where Mission Control would crash if the Bluetooth pairing database was full when trying to pair a Dualshock 3 controller.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

Changelog:

  • Modified the usb interface filter used in Dualshock 3 pairing so as not to clash with the default filter used by the hid module
  • Fixed an issue where the system would crash when attempting to pair a Dualshock 3 controller when the Bluetooth pairing database contains the maximum number of paired hid devices.

v0.9.1

1 year ago

GitHub Releases Discord Server

This is the eighteenth official release of Mission Control.

I said it wasn't a priority. I said it was likely going to be too much work and probably wouldn't happen. Well, I guess I was wrong because Mission Control now supports Dualshock 3 controllers!

  • Pairing Dualshock 3 controllers works a little differently to regular Bluetooth controllers as it requires the use of a USB cable.
  • To pair the controller, you must be on the Change Grip/Order screen as usual.
  • Connect the controller to the console via USB cable (you will need a USB-C OTG adapter if in handheld mode).
  • Once the red player LEDs start flashing, remove the USB cable and press the PS button. Wait a few seconds and you should see the usual Paired notification to indicate the controller is now paired with the console.
  • You can reconnect to the console from now on by simply pressing the PS button.

This release also makes some changes to the settings in the missioncontrol.ini configuration file. Please refer to the readme for full details

  • Added dualshock3_led_mode setting to select between Switch and PS3 style player LED patterns.
  • Added dualshock4_polling_rate to modify the polling rate used by Dualshock 4 controllers.
  • enable_dualshock4_lightbar -> dualshock4_lightbar_brightness enable_dualsense_lightbar -> dualsense_lightbar_brightness These two settings were modified from a boolean to enable/disable the LED lightbar to an integer value controlling brightness.
  • Renamed enable_dualsense_player_leds -> dualsense_enable_player_leds to be consistent with the other settings names

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

Changelog:

  • Added support for Sony Dualshock 3 controller.
  • Added support for Mocute 053 controller.
  • Added .ini config option to select preferred Dualshock 3 player LED pattern.
  • Added .ini config option to control the polling rate used by Dualshock 4 controllers.
  • Replaced .ini config option for enabling/disabling the LED lightbar on Sony controllers with a brightness control setting.
  • Renamed some of the other .ini config options.
  • Wiimote dpad is now mapped to the left analog stick when in horizontal orientation to improve compatibility with games that don't allow dpad inputs for movement.

v0.9.0

1 year ago

GitHub Releases Discord Server

This is the seventeenth official release of Mission Control.

This release adds support for firmware version 16.0.0, some new controllers, and fixes a few issues that popped up in recent releases. See below for the full changelog.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

Changelog:

  • Updated libraries for 16.0.0 support.
  • Added bluetooth exefs patches for 16.0.0.
  • Added support for Sony Dualsense Edge controller.
  • Added support for Razer Raiju Ultimate controller.
  • Added support for Mad Catz L.Y.N.X 3 controller.
  • Added support for AtGames Legends Pinball Arcade Control Panel extension. (Thanks @SK360)
  • Added exefs patches for btm module to skip calls to CloseHidConnection when a controller doesn't respond properly to the SetTsi vendor command. This eliminates the need to manually flag certain controllers with the settsi_disable.flag file to stop them from being disconnected.
  • Disabled incorrect handling of incoming NFC requests that caused games like Splatoon and Smash Bros to freeze or experience audio glitches when the game attempts to access amiibo data.
  • Fixed regression in input handing for Wii Classic Controller/Classic Controller Pro extensions causing certain buttons not to be mapped.
  • Fixed cross-platform building from source. (Thanks @cadewey)

v0.8.0

1 year ago

GitHub Releases

This is the sixteenth official release of Mission Control.

Sorry for the delay! I had to change my code injection strategy due to this version of the bluetooth module not having enough free contiguous padding space to store my code. Many thanks to those who helped test the new patches :)

This release adds full support the recently released 15.0.x firmwares, including patches for pairing Wii/WiiU and Xbox Elite 2 controllers.

Behaviour for controllers identifying as Dualshock 4 was also changed so that controllers aren't disconnected if the motion controls calibration can't be retrieved. Instead motion controls will simply be disabled. This fixes an issue where the Razer Raiju TE controller would no longer connect, due to its lack of motion support.

Additionally, I now have a discord server! Come say hi https://discord.gg/gegfNZ5Ucz (thanks to @Banz99 for helping to set everything up)

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

Changelog:

  • Updated libraries for 15.0.x support.
  • Added bluetooth IPS patches for 15.0.x.
  • Dualshock 4 controllers are no longer disconnected if motion calibration retrieval fails.

v0.7.1

1 year ago

GitHub Releases

This is the fifteenth official release of Mission Control.

This is mostly a bugfix release to push out all of the fixes and improvements that I've been sitting on over the past 6 months. Several improvements and some new configuration options were added for Sony controllers, and experimental Wii Balance Board support mapping center of mass values to left analog stick was added. See below for the full changelog.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

New configuration options

The following additional/modified settings are now available under this [misc] section of the config .ini file.

  • enable_dualshock4_lightbar Enable/disable the coloured LED lightbar on Sony Dualshock4 controllers.
  • enable_dualsense_lightbar Enable/disable the coloured LED lightbar on Sony Dualsense controllers.
  • enable_dualsense_player_leds Enable/disable the white player indicator LEDs below the Dualsense touchpad.
  • dualsense_vibration_intensity Set Dualsense vibration intensity, 12.5% per increment. Valid range [1-8] where 1=12.5%, 8=100%.

Please note that the disable_sony_leds setting no longer exists, and has been replaced by enable_dualshock4_lightbar and enable_dualsense_lightbar (with inverted logic). If you have been using this setting to date, you will need to update your missioncontrol.ini file accordingly.

See here for full instructions on configuring the sysmodule via the .ini file

Changelog:

  • Added experimental support for Wii Balance Board.
  • Added support for 8bitdo SN30 Pro Xbox Cloud Gaming controller running firmware 2.XX.
  • Added mc IPC service for future sysmodule interaction.
  • Added config option to disable Dualsense player LEDs.
  • Added config option to set Dualsense vibration intensity.
  • Split config option for disabling LED lightbar on sony controllers into separate settings for Dualshock4 and Dualsense.
  • Inverted logic for controller config options to match other boolean settings.
  • Fixed Dualsense player LEDs for controllers updated to newer firmware versions.
  • Disabled fade-in effect for Dualsense player LEDs.
  • Lowered default vibration intensity for Dualsense controllers to 50%. This should address user complaints of the vibration being too strong and getting picked up by the motion sensors in certain games.
  • Fixed a regression in Wii extension controller detection that caused WiiU Pro controllers to be incorrectly identified.
  • Wii MotionPlus extension is no longer initialised if motion controls have been disabled in module settings.
  • Wiimote buttons 1/2 now act as L3/R3 when a Classic Controller/ Classic Controller Pro extension is connected.
  • Tweaked battery level mapping for Sony controllers. Should hopefully reduce instances of controllers with low battery being immediately disconnected without warning.
  • Added mutex locks around some sensitive buffer accesses. May improve reliability when pairing controllers.
  • Updated npdm json to eliminate warnings when building from source.

v0.7.0

2 years ago

GitHub Releases

This is the fourteenth official release of Mission Control.

This adds full support for HOS 14.1.0, motion controls for Dualshock4, Dualsense and Wii MotionPlus* controllers, and support for the g910 Wireless Bluetooth controller. See below for the full changelog.

*Note: regular Wiimote controllers without the MotionPlus extension may work in some games, but only come equiped with an accelerometer and lack the gyroscope sensor required for full "sixaxis" motion controls.

A big thanks to @Banz99 for testing and giving feedback on the Wii MotionPlus controller, and to @Hydr8gon for porting and verifying Dualshock4 motion support to Dualsense controllers.

New users landing on this release page should first check out the readme on the main project page for the official project documentation. There you can find installation and usage instructions along with an FAQ section that will answer most of your questions.

Atmosphère >= 1.3.1 is required to run this release on firmware 14.1.0.

Notice for users of Xbox One controllers

If you have updated to the new bluetooth LE controller firmware and lost support for your controller, it is now possible to downgrade back to a compatible firmware using an Xbox One console. See here for details.

@HaruVM has pointed out to me that it's now also possible to downgrade the controller firmware using a PC running the Xbox Accessories app.

Open xbox accessories app then hit windows + R (run) and input this command:

xboxaccessories:\\firmwareupdate?legacyDowngrade=true

It should then give you option to revert

Changelog:

  • Added bluetooth ips patches for 14.0.0.
  • Added support for g910 wireless bluetooth controller.
  • Support for motion controls was added for Dualshock4, Dualsense, and Wii MotionPlus controllers.
  • Wii controller handling was refactored for accuracy and completeness.
  • Added mechanisms for executing code in a worker thread and receiving asynchronous responses from controllers.
  • Minor bugfixes and improvements