Пошаговая инструкция по заливке через Arduino IDE в README

Разбита на конкретные шаги (Board Manager URL, ядро, библиотеки, конфиг,
выбор платы/порта, заливка) + типовые проблемы с портом/заливкой и как их
решить. Раньше раздел был в три пункта и не хватало конкретики для первой
прошивки.
This commit is contained in:
2026-08-18 03:59:24 +05:00
parent f4150ac1de
commit 51c46bf8d6
+32 -9
View File
@@ -102,16 +102,39 @@ DHT22: VCC -> 3V3 GND -> GND DATA -> GPIO4
авторизации — только для локальной сети, как и mosquitto платформы; для
выхода за пределы LAN сначала нужно добавить хотя бы Basic Auth.
## Настройка и прошивка
## Настройка и прошивка через Arduino IDE
1. `cp config.h.example config.h`, заполнить Wi-Fi SSID/пароль, IP хоста, на
котором поднят `docker compose` платформы (mosquitto слушает `0.0.0.0:1883`
— доступен по IP машины в локальной сети), `zone_id` и `device_id`.
2. Открыть `growbox.ino` в Arduino IDE, выбрать плату (ESP32 Dev Module или
конкретную модель), порт.
3. Прошить. Открыть Serial Monitor на 115200 бод — там лог подключения к
Wi-Fi/NTP/MQTT/веб-сервера и каждой публикации телеметрии/команды, а
также IP платы для похода в веб-интерфейс.
1. **Поддержка ESP32.** Arduino IDE → Settings → «Additional boards manager
URLs» → добавить:
`https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json`
2. **Ядро.** Tools → Board → Boards Manager → найти `esp32` → установить
пакет `esp32 by Espressif Systems`.
3. **Библиотеки.** Tools → Manage Libraries → поставить по одной:
`PubSubClient`, `ArduinoJson` (v7), `DHT sensor library` (IDE предложит
доустановить зависимость `Adafruit Unified Sensor` — согласиться).
4. **Скетч.** File → Open → `controllers/growbox/growbox.ino` — остальные
`.h`/`.cpp` подхватятся вкладками автоматически.
5. **Конфиг.** `cp config.h.example config.h`, заполнить Wi-Fi SSID/пароль,
IP хоста с поднятым `docker compose` платформы (mosquitto слушает
`0.0.0.0:1883` — доступен по IP машины в локальной сети), `zone_id` и
`device_id`. Если IDE уже была открыта — переоткрыть скетч.
6. **Плата и порт.** Подключить ESP32 по USB (кабель именно с передачей
данных). Tools → Board → esp32 → `ESP32 Dev Module` (или точная модель).
Tools → Port → появившийся `/dev/cu.usbserial-*` /
`/dev/cu.SLAB_USBtoUART`.
7. **Заливка.** Кнопка Upload. Часть плат просит зажать кнопку `BOOT` на
плате до появления точек соединения в логе.
8. **Проверка.** Serial Monitor, 115200 бод — лог подключения к
Wi-Fi/NTP/MQTT/веб-сервера, публикации телеметрии/команд и IP платы для
похода в веб-интерфейс.
**Если не заливается:**
- порта нет в списке — нужен драйвер USB-UART моста платы (CP2102 обычно
ставится сам на современной macOS, CH340 — вручную);
- `Failed to connect to ESP32` / `No serial data received` — зажать `BOOT`
на плате на время заливки;
- заливка обрывается или очень долгая — Tools → Upload Speed → понизить с
921600 до 115200.
### Сборка через `arduino-cli` (если не через IDE)