#ifndef _BOARD_CONFIG_H_
#define _BOARD_CONFIG_H_

#include <driver/gpio.h>

#define AUDIO_INPUT_SAMPLE_RATE  24000
#define AUDIO_OUTPUT_SAMPLE_RATE 24000

#define AUDIO_I2S_GPIO_MCLK GPIO_NUM_0
#define AUDIO_I2S_GPIO_WS GPIO_NUM_3
#define AUDIO_I2S_GPIO_BCLK GPIO_NUM_1
#define AUDIO_I2S_GPIO_DIN  GPIO_NUM_2
#define AUDIO_I2S_GPIO_DOUT GPIO_NUM_10

#define AUDIO_CODEC_PA_PIN       IO_EXPANDER_PIN_NUM_0
#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 BOOT_BUTTON_GPIO        GPIO_NUM_28

#define DISPLAY_SPI_MODE        SPI2_HOST
#define DISPLAY_CS_PIN          GPIO_NUM_27
#define DISPLAY_MOSI_PIN        GPIO_NUM_7
#define DISPLAY_MISO_PIN        GPIO_NUM_NC
#define DISPLAY_CLK_PIN         GPIO_NUM_23
#define DISPLAY_DC_PIN          GPIO_NUM_24
#define DISPLAY_RST_PIN         GPIO_NUM_NC

#define DISPLAY_TOUCH_INT_PIN   GPIO_NUM_5
#define DISPLAY_TOUCH_RST_PIN   IO_EXPANDER_PIN_NUM_1

#define DISPLAY_WIDTH 240
#define DISPLAY_HEIGHT 280
#define DISPLAY_SWAP_XY false
#define DISPLAY_MIRROR_X false
#define DISPLAY_MIRROR_Y false
#define DISPLAY_RGB_ORDER       LCD_RGB_ELEMENT_ORDER_RGB
#define DISPLAY_INVERT_COLOR    true
#define DISPLAY_OFFSET_X  0
#define DISPLAY_OFFSET_Y  0x14

#define DISPLAY_BACKLIGHT_PIN GPIO_NUM_26
#define DISPLAY_BACKLIGHT_OUTPUT_INVERT false

#endif // _BOARD_CONFIG_H_
