Данный модуль является экспериментальным и позволяет добавить цифровой микрофон и динамик (через интерфейс I2S) к устройствам на базе ESP32, оснащенным радиомодулем SX128x (диапазон 2.4 ГГц).
Важное ограничение по частоте: Работа аудио возможна только в диапазоне 2.4 ГГц. Субгигагерцевые диапазоны (например, 433 МГц или 868 МГц) имеют слишком узкую полосу пропускания и не поддерживают непрерывную передачу аудиопакетов даже в самых быстрых режимах.
Поддерживаемое оборудование
На данный момент официально поддерживаются платы:
- LilyGo TLora 2.1-1.8
- TLora T3S3
Необходимые компоненты:
- Усилитель: Max98357 (I2S 3W Class D).
- Микрофон: MSM261S4030H0 (I2S MEMS Low Noise).
Параметры конфигурации аудио
Настройки передаются через административное сообщение ConfigModule.Audio protobuf.
| Параметр | Описание | Значение по умолчанию / Опции |
| Codec2 Enabled | Включение аудиомодуля. | Выключено (по умолчанию) |
| PTT GPIO | Пин для кнопки Push-To-Talk (нажми, чтобы говорить). | GPIO 39 (на ESP32) |
| Audio Bitrate | Битрейт сжатия голоса. | CODEC2_700B (рекомендуемый) |
| I2S Word Select (WS) | Пин для сигнала выбора слова (WS). | Настройка обязательна |
| I2S Data IN (SD) | Пин для приема данных от микрофона. | Настройка обязательна |
| I2S Data OUT (DIN) | Пин для вывода данных на динамик. | Настройка обязательна |
| I2S Clock (SCK) | Пин тактового сигнала (SCK). | Настройка обязательна |
Технические особенности интерфейса I2S
Интерфейс I2S (Inter-IC Sound) используется в Meshtastic в моно-режиме. Чтобы аудиосистема работала корректно, важно учитывать логическое разделение каналов:
- Микрофон: Использует логический ЛЕВЫЙ канал (LEFT).
- Динамик: Использует логический ПРАВЫЙ канал (RIGHT).
- Режим работы: Полудуплекс (Half-Duplex). Поскольку передача и прием не происходят одновременно, часть пинов используется совместно для двунаправленной конфигурации.
Для аудиомодуля нет заводских назначений пинов по умолчанию. Вы должны вручную указать свободные GPIO вашего контроллера в настройках, иначе модуль не заработает.
Доступные режимы Codec2
Модуль спроектирован для работы в каналах с пропускной способностью от 2 кбит/с и выше. Вы можете выбрать различные варианты битрейта (от CODEC2_3200 до CODEC2_700), где меньшее число означает более сильное сжатие и меньшую нагрузку на сеть, но более низкое качество голоса.