You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| <imgsrc="SetupGuide/Images/ArduinoUnoR3/ControllerSetup-UnoR3.jpg"width="200"> | Arduino Uno R3 | Switch 2: Wired Controller<br>(compatible with Switch 1) |[Arduino Uno R3](SetupGuide/Controllers/Controller-ArduinoUnoR3.md)|
@@ -35,7 +35,7 @@ A "device" is a microcontroller or development board that we will use to impleme
35
35
36
36
| Image | Description |
37
37
| --- | --- |
38
-
| <img src="SetupGuide/Images/ControllerSetup-ESP32-WROOM-Board-2.jpg" height="200"> | **ESP32-WROOM**<br><br>Supported Controllers:<br>- Switch 1: Wireless Pro Controller<br>- Switch 1: Left Joycon<br>- Switch 1: Right Joycon<br><br>The ESP32 is a microcontroller that supports Bluetooth. It is one of the few microcontrollers that supports Bluetooth Classic (BTC) since the world has moved onto Bluetooth LE (BLE). Thus it is (almost) uniquely suited to implement the Switch 1 wireless controllers which are also BTC.<br><br>The USB port on it is a built-in UART intended for debugging, but we hijack it as the main line of communication with CC to eliminate the need for an external UART. This makes it super convenient since a simgle USB adapter turns it into fully wireless dongle that allows your computer full control of your Switch without the hassle of any cables at all.<br><br>The ESP32 also supports BLE which is what the Switch 2 wireless controllers use. So it has the potential to implement the Switch 2 wireless controllers in the future. |
38
+
| <img src="SetupGuide/Images/ESP32/ControllerSetup-ESP32-WROOM-Board-2.jpg" height="200"> | **ESP32-WROOM**<br><br>Supported Controllers:<br>- Switch 1: Wireless Pro Controller<br>- Switch 1: Left Joycon<br>- Switch 1: Right Joycon<br><br>The ESP32 is a microcontroller that supports Bluetooth. It is one of the few microcontrollers that supports Bluetooth Classic (BTC) since the world has moved onto Bluetooth LE (BLE). Thus it is (almost) uniquely suited to implement the Switch 1 wireless controllers which are also BTC.<br><br>The USB port on it is a built-in UART intended for debugging, but we hijack it as the main line of communication with CC to eliminate the need for an external UART. This makes it super convenient since a simgle USB adapter turns it into fully wireless dongle that allows your computer full control of your Switch without the hassle of any cables at all.<br><br>The ESP32 also supports BLE which is what the Switch 2 wireless controllers use. So it has the potential to implement the Switch 2 wireless controllers in the future. |
39
39
| <imgsrc="Images/Devices/ESP32-S3.jpg"height="200"> |**ESP32-S3**<br><br>Supported Controllers:<br>- HID: Keyboard (ETA: v0.57)<br>- Switch 1: Wired controller<br>- Switch 2: Wired controller<br><br>The ESP32-S3 is the newest device in our lineup. It has both USB OTG and USB UART as separate ports. The USB OTG can be programmed as a game controller while the USB UART elminates the need for the external UART that was needed by the AVR8 setups (Arduino/Teensy). Thus ESP32-S3 is the perfect replacement for those older setups. Ease of setup is very important as it lowers the technical bar of entry for new users.<br><br>The ESP32-S3 also supports Bluetooth, but only Bluetooth LE (BLE). So while it cannot implement the Switch 1 wireless controllers, it does give us future ambitions of supporting the Switch 2 wireless controllers. |
40
40
| <imgsrc="Images/Devices/ArduinoUnoR3.jpg"width="200"> |**Arduino Uno R3**<br><br>Supported Controllers:<br>- Switch 2: Wired controller<br><br>The Arduino Uno R3 is one of the original boards that spearheaded the Nintendo Switch automation community. However, it's ATmega16U2 AVR8 CPU is very weak with only 512 bytes of ram and 12KB of usable program memory.<br><br>This controller is only suitable for emulating the basic wired controllers. It doesn't even have enough memory to hold multiple controller implementations the way that some of the newer controllers can. |
41
41
| <imgsrc="Images/Devices/ArduinoLeonardo.jpg"width="200"> |**Arduino Leonardo**<br><br>Supported Controllers:<br>- Switch 2: Wired controller<br><br>The Arduino Leonardo uses an ATmega32U4 AVR8 CPU. It has significantly more ram and program memory at 2.5KB and 32KB respectively. This was the last addition to the AVR8 microcontroller line up and was chosen because it was easier to setup a serial connection than the Teensy or Pro Micro boards.<br><br>Being an AVR8 processor, it shares codebase with the Arduino Uno R3 and thus we only support a single wired controller type on it. |
Copy file name to clipboardExpand all lines: Wiki/SetupGuide/Controllers/Controller-ESP32-WROOM-MacOS.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ We recommend getting ones without pins since you don't need them (though they ar
59
59
60
60
Most likely you will end up buying a pack of at least 2 or 3 since they don't get any cheaper in single quantity. This is great if you want to automate multiple Switches.
Copy file name to clipboardExpand all lines: Wiki/SetupGuide/Controllers/Controller-ESP32-WROOM.md
+10-10Lines changed: 10 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ This setup uses an ESP32 microcontroller to emulate a wireless controller. It ca
10
10
11
11
The USB port plugs into the computer which is how the program will control it. At the other end is an antenna that supports Bluetooth which is how it will fake itself as a joycon or a wireless pro controller to the Switch.
**Important:** There are many variants of the ESP32 microcontroller. The ESP32-WROOM is the only one that works here. So you must get that specific model. (e.g. Don't get the ESP32-S3-WROOM, or ESP32-S2-WROOM, or ESP32-C2, etc.)
33
33
@@ -63,7 +63,7 @@ We recommend getting ones without pins since you don't need them (though they ar
63
63
64
64
Most likely you will end up buying a pack of at least 2 or 3 since they don't get any cheaper in single quantity. This is great if you want to automate multiple Switches.
5. Click Start and it should flash the PABotBase firmware to your ESP32.
128
128
129
129
If everything worked correctly, you should see a green progress bar like this. If you see that it gets stuck printing out `...` and never makes progress, see [troubleshooting](#unable-to-flash-the-esp32-stuck-on-).
If you do not see this or you get an error, then see [troubleshooting](#troubleshooting).
158
158
@@ -164,7 +164,7 @@ After 5 seconds, you should see a controller pop-up in the Grip menu on the Swit
164
164
165
165
The controller colors are randomized and should match the color icons in the status indicator. This helps to distinguish controllers if you have multiple of them. You can change the colors in the `Nintendo Switch -> Framework Settings` menu.
@@ -175,7 +175,7 @@ We recommend familiarizing yourself with the keyboard controls as this is the pr
175
175
176
176
Overall, the idea here is that you can play your Switch from your computer. While it's not as nice as using a native controller, it is good enough to easily setup programs - especially if you're doing this remotely where you do not have physical access to the Switch.
0 commit comments