PS4 controller test
Press a button on your DualShock 4 to test sticks, drift, buttons, triggers and rumble. This standard test works with any controller in any modern browser. In desktop Chrome or Edge you can also try the experimental deep mode, which attempts to read the touchpad, gyro and battery, set the lightbar colour and tell a v1 pad from a v2.
Controller bench
No controller yet
Turn your phone sideways for the full bench.
Press any button on your controller — browsers only show a pad after its first press.
Stick check
Three steps: rest, circles, snap-back. Start with the controller lying on a table.
Vibration
Hold the controller and run each test. One motor at a time makes a dead or rattling motor easy to spot.
Report rate
Keep moving a stick in circles while it measures. The experimental deep mode counts every report; the Gamepad API shows what the browser sees.
Button check
Press every button once to tick it off. Then run the chatter test: press each button slowly, about 20 times.
Deep mode (WebHID)
You don't need this for the checks above: the standard test works with any controller. Deep mode is an optional extra.
Verdict
Connect a controller and run a check — the verdict shows up here.
Checklist for this controller
- Run the drift test with the pad lying flat.
- Roll each stick around the edge for the range check.
- Press every button, including the touchpad click, and pull both triggers.
- Test both rumble motors one at a time.
- Optional, experimental: turn on deep mode, pick "Wireless Controller" and try the touchpad, lightbar and battery readout.
How to fix it
- Deep mode can't open the pad: close Steam, DS4Windows and HidHide, then reconnect.
- Drift: clean around the stick base; DualShock 4 stick modules are replaceable if drift stays.
- Pad charges but won't connect by Bluetooth: press the reset button on the back, then pair again.
- A dead touchpad click often comes from a worn ribbon cable.
Spec sheet
- USB / Bluetooth IDs
- 054c:05c4 (v1, CUH-ZCT1)Linux hid-playstation driver054c:09cc (v2, CUH-ZCT2)Linux hid-playstation driver054c:0ba0 (USB wireless adapter)Linux hid-playstation driver
- Connections
- Micro-USB, BluetoothLinux hid-playstation driver
- Stick resolution
- 8-bit over HIDLinux hid-playstation driver
- Trigger resolution
- 8-bitLinux hid-playstation driver
- Report rate
- USB ~250 Hz(to be confirmed on a real device)Measured by deep mode
- Sensors and outputs
- gyro, accelerometer, 2-point touchpad 1920×942, battery, lightbarLinux hid-playstation driver
Known issues
- The first DualShock 4 uses product ID 05c4 and the second revision 09cc (vendor 054c). Deep mode's report layouts follow the Linux kernel driver and haven't been checked on every pad. Linux kernel, drivers/hid/hid-playstation.c
FAQ
How do I test my PS4 controller on PC?
Connect it by USB or Bluetooth, open this page and press a button. The standard test needs nothing else; Chrome and Edge also offer an experimental deep mode.
How can I tell if I have a v1 or v2 DualShock 4?
The v2 has a light strip on the touchpad. The product ID tells them apart too: 05c4 is v1, 09cc is v2. Chrome usually shows it in the pad name on the bench; the experimental deep mode reads it directly.
Why does my PS4 controller show up twice?
Steam Input or DS4Windows creates a virtual Xbox pad next to the real one. Close them to see one pad.
Why are touchpad, gyro and battery missing?
Through the Gamepad API a DualShock 4 shows 8-bit sticks, buttons and triggers only, with no touch position, gyro or battery. The experimental deep mode in desktop Chrome or Edge tries to read them.
Can the bench recalibrate sticks or update firmware?
No. It reads and judges; it never writes calibration or firmware to the pad.