Documentation in beta. Some text and images will be reworked as the app settles into 1.0. If a section reads stale, flag it via the feedback form.

Profiles

A profile is a complete set of tuning values — every slider on the Tuning page — saved under a name. Profiles are local files. They don't sync, they don't phone home, and you can copy them between machines with plain filesystem tools. The Profiles page is built for a growing library: starter profiles and your own saved profiles share one searchable list, and the active profile is highlighted.

Profiles page. Starter presets and saved profiles share one list, with origin chips, search, sort, active highlighting, and profile actions.
Figure 1. Profiles page. Starter presets and saved profiles share one list, with origin chips, search, sort, active highlighting, and profile actions.

Where profiles live

  • Windows %APPDATA%\ffb-bridge\profiles\
  • Linux ~/.config/ffb-bridge/profiles/ (honours $XDG_CONFIG_HOME when set)

Each saved profile is a single JSON file named after the profile, with spaces replaced by dashes and invalid filename characters replaced. Copying one across machines is as simple as putting the file in the same folder on the other side.

One library

The list includes both built-in starters and profiles you have saved. Each row shows an origin chip, modified date, size, and whether it is active. Use search and sort when the list gets long, select a row to see its details, then click Use selected profile to apply it immediately.

Profile library list. Starter rows are marked as built-in, the current profile is highlighted, and saved profiles appear in this same list with edit and delete actions.
Figure 2. Profile library list. Starter rows are marked as built-in, the current profile is highlighted, and saved profiles appear in this same list with edit and delete actions.

Starter presets

FFB-Bridge ships with read-only starter profiles named after the aircraft in Microsoft Flight Simulator:

  • Cessna 172 Skyhawk (G1000)
  • Daher TBM 930
  • Beechcraft King Air 350i
  • Airbus A320neo
  • Boeing 747-8 Intercontinental

Starters are baselines, not perfect final tunes. Load the closest one to the aircraft you are flying, test the feel, then use Save as… or Duplicate selected to create an editable copy.

Saving a profile

The shortest path: go to Tuning, adjust until it feels right, click Save as…. Name it after the aircraft — Cessna 172 — my feel, King Air C90 — heavy roll, etc. The new profile becomes the active profile immediately.

From this page you can:

  • Use selected profile — make the selected starter or saved profile active without visiting Tuning.
  • Duplicate selected — clone a starter or saved profile under a new name.
  • Delete selected — remove a saved profile with confirmation. Starter profiles cannot be deleted.
  • Refresh — rescan the profile folder after adding files by hand.

Switching profiles in flight

Loading a profile from the Profiles page, the top profile picker, or the Tuning page applies on the next 50 Hz tick. The stick stays armed through the change; you'll feel the forces reshape as the new sliders take effect. The top strip updates to show the same active profile that is highlighted in the library.

Loading does not save

If you'd modified the previous profile's sliders without saving, switching away discards those changes. The profile picker shows an amber dot whenever the active profile is dirty — if you see it, save before loading.

Sharing profiles

The profile JSON file is portable. If a friend sends you Cessna-172-smooth.json, drop it into your profiles folder and it shows up on the Profiles page the next time you open it. The reverse works too — grab the file and email it.

Possible future

A profile-sharing feature — browse tunes other users have published, subscribe to one a friend made — is on the maybe-later list. Nothing is decided yet. See the pricing section for the broader discussion of what a paid tier might look like.

The JSON schema

Each profile file is strict JSON: every field has a known key, unknown keys are rejected on load. This is deliberate — it keeps third-party tools that write profiles in a known shape from ever shipping invalid files.

{
  "Forces": {
    "MasterGain": 1.0,
    "SpringStrength": 0.6,
    "PitchAirspeedGain": 0.85,
    "RollAirspeedGain": 0.70
  },
  "StickFeel": {
    "GLoadEnabled": true,
    "DynamicDeadbandEnabled": true,
    "RateDampingEnabled": true
  }
}

You generally shouldn't need to hand-edit these — the Tuning page is faster — but reading them to diff two profiles (git diff cessna-defaults.json cessna-my-feel.json) is often the quickest way to see what you actually changed.