Controller Tests gamepad controller buttons

Gamepad Test

Detect connected controllers and verify buttons via the Gamepad API.

Interactive tool

Run the test

Runs in your browser

Uses the browser Gamepad API. Connect a controller and press a button if it does not appear right away.

Press Start listening to begin.

Permission status

Checked in your browser. DeviceHub does not store permission grants.

  • Special permission Not required

Live results

Metrics update as you run the test. Nothing is uploaded.

Loading

Waiting for interactive tool output…

Device information

Labels and capability details reported by your browser.

No device details yet.

Description

About Gamepad Test

Introduction

The DeviceHub Gamepad Test is a free online controller checker that detects connected pads through the browser Gamepad API and visualizes button presses without launcher software, Steam Big Picture overlays, or manufacturer utilities. Open the page, connect a USB or Bluetooth controller, press any button so the browser activates the device, and watch face buttons, shoulders, D-pad directions, sticks as digital clicks when exposed, and menu keys light as the OS delivers HID reports. Competitive players validating a tournament pad, parents testing a kids’ wireless stick after a drop, IT staff confirming classroom game kits, streamers swapping between Xbox, DualSense, Switch Pro, and third-party clones, and repair shops documenting dead buttons before an RMA all use it as a neutral first smoke test. Because everything runs in the tab, you can check controllers on Windows, macOS, Linux, or ChromeOS machines where installing vendor tools is blocked. DeviceHub is explicit about limits: the Gamepad API only reports what the browser and operating system expose, and mapping may differ for non-standard pads that do not follow the Standard Gamepad layout. A highlight here proves the web stack saw that button index, not that a console firmware utility would label the same physical switch identically. Schools and libraries appreciate a bookmarkable page that needs no admin rights. Retail floor demos can prove a floor-model pad responds before a customer walks out with a dead shoulder. If you reseated a cable, updated Bluetooth drivers, or suddenly lost Start in every browser game, this map answers whether the problem is the pad, the OS, or a single title’s remapper.

What this tool does

The tester polls or listens for connected Gamepad objects, shows a readable id string when the browser provides one, and highlights button indices while pressed. Analog sticks and triggers may appear as related axes elsewhere in the suite; this page focuses on presence detection and button smoke coverage so you know the pad is alive before deeper axis work. Status text reminds you that many browsers require a user gesture, pressing a button, before gamepads become visible, which is why a silent connected pad can look “missing” until you wake it. Reset or reconnect flows clear stale highlights after you unplug. The tool does not flash firmware, change deadzones in Windows Calibration, or rematch Steam Input profiles. Pair with Joystick Test for stick travel, Trigger Test for LT/RT ranges, Vibration Test for rumble actuators, Controller Mapping Test when labels disagree with physical layout, Gamepad Reaction Time Test for reaction timing, and Controller Calibration Test for rest drift. Side buttons on fight pads or paddles on elite controllers may map to unexpected indices or nothing at all, that mismatch is useful diagnostic data about how the OS remaps them before Chrome or Firefox ever sees them. Wireless dongles that expose multiple virtual devices can list more than one Gamepad; press controls to see which entry updates.

When to use it

Use Gamepad Test before ranked sessions, LAN parties, classroom game days, and marketplace returns when you need confidence every major button registers outside a single vendor app. Run it after drops, battery swaps, Bluetooth pairing resets, OS game-controller driver updates, and whenever one title loses Select while desktop games still work. Help-desk agents can ask users to open this page so both sides share a common baseline without installing Xbox Accessories or DualSense firmware tools on locked machines. Prefer Joystick Test when the complaint is stick drift, Trigger Test when analog triggers feel binary or dead at half pull, Vibration Test when rumble is silent in-browser but present in native games, and Mapping Test when A/B/X/Y appear shuffled. Call-center supervisors bookmark it as a triage link for “my controller died in the browser” tickets. Esports coaches reviewing loaner pads before events run a full face-button and shoulder pass once after unpacking from travel cases. Parents confirming a Bluetooth pad still wakes after months in a drawer get an answer in seconds. After KVM switches, USB-C docks, or cheap hubs, re-run detection, some paths drop HID gamepads until you replug into a direct motherboard port.

How it works

Browsers expose navigator.getGamepads() and related connection events. Until the user presses a control, many engines keep slots null for privacy and accidental enumeration reasons, DeviceHub therefore prompts you to press a button. Each Gamepad lists buttons with pressed and value fields, axes as normalized floats, an id/mapping string, and timestamps. The Standard Gamepad mapping assigns familiar indices to A/B/X/Y, shoulders, triggers-as-buttons, Select/Start, stick clicks, D-pad, and home where supported. Controllers that report mapping "standard" still vary by vendor firmware; clones may swap shoulders or omit a home key. Safari and some mobile browsers offer incomplete Gamepad support, absence of a device there is often a platform limit, not proof the hardware failed on a desktop Chromium build. No Permissions API prompt appears: gamepad access does not use getUserMedia. Secure HTTPS keeps DeviceHub consistent, but reading pads itself does not require microphone or camera grants. DeviceHub does not upload button streams; polling stays in tab memory for visualization. Extensions and remote-desktop gateways can filter or delay HID reports, producing “dead” pads that work locally, compare a direct session before condemning the hardware. Timestamp fields help related latency tools but are not USB analyzer polls. If two browsers disagree on the same pad, focus on mapping strings, activation gestures, and Bluetooth versus wired paths rather than assuming magical hardware changes between engines.

Step-by-step instructions

  1. Open this DeviceHub page over HTTPS in a desktop Chromium, Firefox, or Edge build when possible, connect the controller by USB or Bluetooth, and press any face button so getGamepads() populates a live slot instead of leaving the list empty.
  2. Confirm the reported id and mapping string look plausible for your brand, then tap each face button, bumper, D-pad direction, stick click, and menu key while watching the matching highlight and pressed state update.
  3. If a physical control never lights, note whether Mapping Test shows a different raw index, try a wired cable, and compare another browser before opening an RMA, non-standard layouts frequently confuse label expectations.
  4. Unplug or power-off briefly, reconnect, and press a button again to verify reconnection messaging; flaky wireless links often fail this second wake even when the first pass looked fine.
  5. Optionally open Joystick Test and Trigger Test next for analog depth, then Vibration Test if rumble matters for your title, keeping this page as the button-presence baseline.
  6. When finished, close the tab; no permission revoke is required because the Gamepad API never requested a privileged prompt, just avoid leaving a shared machine’s pad paired if that is a privacy concern for your environment.

Common problems

Empty device lists almost always mean you have not pressed a button yet, the browser lacks Gamepad support, Bluetooth pairing failed, or a remote session never forwards HID. Wrong-looking button maps are common on third-party and flight-stick hybrids, use Controller Mapping Test rather than assuming DeviceHub invented indices. DualSense and Switch Pro pads may need wired mode or specific OS drivers before browsers see a Standard layout. Mobile Safari frequently omits or limits gamepads; retest on desktop. Low batteries cause intermittent disconnects that look like random dead buttons. Steam Input, DS4Windows, or remappers can present a virtual pad that differs from the physical silkscreen, document which stack is active. KVM and dock firmware sometimes enumerate keyboards yet drop gamepads until you toggle the hotkey that releases USB. If every button works here but one HTML5 game fails, investigate that game’s exclusive pointer lock or custom remapper next. Fight sticks with SOCD cleaners may suppress simultaneous opposite directions before the browser sees them, treat that as firmware policy, not a site bug.

Privacy explanation

Gamepad button and axis samples stay entirely on your device during this test. DeviceHub does not upload controller traffic, build play-style profiles, or store your pad id on a server. On-page state exists only for the current session and clears when you leave. No microphone, camera, or extra HID permission prompt is requested, the Gamepad API needs none. Closing the tab ends polling for that page; nothing continues in the background. Prefer a private window if workplace extensions inject virtual pads you did not expect. Screen recordings shared with support should crop unrelated desktop content beside the tester. Clearing site data is unnecessary for “revoking” gamepad access because the browser never stored a privileged grant for this diagnostic.

Runtime principles

Built for the browser

What happens when you run this test — without downloads or accounts.

  1. 01

    Runs in your browser

    Gamepad Test uses standard web APIs — no install, extension, or desktop app required.

  2. 02

    Reads what the browser allows

    Results come from events and capability signals the web platform exposes for this session.

  3. 03

    Private by default

    Input and diagnostic values stay in your browser session for display — nothing is sold as media.

Compatibility

Supported browsers

Expected support for modern engines. Individual APIs may still vary by device.

  • Chrome

    supported

    Latest stable

  • Firefox

    supported

    Latest stable

  • Safari

    supported

    Latest stable

  • Edge

    supported

    Latest stable

Devices

Supported devices

Hardware and form factors this browser test is designed to exercise.

  • USB & wireless gamepads

    When the browser Gamepad API exposes the device.

  • Console-style controllers

    Xbox, PlayStation, and similar pads with browser support.

  • Fight sticks & specialty pads

    Mapped as standard gamepad inputs when recognized.

Privacy

Your data stays with you

Gamepad Test is built privacy-first. Diagnostics run in your browser session whenever web APIs allow.

Read our privacy policy

Troubleshooting

Common problems

Quick fixes before you dig into FAQs.

No controller appears in the list
Press any face button or stick so the browser fires a gamepadconnected-style activation, try a wired USB path, and confirm the pad works in another app or OS settings.
Buttons light the wrong slots
Non-standard pads often ignore the Standard Gamepad layout. Open Controller Mapping Test to compare labeled slots with raw indices before assuming a broken switch.
Pad disconnects mid-test
Replace weak batteries or recharge, move closer to a Bluetooth radio, reseat the USB cable, and avoid hubs that drop HID devices under load.

FAQ

Frequently asked questions

Structured answers for users and FAQ rich results.

Browse FAQs
Why is my controller missing until I press a button?
Many browsers hide Gamepad objects until you press a control. Press any button after connecting, then watch the list populate.
Do I need to grant a permission?
No. The Gamepad API does not use a microphone or camera permission prompt. Detection runs after you interact with the pad.
Why do button labels look wrong?
Non-standard pads may not follow the Standard Gamepad layout. Use Controller Mapping Test to compare labels with raw indices.
Does this work on Safari or mobile?
Support varies. Desktop Chrome, Edge, and Firefox are the most reliable. Safari and many mobile browsers offer incomplete Gamepad APIs.
Is controller data uploaded?
No. Button state stays in your browser session for on-page diagnostics only. DeviceHub does not upload gamepad traffic.
Wired or Bluetooth, which should I try first?
Start wired when diagnosing hardware. Bluetooth adds pairing and interference variables that can look like dead buttons.

Newsletter

Updates coming soon

A lightweight email digest for new tools and release notes is planned. No signup form is live yet — check Release Notes for product updates.

Release notes

Need another diagnostic after Gamepad Test?

Explore related DeviceHub tools that pair well with this test.