Box-3 -> looper direction was dead: the Box-3 provably transmits (TX CMD traces) but not a single byte ever reached GPIO 21. On this Audio Kit revision (AC101-style routing, codec I2C on 33/32) GPIO 21 is hard-wired to the NS4150 amplifier enable. GPIO 23 is free on these revisions precisely because the codec I2C is not on 18/23. Wiring docs updated.
3.3 KiB
Câblage — Audio Kit ↔ ESP32-S3-BOX-3
Liaison UART (3 fils)
| Audio Kit (ESP32-A1S) | ESP32-S3-BOX-3 | Rôle |
|---|---|---|
| GPIO 22 (TX, UART1) | GPIO 41 (RX, UART1) | état → Box-3 |
| GPIO 23 (RX, UART1) | GPIO 40 (TX, UART1) | commandes → looper |
| GND | GND | masse commune |
⚠️ Pas GPIO 21 pour le RX : sur les révisions d'Audio Kit au routage type AC101 (I2C codec sur 33/32 — vérifiable par scan I2C), GPIO 21 est câblé en dur au PA_EN de l'ampli NS4150 et ne reçoit rien. GPIO 23 est libre sur ces révisions précisément parce que l'I2C n'y est pas.
- 460 800 bauds, 8N1, niveaux 3,3 V des deux côtés (aucune adaptation).
- Croiser TX/RX. Garder les fils courts (< 30 cm) ou torsader avec la masse.
- Les pins se changent dans
src/config.h(LINK_UART_TX_PIN/LINK_UART_RX_PIN) côté Audio Kit etbox3_display/main/link_task.h(LINK_GPIO_TX/LINK_GPIO_RX) côté Box-3.
Pourquoi ces pins ?
Côté Audio Kit ES8388 (v2.2, config ES8388_CFG_I2C=1 / I2S=4 de
ml_boards.h), presque tout est pris :
| GPIO | Usage existant |
|---|---|
| 0 | I2S MCLK |
| 5 | I2S BCLK |
| 18 | I2C SDA (codec ES8388, partagé header) |
| 23 | I2C SCL (codec ES8388, partagé header) |
| 25 | I2S LRCK |
| 26 | I2S DIN (vers codec) |
| 35 | I2S DOUT (depuis codec) |
| 36 | boutons analogiques (ADC, mod analog) |
| 19 | LED D5 (BLINK_LED_PIN) |
| 2, 14, 15 | carte SD (SD_MMC 1 bit) |
| 21 | libéré : MIDI RX2 optionnel, désactivé (#undef MIDI_PORT2_ACTIVE) car le MIDI passe par l'USB-série |
| 22 | libre sur le header |
→ Il reste 21 (RX) et 22 (TX), exposés sur le header de la carte.
Côté BOX-3, GPIO 40/41 sont disponibles sur le connecteur PMOD du dock
(comme 38/39/42). Vérifie la sérigraphie de ton dock : les deux connecteurs
16 broches exposent G09/G43/G44/G38/G39/G40/G41/G42 + 3V3/GND. Si tu utilises
d'autres broches, ajuste link_task.h.
Carte SD (sessions)
La sauvegarde/chargement de sessions utilise le slot SD de l'Audio Kit en mode SD_MMC 1 bit (GPIO 2/14/15). Points d'attention :
- Carte formatée FAT32.
- Les switchs DIP de l'Audio Kit doivent router la SD (positions 2/3 ON selon la sérigraphie de la carte ; les positions exactes varient selon les révisions — si le mount échoue, c'est le premier truc à vérifier).
- Arborescence créée :
/session_NN/track1..4.wav+/session_NN/meta.txt. Les WAV sont standards (mono 16 bit 44,1 kHz) et se rouvrent dans n'importe quel éditeur audio.
MIDI (inchangé)
Le MIDI arrive par l'USB-série (115 200 bauds, cf. MIDI_RECV_FROM_SERIAL),
par exemple via Hairless MIDI-serial.
Le port MIDI matériel optionnel (RX2/GPIO 21) est désactivé au profit de la
liaison Box-3.
Alimentation
Chaque carte s'alimente par son propre USB-C/micro-USB. Ne pas relier les 5 V entre elles — seulement la masse.