Перейти к содержанию

Быстрый старт

Прошить плату с нуля и поднять её до рабочего состояния — за 10 минут.

Что понадобится

  • Плата NodeMCU v1.0 (ESP8266) или WROOM-32 DevKit V1 (ESP32). Подробнее в Поддерживаемые платы.
  • USB-кабель «micro-USB ↔ ноутбук» — обязательно дата-кабель, не зарядный.
  • Компьютер с Python ≥ 3.10 для запуска PlatformIO.

1. Установить PlatformIO

pip install platformio
pio device list   # проверить что плата видна по USB

В списке должна быть строка вида /dev/ttyUSB0 или COM3 с описанием CP2102 / CH340 / CP210x (производитель USB-UART моста на плате).

Linux: разрешения на /dev/ttyUSB0

Если pio device list показывает плату, но pio run -t upload падает с Permission denied, добавьте себя в группу dialout:

sudo usermod -aG dialout $USER
# требуется перелогин

2. Клонировать репозиторий

git clone https://github.com/kavlevru/ctrl-board.git
cd ctrl-board

3. Прошить firmware и filesystem

Плата требует двух образов: сам код (firmware.bin) и файловая система (littlefs.bin — это data/ папка, в которой лежит весь web-UI и дефолты конфигов).

pio run -t upload      # код
pio run -t uploadfs    # data → LittleFS (UI + конфиги)
pio run -e esp32dev -t upload
pio run -e esp32dev -t uploadfs

На свежей плате нужны ОБА

Только upload без uploadfs оставит плату нерабочей: не будет UI, формы настройки Wi-Fi и admin-пользователя. После первой прошивки uploadfs нужно делать только при правках под data/.

4. Подключить плату к Wi-Fi

После прошивки и перезагрузки плата ждёт настройку:

  1. С телефона/ноутбука подключиться к открытой Wi-Fi сети CtrlBoard-Setup.
  2. Открыть в браузере http://192.168.4.1 — попадёте на форму настройки.
  3. Ввести SSID и пароль своей домашней сети → «Сохранить и перезагрузить».
  4. Плата подключится в STA-режиме. IP можно увидеть в Serial-мониторе (pio device monitor, baud 115200), в роутере, или просто перебором.
  5. Открыть http://<ip-платы>/ — вы на главной.

5. Залогиниться

Дефолтные креды:

admin / 1234

Сразу зайдите в Настройки → Пользователи и поменяйте пароль.

Опционально: отключить вход целиком

Для домашней LAN, защищённой Wi-Fi паролем, форма логина — лишняя. Открыть Настройки → Авторизация → Требовать вход = off. Теперь UI работает без токена.

Не делайте этого если плата как-то доступна снаружи (порт-форвардинг, VPN с широким доступом).

6. Привязать к облаку (опционально)

Если нужен доступ к плате извне или OTA по кнопке через cloud.kavlev.ru/:

  1. Зарегистрироваться на https://cloud.kavlev.ru/ — логин по email + одноразовый код.
  2. Создать проект в облачном кабинете → скопировать project_api_key.
  3. В UI платы открыть Облако в верхнем меню → ввести URL https://cloud.kavlev.ru/ + ключ → сохранить.
  4. Через 15–30 секунд плата появится на дашборде проекта.

Дальше — см. Облачный сервис для команд, OTA и расшаривания.

Что дальше