This is a cli frontend for blackbox-log inspired by the original
blackbox_decode.
blackbox_decode |
bbl2csv |
|
|---|---|---|
| Log format v1 | ✔️ | ❌ |
| Recent Betaflight logs | ❌ | ✔️ |
| Raw output | ✔️ | ❌ |
| Write output to stdout | ✔️ | ❌ |
| GPS data | merged, separate, or gpx | separate |
| Current meter simulation | ✔️ | ❌ |
| IMU simulation | ✔️ | ❌ |
| Change output units | ✔️ | ❌ |
| Filter output fields | ❌ | ✔️ |
| Parallel log parsing | ❌ | ✔️ |
$ exa -lbs size --no-time --no-permissions --no-user LOG00001.BFL
6.6Mi LOG00001.BFL
$ hyperfine -w 10 -L bin ./bbl2csv,blackbox_decode '{bin} LOG00001.BFL'
Benchmark #1: ./bbl2csv LOG00001.BFL
Time (mean ± σ): 598.2 ms ± 13.6 ms [User: 542.6 ms, System: 46.6 ms]
Range (min … max): 574.4 ms … 622.6 ms 10 runs
Benchmark #2: blackbox_decode LOG00001.BFL
Time (mean ± σ): 1.072 s ± 0.013 s [User: 1.019 s, System: 0.044 s]
Range (min … max): 1.056 s … 1.098 s 10 runs
Summary
'./bbl2csv LOG00001.BFL' ran
1.79 ± 0.05 times faster than 'blackbox_decode LOG00001.BFL'LOG00001.BFL contains only one log. Files with multiple logs will see even
larger improvements since logs are decoded in parallel using
rayon.