Bbl2wav
Generate .wav files from Betaflight .bbl gyro data.
Install / Use
/learn @vmzhivetyev/Bbl2wavREADME
bbl2wav.py
This script converts GYRO_SCALED gyro data from Betaflight blackbox logs (.bbl files) into .wav audio files.
Sampled at 4kHz:
Installation
# Clone
git clone https://github.com/vmzhivetyev/bbl2wav
cd bbl2wav
# venv
python3 -m venv venv
source venv/bin/activate
# install reqs
pip3 install -r requirements.txt
Usage
Record a blackbox log file with debug_mode set to GYRO_SCALED so unfiltered gyro data is recorded.
[!IMPORTANT] Use blackbox sample rate of 2000Hz or higher.
Then do:
python3 bbl2wav.py <btfl_001.bbl>
Replace <btfl_001.bbl> with the path to the .bbl file you want to convert.
Output
The script generates .wav files containing the audio file by derictly converting gyro data from the log into wav file without any modifications.
Each axis (roll, pitch, yaw) of the gyro data is converted into a separate audio file. The output files are named in the following format:
<original_filename>_<log_index>_<axis>.wav
For example, if the input .bbl file is named btfl_001.bbl and it contains multiple logs (you armed mutliple times), the generated files might be named as follows:
btfl_001_1_roll.wavbtfl_001_1_pitch.wavbtfl_001_1_yaw.wavbtfl_001_2_roll.wavbtfl_001_2_pitch.wavbtfl_001_2_yaw.wav- and so on...
Related Skills
qqbot-channel
343.1kQQ 频道管理技能。查询频道列表、子频道、成员、发帖、公告、日程等操作。使用 qqbot_channel_api 工具代理 QQ 开放平台 HTTP 接口,自动处理 Token 鉴权。当用户需要查看频道、管理子频道、查询成员、发布帖子/公告/日程时使用。
claude-opus-4-5-migration
90.0kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
docs-writer
99.7k`docs-writer` skill instructions As an expert technical writer and editor for the Gemini CLI project, you produce accurate, clear, and consistent documentation. When asked to write, edit, or revie
model-usage
343.1kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
