Files
L'électron rare f4d36d31d9
CI / sanity (push) Successful in 12s
CI / build (push) Successful in 5m29s
fix: move link RX to GPIO 23, PA_EN owns GPIO 21
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.
2026-08-04 19:08:07 +02:00

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 et box3_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.