How FFB Probe works
A tester-focused guide to the wizard, the live force-feedback sections, the two local report files, known issues, and exactly what gets sent when you click Share.
The guided run
FFB Probe is organized around one short tester journey: land on the value-prop screen, detect the stick, confirm the safety checklist, feel each live effect, answer what happened, then keep or share the resulting report. Each screen focuses on the task at hand so testers always know what to do next.
Header
The header keeps the FFB Probe identity visible while the current step owns the main work area. Run controls appear inside the active screen, close to the action they affect.
Progress
The wizard shows progress in context: checklist count before probing, section cards and effect counts while forces are active, and a clear result state when the run ends.
Work area
The body is full-bleed and changes with the phase: live stick preview, checklist, signal diagrams, answer chips, or the final report/share panel.
Land
First-launch landing explains what FFB Probe is, what the test takes, and why the public hardware database matters before the tester does anything.
Detect
The next screen identifies the joystick, VID:PID, and force-feedback capability — and shows a live readout of the stick — before any force is played.
Prepare
The checklist makes the tester close simulators, clear desk space, keep a hand on the stick, and handle FFB2 grip-sensor quirks.
Feel
The running view shows the live section, expected signal, countdown, and the current effect without hiding the Stop control.
Answer
After each effect, two surfaces capture the tester's response: a chip grid (multi-select, public — these labels appear on the device's hardware-DB page) and an optional free-text notes box (private — kept server-side, never on the public page).
Keep or share
The result page keeps reports local by default. Sharing sends the redacted hardware payload, and an optional email field lets you ask for a heads-up if FFB-Bridge starts supporting your stick.
What the probe asks the hardware to do
The standard Windows battery presents four GUI-visible live sections: Constant, Periodic, Condition, and Ramp. Counts can vary because the probe respects what each driver actually enumerates.
Polarity sweep
A steady pull for about five seconds. Report the physical direction the stick moved.
Useful chips: Left, Right, Forward, Backward, Did nothing
Two-axis diagonal
A diagonal pull using both X and Y motors at the same time. It should not leave the device weak afterward.
Useful chips: Diagonal, one axis only, weak, Did nothing
Sine
A smooth repeated vibration or rocking motion for about five seconds.
Useful chips: Slow oscillation, Fast oscillation, Buzzing
Square
A sharper on/off vibration or repeated tapping for about five seconds.
Useful chips: Fast oscillation, Buzzing, one jerk
Triangle
A repeated back-and-forth motion, usually smoother than square but more mechanical than sine.
Useful chips: Slow oscillation, Fast oscillation
Sawtooth
A repeated ramping or buzzing motion. It may feel asymmetric.
Useful chips: Ramping, Buzzing, weak
Spring
Gently move the stick: it should push back toward center.
Useful chips: Centered, Damped, Did nothing
Damper
Gently move the stick: it should resist motion, like moving through syrup.
Useful chips: Damped, Friction, Did nothing
Inertia
Gently start and stop moving the stick: it may resist changes in motion.
Useful chips: Inertia, heavy, Did nothing
Friction
Gently move the stick: it may feel heavier or sticky.
Useful chips: Friction, Damped, Did nothing
Ramp sweep
A force that builds from zero to the configured magnitude on each tested actuator.
Useful chips: Ramping, Left, Backward, Did nothing
Saturation probe
Multiple co-directional constants characterize how the device clips when effects stack.
Useful chips: Strong, Weak, clipped, Did nothing
The two files each run writes
Reports save to %LOCALAPPDATA%\Programs\ffb-probe\Results\FFB-Probe-<timestamp>\ on Windows. Two files per run; the HTML embeds the JSON in a <pre> block so the local report and the upload payload are guaranteed to be the same bytes — no second hidden artifact.
Self-contained report — opens in a browser, has its own Share button. ~22 KB
The literal SubmissionPayload — same bytes embedded at the bottom of the HTML, same bytes the GUI POSTs to /submit. ~6 KB
Past the unsigned-installer warnings
The installer is a per-user install — no admin password required, no UAC prompt. It places the binary under %LOCALAPPDATA%\Programs\ffb-probe and writes a desktop shortcut and a Start Menu entry. The directory chooser is hidden so you can't accidentally install somewhere weird. Verify the SHA-256 on the Download page matches the file you have before running.
Beta builds aren't code-signed yet — code-signing is on the v1.0 roadmap. Two warnings you may hit, both expected:
Windows SmartScreen — "Windows protected your PC"
You'll see a blue dialog with "Unrecognized app" or "Windows protected your PC" and a single Don't run button. Click More info at the top, then Run anyway at the bottom. Same path the bridge installer takes.
Windows 11 Smart App Control (SAC)
If SAC is on (Active mode), the installer simply won't launch — no SmartScreen prompt, no Run anyway option, nothing happens at all. SAC refuses any unsigned executable outright. Workaround until v1.0 ships signed binaries:
- Open Settings → Privacy & security → Windows Security → App & browser control → Smart App Control settings.
- Switch SAC to Off. Windows warns you can't turn it back on without a clean install — that's only true for the OFF→ACTIVE transition. Going to Evaluation or staying off is fine.
- Run the probe installer.
- Once installed, you can re-enable SAC if you want. The installed binary stays runnable.
Microsoft's SAC FAQ covers the toggle in more detail.
Once the v1.0 release ships with a code-signing certificate, both warnings go away and SAC won't block the installer. Until then, treat the warnings as expected, not as evidence of a problem.
Known issues and recovery steps
No force-feedback device detected
Close flight simulators, joy.cpl, Logitech Profiler, and any other tool that may already own the device. Unplug and replug the stick, then rescan.
Worker crashed mid-run
The GUI keeps running because the dangerous DirectInput work is isolated in a worker process. Keep the partial report and send it to support.
The stick keeps pulling
Unplug USB and power, wait ten seconds, reconnect power first, then USB. FFB2 firmware can hold the last force after hard faults.
SideWinder FFB2 does nothing
Cover or loosely hold the grip sensor. DirectInput calls can succeed while the actuator is gated by the optical sensor.
Linux permission denied
Your user may need read/write access to /dev/input/event* nodes. Add an input-group rule or run the capability scan with appropriate permissions.
Windows SmartScreen "Unrecognized app"
The installer isn't code-signed yet — code-signing is on the v1.0 roadmap. Click "More info" then "Run anyway" to continue. Verify the SHA-256 on the Download page matches the file you grabbed before running.
Windows 11 Smart App Control blocks the installer
If SAC is enabled the installer simply won't launch — no prompt, no "Run anyway". Toggle SAC off via Settings → Privacy & security → Windows Security → App & browser control → Smart App Control settings, install the probe, then turn SAC back on. Beta builds aren't signed; once we ship code-signing for 1.0 this step goes away.
The literal bytes are the audit surface
Running the probe locally does not send anything — the two files stay on disk. Clicking Share POSTs the JSON file to /submit on this server. That JSON is the same bytes embedded at the bottom of the HTML report; you can read it before sharing.
The public hardware database renders an aggregate view per VID:PID. The only field never displayed is the per-effect free-text notes — what the tester typed in the optional notes box during the run. Everything else (chip selections, capability flags, supported effects, HRESULT codes, failed effects, run errors) appears on the device page exactly as the probe wrote it.
Read the full privacy contract → · Open the sample uploaded report →