Device checks / Controllers

PS5 Controller Tester for DualSense Users: Buttons and Stick Drift

Test a DualSense controller with cross, circle, square and triangle buttons, analogue triggers, idle stick drift and supported vibration.

PS5 Controller Tester for DualSense Users: Buttons and Stick Drift: DualSense uses the cross button below the other face buttons, circle on the right, square on the left and triangle above. Create sits to the left of the central touchpad and Options to the right. The PS input may open a system overlay instead of reaching this page. Compare L2 and R2 as you slowly squeeze them: their values should change between released and fully pressed. A browser may expose a touchpad click or mute as an extra slot, but neither is guaranteed. Adaptive trigger resistance, motion sensing and finger coordinates are outside this test. A missing special feature is not evidence that the controller is broken. Runs 100% locally in your browser with zero server file uploads.

Runs
In your browser
Cost
Free · no sign-up
Availability
Ready to use
PS5 controller tester for DualSense usersLocal processing

Runs entirely in your browser

Check the cross, circle, square and triangle buttons in their physical positions, the Create and Options buttons, both analogue triggers and both sticks. Use the idle recording to investigate unwanted camera movement before changing a game's dead zone.

Connect by USB or Bluetooth, then press a controller button with this tab open.
L1—R1—
L2—Analogue trigger: 0 to 1
R2—Analogue trigger: 0 to 1
△—□—○—×—
D-pad up—D-pad left—D-pad right—D-pad down—
Create—Options—PS—Touchpad click—Mute—
L3—Left stickNot exposed by this browser
R3—Right stickNot exposed by this browser

Extra buttons after index 16 vary by browser. Touchpad click, mute, Share and Capture labels are suggestions for those slots; confirm each by pressing it. A missing slot means it is not exposed, rather than a failed button.

Five-second drift test

Place the controller on a level surface, release both sticks, and keep this tab visible for five seconds. Move each stick in a circle and release it before repeating the test. The test records raw idle offset, regardless of the display dead zone.

Maximum and mean are the length of the x/y offset vector as a percentage of a unit stick radius. Diagonal readings can exceed 100%. The 5%, 10% and 15% comparisons are examples, not manufacturer pass/fail limits. Browser sampling is not a hardware calibration.

Vibration is not exposed here. Support depends on browser, connection and controller.

The standard Gamepad API cannot read adaptive-trigger resistance, gyro motion or touchpad finger positions. It can show the touchpad click when the browser exposes an extra button.

Standard mapping: index to model button
IndexButton name
0×
1○
2□
3△
4L1
5R1
6L2
7R2
8Create
9Options
10L3
11R3
12D-pad up
13D-pad down
14D-pad left
15D-pad right
16PS
17Touchpad click · browser-dependent extra
18Mute · browser-dependent extra

Test log

Latest 80 button transitions. Analogue levels remain visible on the live buttons and trigger bars.

  1. Press and release a controller button to begin the log.
PlayStation/DualSense are trademarks of Sony Interactive Entertainment; Xbox of Microsoft; Nintendo Switch/Joy-Con of Nintendo; TOEA is not affiliated.

Connect your controller

With the controller switched off, hold Create and PS until the light bar flashes to enter Bluetooth pairing. A USB data cable is another option; a charging-only cable cannot carry button input. On Windows, open Settings, Bluetooth & devices and add a Bluetooth device. On macOS, open System Settings, Bluetooth and connect the listed controller. On Android, use Settings, Connected devices or Bluetooth and pair a new device. On iPhone, use Settings, Bluetooth and select the controller if the phone supports it. USB on phones requires a compatible data adapter and operating-system support. After connecting, open this tab and press a controller button. If it remains absent, try a data cable, another browser or a supported host; OS pairing alone does not guarantee web access.

Official controller support (https://www.playstation.com/en-us/support/hardware/pair-dualsense-controller-bluetooth/) describes pairing. Follow the vendor instructions for your hardware.

Browser input and vibration

The W3C Gamepad specification (https://www.w3.org/TR/gamepad/) defines standard button positions and axis readings. MDN (https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API/Using_the_Gamepad_API) explains activation and browser access. Open the page in a secure context and press a button after it loads. Desktop Chrome, Edge, Firefox and Safari can expose gamepads, but device mapping, phone support and haptics differ. Test availability on this host instead of assuming console features carry over.

MDN vibration documentation (https://developer.mozilla.org/en-US/docs/Web/API/GamepadHapticActuator) describes dual-rumble and trigger-rumble support. A disabled effect means this browser/controller combination does not expose it.

Interpreting idle stick movement

The five-second measurement uses raw x/y offsets before the display dead zone. Mean drift is the average vector length, not the length of an average vector. Five, ten and fifteen per cent are illustrative radial dead zones rather than official service limits. Disconnect before cleaning the exterior; use the manufacturer cleaning guidance. Persistent unwanted movement after reconnecting and safe cleaning can require service or stick replacement.

How to use it

  1. Connect the controller to your computer or phone and press a button with this page open.
  2. Check the live buttons, trigger levels and stick positions in the device layout.
  3. Release the sticks, record five seconds of idle input and compare maximum and mean drift.

Privacy & limitations

Controller readings and test results stay in this browser. Nothing is uploaded.

Related tools

Frequently asked questions

Can this test the adaptive triggers?

It shows the analogue L2 and R2 input levels. Adaptive resistance and trigger force profiles cannot be read or controlled through the standard browser interface. The ordinary vibration button tests dual rumble only when the browser exposes it.

Why do touchpad click and mute show a dash?

Browsers can omit these extra inputs. Press each physical button and watch the numbered log. Slots after the home button are not standardised; suggested names need confirmation on your device.

How do I check DualSense drift?

Move a stick around its full travel, release it and start the five-second idle test. Repeat after reconnecting. Maximum offset shows the largest idle movement; mean offset shows its typical size. Compare with the dead zone in the game where the camera moves.

Free tool · runs in your browser · no account required