Betaflight motors: protocol, direction, order and a props-off test
Betaflight motor direction and motor order are set on the Motors tab, with the propellers off. FlySpark shows the ESC protocol, idle, a motor test, and on Betaflight 4.3 or newer a wizard that pulses each motor so you can mark where it sits. When the saved protocol is DShot, a direction section sends the reverse or normal command to each ESC and then saves it on the ESC.
The same tab exists for INAV, with INAV's own protocol, idle and pole count. Connect in Chrome or Edge over USB or Bluetooth, or use the Android or iPhone app. Wi-Fi MSP is the apps only. Bidirectional DShot, which the RPM filter needs, is an ESC feature as well as a protocol: the footer on the protocol card says bidirectional DShot needs ESC firmware that supports it.
Free. Hardware connections need Chrome or Edge on a computer; phones use the FlySpark app.
- Free
- Nothing to install
- Demo without hardware
In short
The Motors tab sets the ESC protocol, motor direction, motor order and a slider test. FlySpark sends DShot direction commands only when the saved protocol is DShot. Motor order on Betaflight needs 4.3 or newer, and the propellers come off before any slider moves.
Key facts
- Betaflight protocols include PWM, OneShot125, OneShot42, MultiShot, Brushed, DShot150, DShot300, DShot600, ProShot1000 and Disabled.
- A protocol change applies after a reboot.
- DShot direction is spin-normal or spin-reversed, then a save command to the ESC.
- Motor order needs Betaflight 4.3 or newer. Each motor pulses and you mark where it sits.
- Motor idle on Betaflight is 0 to 20 percent.
- Turtle mode needs DShot and ESCs that can reverse.
- The motor test tells you the motors will spin and to keep clear.
Betaflight
INAV
ArduPilot
PX4- BLHeli_S
Bluejay
AM32
ExpressLRS
EdgeTX
DroneCAN
MAVLink
Try it
Spin a motor
Props off. Tap a motor, then spin. Tap it again to reverse that motor.
Betaflight
Features
- 01
Protocol
Betaflight choices are PWM, OneShot125, OneShot42, MultiShot, Brushed, DShot150, DShot300, DShot600, ProShot1000 and Disabled. The footer says a protocol change applies after a reboot.
- 02
Idle, poles and KV
Motor idle is a percent from 0 to 20, in tenths. Motor poles run from 4 to 255, step 2, because the magnet count has to be even for RPM. Motor KV runs from 0 to 40000 in steps of 10.
- 03
DShot direction
Shown when the saved protocol is DShot or ProShot. FlySpark sends a blocking DShot command: spin normal or spin reversed, then the save-settings command, to one motor or to all motors.
- 04
Motor order
Each output pulses and you mark which corner it is. The map is saved on the flight controller. There is no resource remapping in this wizard. Betaflight older than 4.3 shows that motor order needs 4.3 or newer.
- 05
Motor test
A warning says the motors will spin when you move the sliders, and to take every propeller off. Each slider is labelled Motor 1, Motor 2, and so on, for the mixer count.
- 06
INAV motors
INAV has its own protocol list, idle, pole count and a turtle-mode power setting. The turtle hint says it needs DShot and reversible ESCs. Protocol changes still apply after a reboot.
- 07
3D and reversible
Betaflight can toggle 3D mode from the Modes tab, which uses reversible motors. INAV has a reversible-motor card on this tab. Props off, and know which way is thrust, before you enable it.
Pick the protocol before you reverse a motor
Direction commands are DShot commands. If the board is still on OneShot or PWM, the direction section is hidden, because those protocols cannot carry the command. Set DShot150, DShot300 or DShot600, save, reboot, and come back. ProShot1000 is treated as DShot for this check. Disabled is not.
The direction command is sent with the motors stopped. It sets one motor index, or all motors, to spin normal or spin reversed, and then sends the save command so the ESC keeps it. If you only reverse and forget that the ESC must store it, the next power cycle can come back the old way. FlySpark sends the save command together with the direction.
Motor order is the mixer map, not the ESC
Motor order says which flight-controller output is the front-right motor, which is the rear-left, and so on. The wizard pulses one output at a time. You tap the position where you felt or saw that motor. The result is stored on the flight controller. It does not rewrite ESC firmware.
Betaflight 4.3 is the first version whose firmware supports this wizard. Older firmware gets a plain note instead of the button. INAV has its own order flow on the same card. After you save, use the motor test, still with props off, and confirm the slider labelled Motor 1 moves the motor you think is Motor 1.
The motor test
The test card warns that motors will spin as soon as a slider moves. Remove every propeller and keep the craft held down. A slider at the bottom is stopped. Raise one at a time. If the wrong motor spins, the order map is wrong. If it spins the wrong way for the thrust you want, use DShot direction, not a swap of two signal wires, unless the protocol is analogue and direction commands do not exist.
Do this on a bench supply or a battery you can disconnect, and do not arm from the radio while a slider is up. Arming and the sliders are both ways to spin a motor. One at a time.
Poles, KV and the RPM filter
Motor poles are the magnets in the bell. RPM filtering and any RPM readout are wrong if the pole count is wrong. The step is 2 because a motor does not have an odd magnet count. KV is stored so the firmware can reason about the motor. It does not by itself change how fast the motor spins; the protocol, the throttle and the ESC do that.
Bidirectional DShot is what lets the ESC report RPM. The protocol footer says the ESC firmware has to support it. Bluejay and AM32 do. The ESC configurator is where those ESCs are flashed and their direction can also be set. The Filters tab then uses that RPM for the RPM filter.
Turtle mode and idle
Turtle mode is the Flip over after crash mode. It needs DShot and ESCs that reverse. INAV shows a turtle power percent on this tab and says the same requirement in the hint. Assign the mode on the Modes tab only after a props-off reverse test has worked.
Motor idle is the percent of throttle the motors sit at when armed and the stick is down. Betaflight allows 0 to 20 percent. Too high and the quad wants to climb the moment you arm. Too low and DShot motors can desync on a hard snap. Change it in small steps.
None of these steps need a radio arm if you use the sliders. That is the safer bench check. Arm from the transmitter only after direction and order are right, the props are still off, and the arming flags on Setup are clear. Then put the props on, outside, and hover once before you trust a reverse you did on the bench.
At a glance
Motor fields
| Betaflight protocols | PWM, OneShot125, OneShot42, MultiShot, Brushed, DShot150, DShot300, DShot600, ProShot1000, Disabled |
|---|---|
| Idle | 0 to 20 percent |
| Poles | 4 to 255, step 2 |
| KV | 0 to 40000, step 10 |
| Motor order | Betaflight 4.3 or newer |
| Direction | DShot command, then save on the ESC |
Betaflight
Set direction and order with the props off
Remove the propellers
Do this before you connect. The test sliders and the direction wizard both spin motors.
Set DShot and reboot
Choose DShot300 or DShot600, save, and reboot when FlySpark asks. Analogue protocols cannot take a direction command.
Run motor order
On Betaflight 4.3 or newer, start motor order, mark each pulsing motor, and save.
Reverse the ones that are wrong
Use the direction section. FlySpark sends the reverse or normal command and the ESC save command. Check each motor with the test slider.
Troubleshooting
Common problems and fixes
Problem
A motor spins the wrong way after a reboot
Fix
The direction command has to be saved on the ESC. Run the direction action again and power-cycle once more. If the protocol is not DShot, reverse two of the three motor wires instead, with the battery disconnected.
Problem
The wrong motor spins for Motor 1
Fix
Redo motor order. The slider number follows the mixer map, not the order you soldered the pads, until that map matches the frame.
Problem
Protocol will not stick
Fix
Save, then reboot. The footer says the new protocol applies after a reboot. Reading it back before the reboot still shows the old value.
Problem
RPM filter has no RPM
Fix
Bidirectional DShot has to be on, and the ESC firmware has to support it. Pole count has to match the motor. See the Filters page.
Glossary
Glossary of terms
- DShot
- A digital motor protocol. DShot150, DShot300 and DShot600 are the Betaflight choices, plus ProShot1000.
- Motor order
- Which output is which position on the frame. Stored on the flight controller.
- Turtle
- Flip over after crash. Motors spin backwards to right the craft. Needs DShot.
FAQ
Frequently asked questions
How do I reverse a Betaflight motor?
Save a DShot protocol, reboot, and use the direction section on the Motors tab. FlySpark sends spin-normal or spin-reversed and then the ESC save command. Props off.
Why is motor direction missing?
The section is shown only when the saved protocol is DShot or ProShot. PWM, OneShot and MultiShot do not carry the command. Set DShot, save and reboot.
What is Betaflight motor order?
It maps each flight-controller output to a position on the frame. The wizard pulses one motor at a time. It needs Betaflight 4.3 or newer and does not remap resources by hand.
Which DShot speed should I use?
DShot300 and DShot600 are the common choices. The tab lists DShot150, DShot300, DShot600 and ProShot1000. Faster is not always better on a noisy board. The protocol applies after a reboot.
Can I test motors without arming?
Yes. The motor test sliders spin one output at a time. The card warns you that they will spin. Props off, and do not arm from the radio at the same time.
What are motor poles for?
The magnet count in the bell. RPM and the RPM filter are wrong if it is wrong. The field steps by 2, from 4 up to 255.
Does turtle mode live on this tab?
The mode switch is on the Modes tab. This tab is where you confirm DShot and, on INAV, the turtle power. Turtle needs DShot and reversible ESCs.
Does this flash ESC firmware?
No. Firmware for BLHeli_S, Bluejay and AM32 is the ESC configurator, through the flight controller. This tab talks to the flight controller about protocol, order and DShot commands.
References
Sources
The official documentation behind the background facts on this page.
- Betaflight WikiBetaflight · betaflight.com
- Betaflight Setup GuideBetaflight · betaflight.com
- Betaflight FailsafeBetaflight · betaflight.com
- INAV WikiINAV on GitHub · github.com


