Flipper Zero Variometer
May 15, 2026 · View on GitHub
Вариометр для Flipper Zero на базе датчика давления BME280.
Показывает высоту, вертикальную скорость и график подъёма/снижения.
Подходит для параглайдинга, хайкинга, горных лыж.
Возможности
- 📡 Поддержка BME280 и BMP280 по I2C (автодетект 0x76/0x77)
- 🏔️ Высота (м) крупным шрифтом, работает от −9999 до 9999 м
- ↑↓ Фильтр Калмана — плавная вертикальная скорость
- 📊 График скоростей: история ~228 секунд, обновляется каждые 2с
- 🔊 Звуковая индикация подъёма и снижения
- 💡 Принудительная подсветка (держится постоянно)
- 📏 Коррекция высоты в меню (±10 м, применяется кнопкой OK)
- 📝 Автоматический лог
/ext/VarioLog.csv(каждые 30 сек, очищается при старте)
Layout экрана
┌──────────────────────────────┐
│▐▌ 1234m │ ← высота + "m", график
│▐▌ ┄┄┄┄┄┄┄┄·┄┄┄┄┄┄·┄┄┄┄┄┄┄ │ ← график мин/макс скорости
│▐▌ · · · ▪ ▪ ▪ · · ·│
│ +0.45 m/s │ ← вертикальная скорость
│ 18.5C 1013hPa │ ← температура и давление
└──────────────────────────────┘
- Полоса слева — графический индикатор скорости (±5 м/с)
Mна полосе — звук выключен (MUTE)
Подключение BME280
Flipper Zero GPIO BME280
─────────────────────────────
Пин 9 (3.3V) → VCC
Пин 11 (GND) → GND
Пин 16 (C0) → SCL
Пин 15 (C1) → SDA
SDO → GND → 0x76 (по умолчанию)
SDO → VCC → 0x77
Приложение пробует оба адреса автоматически.
Управление
| Кнопка | Основной экран | В меню | Редактирование высоты |
|---|---|---|---|
| ↑ Вверх | Вкл/выкл звук | Переход вверх | +10 м |
| ↓ Вниз | Вкл/выкл подсветку | Переход вниз | −10 м |
| OK | Открыть меню | Изменить параметр | Применить |
| Назад | Выйти | Закрыть меню | Отмена |
Меню настроек
| Пункт | Описание |
|---|---|
| Sound | Звуковая индикация подъёма и снижения |
| Backlight | Постоянная подсветка (обновляется каждые 4с) |
| Correct Alt. | Поправка высоты: Up/Down ±10м, OK применить |
График скоростей
Полоса 113×32 пикселей между высотой и скоростью.
Каждые 2 секунды добавляется новая колонка слева, старые уходят вправо.
| Скорость (|м/с|) | Пикселей от центра | |------------------|--------------------| | < 0.5 | 0 (центр) | | 0.5 – 0.99 | 1 | | 1.0 – 1.99 | 2 | | 2.0 – 4.99 | 3 | | 5.0 – 10.0 | 4 | | > 10.0 | 5 |
Положительная скорость — вверх от центра, отрицательная — вниз.
Звуковая индикация
| Ситуация | Сигнал |
|---|---|
| Подъём > 0.3 м/с | Бипы 1300..2300 Гц, частота растёт |
| Снижение < −0.9 м/с | Тон 300..1000 Гц, частота падает |
| Нейтраль | Тишина |
Лог
Файл /ext/VarioLog.csv очищается при каждом запуске.
Запись каждые 30 секунд:
30;1523.4
60;1530.1
90;1528.7
Формат: время_работы_сек;высота_м
Сборка
git clone --recursive https://github.com/DarkFlippers/unleashed-firmware.git
cd unleashed-firmware
cp -r /path/to/flipper-vario applications_user/vario
./fbt fap_dist APPSRC=applications_user/vario
# Результат: build/f7-firmware-D/.extapps/vario.fap
Скопируй vario.fap на SD карту в /apps/GPIO/.
Структура
flipper-vario/
├── application.fam
├── vario_app.c
├── bme280.c
├── bme280.h
├── vario_icon.png
└── README.md
Совместимость
| Прошивка | Статус |
|---|---|
| Unleashed | ✅ Проверено (API 87.6) |
| Official | ✅ Должно работать |
Changelog
v3.0.1.2
- 🐛 Исправлен layout: высота, график, скорость, темп не перекрываются
- 🐛 Исправлена подсветка: переустанавливается каждые 4с при backlight_forced
- ✨ График скоростей: история 228с, обновление каждые 2с
- ✨ Коррекция высоты в меню (±10м, OK применить)
- ✨ Лог VarioLog.csv: время работы + высота каждые 30с, очистка при старте
- 🗑️ Убраны: пункты Logging и Log interval из меню
- 🐛 Исправлено меню: 3 пункта с правильными рамками
v2.0
- 🐛 Исправлен звук: убраны конфликтующие LED-нотификации
- 🎨 Графический индикатор скорости вместо ASCII-символа
- 🐛 Исправлены рамки в меню
v1.0
- Первый публичный релиз
Автор
xumbax — сделано для сообщества Flipper Zero.
Нашёл баг? Открывай Issue!
Лицензия
MIT License