Небольшая инструкция-памятка по загрузке прошивки в контроллеры типа ESP32. Я для своих задач по созданию «умного дома», использую в частности ESP32 S2 mini и прошивку ESPHome.
Прежде всего установим необходимые пакеты:
apt install python3 python3-venv
Для того, чтобы вашему пользователю была доступна работа с последовательными портами, добавим его в группу dialout:
usermod -a -G dialout alexey
Здесь alexey — логин пользователя, как можно догадаться.
Создадим виртуальное окружение:
python -m venv venv
Для некоторых дистрибутивов это может не сработать. Например, в Kali Linux. В них нужно использовать другую команду:
virtualenv venv
И последний штрих:
source venv/bin/activate
На этом виртуальное окружение готово, переходим к самому главному. Установим в виртуальном окружении необходимые пакеты, а именно esptool и esphome:
cd venv
pip3 install esptool
pip3 install esphome
После установки подключим контроллер к компьютеру, переведём его в режим записи и проверим, что всё работает нормально с помощью очистки прошивки:
esptool.py --port /dev/ttyACM0 erase_flash
Более подробную информацию о Esphome можно получить на официальном сайте. Я лишь оставлю основные команды.
Подготовка конфигурации прошивки:
esphome wizard livingroom.yml
Проверка созданного конфига:
esphome config livingroom.yml
Компиляция и запись прошивки в контроллер:
esphome run livingroom.yml
Если эта тема интересна, могу поделиться более детальной инструкцией и конфигами, которые использую для чтения данных с датчиков, управления реле и другими устройствами. Пишите в комментарии, если да. 🙂