Gamepad tester

Plug in or pair a controller, then press any button so the browser can detect it. See every button, stick, and axis update in real time—useful for debugging Joy-Con drift, dead zones, and calibration.

Scanning for controllers…

Connect your gamepad and press a face button or trigger. Some devices only wake the Gamepad API after input.

How it works & tips

This page uses the browser Gamepad API—the same idea as Hardware Tester’s gamepad tool: it shows whatever your browser reports for buttons, axes, and timestamps. Controllers vary by OS and browser.

  • Not showing up? Check USB/Bluetooth, close other apps using the controller, try another browser, and press several buttons (some pads only “wake” on certain inputs).
  • Axes are analog stick and trigger positions (usually −1…1). Buttons can be digital or analog (pressure).
  • Calibration captures the current stick rest position as “zero” so you can see small drift (Joy-Cons) as offset values.
  • Sensitivity / wiggle tracks how much each axis moves frame-to-frame—large numbers when you’re moving, tiny noise when idle if a stick drifts.
  • Circularity checks whether the stick vector stays inside a unit circle at full tilt (useful for stick quality).
  • Rumble works in most browsers except Safari (as of common releases).