SkillAgentSearch skills...

MissionControl

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

Install / Use

/learn @ndeadly/MissionControl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="left"> <a href="https://github.com/ndeadly/MissionControl/blob/master/LICENSE"><img alt="GitHub" src="https://img.shields.io/github/license/ndeadly/MissionControl"></a> <a href="https://github.com/ndeadly/MissionControl/releases/latest"><img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/ndeadly/MissionControl"></a> <a href="https://github.com/ndeadly/MissionControl/releases"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/ndeadly/MissionControl/total"></a> <a href="https://github.com/ndeadly/MissionControl/releases/latest"><img alt="GitHub Releases" src="https://img.shields.io/github/downloads/ndeadly/MissionControl/latest/total"></a> <a href="https://discord.gg/gegfNZ5Ucz"><img alt="Discord Server" src="https://discordapp.com/api/guilds/905069757361971303/widget.png?style=shield"/></a> <a href="https://ko-fi.com/J3J01BZZ6"><img alt="Support me on Ko-fi" src="https://img.shields.io/badge/Support%20me%20on%20Ko--fi-72A5F2?logo=ko-fi&logoColor=FF6433"/></a> <br> <a href="https://www.bitcoinqrcodemaker.com/api/?style=bitcoin&prefix=on&address=bc1q4rh4vmqaujmewrswes303nms5mj3p80j7lqat0"><img alt="Donate Bitcoin" src="https://img.shields.io/static/v1?label=donate&message=bc1q4rh4vmqaujmewrswes303nms5mj3p80j7lqat0&color=yellow&style=flat&logo=bitcoin"></a> <a href="https://www.bitcoinqrcodemaker.com/api/?style=ethereum&prefix=on&address=0xFD28C8680416D5c706Ad8E404955e0a3A2aA7124"><img alt="Donate Ethereum" src="https://img.shields.io/static/v1?label=donate&message=0xFD28C8680416D5c706Ad8E404955e0a3A2aA7124&color=yellow&style=flat&logo=ethereum"></a> </p>

Mission Control

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

Features

  • Supports all Switch firmware versions.
  • Connect up to 8 non-switch Bluetooth controllers simultaneously without any additional hardware.
  • Make use of native HOS menus for controller pairing, button remapping (firmware 10.0.0+) etc.
  • Support for rumble and motion controls (compatible controllers only)
  • Low input lag.
  • File-based virtual controller memory allowing for data such as analog stick calibration to be stored and retrieved.
  • Unlocks such as button remapping and stick calibration for third-party Licensed Pro Controllers.
  • Enables use of JoyConDroid without root access.
  • Spoofing of host Bluetooth adapter name and address.
  • mc.mitm module adds extension IPC commands that can be used to interact with the bluetooth process without interfering with the state of the system.

Supported Controllers

Currently, the following controllers are supported. If you have a third-party variant of one of the below, or a Bluetooth controller that isn't listed, consider submitting a controller request issue.

  • Nintendo Wii Remote + extensions (Nunchuck, Classic Controller, Classic Controller Pro, SNES Mini, TaTaCon (Taiko drum), MotionPlus)
  • Nintendo Wii Balance Board (experimental)
  • Nintendo WiiU Pro Controller
  • Sony Dualshock3 (Playstation 3) Controller
  • Sony DualShock4 (Playstation 4) Controller
  • Sony Dualsense (Playstation 5) Controller
  • Sony Dualsense Edge Controller
  • Microsoft Xbox One S/X Controller (not to be confused with Series S/X controllers - these use Bluetooth LE, which isn't currently supported)*
  • Microsoft Xbox Elite Wireless Controller Series 2
  • NVidia Shield Controller (2017 Model)
  • Ouya Controller
  • Gamestick Controller
  • Gembox Controller
  • iCade Controller
  • Ipega Controllers (7197, 9017s, 9023, 9055, 9062S, 9076, 9078, 9087, 9096 confirmed working. Others may also work)
  • g910 Wireless Bluetooth Controller
  • Xiaomi Mi Controller
  • Steelseries Free
  • Steelseries Nimbus
  • Steelseries Stratus Duo
  • Steelseries Stratus XL
  • GameSir G3s
  • GameSir G4s
  • GameSir G7 Pro
  • GameSir T1s
  • GameSir T2a
  • Hori Onyx
  • 8BitDo SN30 Pro Xbox Cloud Gaming Edition
  • 8BitDo Ultimate 2.4G Wireless Controller
  • 8BitDo ZERO (Most other 8BitDo controllers have a Switch mode available. May require firmware update)
  • PowerA Moga Hero
  • PowerA Moga Pro
  • PowerA Moga Pro 2
  • Mad-Catz C.T.R.L.R
  • Mad-Catz L.Y.N.X 3
  • Razer Raiju Tournament
  • Razer Raiju Ultimate
  • Razer Serval
  • Mocute 050
  • Mocute 053
  • Gen Game S3
  • AtGames Legends Pinball Controller + Arcade Control Panel
  • Hyperkin Scout
  • Betop 2585N2
  • Atari Wireless Modern Controller
  • SCUF Vantage 2
  • Amazon Fire TV Game Controller

*Not all Xbox One wireless controllers support Bluetooth. Older variants use a proprietary 2.4Ghz protocol and cannot be used with the Switch. See here for information on identifying the Bluetooth variant.

Requirements

  • Hackable Nintendo Switch running an up-to-date version of Atmosphère custom firmware. Other custom firmwares are not supported.
  • Compatible Bluetooth controller

Installation

Download the latest release .zip and extract to the root of your SD card, allowing the folders to merge and overwriting any existing files. Reboot your console to activate the module and you're done!

IMPORTANT: Atmosphère >= 1.10.2 is required to run the latest release of Mission Control on firmware 21.2.0+. Using an older Atmosphère version will cause Mission Control to crash or freeze the system on boot.

Usage

Mission Control is primarily a sysmodule (background process) that gets loaded by Atmosphère at boot time and runs indefinitely alongside the rest of the operating system. It enables the use of unsupported Bluetooth controllers as if they were native Pro Controllers. This means that you can pair and configure new controllers via Nintendo's own system menus, without the need to load additional homebrew applications. There is (currently) no Mission Control "app" to be opened.

Controllers must first be paired with the console (see below) before they can be used. Once paired, controllers will seek out and reconnect to the console automatically when woken up. There is no need to re-pair them every time. Note that unofficial controllers cannot be used to wake the console.

Once connected, your controller's buttons are mapped as closely as possible to the physical layout of a Switch Pro Controller. This means that A/B and X/Y buttons will be swapped for controllers that use an Xbox style button layout rather than using what is printed on the button. The button combos MINUS + DPAD_UP and MINUS + DPAD_DOWN are provided for all controllers to function as an alternative for CAPTURE and HOME buttons in cases where there are not enough face buttons available. Button mappings can be changed from the official system menu at System Settings->Controllers and Sensors->Change Button Mapping.

Most other native features should just work (with the exception of things like firmware update). If you find something that's broken please open a support issue on this github page.

Pairing Controllers

Nintendo made some rather confusing naming choices with their controller menu items. Controllers are paired from the system menu under Controllers->Change Grip/Order, and not Pairing New Controllers or Search for Controllers as common sense may lead you to expect. On this screen, place your controller into pairing mode (see below) and wait a few seconds. If successful, you should see a Paired notification show in the top left of the screen. Your controller is now paired and can be reconnected at any time without having to re-enter this screen. Re-pairing is only required if you have connected the controller to another device or emummc.

The supported controllers each have their own methods for entering pairing/sync mode. Below are instructions on entering this mode for some of the common console controllers.

Nintendo Wii/WiiU Controllers Press the red sync button on the back of the controller. The controller LEDs will blink rapidly.

It is recommended that you perform an analog stick calibration for these controller types where applicable, as every controller has different analog stick range and center position but unlike Switch controllers, there is no stored factory calibration.

Sony Dualshock3 Controller To pair this controller, you will need to connect it to the console via USB cable. Once the controller LEDs start flashing, disconnect the USB cable and hit the PS button.

Note: to avoid unwanted behaviour if using the controller in USB wired mode, this only works from the usual Controllers->Change Grip/Order screen.

Sony Dualshock4/Dualsense Controllers Press and hold the PS + share buttons simultaneously until the lightbar starts blinking. When done correctly the blink pattern will resemble a heartbeat, otherwise it will blink on and off at a constant rate.

If you have difficulty getting the controller to pair to the console, press and hold the reset button on the back of the controller for a few seconds and try again. Sometimes this is required after having connected to a Playstation console or other device.

Microsoft Xbox One/Elite 2 Controllers Press and hold the guide(X) button until the LED starts blinking. Then press and hold the small sync button on the back near the charging port until the LED starts blinking more rapidly.

*Note: controller firmware versions 5.xx.xxxx.x and upward use Bluetooth Low Energy and are not currently supported. Please refer to the FAQ for instructions on downgrading to a compatibl

Related Skills

View on GitHub
GitHub Stars3.3k
CategoryDevelopment
Updated1d ago
Forks156

Languages

C++

Security Score

100/100

Audited on Mar 31, 2026

No findings