MicroPython на ESP32 в macOS: установка через RobX Studio

Без рубрики5 минут чтения

Раньше, чтобы поставить MicroPython на ESP32 в macOS, приходилось ставить Python через Homebrew, esptool через терминал, скачивать файл прошивки и вручную вписывать адрес порта в команды. Сейчас это делается в одной программе — бесплатной RobX Studio. Ниже — вся дорога от коробки с платой до мигающего светодиода на Mac.

Плата ESP32 и ноутбук Mac

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

  • Плата на ESP32 — например, обычная ESP32 DevKit.
  • USB-кабель, который передаёт данные, а не только заряжает. Если у Mac только порты USB-C, понадобится кабель USB-C — micro-USB (или USB-C — USB-C, смотря какой разъём на плате) либо переходник.
  • Mac и программа RobX Studio. Сейчас на сайте версия для macOS выложена для компьютеров на Apple Silicon (процессоры M1 и новее).

1. Скачиваем и устанавливаем RobX Studio

Откройте studio.robx.online и нажмите «Скачать для macOS». Загрузится файл в формате DMG. Откройте его двойным щелчком и перетащите RobX Studio в папку «Программы» — как любое другое приложение для Mac. Программа бесплатная, лицензию вводить не нужно.

Если при первом запуске macOS пишет, что не может проверить разработчика, и не даёт открыть программу, это стандартная защита системы для приложений, скачанных не из App Store. Откройте «Системные настройки → Конфиденциальность и безопасность», пролистайте вниз и нажмите «Всё равно открыть».

2. Драйвер USB-переходника

У классической ESP32 нет своего USB: на плате рядом с разъёмом стоит маленькая микросхема-переходник, которая превращает USB в последовательный порт. Чтобы Mac её увидел, иногда нужен драйвер. Какой именно — зависит от чипа.

Возьмите плату и посмотрите на микросхему рядом с USB-разъёмом, при необходимости — с лупой или через камеру телефона. На ней написано название:

  • CP2102, CP2102N — это чипы Silicon Labs, нужен драйвер CP210x с сайта Silicon Labs;
  • CH340, CH9102 — это чипы WCH, драйвер берётся на сайте WCH;
  • FT232 — чип FTDI, встречается реже.

Не спешите ставить драйвер заранее. Сначала подключите плату и посмотрите, появилась ли она в RobX Studio: в свежих версиях macOS для части переходников поддержка уже встроена. Если платы нет, установите драйвер под свой чип. После установки macOS может попросить разрешить его в «Конфиденциальности и безопасности» — согласитесь и переподключите плату.

У плат на ESP32-S2 и ESP32-S3 USB встроен прямо в чип, переходник им не нужен, и драйвер ставить не придётся. С ESP32-C3 по-разному: у одних плат родной USB, у других стоит переходник — смотрите на плату так же, как описано выше.

3. Подключаем плату и выбираем порт

Подключите ESP32 к Mac и запустите RobX Studio. Программа узнаёт плату и отмечает её порт в списке звёздочкой — его и выбирайте. В macOS порты называются примерно так: /dev/cu.usbserial-…, /dev/cu.wchusbserial… или /dev/cu.usbmodem…. Если звёздочки нет, порт можно выбрать вручную: обычно это тот, что появляется в списке, когда вставляете плату, и пропадает, когда вынимаете.

4. Прошиваем MicroPython

Прошивка ставится прямо из окна программы: RobX Studio сама скачивает MicroPython под ваш чип и записывает его на плату. Искать файл прошивки на сайте MicroPython, открывать терминал и набирать команды не нужно. Во время записи не отключайте плату и не закрывайте программу.

Библиотеки для датчиков и модулей ставятся там же, из окна программы.

5. Проверяем в консоли

Внизу окна — консоль (REPL): здесь плата выполняет команды сразу, по одной строке. Наберите:

print(2 + 2)

Если плата ответила «4», MicroPython работает. Слева в окне — дерево файлов, которые лежат на самой ESP32: их можно открыть или удалить.

6. Первая программа: мигающий светодиод

На многих платах ESP32 DevKit есть встроенный светодиод на выводе 2, поэтому подключать ничего не надо. Скопируйте код в редактор и нажмите «Запустить».

from machine import Pin
import time

led = Pin(2, Pin.OUT)

while True:
    led.value(not led.value())
    time.sleep(0.5)

Каждые полсекунды программа меняет состояние светодиода на противоположное: полсекунды горит, полсекунды не горит. Поменяйте 0.5 на 0.1 или на 2 и посмотрите, что будет. Если светодиод не мигает вовсе, скорее всего, на вашей плате встроенного светодиода на выводе 2 нет.

Чтобы программа запускалась сама при каждом включении платы, даже без Mac, от пауэрбанка, нажмите «залить как main.py».

Если что-то не работает

  • Платы нет в списке портов — возьмите другой кабель: многие кабели от зарядок не передают данные. Попробуйте другой порт Mac и, если подключаете через переходник или хаб, подключите напрямую.
  • Порт так и не появился — проверьте, какой чип-переходник стоит на плате, и поставьте драйвер CP210x или CH340/CH9102.
  • Прошивка не начинается или обрывается — на некоторых платах во время записи нужно зажать кнопку BOOT и отпустить её, когда запись пошла.
  • В консоли ошибка — читайте последнюю строку: чаще всего там опечатка или сбитые отступы. В Python отступ внутри цикла — четыре пробела.

Что дальше

Когда светодиод замигал, можно переходить к следующим шагам: подключить кнопку и заставить плату найти Wi-Fi сети вокруг. Как это сделать, рассказываем в статье «MicroPython для начинающих: оживляем плату на Python за один вечер».

Приходите на пробное занятие в РОБОЛАТОРИЮ — покажем, как проходят занятия, и поможем подобрать курс по возрасту и интересам ребёнка 🤖

📞 8 (495) 120-30-60 🌐 robolatoriya.com

Комментарии

Похожие темы