#ifndef _BOARD_CONFIG_H_ #define _BOARD_CONFIG_H_ // M5Stack Cardputer Adv Board configuration // MCU: ESP32-S3FN8 (Stamp-S3A) // Display: ST7789V2 1.14" 240x135 // Audio: ES8311 + NS4150B #include // Audio settings #define AUDIO_INPUT_SAMPLE_RATE 24000 #define AUDIO_OUTPUT_SAMPLE_RATE 24000 // I2S Audio pins (ES8311) #define AUDIO_I2S_GPIO_MCLK GPIO_NUM_NC #define AUDIO_I2S_GPIO_BCLK GPIO_NUM_41 // SCLK #define AUDIO_I2S_GPIO_WS GPIO_NUM_43 // LRCK #define AUDIO_I2S_GPIO_DOUT GPIO_NUM_42 // DSDIN (MCU -> ES8311) #define AUDIO_I2S_GPIO_DIN GPIO_NUM_46 // ASDOUT (ES8311 -> MCU) // I2C pins (shared for ES8311, TCA8418, BMI270) #define AUDIO_CODEC_I2C_SDA_PIN GPIO_NUM_8 #define AUDIO_CODEC_I2C_SCL_PIN GPIO_NUM_9 #define AUDIO_CODEC_ES8311_ADDR ES8311_CODEC_DEFAULT_ADDR #define AUDIO_CODEC_PA_PIN GPIO_NUM_NC // NS4150B is always on // Button #define BOOT_BUTTON_GPIO GPIO_NUM_0 #define BUILTIN_LED_GPIO GPIO_NUM_NC #define VOLUME_UP_BUTTON_GPIO GPIO_NUM_NC #define VOLUME_DOWN_BUTTON_GPIO GPIO_NUM_NC // Display ST7789V2 (SPI) #define DISPLAY_WIDTH 240 #define DISPLAY_HEIGHT 135 #define DISPLAY_MIRROR_X true #define DISPLAY_MIRROR_Y false #define DISPLAY_SWAP_XY true #define DISPLAY_OFFSET_X 40 #define DISPLAY_OFFSET_Y 52 #define DISPLAY_SPI_MOSI_PIN GPIO_NUM_35 #define DISPLAY_SPI_SCLK_PIN GPIO_NUM_36 #define DISPLAY_SPI_CS_PIN GPIO_NUM_37 #define DISPLAY_DC_PIN GPIO_NUM_34 #define DISPLAY_RST_PIN GPIO_NUM_33 #define DISPLAY_BACKLIGHT_PIN GPIO_NUM_38 #define DISPLAY_BACKLIGHT_OUTPUT_INVERT false // Keyboard TCA8418 I2C address #define KEYBOARD_TCA8418_ADDR 0x34 // IMU BMI270 I2C address #define IMU_BMI270_ADDR 0x68 #endif // _BOARD_CONFIG_H_