Methodology 2026.10.24.3

Browser Gamepad Diagnostic Methodology

Updated

Every active check uses this registry for its required action, sample source, evidence, status rules, confidence, score eligibility, and limitations.

Open Controller Tester

System-wide limits

  • Results are browser-observed diagnostic aids, not electrical or laboratory measurements.
  • A Gamepad id is a descriptor and cannot prove a unique physical controller identity.
  • Unsupported and unavailable checks are excluded from health scoring.
  • Incomplete or interrupted checks never count as passes.
  • Health scores require at least 70% eligible evidence coverage and completion of the available core checks.
  • Repair guidance begins with a repeat test and reversible checks.
01

Directional return consistency

Observation only
Required capability
One confirmed two-axis stick
Required action
Move up, right, down, and left twice. Release and explicitly start each resting observation; review, retry, or skip a direction.
Sample source
Continuous browser observations including unchanged input

Evidence

eight direction/round records, time-weighted resting medians and variation, complete-window offset range and median separation, skipped or incomplete directions.

Status rules

Arm a new movement below 0.5 along the direction; reach at least 0.7 with perpendicular displacement no greater than 0.35. After user confirmation allow 500 ms settling, then 1500 ms measurement with the hands-off continuity and stability rules. Eight complete windows are observed completion, independent of offset size. Gaps above 250 ms interrupt the check; skipped directions remain incomplete. Series limit: 180 seconds.

Confidence

Complete browser observations have medium confidence; incomplete or interrupted evidence has low confidence.

Limits

  • Does not measure snapback. Separation is descriptive, not a manufacturer tolerance. Window status describes the separate 0.10 center reference; overall completion describes observed actions.
  • The page cannot verify physical release; repeat unexpected results.
  • The latest attempt is retained separately for each stick in this session and input profile.
02

Button hold and release

Observation only
Required capability
One confirmed exposed button
Required action
Release for 250 ms, press and hold for 500 ms, then release for 250 ms.
Sample source
Continuous browser button observations including unchanged input

Evidence

observed hold duration, short holds, release interruptions, read and timestamp-change counts.

Status rules

Require a fresh press after rest, at least 500 ms continuously pressed, and a sustained 250 ms release. Early release or a press during release requires a fresh attempt and remains counted. Invalid input or gaps above 100 ms during the attempt make the check incomplete. A gap during initial rest restarts that rest period without counting unobserved time. Time limit: 15 seconds.

Confidence

Observed completion has medium confidence; repeated reads cannot verify hardware freshness.

Limits

  • Does not establish electrical chatter or long-term reliability.
03

Repeated trigger cycles

Observation only
Required capability
One or two independent confirmed trigger mappings
Required action
Perform three full pull, hold, release cycles for each available trigger, one at a time.
Sample source
Continuous browser trigger-value observations including unchanged input

Evidence

per-cycle minimum, maximum and final value, intermediate delivered levels, full-hold and released durations.

Status rules

Rest at or below 0.12 for 300 ms; reach and hold at least 0.90 for 300 ms; release at or below 0.12 for 300 ms. Other available triggers must remain released during each cycle. Invalid input or observation gaps above 100 ms during a cycle make the check incomplete. A gap during initial rest restarts that rest period without counting unobserved time. Three cycles per available trigger; time limit 60 seconds.

Confidence

Complete observed cycles have medium confidence, including digital-only triggers; missing intermediate values do not prove a fault.

Limits

  • Intermediate levels depend on user motion, firmware and delivery; they are not electrical resolution or mechanical smoothness.
04

Stick center stability

Score eligible
Required capability
At least one browser-exposed two-axis stick
Required action
Set the controller down during a two-second preparation countdown, then keep the sticks untouched for the full 3.5-second sampling window. Preparation readings are excluded.
Sample source
Continuous Web Gamepad API reads timed by the browser observation clock, including unchanged input

Evidence

time-weighted per-stick median center, time-weighted radial and variation 95th percentiles, median absolute deviation, movement-frame count, observed duration, maximum observation gap, timestamp behavior.

Status rules

Observe 3.5 seconds with at least 95% duration coverage and no gap above 250 ms. Missing or invalid input, hidden-page time, interrupted coverage, or substantial movement makes the check incomplete. Variation95 must not exceed the smaller of 0.05 and half the selected threshold, and maximum excursion from the median must not exceed the smaller of 0.10 and the selected threshold. A stable median center above the selected threshold is a fail observation.

Confidence

Complete stable browser observation has medium confidence, independent of read count or changing controller timestamps. Incomplete observation has low confidence. Repeated reads cannot verify fresh hardware reports.

Limits

  • Cannot distinguish user pressure, calibration, software remapping, and physical sensor wear by itself.
  • Unchanged or unavailable timestamps do not invalidate continuous observation, but cannot establish hardware report freshness. Confirm live stick response before checking its resting position.
05

Stick sweep coverage

Observation only
Required capability
At least one browser-exposed two-axis stick
Required action
Move each available stick slowly around its full edge.
Sample source
Distinct browser axis snapshots, preserving changed values when timestamps repeat

Evidence

maximum radius, 12-bin angular coverage, per-bin edge radius, observed unique axis levels.

Status rules

Each available stick needs radius 0.85 or greater in at least 10 of 12 angular bins, with valid input; otherwise the sweep is incomplete. A pass confirms coverage of this action, not hardware health.

Confidence

Confidence requires adequate angular coverage and enough unique reports.

Limits

  • Circularity and resolution are browser-observed estimates, not electrical resolution or authenticity tests.
06

Release overshoot

Score eligible
Required capability
Browser-exposed stick axes
Required action
Release each available stick from right, left, down, and up, letting it settle near center after every flick.
Sample source
Continuous browser-timed axis observations, including unchanged input

Evidence

per-axis valid trials, release time, opposite-direction peak in settle window, sample cadence.

Status rules

Each available axis needs a complete release from both positive and negative edges. Observe 180 ms with no gap above 40 ms and at least the final 60 ms within 0.12 of center. Partial holds, invalid readings, hidden time, and early re-flicks invalidate a trial. An overshoot at or above 0.15 fails after coverage is complete.

Confidence

Complete browser-observed trials have medium confidence. Sub-frame peaks and physical intent remain unverified.

Limits

  • Measures browser-visible release overshoot and cannot replace an oscilloscope or raw device report analysis.
07

Trigger range and release

Score eligible
Required capability
Independently mapped analog trigger values
Required action
Begin released, then fully pull and release each trigger.
Sample source
Continuous browser-timed reads of independently mapped trigger values

Evidence

per-trigger start, maximum, release transition, post-release settle, independent pull observed.

Status rules

Begin at or below 0.12, reach at least 0.90 while the other available trigger is at rest, then remain at or below 0.12 for 300 ms with no observation gap above 100 ms. Invalid data, held-at-start, incomplete range, and ambiguous release are incomplete; a held input cannot establish hardware failure.

Confidence

A complete valid cycle has medium confidence, independent of changing timestamp counts.

Limits

  • Pull smoothness depends on the user motion and browser delivery cadence.
08

Face-button registration

Score eligible
Required capability
At least one mapped face button
Required action
Press and release every available mapped control.
Sample source
Distinct browser-observed button snapshots with validity checks

Evidence

per-control starting state, press observed, release observed, browser-visible transition count.

Status rules

Available controls are evaluated independently. Missing press or release is incomplete; the basic test does not claim electrical chatter.

Confidence

A complete browser-visible press and release gives medium confidence in registration only.

Limits

  • Sub-frame electrical contact bounce is outside standard Gamepad API precision.
09

D-pad registration

Score eligible
Required capability
At least one mapped D-pad direction
Required action
Press only the prompted direction, then release completely before following the next prompt.
Sample source
Distinct browser-observed button snapshots with validity checks

Evidence

per-direction press and release, starting state, transition count.

Status rules

Complete the available directions in prompted order, starting released. Unexpected or overlapping directions make the sequence incomplete with a warning. Repeat to distinguish user error from an input problem; unavailable controls are excluded.

Confidence

A complete browser-visible cycle gives medium confidence in registration.

Limits

  • Does not determine the controller firmware SOCD policy or membrane condition by itself.
10

Shoulder-button registration

Score eligible
Required capability
At least one mapped shoulder control
Required action
Press and release every available mapped shoulder control.
Sample source
Distinct browser-observed button snapshots with validity checks

Evidence

per-control press and release, starting state, transition count.

Status rules

Available controls are evaluated independently; incomplete action is not a hardware failure.

Confidence

A complete browser-visible cycle gives medium confidence in registration.

Limits

  • Intermittent faults require repeated trials and confirmation outside this basic check.
11

Auxiliary-control registration

Score eligible
Required capability
At least one mapped menu, stick-click, home, auxiliary control, or independently exposed raw button
Required action
Press and release every available mapped control.
Sample source
Distinct browser-observed button snapshots with validity checks

Evidence

per-control press and release, starting state, transition count.

Status rules

Optional unavailable controls are excluded; available controls need a complete cycle.

Confidence

A complete browser-visible cycle gives medium confidence in registration.

Limits

  • Browsers and operating systems may reserve or omit system buttons.
12

Opposing-direction policy observation

Observation only
Required capability
Four independently mapped D-pad directions
Required action
Attempt horizontal and vertical opposing pairs as instructed.
Sample source
Continuous browser-observed D-pad snapshots with validity checks

Evidence

horizontal observed policy, vertical observed policy, transition order.

Status rules

Only raw simultaneous output confirms an opposing pair. Transitions within 50 ms may suggest last-input priority but remain inconclusive; gaps and hidden suppression do not establish a policy.

Confidence

Raw simultaneous output is directly visible. Other inferred policies have low confidence and remain incomplete.

Limits

  • Tournament legality depends on the selected game and ruleset.
13

Vibration confirmation

Observation only
Required capability
A standard actuator or explicitly associated supported HID output target
Required action
Run one output command and confirm whether vibration was felt.
Sample source
Gamepad haptic command result or validated device-specific WebHID output

Evidence

session id, run id, output path, command acceptance, duration, user confirmation.

Status rules

Unavailable output is excluded. A command confirmation is subjective and excluded from hardware-health scoring.

Confidence

Confidence requires a command accepted for the active session and an unambiguous output target.

Limits

  • A rejected or unfelt command can reflect browser, transport, battery, firmware, or application state.
14

Additional axis activity

Observation only
Required capability
More than four browser-exposed axes
Required action
Move controls that may be represented by additional axes.
Sample source
Unassigned Web Gamepad API axes after semantic stick and control normalization

Evidence

changed axis indices, observed ranges.

Status rules

Reports activity only and never infers a gyroscope or sensor type.

Confidence

Confidence describes observed range only.

Limits

  • Extra axes can represent hats, sliders, paddles, or other controls rather than motion sensors.
15

Observed update cadence

Observation only
Required capability
Changing nonzero Gamepad timestamps
Required action
Keep the page focused and move a control during observation.
Sample source
Differences between unique Gamepad timestamps plus browser delivery times

Evidence

median source interval, interval standard deviation, unique report count, browser delivery cadence.

Status rules

Unavailable when timestamps do not change enough; never treated as a direct USB polling-rate measurement.

Confidence

Confidence increases with unique source reports and stable foreground observation, and decreases after hidden-tab or scheduling contamination.

Limits

  • Display refresh, browser scheduling, page load, transport, and controller behavior can all affect the observation.

Health score semantics

Unsupported and unavailable checks leave eligibility. Incomplete, interrupted, and low-confidence failures stay uncovered. A numerical score requires at least 70% of eligible evidence plus the available core checks. SOCD policy, vibration, extra axes, stick sweep estimates, and cadence are excluded from hardware-health scoring.