Я доделал свой опен-сорс софт для этой платформы. Можно в целом и самому собрать на ESP-32 3C.
RED SEA генерирует непрерывно эволюционирующую MIDI CC-модуляцию и нотный шаговый секвенсор, управляемые одним из четырёх алгоритмических движков.
- Четыре алгоритмических движка (FOG / SUN / RAIN / SNOW), у каждого по четыре собственных параметра
- 16-шаговый секвенсор (нота, CC, третья назначаемая цель, ретриггер на шаг) с внешним или внутренним клоком
- Перфоманс-режимы BYPASS и FREEZE, включаются нажатием кнопки
- MIDI Learn: захватывает номер CC из следующего входящего сообщения Control Change
- Заморозка отдельных параметров, независимая от глобальных перфоманс-режимов
- Настройки записываются во флеш и сохраняются между включениями
Алгоритм движки:
FOG — морфирующий LFO-движок (синус, треугольник или прямоугольник). Параметр SHAPE меняет саму форму волны, а не просто искажает её: на синусе добавляет гармоники, либо в другую сторону — клиппирует сигнал и подмешивает шум; на треугольнике плавно сдвигает форму к восходящей или нисходящей пиле.
SUN — движок эхо-отражений. Когда значение параметра должно выйти за пределы диапазона, вместо простого ограничения запускается серия эхо-повторов, каждый следующий — с вдвое меньшим интервалом. Если нота секвенсора срабатывает на том же тике, что и старт серии, отражения также переигрывают эту ноту, транспонируя её всё дальше с каждым повтором.
RAIN — движок стохастической модуляции. Четыре параметра могут независимо расходиться по времени с общим клоком, время от времени задевать соседний параметр и прерываться случайными событиями, которые выбивают параметр в минимум или максимум.
SNOW — евклидовая заморозка. Мутация запускается евклидовым ритмом вместо фиксированного интервала. Каждый хит также может заморозить или разморозить любой параметр устройства, включая параметры самого движка.
Подробный мануал и описание на итче: https://3apb.itch.io/red-sea
Гитхаб: https://github.com/Cirocular-Vlasenko-Daniil/Red-Sea
Видос с демо закину на днях