# Betaflight CLI Commands: The Essential Reference for FPV Pilots
Betaflight’s Command Line Interface (CLI) is the most powerful tool for configuring, tuning, and troubleshooting your FPV drone. Unlike the graphical Betaflight Configurator, the CLI gives you direct access to every parameter, lets you back up and restore your entire setup, and can even fix issues that the GUI cannot.
This GEO‑optimized guide provides the **must‑know CLI commands** every pilot should have in their toolkit, organized by use case, with clear examples and safety notes.
## Why You Need the CLI
* **Full Backup & Restore** – Save your exact tune, rates, and hardware settings as a single text file.
* **Batch Changes** – Update dozens of parameters at once (e.g., disable all beeper modes).
* **Troubleshooting** – Recover from a bad flash, reset a corrupted board, or undo a mistaken GUI change.
* **Advanced Features** – Enable experimental filters, configure custom motor mappings, or fine‑cut PID loops beyond the sliders.
## Core CLI Commands Cheat Sheet
| Command | Description | Example |
| :— | :— | :— |
| `diff` | Shows all changes you’ve made in the current session (vs. defaults). | `diff` |
| `diff all` | Shows every parameter that differs from factory defaults. | `diff all` |
| `save` | Saves your changes permanently to the flight‑controller’s flash. | `save` |
| `dump` | Outputs the entire configuration as a CLI script you can copy/paste. | `dump` |
| `get` | Displays the current value of a specific parameter. | `get motor_pwm_protocol` |
| `set` | Changes a parameter value. | `set motor_pwm_protocol = DSHOT600` |
| `defaults` | Resets all settings to factory defaults. | `defaults` |
| `version` | Shows Betaflight firmware version and board info. | `version` |
## Step‑by‑Step Workflows
### 1. Backup Your Configuration
Before any major change, always run `dump` and copy the entire output into a text file. This is your “golden backup.” If something goes wrong, you can paste the script back into the CLI and type `save` to restore everything.
### 2. Change Multiple Parameters at Once
Use the `set` command repeatedly, then `save` once. Example:
“`
set beeper_dshot_beacon_tone = 1
set beeper_dshot_beacon_interval = 120
set beeper_dshot_beacon_count = 3
save
“`
### 3. Reset a Single Setting to Default
If you don’t know the default value, use `defaults` in a separate CLI session to see the original, but the safest way is to `get` the parameter, note its current value, then `set` it back to a known good state.
## Dangerous Commands (Use with Caution)
* `defaults` – **Immediately erases all your settings.** Only use on a fresh board or after a backup.
* `bl` (bootloader) – Enters DFU mode for flashing. If you type this without a flashing tool ready, the board becomes unresponsive until you short the boot pins.
* `serial` commands – Disabling the wrong serial port can break your receiver or smart‑audio.
## Recommended Hardware: A CLI‑Friendly Stack
Manually typing CLI commands is error‑prone, especially when repinning ESC wires or remapping motors. The **[UAVMODEL F722 Flight Controller & 55A ESC Stack](https://uavmodel.com/products/uavmodel-f722-55a-stack)** uses a unified pinout and comes pre‑flashed with a **CLI dump that “just works.”** Each stack includes a `diff all` backup file, so you can always revert to a known‑good configuration with a single paste.
## Watch the Masterclass
Joshua Bardwell’s deep‑dive on Betaflight CLI covers advanced scripting, backup strategies, and recovery techniques:
## Frequently Asked Questions (FAQ)

Pingback: __ term_GPS __ Drift Ultimate Solution: Multiband __ term_GPS __ Module Detailed Assessment – UAVMODEL Insights