Автор проекта под ником curisama собрал устройство с лаконичным названием The Badge («Значок»). На первый взгляд это просто маленький круглый экран, который носят на одежде, однако кастомная прошивка научила его множеству неожиданно полезных и забавных трюков.
Источник изображения — hackaday.com
Основа — готовая плата Waveshare
Проект построен на модуле Waveshare ESP32-S3-Touch-AMOLED-1.75C. Название громоздкое, но точно описывает содержимое: круглый сенсорный AMOLED-дисплей диагональю 1,75 дюйма с разрешением 466×466 пикселей, фрезерованный алюминиевый корпус и микроконтроллер ESP32-S3, который всем этим управляет. Буква C в конце обозначает именно версию с корпусом.
По данным производителя, на плате установлен двухъядерный процессор ESP32-S3R8 (Xtensa LX7, до 240 МГц) с 8 МБ PSRAM, есть поддержка Wi-Fi 2,4 ГГц и Bluetooth 5 LE. Кроме того, распаяны шестиосевой датчик движения QMI8658 (акселерометр и гироскоп), часы реального времени, контроллер питания, аудиокодек с двумя микрофонами и эхоподавлением, а также встроенный динамик. Фактически это почти готовые смарт-часы без ремешка.
От аэромыши до игр
Изначально автор писал собственную прошивку, чтобы превратить устройство в аэромышь: курсор на компьютере двигается вслед за наклонами значка, для чего как раз пригодился встроенный гироскоп. Со временем функций стало гораздо больше:
- режим сенсорной панели (тачпада) и набор дополнительных клавиш;
- часы;
- несколько игр;
- запись звука в формате WAV продолжительностью до 52 минут;
- симуляция жидкости, в которой вода плещется по круглому экрану, а по ней плавает маленькая лодочка.
Оптимизация анимации и автономности
Самой эффектной функцией стала именно симуляция воды, но в первой версии она работала всего на 3 кадрах в секунду. После оптимизации частоту удалось поднять до 18 кадров в секунду — анимация стала заметно плавнее и приятнее глазу. Для микроконтроллера без графического ускорителя, который отрисовывает физику на экране 466×466, это хороший результат.
Поработал автор и над энергопотреблением. Включение флага CONFIG_PM_ENABLE в конфигурации ESP-IDF, который активирует встроенное управление питанием и динамическое понижение частоты процессора, вместе с рядом других настроек увеличило время работы в режиме ожидания с 11,9 до 19,6 часа. Это прирост примерно на 65% без какой-либо замены аккумулятора.
Как повторить
Тем, кому нужен незаметный круглый гаджет в роли устройства ввода (HID) и не только, достаточно купить плату Waveshare и прошить её самостоятельно. Для этого не требуется устанавливать среду разработки: прошивку можно залить прямо из браузера.
Проект хорошо иллюстрирует общий тренд: модули, объединяющие дисплей, корпус и микроконтроллер в одном готовом изделии, сейчас переживают настоящий бум среди мейкеров. Они избавляют от пайки и проектирования корпуса и позволяют сразу сосредоточиться на программной части.


















