Blackbox Logging Setup and Field Guide
Blackbox records every sensor reading, RC input, PID output, and motor command at high frequency. It is the most powerful diagnostic tool available — without it, tuning is guesswork.
How the Pipeline Works
flowchart LR
A([Gyro<br/>8 kHz]) --> B[Betaflight<br/>PID loop]
B --> C[Blackbox<br/>logger]
C -->|Compressed| D[(Flash chip<br/>or SD card)]
D -->|USB| E[Betaflight<br/>Blackbox Explorer]
E --> F([Gyro trace<br/>FFT / Step response<br/>Motor outputs])The logger samples at your configured log rate (typically 1–4 kHz) and writes compressed frames to either onboard flash or a microSD card slot on the FC.
Enabling Logging
Configurator → Blackbox tab:
1set blackbox_device = SPIFLASH # or SDCARD
2set blackbox_sample_rate = 1/2 # log every 2nd PID loop (4 kHz at 8 kHz loop)
3set blackbox_mode = NORMAL # log when armed
4save
blackbox_sample_rate: a smaller fraction (1/4, 1/8) = lower log rate = longer recording before flash fills.
| Loop rate | sample_rate | Effective log rate | ~Minutes on 16MB flash |
|---|---|---|---|
| 8 kHz | 1/1 | 8 kHz | ~4 min |
| 8 kHz | 1/2 | 4 kHz | ~8 min |
| 8 kHz | 1/4 | 2 kHz | ~16 min |
| 8 kHz | 1/8 | 1 kHz | ~32 min |
For tuning: use 4 kHz (1/2). For long sessions where you only want crash data: 1 kHz (1/8).
What Each Field Tells You
axisP/I/D/F — the individual PID term outputs. The only way to know which term is oscillating.
motor[0–3] — final motor commands after all PID and filtering. Saturation (hitting 0 or 2047) shows torque limiting. Divergence between motors shows frame/motor imbalance.
gyroADC — filtered gyro. What the PID loop actually sees. Should track RC input cleanly.
gyroUnfilt — raw gyro before any filtering. Compare with gyroADC to see what your filters are removing. If unfilt and ADC look the same, your filters aren't doing much (could be good or bad).
Reading a Log in Blackbox Explorer
- Download Betaflight Blackbox Explorer
- Open the
.bblfile (drag and drop) - Use I/O keys to scrub forward/backward
- Enable FFT (top right) to see frequency-domain noise spectrum
- Look for:
- Gyro traces oscillating without stick input → filter or tune issue
- Motor traces hitting max/min → torque saturation or desync
- P-term spikes on roll → P too high, or insufficient filtering
Erasing Flash
1# In CLI
2blackbox erase
3# Wait for the confirmation beep / "Done" message, then save
Or use Configurator → Blackbox tab → Erase Flash button.
Notes
- Logging does not affect flight performance measurably.
- Some FCs have only 1–2 MB of flash — enough for a single short flight at 4 kHz. Check your FC specs.
- SD card logging gives unlimited capacity; flash is more reliable (cards can unmount mid-flight on vibration).
- Always erase the log before a tuning session so you don't have to hunt through old sessions.
Related Snippets
- BBL-Based PID Tuning Protocol
A structured, blackbox-driven PID tuning protocol based on step response … - Betaflight Rate Modes — Formulas, Comparison, and Conversion
Betaflight supports four rate mode formulas. They all do the same job — map … - Betaflight Rates Explained
Rates control how fast the drone rotates in response to stick input. Higher … - Betaflight Tuning Math — What Each Term Actually Does
What happens inside Betaflight when you move a slider. The formulas here are … - Cinematic Tune from Betaflight Presets
Betaflight ships with a Presets library that includes ready-made cinematic … - PID Basics — P, I, D, and Feedforward
A PID controller is the core of what makes a flight controller work. … - PID Tuning — The Wobble-Test Protocol (Free Tools Edition)
A systematic PID tuning protocol based on the Joshua Bardwell / Brian White … - Rate Presets — 733 / 633 / 533 in Betaflight & Actual
533, 633, 733 are community shorthand for three popular freestyle rate profiles, … - Rate Profile Selection & Persistent Stats
Switching rate profiles mid-session via a transmitter switch and saving your … - Rates Deep Dive — Expo Curve, Zones, and Throttle
Rates are not just a "how fast does it spin" setting. They shape where … - Tuning Flight Protocol — Building a Useful Blackbox Log
Getting good PID analysis results requires a specific flight sequence. Freestyle …