The Betaflight CLI (Command Line Interface) is a powerful tool that gives FPV drone builders direct access to all flight controller settings. While most pilots rely on the graphical interface, the CLI provides deeper control, faster workflows, and access to all advanced settings. In this guide, you’ll learn what the CLI is, why it matters, the essential commands every pilot should know, and how to configure and troubleshoot using the CLI.
Table of Contents
What is Betaflight CLI?
Betaflight CLI is a text-based interface where users can send commands and configure settings on the flight controller.
Why use the CLI when you already have a graphical user interface (GUI)? While most settings are accessible through the GUI, some advanced options are only available via the command line. These settings are typically not needed by most pilots, so they are kept out of the GUI to reduce clutter.
Additionally, the CLI is an efficient way for advanced users to check, copy, and restore settings.
Why Use Betaflight CLI?
- Access to Advanced Settings: CLI provides access to all settings, including those not available in the GUI.
- Easy Backup and Restore: You can save and restore configurations by copying and pasting commands.
- Efficient Troubleshooting: Quickly identify and adjust parameters that might be causing issues with your drone.
How to Access CLI?
- Connect your flight controller to your computer via USB
- Open Betaflight Configurator and click Connect
- Go to the CLI tab on the left-hand panel
You’ll see a command prompt where you can start typing commands.
If you’re new to Betaflight Configurator, check out this tutorial: https://oscarliang.com/betaflight-firmware-setup/
How to Use Betaflight CLI
You can type commands in the text input field at the bottom of the screen and press Enter to execute them.
Typically, a command follows this structure:
[command] [setting] = [value]
For example, to disable RC smoothing:
set rc_smoothing = OFF
save
After changing a setting, you must type save to apply it. The flight controller will reboot immediately after saving.
If you exit the CLI without saving, your changes will be lost.
To exit the CLI without saving settings, you can
- Enter the command
exit - Or, click on another tab
- Or, click the top-right “disconnect” button
- Or, unplug USB cable
- Or, just close the configurator
CLI Syntax Basics
The syntax in Betaflight CLI is simple and beginner-friendly.
Not Case Sensitive
Commands are case insensitive in CLI, you can type commands in any case you want, big letters, small letters, don’t matter, all of the following work the same:
set serialrx_inverted = on
SET SERIALRX_INVERTED = ON
seT serialRX_inverTED = oN
Spaces Don’t Matter
Extra spaces around the equal sign (=) don’t matter. The CLI will still interpret the command correctly, all these command work the same:
set serialrx_inverted = on
set serialrx_inverted=on
set serialrx_inverted =on
set serialrx_inverted = on
Basic CLI Commands You Must Know
help – List All Commands
help
This shows every available CLI command.
Use this when:
- You don’t know what commands exist
- You’re exploring new features
status – Check FC System Info
status
This is one of the most important commands.
It shows:
- CPU type (F4, F7, H7, etc.) and clock speed
- Available sensors (gyroscope, accelerometer, barometer, magnetometer, GPS, etc.)
- Flash memory
- Firmware build key (useful for checking build options)
- System info such as CPU load, voltage, gyro rate, etc.
Use this for quick diagnostics, especially if something isn’t working (e.g., gyro missing).
get – View Settings
get
You can use this to search for specific settings, which is especially useful if you don’t have them memorized:
get gps
For instance, this returns all settings that begin with “gps” (basically all GPS-related settings), you can then pick the settings you want, and check its current value.
And if I want to check Turtle mode related settings (Flip Over After Crash), I type
get crashflip
set – Change Settings
set yaw_expo = 0
This modifies a parameter.
save – Apply Changes
save
Changes are NOT saved until you run the save command. This will reboot the flight controller.
exit – Leave Without Saving
exit
Use this if you don’t want to save changes.
Tip: You can also unplug the FC to discard unsaved changes.
Saving and Copying Configurations
To output your entire configuration, use:
dump
This prints all Betaflight settings.
This can be used for backing up your drone configuration, or for sharing with other pilots when troubleshooting a problem. You run this command, and copy the output to a text file. When you want to restore Betaflight settings (or copy the exact same settings to another drone), you simply copy these lines, paste them in the CLI, and enter save.
One problem with dump is the huge output – typically over 1000 lines. That’s why the diff command might be preferred.
diff
Unlike dump, this only shows settings that differ from defaults, making it much shorter and easier to work with.
Tip: For backup and restore, there’s no need to use CLI nowadays, the process is now simplified by using the Preset tab as explained here: https://oscarliang.com/backup-restore-betaflight-config/
Tips and Tricks
Press TAB to Auto-Complete
Start typing a command and press TAB to auto-complete or see suggestions.
Start typing a command and press TAB to auto complete. If there are multiple options, the CLI will suggest all possibilities. This is convenient, especially for long commands.
Don’t Forget to SAVE!
Always type save before exiting CLI if you want to keep the changes.
Bootloader Mode (DFU)
Instead of pressing the boot button on the FC, you can put the FC into bootloader mode (DFU mode) by entering this command:
bl
To exit DFU mode, unplug (power off FC) and reconnect the USB cable.
System Monitoring
The task command shows the CPU load of all processes running on the flight controller. This is great for troubleshooting if your FC is experiencing CPU load issues.
Commands Might Have Changed – Get Help!
Some command name might change from version to version. When in doubt, you can always check the available commands using help.
Other Useful Betaflight CLI Commands
Here are some frequently used commands you should know about:
| Command | Description |
|---|---|
defaults | reset all settings to default values and reboot (useful before you restore settings) |
dump | print configurable settings in a paste-able form |
diff | dump only the settings that are different from the defaults. Includes only the current PID profile. |
diff all | dump only the settings that are different from the defaults. Includes ALL PID profiles. |
exit | exit without saving |
get | get the value of the specified variable |
help | lists all commands |
save | save settings and reboot |
set | set the the given value to the variable. (name=value or blank or * for list) |
status | show system status |
version | show version |
bl | enter the DFU mode without pushing the button. Reboots the FC board in bootloader mode. |
bind_rx | initiate binding for receivers that uses these protocols: SPI, SRXL2 and CRSF |
Full CLI command list: https://www.betaflight.com/docs/wiki/guides/current/Betaflight-2025.12-CLI-commands
Conclusion
The Betaflight CLI may look intimidating at first, but once you learn a few key commands, it becomes an incredibly powerful but simple to use tool. Betaflight CLI is essential for any FPV drone pilot looking to dive deeper into their setup, explore advanced features, troubleshoot issues, and backup and restore configurations easily. Happy flying!
Edit History
- May 2018 – Guide created
- Feb 2019 – Updated, added “Syntax”
- May 2021 – Added “Tips and Tricks”
- Aug 2024 – Updated
- Mar 2026 – Updated
10 comments
Hi,
good information to start.
Is there also a possibility to do some “IF / THAN” ?
Thx
Oskar
super informative, thankyou
hello.. i got a lizard95 from eachine ( dsmx reciever) but i cant bind it… it has no binding button and i couldnt bind it from CLI…
thanks in advance
Hi,
I have a tinyhawk 2, I crash and a change the Aio flight controller, I did the bind with the RTF transmitter it binded ok, but some how I push reset settings no Betaflight, now my flight controller si dead. Is there something I can do to recover my flight controller. Right now When I plug the battery I only get a led light sequence 5 blue, 4 green and 1 red then the sequece repeats one more time and then dies.
Hope you can help.
Francisco
Hi There,
This may be silly question but I am trying to activate serialrx_inversion = ON but I cant seem to find the correct command. I’ve done “get serialrx_inverted” to see what its set to but now I need to change and I cant lol. Any smart people out here with the correct command? Thanks in advance :)
Hi I’m building switches for my geprc KHX5 5″ quad and the “Arm” switch says in bright red “Arming Disabled”. How do I enable this arming mode to get it back to yellow or normal?
Quadcopter Doesn’t Arm? Let’s Fix it!
download impulse Rc app it installs dfu to your board.
Hello . If it’s anything like Mamba F22 mini. But more important you have upgraded to latest BetaFlight. Just enter expert mode, by the little tab. connect into the Firmware flasher, you should see the option for DFU mode right around the enable full chip erase area. When your ready to return to COM channel. whichever yours may be. Just exit out . you may need to close and restart BetaFlight depending on your computer’s O.S. or condition/Age. Happy Flashing. And Please Remember to Flash Responsibly.
Hi Oscar,
do you know the Cli command to put the FC-Mamba f405 mini into DFU mode?
I tried “bl” and “DFU”, but it does not work.
Thanks in advance.