Axis Visualization

Watch every axis your controller reports as a live waveform over time, sticks, triggers, and anything else hiding past the standard four, the way an oscilloscope shows a signal rather than a single snapshot.

Quick start

  1. 1
    Connect your controller. Plug it in over USB, or pair it over Bluetooth in your device settings first.
  2. 2
    Press any button first. Browsers will not notice a controller until they see its first input.
  3. 3
    Move each stick and pull each trigger. A trace appears for every axis the moment it reports any value at all.
  4. 4
    Watch the waveform, not just the number. The shape of the line over time reveals things a single live value never will.

Live axis traces

Live status

Checking for a controller…

No controller detected

Connect a controller by USB or Bluetooth, then press any button. Most browsers will not notice it until you do.

Why a waveform tells you more than a live number

A single live readout answers exactly one question, what is this axis doing right now. A waveform over time answers a much more useful set of questions. Does the line return cleanly to zero every time you let go, or does it settle somewhere slightly off and stay there. Does it move in a smooth, continuous curve when you sweep the stick slowly, or does it jump in small steps that suggest the sensor's actual resolution is lower than you would expect. Does a brief, sharp spike appear and vanish on its own even though you never touched anything, the kind of momentary glitch a static number could easily display for one frame and disappear before you ever noticed.

None of these patterns are visible in a number that simply updates in place. They are only visible in a trace that keeps a short visual memory of where that number has actually been.

How to read the traces

The baseline and resting noise

Each axis trace sits on its own zero line. At rest, a healthy stick axis should draw an almost perfectly flat line right on that baseline, with at most an extremely fine, barely visible flicker. A trace that sits noticeably above or below its baseline while you believe nothing is touching it is showing you drift directly, in a much more immediate way than reading a single decimal number ever communicates.

Smooth sweeps versus stepped sweeps

Move a stick slowly through its full range while watching its trace. A healthy axis draws a smooth, continuous curve. An axis with a coarser internal resolution, or one developing certain kinds of wear, can draw a curve with visible small steps or flat plateaus where the reported value briefly fails to update even though the stick is still physically moving. This is a genuinely hard pattern to notice from a live number alone, since each individual step looks like a perfectly normal reading in isolation.

Trigger traces

Trigger axes should rest flat at their minimum value and rise in a clean, even curve as you pull, mirroring the shape of your own finger's motion reasonably closely. A trigger trace with a flat plateau partway through its rise, where pulling further does not move the line at all for a stretch, points to a genuine mechanical dead spot in that part of the trigger's travel.

Unexpected or extra axes

Most controllers report four axes, two per stick, but some report more, an extra axis for a secondary trigger pair, a directional pad reported as an axis rather than separate buttons, or other hardware specific extras. Any axis that appears here that you were not expecting is worth investigating on its own, simply by moving every input on your controller one at a time and watching which trace responds.

The two axis overlay

Pick any two axes to draw on the same canvas in two different colours. This is the most direct way to check a suspicion that two inputs are not behaving independently, for instance if pushing one stick seems to faintly affect a reading on the other, a wiring or cross talk issue that would otherwise be very hard to confirm through separate single axis views alone.

Connecting by device

Windows and Mac

Plug in over USB, or pair over Bluetooth in your system settings first. Chrome, Edge, and Firefox all support the controller out of the box once it is paired.

Android phone and tablet

Pair the controller in your device's Bluetooth settings, then open this page in Chrome. Other Android browsers vary in their support.

iPhone and iPad

Pair an MFi or Bluetooth controller in Settings, then open this page in Safari. iOS has supported the same Gamepad API since version 14.5.

Linux

Plug in over USB or pair over Bluetooth, then use Chrome or Firefox. Some distributions need a one time udev rule for certain Bluetooth controllers to be recognised by the operating system at all. If the controller is not visible at the system level, it will not be visible here either.

Troubleshooting

A trace never settles flat even though I am not touching anything

Let it sit untouched for a good ten seconds before judging it, since a stick can take a brief moment to settle right after being released from a firm push. If it is still wandering after that, the trace is showing you genuine drift on that axis.

I see small, regular steps in an otherwise smooth sweep

A small amount of stepping at very fine zoom is normal sensor quantisation and not a fault. Visible, chunky steps during an otherwise slow, deliberate sweep are more worth paying attention to, particularly if they appear at the same spot in the stick's range every time you repeat the motion.

An axis I was not expecting appears with no obvious input

Some controllers map a directional pad or an extra trigger pair to an axis rather than individual buttons. Try pressing every input on your controller slowly one at a time, watching the trace list, to identify what is actually driving that specific axis.

Nothing happens when I connect a controller

Press a button first. Many browsers will not register a controller until they see its first input.

Need help?

If a trace looks unusual, an axis you expected to see is missing entirely, or you want a second opinion on a waveform pattern before assuming a hardware fault, reach out directly. A short description of what you are seeing, along with your controller model and device, is normally enough to help track down what is going on.

info.gpadviewer@gmail.com