Shramko Motor Autostart
ENESPLRU

Прошивка Betaflight + конфигуратор в браузере

Shramko Motor Autostart

Небольшой модуль для Betaflight 2025.12.1, который превращает полётный контроллер в самостоятельный драйвер мотора: вставили батарею — он выжидает паузу, плавно выводит ESC на заданный газ и держит его. Без пульта и без приёмника. Эта страница подключается к плате по USB прямо в браузере: меняйте любые настройки, сохраняйте их и следите за мотором вживую.

Разгон начинается
через 10,01 с после включения
Разгон длится
10,02 с
Макс. отклонение от прямой
1 мкс
Юнит-тестов
42

Замерено на настоящей HGLRC F405 8S V2 по USB с настройками по умолчанию (пауза 10 с, разгон 10 с до 15 %). Сырые данные и инструменты проверки: README → Verified on hardware.

Конфигуратор

Подключите плату по USB и нажмите «Подключить». Настройки платы и живые данные остаются между вашим браузером и платой.

Конфигуратору нужны JavaScript и Web Serial

Работает в Chrome, Edge или Opera на Windows, macOS, Linux и ChromeOS, а также в Firefox 151+ (один раз спросит разрешение для сайта). Android: Chrome 148+ на телефонах, где Android поддерживает USB-serial — просто попробуйте. iPhone и iPad не умеют: в их браузерах нет ни Web Serial, ни WebUSB.

Нет подходящего браузера? Все настройки есть и в CLI Betaflight: get autostart, set autostart_throttle = 80, save. Имена, диапазоны и значения по умолчанию — в справочнике настроек.

Установка прошивки

Минут пять, один раз на плату. Нужны плата, USB-кабель и Chrome или Edge.

  1. Скачайте .hex

    Откройте последний релиз на GitHub и скачайте файл для своей платы. Готовая сборка: HGLRC F405 8S V2 (в Betaflight board_name HGLRC_F405_S8) — betaflight_2025.12.1_STM32F405_HGLRC_F405_S8_autostart.hex.

  2. Снимите пропеллер

    Прежде чем что-то прошивать или подключать, снимите пропеллер или крыльчатку. С этой прошивкой мотор сам стартует через 10 секунд после подключения батареи.

  3. Прошейте через Betaflight App

    Откройте app.betaflight.com в Chrome или Edge и подключите плату по USB. Перейдите в Firmware Flasher, нажмите Load Firmware [Local], выберите .hex и нажмите Flash Firmware.

  4. Windows пишет «DFU device not found»?

    В Windows не хватает драйвера загрузчика. Запустите ImpulseRC Driver Fixer (в один клик) или воспользуйтесь Zadig: выберите STM32 BOOTLOADER и установите WinUSB. Потом прошейте ещё раз.

  5. Первый запуск — и подключайтесь здесь

    При первой загрузке после прошивки поверх другого Betaflight все настройки один раз сбрасываются — так и должно быть: значения по умолчанию в этой сборке и есть настройки проекта (DShot300, пауза 10 с, разгон 10 с, 15 %). Закройте Betaflight App (порт может занимать только одна программа) и нажмите «Подключить» выше.

Другая плата на Betaflight?

Соберите из исходников: скопируйте config.h своей платы из betaflight/config в configs/<BOARD>/, добавьте #define USE_AUTOSTART и запустите сборку в Docker — см. README → Build from source.

Версии

v1.1.0 (текущая): задержка, разгон, газ и его ограничение, время работы, случайные порывы, отсечка по батарее, выходы, определение батареи, кнопка и тумблер пульта. Платы с v1.0.0 тоже подключатся, но покажут только свои настройки — обновите прошивку, чтобы получить остальное. Чтобы вернуться, прошейте …_stock.hex из релиза: тот же Betaflight без модуля.

Как это работает

Модуль пишет газ туда же, куда его пишет вкладка Motors в Betaflight, пока моторы не заармлены. Поэтому выход DShot/PWM, арминг ESC и телеметрия остаются штатными. Задача на 50 Гц проходит пять состояний:

  1. IDLE

    Ждёт батарею

    Плата меряет напряжение батареи на пине B. От autostart_vbat_min (6,0 В) батарея считается подключённой. При питании только от батареи это и есть момент включения.

  2. DELAY

    Обратный отсчёт

    autostart_delay секунд (10). Всё это время ESC получает команды «стоп» — не меньше 3 с, — чтобы заармиться на нулевом газе.

  3. RAMP

    Разгон

    Прямая линия от 0 до autostart_throttle (15 %) за autostart_ramp (10,0 с). На старте программы настройки фиксируются.

  4. RUN

    Ровно или порывами

    STEADY держит уровень. GUSTS добавляет случайные резкие порывы от autostart_gust_min до autostart_gust_max. autostart_throttle_limit ограничивает любой выход.

  5. DONE · LOW_BATTERY

    Остановка

    DONE — когда вышло autostart_run_time; LOW_BATTERY — когда батарея 5 с держится ниже «банки × autostart_cell_cutoff» (3,30 В на банку); тогда ESC пищит каждые 3 с. При времени работы 0 мотор крутится до отсечки или до отключения питания.

Что останавливает программу

  • Вход в CLI
  • Вкладка Motors в конфигураторе (любой MSP_SET_MOTOR)
  • Арминг с приёмника
  • Живая связь с приёмником (если не задан autostart_box)
  • Вышло время работы
  • Отсечка по батарее
  • Батарею отключили
  • Нажатие кнопки во время работы

Сама программа не перезапускается. В режиме POWER повторное подключение батареи снова запускает отсчёт. Все имена, диапазоны и значения по умолчанию — в справочнике настроек.

Подключение: HGLRC F405 8S V2 + Flycolor X-Cross HV3 160A (6S)

Возьмите 8-проводной кабель из комплекта полётного контроллера (белый ×4, жёлтый, зелёный, чёрный, красный). Три соединения, каждое пропаять и заизолировать:

  1. Жёлтый провод ESC (сигнал) → белый провод кабеля рядом с жёлтым (пин 1; в этой сборке на всех четырёх белых один и тот же сигнал)
  2. Чёрный провод ESC (сигнальная земля) → чёрный провод кабеля (G)
  3. Новый тонкий провод (22–24 AWG) от плюса батареи → красный провод кабеля (B, питание платы)
Схема подключения: жёлтый сигнальный провод ESC идёт на белый провод (пин 1) 8-проводного кабеля полётного контроллера, чёрный провод ESC — на чёрный провод кабеля (G), новый провод от плюса батареи — на красный провод кабеля (B).
Полная распиновка, необязательная кнопка и чек-лист первого включения: docs/wiring.md.

Какие компьютеры и телефоны подходят

Конфигуратор общается с платой через Web Serial — это функция браузера, и есть она не во всех браузерах.

УстройствоБраузерРаботает?
Windows, macOS, LinuxChrome, Edge, OperaДа
Windows, macOS, LinuxFirefox 151+Да — один раз спросит разрешение для сайта (прошивать плату — только в Chrome или Edge)
Windows, macOS, LinuxSafari, старый FirefoxНет — нет Web Serial
Телефон или планшет на AndroidChrome 148+ с кабелем USB-OTGТолько на телефонах, где Android поддерживает USB-serial (Google: «ограниченный круг устройств», с 2026 года) — попробуйте
iPhone, iPadЛюбойНет — в браузерах iOS нет Web Serial и WebUSB

Порт платы может занимать только одна программа: закройте Betaflight App, прежде чем подключаться здесь, а эту страницу — прежде чем прошивать.

Риски и безопасность — прочтите до того, как подключать батарею

Подробнее: SECURITY.md · docs/warnings.md

Частые вопросы

Как раскрутить бесколлекторный мотор без приёмника и пульта?

Прошейте Shramko Motor Autostart (Betaflight 2025.12.1 с небольшим модулем) и подключите батарею: через autostart_delay (10 с) мотор за autostart_ramp (10 с) разгонится до autostart_throttle (15 %) и продолжит крутиться. Ни приёмник, ни тумблер, ни компьютер не нужны — числа задаются один раз, здесь или в CLI.

Может ли Betaflight остановить мотор, когда LiPo разряжен?

Да, начиная с прошивки 1.1: задайте autostart_cells (6) и autostart_cell_cutoff (330 = 3,30 В на банку, на 6S это 19,8 В). Если напряжение держится ниже этого порога autostart_cutoff_time (5 с — короткие просадки во время порывов не считаются), мотор останавливается и с DShot пищит каждые 3 с. Снова он запустится только после того, как батарею отключат и подключат заново.

Работает ли это на Android или iPhone?

iPhone и iPad: нет — ни в одном браузере iOS нет Web Serial и WebUSB (даже официальное приложение Betaflight для iOS подключается только по Bluetooth). Android: Chrome 148+ с кабелем USB-OTG, на телефонах, где Android поддерживает USB-serial; Google включает это на ограниченном круге устройств, поэтому просто попробуйте. На Windows, macOS и Linux — Chrome, Edge или Opera (или Firefox 151+).

Какие полётные контроллеры поддерживаются?

Готовый .hex есть для HGLRC F405 8S V2 (HGLRC_F405_S8); проверено с Flycolor X-Cross HV3 160A (BLHeli_32) на 6S. Любая другая плата на Betaflight заработает после сборки из исходников: добавьте #define USE_AUTOSTART в config.h платы и запустите сборку в Docker, как описано в README.

Как сделать медленный плавный старт ESC, например от 0 до 15 % за 10 секунд?

Это и есть разгон: autostart_ramp в десятых долях секунды (100 = 10,0 с, до 600 с) и autostart_throttle в процентах. Разгон идёт по прямой: по замерам на железе отклонение не больше 1 мкс.

Можно ли менять настройки без этого сайта?

Да. В CLI Betaflight get autostart показывает их, set autostart_throttle = 80 меняет одну, а save сохраняет и перезагружает плату. Вход в CLI останавливает работающую программу, поэтому мотор никогда не прыгает на новое значение.

Безопасно ли подключать батарею, когда подключён USB-кабель?

Да, так и задуманы проверки на столе (без пропеллера): отсчёт начинается только когда появляется батарея, если её отключить больше чем на 0,5 с — мотор останавливается, а CLI или вкладка Motors сразу перехватывают управление. Если мотор вообще не должен крутиться при подключённом компьютере, задайте autostart_usb_inhibit = ON.

Как вернуться к обычному Betaflight?

Задайте autostart_mode = OFF (штатное поведение, модуль бездействует) или прошейте …_stock.hex из релиза — тот же Betaflight 2025.12.1 без модуля, — либо любую официальную сборку Betaflight.

Для вашего ИИ-агента

Работаете с ИИ-агентом (Claude, ChatGPT, Cursor…)? Скопируйте этот промт: в нём сказано, где прошивка, справочник настроек и правила безопасности, и агент проведёт вас через настройку.

Task: set up Shramko Motor Autostart (Betaflight 2025.12.1 firmware: the motor starts by itself on power-up, no receiver). Answer me in Russian.
Repo: https://github.com/AndriiShramko/shramko-betaflight-motor-autostart - read AGENT_SETUP.md and docs/settings.md first.
1. Ask me to remove the propeller. Never let the motor spin with a propeller on.
2. Firmware: the .hex from https://github.com/AndriiShramko/shramko-betaflight-motor-autostart/releases/latest (HGLRC F405 8S V2 = HGLRC_F405_S8). Other Betaflight boards: build from source (README, Docker, #define USE_AUTOSTART in the board's config.h).
3. Flash: https://app.betaflight.com in Chrome or Edge -> Firmware Flasher -> Load Firmware [Local] -> Flash Firmware. Windows "DFU device not found": ImpulseRC Driver Fixer or Zadig (WinUSB for STM32 BOOTLOADER).
4. Configure: https://autostart.flyreelstudio.eu (Connect, edit, Save) or the Betaflight CLI: get autostart / set autostart_<name> = <value> / save. Use only the names, ranges and defaults in docs/settings.md.
5. Wiring: docs/wiring.md. Never more than 8S on pin B.

Кто это сделал и как работать вместе

Andrii Shramko

Andrii Shramko

Дроны · 360°-камеры для экстремальных съёмок · 3D/4D Gaussian splatting · Быдгощ, Польша

Я Андрей Шрамко. Строю дроны и 360°-камерные системы для экстремальных съёмок — охоты на торнадо, сканов целых городов в Gaussian splatting — и инструменты вокруг них. Эта прошивка управляет вентилятором кейса META4 Tornado: как только на бокс подают питание, он сдувает воду с оптики 360°-камеры, и никому не нужно её трогать.

Открыт к интересным знакомствам и готов помогать командам реализовывать невероятные проекты — встраиваемая электроника и железо для дронов, камерные системы, конвейеры сканирования, партнёрство, лицензирование или финансирование.

Напишите мне

Конфиденциальность

Администратор данных: Андрей Шрамко, Быдгощ, Польша — zmei116@gmail.com. Конфигуратор общается с вашим полётным контроллером прямо из браузера: настройки платы и живые данные на наш сервер не попадают.

Сервер хранит только то, что вы отправили сами: обратную связь (ошибка, идея) и сообщения о сотрудничестве — с контактом, если вы его указали, — и, только если вы поставили галочку, технические данные (версия страницы, браузер и экран, последние ошибки, журнал конфигуратора). Текст и контакт также пересылаются в Telegram автора (Telegram FZ-LLC, Дубай — за пределами ЕЭЗ); оригинал остаётся на сервере в ЕС. Храним до 12 месяцев и используем только чтобы ответить и чтобы исправить сайт.

Счётчики посещений работают без cookies и без IP-адресов; в логах сервера нет ни IP-адресов, ни строк запроса. Google Analytics загружается только после вашего согласия.

Копию или удаление своих данных можно запросить в любой момент: zmei116@gmail.com.

Обратная связь

Уйдут: версия страницы, браузер и экран, последние ошибки и журнал конфигуратора за этот визит. Больше ничего: ни cookies, ни файлов.