Skip to content
JoystickTester.com
Nintendo Switch Hardware Profile

Nintendo Switch Pro Controller & Joy-Con Tester

In-page browser diagnostics for the Nintendo Switch Pro Controller and Left/Right Joy-Cons. Test Joy-Con and Pro thumbstick drift, Nintendo’s inverted B/A/Y/X physical button layout, digital ZL/ZR switches, and raw HID mappings.

Methodology & Scope•100% Client-Side Browser Diagnostics•W3C Gamepad API
No Controller Detected Yet?Try Virtual Simulator

Plug in your controller & press any button, or test using keyboard emulation / auto demo.

Switch Pro & Joy-Con Layout ReferenceNo Controller Connected • Awaiting Input
ZLZRLRX:0.00 Y:0.00X:0.00 Y:0.00XBYA⌂−+
No Switch Pro & Joy-Con Detected

Connect Your Switch Pro & Joy-Con to Begin Live Testing

Plug in via USB or pair over Bluetooth, then press any button (such as B / A or Home) to wake the browser Gamepad API and launch the full diagnostic suite on this page.

Connectivity
USB-C & Bluetooth (Pro Controller) / Bluetooth 3.0 HID (Joy-Con L & R)
Hardware Polling Spec
60Hz–125Hz Hardware HID (Sampled at Browser Display Refresh Rate)
Browser W3C Gamepad API Capabilities & Nintendo Switch Mapping Notes
Supported in Browser & B0–B3 Mapping Differences: Indices B0–B3 do not map to the same physical Nintendo buttons across every browser and connection mode. When the browser applies W3C positional mapping, B0 = B (Bottom), B1 = A (Right), B2 = Y (Left), and B3 = X (Top); when an OS HID driver, Bluetooth stack, or XInput wrapper maps by button glyph, B0 = A, B1 = B, B2 = X, and B3 = Y. Standard mode also supports L/R (B4/B5), binary digital ZL/ZR (B6/B7), Minus/Plus (B8/B9), stick clicks, Home (B16), Capture (B17) (when exposed), and Left/Right stick coordinates.
Non-Standard Mappings & API Limitations: Single Left or Right Joy-Cons and certain Bluetooth/DirectInput stacks enumerate with mapping: "" (raw HID), where buttons report as raw B0–B17 slots, B6/B7 do not represent ZL/ZR, and D-Pad inputs may be encoded on an axis hat switch. Alps Alpine HD Rumble LRA waveforms, 6-axis gyro/accelerometer motion sensors, NFC amiibo reader, and the Right Joy-Con IR Motion Camera are not exposed by the standard W3C Gamepad API.

Switch Pro & Joy-Con Hardware Architecture & Subsystems

Physical sensor technology, switch types, and mechanical engineering details

Analog Thumbsticks

The Switch Pro Controller uses full-sized ALPS dual-axis potentiometers (USB VID 057e, PID 2009), whereas Joy-Con (L) (PID 2006) and Joy-Con (R) (PID 2007) use low-profile slide potentiometers whose compact wiper tracks are prone to contact wear and dust intrusion.

Triggers & Bumpers

Unlike PlayStation L2/R2 and Xbox LT/RT, Nintendo Switch ZL (B6) and ZR (B7) are digital switches with no analog travel sensor. In the browser, they step directly from 0.000 (released) to 1.000 (pressed).

Face Buttons & D-Pad

Conductive silicone rubber pads over carbon PCB contacts for A, B, X, Y, Minus (-), Plus (+), Home, Capture, and the Pro Controller D-Pad. Tactile metal dome switches are used for L, R, ZL, ZR, and the Joy-Con rail buttons (SL and SR). The Switch Pro Controller uses a single-piece 4-way cross rocker on a central pivot post, while Joy-Con (L) uses four separate circular directional buttons so it can double as a sideways two-player controller.

Haptics & Vibration Actuators

Nintendo Switch controllers contain Alps Alpine HD Rumble Linear Resonant Actuators (LRAs). Standard web browsers do not expose HD Rumble frequency synthesis, 6-axis gyro/accelerometer sensors, the NFC amiibo reader, or the Right Joy-Con IR Motion Camera through the W3C Gamepad API.

Recommended Switch Pro & Joy-Con Diagnostic Procedure

Step-by-step verification order to detect intermittent or subtle hardware defects

1Joy-Con & Pro Controller Resting Drift Check

Flick both thumbsticks in all four cardinal directions and let them snap back to rest on their own. Watch the Axis 0/1 and Axis 2/3 coordinates: if a Joy-Con stick fails to settle near 0.000 and stays above 0.070–0.080, internal slider track wear or dust beneath the rubber skirt is preventing a clean return to center.

2B0–B3 Face Button & Capture (B17) Mapping Check

Press physical B (bottom), A (right), Y (left), and X (top) while watching B0–B3 in the Button Matrix. Verify whether your browser and connection mode map B0–B3 by physical position (B0=B, B1=A, B2=Y, B3=X) or by printed glyph (B0=A, B1=B, B2=X, B3=Y), then test Minus (B8), Plus (B9), Home (B16), and Capture (B17).

3Digital ZL / ZR Trigger Switch Check

Press and hold ZL (B6) and ZR (B7) while applying light side-to-side finger pressure. Both gauges should snap immediately from 0.000 to 1.000 and hold steady at 100% without rapid drop-outs.

4Pro Controller D-Pad Cardinal Isolation Check

Rock your thumb gently across Left and Right on the Switch Pro Controller D-Pad while watching the D-Pad diagnostic panel and Step 4 Event Monitor to check whether rocking the cross pivot triggers unintended Up (B12) or Down (B13) inputs.

Switch Pro & Joy-Con Button Mapping & Standard Pinout

Standard W3C Gamepad API index assignments for Switch Pro & Joy-Con

API IndexSwitch Pro & Joy-Con Physical LabelSensor Type
B0 (South / Index 0)B (W3C Positional) or A (Glyph / XInput Driver)Browser / Mode Dependent
B1 (East / Index 1)A (W3C Positional) or B (Glyph / XInput Driver)Browser / Mode Dependent
B2 (West / Index 2)Y (W3C Positional) or X (Glyph / XInput Driver)Browser / Mode Dependent
B3 (North / Index 3)X (W3C Positional) or Y (Glyph / XInput Driver)Browser / Mode Dependent
B4 / B5L / R Shoulder Bumpers (Standard Mode)Digital Tactile
B6 / B7ZL / ZR Digital Triggers (Standard Mode)Binary Switch (0 or 1)
B8 / B9Minus (-) / Plus (+)System Menu
B10 / B11Left / Right Stick ClickStick Depress
B12 - B15D-Pad (Standard) or Hat Axis (Raw HID)Driver Dependent
B16 / B17Home / Capture (when exposed)System Controls

Common Switch Pro & Joy-Con Hardware Issues & Diagnostics

Symptom analysis and verified testing procedures

Joy-Con Stick Drift & Off-Center Return
Your character walks slowly in one direction or menu cursors keep scrolling even when your thumb is off the Joy-Con stick.
Diagnostic Check: Check the resting magnitude on the Step 3 Deadzone Analyzer. Because Joy-Con slide potentiometers sit inside a shallow housing, dust or worn graphite particles frequently cause off-center readings. If cleaning under the rubber dust flap with electronics-safe contact cleaner does not restore centering, replacing the Joy-Con stick module (with an OEM or Hall Effect drop-in unit) takes only a tri-wing screwdriver and ribbon cable swap.
Single Joy-Con Showing Scrambled Buttons or Non-Standard Mapping
When a single Left or Right Joy-Con is paired via Bluetooth, buttons highlight different slots in the B0–B17 matrix or the analog stick acts like a hat switch.
Diagnostic Check: Each Joy-Con is an independent Bluetooth HID device (Joy-Con L or Joy-Con R) with only one stick and half the buttons of a full gamepad. On Windows and Linux, a single Joy-Con often enumerates with mapping: "" (raw HID) rather than the 18-button W3C standard layout. Use the B0–B17 Button Matrix and Step 4 Event Monitor on this page to verify every physical button, or pair both Joy-Cons on macOS 13+ / iOS 16+ (or via BetterJoy on Windows) to combine them into a single standard gamepad.
Switch Pro Controller D-Pad Accidental Diagonal Inputs
Pressing Left or Right quickly in platformers or puzzle games like Tetris 99 triggers an accidental Hard Drop (Up) or Down input.
Diagnostic Check: Early revisions of the Switch Pro Controller have a shallow center pivot on the D-Pad cross, allowing all four contacts to depress slightly if pressed near the center. Test rapid Left-to-Right taps here while watching B12 (Up); if B12 flashes, applying a thin ring of kapton tape to the inner edge of the PCB contacts—or installing a revised pivot D-Pad—prevents false diagonals.
Switch Pro Controller Not Responding Over USB-C on Windows
The orange charging LED turns on next to the USB-C port, but pressing buttons does not wake the browser tester or show any input.
Diagnostic Check: First, verify you are using a USB-C cable with data lines. Second, check if Steam or BetterJoy is running in the background and capturing exclusive HID access to the Pro Controller—closing Steam or disabling "Nintendo Switch Pro Configuration Support" during hardware diagnostics allows Chrome and Edge to read the controller directly.
Experiencing Joy-Con or Switch stick drift? Learn contact cleaning, centering offset tests, and software calibration.
Read Drift Fix Guide

How to Connect Switch Pro & Joy-Con to PC or Mac

  1. 1Switch Pro Controller via USB-C: Plug your Pro Controller into a PC or Mac with a USB-C data cable. If Steam is running in the background, close it or disable Steam Input so the browser receives direct controller telemetry.
  2. 2Switch Pro Controller via Bluetooth: Unplug the USB-C cable, then press and hold the small round Sync button on the top edge next to the USB-C port until the four green player LEDs on the bottom sweep back and forth.
  3. 3Joy-Con (L) or Joy-Con (R) via Bluetooth: Detach the Joy-Con from the Switch console or grip, then hold the recessed black Sync button on the inner rail between the SL and SR buttons until the rail LEDs flash in sequence.
  4. 4Pair & Activate in Browser: Select "Pro Controller", "Joy-Con (L)", or "Joy-Con (R)" in your computer’s Bluetooth menu, then click inside this page and press B or Home to start testing.
Nintendo Switch Browser Mapping vs. Kernel HID References

On Windows and macOS, when a Nintendo Switch Pro Controller (057e:2009) or Joy-Con (057e:2006 / 2007) enumerates with W3C standard mapping, browsers assign B0–B3 by physical position (Bottom/Right/Left/Top) and report digital ZL/ZR triggers as 0.000 or 1.000; if exposed as raw HID (mapping: ""), raw button indices are shown. The Linux hid-nintendo documentation details USB/Bluetooth HID IDs and packet layouts, while kernel-level IMU and LED controls are not exposed in browser navigator.getGamepads().

W3C Gamepad API §4: Positional Standard Gamepad Mapping

Explains positional Bottom/Right/Left/Top button assignment for B0–B3 in web browsers.

Linux Kernel Documentation: hid-nintendo Switch Controller Driver

Hardware reference for Switch Pro Controller and Joy-Con HID packets (kernel driver capabilities differ from browser Gamepad API on Windows/macOS).

Frequently Asked Questions

Why do B0–B3 map to B/A/Y/X in some browsers or modes, and A/B/X/Y in others?

The W3C Gamepad specification defines B0=Bottom, B1=Right, B2=Left, and B3=Top by physical location (which corresponds to B, A, Y, and X on Nintendo hardware). However, some OS Bluetooth/USB drivers, third-party adapters, and XInput wrappers map buttons by printed glyph (A=B0, B=B1, X=B2, Y=B3) or expose a raw HID report (mapping: ""). Because of this, our button matrix displays both positional (B / A / Y / X) and glyph-mapped (A / B / X / Y) references on B0–B3 and switches to raw index labels whenever a non-standard HID mapping is detected.

Why do ZL and ZR jump straight from 0% to 100% instead of showing gradual pressure?

Nintendo Switch Pro Controllers and Joy-Cons use digital microswitches for ZL and ZR rather than analog potentiometers or Hall Effect sensors. Seeing 0.000 when released and 1.000 when clicked is normal hardware behavior.

Can I test Left and Right Joy-Cons at the same time on PC?

Yes. Pair both Joy-Con (L) and Joy-Con (R) in your computer’s Bluetooth settings. On Windows, they appear as two separate controller slots in the Multi-Controller Bar at the top of the tester so you can inspect each Joy-Con individually; on macOS Ventura (13+) and iPadOS/iOS (16+), the operating system automatically merges a paired Left and Right Joy-Con into a single combined Standard Gamepad.

Why is the Vibration button disabled or not rumbling on my Switch controller?

Switch controllers use Alps Alpine HD Rumble Linear Resonant Actuators (LRAs), which require Nintendo’s proprietary subcommand packet format over HID. Most desktop browser and OS drivers do not translate standard W3C dual-rumble calls into Switch HD Rumble packets unless the controller is routed through an XInput wrapper driver.

Dedicated Diagnostic Tools for Switch Pro & Joy-Con
All Tools
Test Other Gamepads
Full Laboratory