Дополнение к моей предыдущей мини-статье по роботу Xiaozhi. Я заказал детали и комплектующие, чтобы собрать такого робота самостоятельно. Сборка данного робота не доставляет существенных проблем.

Детали, которые я использовал (вариант стандартного билда):
– Модуль ESP32-S3 CAM с камерой OV3660 (камера, почему-то, дала артефакт – я заказал на замену ей другую камеру OV2640 и позже протестирую модуль с ней
– Дисплей Цветной IPS TFT дисплей на ST7789 SPI, 240х240 1.3″, программно он выбирается как “ST7789 7-pin” (в конфиге включается режим SPI_MODE: 3. Есть такой же конфиг с режимом SPI_MODE: 0, тогда он не работает
– Звуковой I2S модуль MAX98357A с усилителем класса D на 3 Вт. Модуль содержит и ЦАП и усилитель. Звучание чистое, фоновый шум отсутствует. К нему мини-динамик от старого ноутбука.
– Всенаправленный I2S микрофон INMP441. Цифровой микрофон, такой же как стоят в моб. телефонах, но на макетной плате. Устанавливать отверстием вверх (пины модуля должны торчать в сторону деталей)
Ход работы:
1. Установить новейший тулкит ESP-IDF последней версии (на момент написания поста – 5.5.2). Предлагаются к загрузке предыдущие версии, вроде 5.3, они не подойдут). IDE можно не устанавливать, нам не потребуется.
2. Установить вспомогательные драйверы, чтобы ваша плата ESP32 определялась как COM PORT (если этого не происходит автоматически)
3. Загрузить исходный код проекта ESP. При помощи командной строки запустить ESP-IDF и переместиться в папку с проектом.
4. Сконфигурировать проект под свои детали (см. конец следующего абзаца): стандартный шаблон “main/boards/bread-compact-wifi-s3cam”. В данном случае он соответствует моей сборке. Вы можете открыть файл config.h чтобы посмотреть, какие пины для устройств к какому выводу ESP подключаются. В моём случае задействована почти вся правая половина платы. Левая остаётся свободной.
5. Собрать схему согласно референсам (внимание – китайский язык), с учётом пинов установленных в конфиге.
6. Прошить плату не выходя из ESP-IDF, чтобы убедиться, что аппаратура работает. В моём случае понадобилась установка режима “7 pin” для дисплея, т.к. изначально он показывал чёрный экран, и работала лишь регулировка подсветки. Усилитель и микрофон завелись без танцев с бубном, если исправны. Так же сложности с настройкой камеры.
7. Настроить робота согласно инструкциям на сайте. Код подтверждения для регистрации устройства на сайте появится на дисплее, черными буквами на белом фоне, 6 цифр.
Общий флоу команд:
idf.py menuconfig – настройка
idf.py build – сборка
idf.py -p COM16 flash – прошивка (с вашим номером COM порта из диспетчера устройств)
Всё это вы можете так же просмотреть в видеоролике (YouTube) от вьетнамского автора (он разжевал всё очень тщательно и показаны команды на английском, и их ввод, а так же процесс конфигурирования). В его ролике так же используется расширение “ESP для VS Code”, без него стрелки в меню конфига работать будут только из консоли Windows! (а остальные клавиши продолжат работу).
После проведения всех вышеописанных манипуляций я решил запустить этого робота вместе с заводской версией, чтобы посмотреть, как они будут общаться. Вот, что у меня получилось в конечном итоге (ссылка на YouTube):
Автор: ritsudo


