[Help Needed] Waveshare ESP32-S3-AUDIO-Board: Cold-boot failure of ES7210 (Mic) and LEDs (TCA9555)

від

у

[Потрібна допомога] Waveshare ESP32-S3-AUDIO-BOARD: збої холодного запуску ES7210 (мікрофон) та LED (TCA9555)
https://ift.tt/6jkFPZH

Г hardware: * Плата: Waveshare ESP32-S3-AUDIO-Board (Dual Mic Array)

  • Аудіопроцес: ES7210 (ADC) + ES8311 (DAC) + TCA9555 (I/O Expander)
  • Середовище: ESP-IDF / Arduino (I2C SDA=10, SCL=11)

Опис проблеми: У мене стабільно виникає збій ініціалізації після холодного енергопостачання. Якщо спочатку прошити офіційну прошивку Waveshare, а потім робити теплий перезапуск у мою збірку, мікрофони та LED працюють ідеально. Однак якщо від’єднати живлення й завантажити безпосередньо мою збірку, плата лишається «мертвою»; зелений та кільцевий LED не світяться, ES7210 мовчить/повертає нулі.

Докази (вивантаження регістрів): Я зробив зняття регістрів з робочого стану (після офіційної прошивки) порівняно із збійним станом (після холодного старту).

1. TCA9555 (адреса 0x20) – керування живленням/LED:

  • Теплий (робочий):Reg 0x06: 0x9C | Reg 0x02: 0xFF
  • Холодний (збій):Reg 0x06: 0xFF | Reg 0x02: 0xFF
  • Спостереження: Після холодного завантаження Expander залишаєтья у дефолтному режимі «Вхід» (0xFF), тобто увімкнення живлення підсилювача (PA_EN) та піни скидання кодеку можуть бути вільно плаваючими або заземленими.

2. ES7210 (адреса 0x40) – мікрофонний ADC:

  • Теплий (робочий): Reg 0x00: 0x41 | Reg 0x02: 0xC1
  • Холодний (збій): Reg 0x00: 0x32 | Reg 0x02: 0x02

Що я пробував:

  1. IC-реплікація I2C: Спробував вручну записати «теплі» значення регістрів (0x9C до 0x06 на 0x20 тощо) на самому початку setup().
  2. Таймінг: Додав затримки до 1000 мс, щоб дати стабілізацію живлення перед ініціалізацією I2C.
  3. Сигнали тактовки: Ініціалізував драйвер I2S спочатку, щоб забезпечити активність MCLK (GPIO 12) перед відправкою I2C-команд ES7210.

Проблема: Попри повторний запис цих регістрів, LED не вмикаються, а мікрофони не фіксують звук після живлення. Виглядає так, ніби TCA9555 не приймає конфігурацію або існує прихована залежність від послідовності подачі живлення, яку я не бачу.

Питання:

  1. Чи існує конкретний «Hard Reset» пін (GPIO) для TCA9555, який потрібно перемикати перед можливістю I2C-спілкування?
  2. Чи потребує ES7210 конкретного I2C «рукопожатку» поза системними та аналоговими регістрами живлення, щоб вивести з холодного стану?
  3. Чи відомі які-небудь проблеми з енергозбереженням для ліній живлення 3.3V/5V на цій платі під час холодного старту?

Будь-яка допомога від людей, які успішно ініціалізували цю плату з холодного стану без використання повних компонентів ESP-ADF, буде дуже вдячна.

1 допис – 1 учасник

Прочитати повну тему

HI-FI News

через Home Assistant Community – Останні теми https://ift.tt/ytvT8j3

9 травня 2026 р. 23:02

May 9, 2026 at 11:02PM