Gamepad Tester

Connect a controller and press any button to see its inputs live.

Controller input

Waiting for controller

Connect with USB or pair over Bluetooth, then press any button.

Up to four controller slots. Labels describe the standard browser mapping; they do not identify your hardware model.

Press a button to connect

Your inputs will appear here when your browser exposes the controller.

Controller not detected? Follow the connection checks →

10-second stillness observation

Observe stick drift

Put the controller on a flat surface and release both sticks. Keep this tab visible for the full measurement.

Read the method

Default 0.05. This line marks the result; it does not filter or correct your inputs.

Connect a controller with a standard mapping and four valid axes to begin.

No measurement yet.

Vibration

Try a short vibration

Request one 250 ms pulse at a moderate strength. Browser and controller support vary.

Vibration is not available for the current connection. This does not mean the motor is faulty.

Local report

Keep your test results

Download the current readings and measurement conditions, or print a summary. The JSON includes the controller name your browser reports.

Your controller input and report stay in this browser. Refreshing clears the session; files you download stay on your device.

Using the test

Check your controller in three steps

  1. Connect and wake it

    Plug in a USB cable that carries data, or pair the controller in your operating system. Press a button so the browser can expose it.

  2. Try each input

    Press every button, pull each trigger slowly, and move both sticks. Check the live value and the observed label for each control.

  3. Observe and keep the result

    Release both sticks for the 10-second stillness test. Save a JSON report or print the summary before refreshing the page.

What the gamepad tester shows

The controller test displays the inputs your browser makes available: button values from 0 to 1, original axis indices, and stick positions when the browser reports a standard mapping. An observed button has produced input during this session; a button you have not pressed is not tested.

Use the joystick tester view to follow movement and return to center. The reference circle marks your chosen threshold. It leaves the original values unchanged, including small offsets such as 0.001.

Read the values in context

Browser-reported inputs may already have been processed by the controller, its firmware, or the operating system. A ten-second observation helps compare conditions; it cannot certify a controller as healthy or broken.

Unknown mappings keep their original Button N and Axis N labels. Vibration works only where the browser exposes a supported command. This test does not measure physical input latency or hardware polling rate.

Related tools