/* * board_config.h — hardware pin map for the ESP32-P4 Dante/AES67 endpoint. * * Target board: Waveshare ESP32-P4-ETH (Ethernet via IP101 GRI PHY on RMII, * onboard ES8311 codec + NS4150B amplifier + mic + 8ohm speaker connector, * 32MB PSRAM, 32MB flash). Pins verified against the board schematic * (docs/esp32-p4_schematic_en.pdf). Values mirror the pin table in README.md * — if the board ever changes, update BOTH this file and the README table * together (see CLAUDE.md). * * Note on I2S data direction: DOUT (GPIO9) drives the codec's DAC serial * input (ES8311 DSDIN); DIN (GPIO11) reads the codec's ADC serial output * (ES8311 ASDOUT). */ #pragma once /* ---- Ethernet (RMII to IP101 GRI PHY) ---- */ #define BOARD_ETH_MDC_GPIO 31 #define BOARD_ETH_MDIO_GPIO 52 #define BOARD_ETH_REF_CLK_GPIO 50 /* external 50 MHz clock */ #define BOARD_ETH_PHY_RST_GPIO 51 #define BOARD_ETH_PHY_ADDR 1 /* ---- I2S audio to onboard ES8311 codec ---- */ #define BOARD_I2S_MCLK_GPIO 13 /* 18.432 MHz via APLL */ #define BOARD_I2S_BCLK_GPIO 12 /* bit clock */ #define BOARD_I2S_LRCLK_GPIO 10 /* word/frame clock */ #define BOARD_I2S_DOUT_GPIO 9 /* data out -> codec DAC */ #define BOARD_I2S_DIN_GPIO 11 /* data in <- codec ADC / mic */ /* ---- Power amp enable (NS4150B) ---- */ #define BOARD_PA_ENABLE_GPIO 53 /* active high */ /* ---- I2C control bus (ES8311) ---- */ #define BOARD_I2C_SCL_GPIO 8 #define BOARD_I2C_SDA_GPIO 7 /* ---- Default audio format ---- */ #define BOARD_AUDIO_SAMPLE_RATE 48000 #define BOARD_AUDIO_BIT_DEPTH 24 /* AES67 L24 */ #define BOARD_AUDIO_CHANNELS 2