Files
snapclient/components/audio_board/Kconfig.projbuild
Karl Osterseher f96ff180e2 remove I2S slave interface configuration from audio board
update all the template sdkconfigs
change lyrat v4.3 sdkconfig to use PSRAM per default and remove the other sdkconfig

Signed-off-by: Karl Osterseher <karli_o@gmx.at>
2025-01-20 22:13:47 +01:00

307 lines
9.3 KiB
Plaintext

menu "Audio Board"
config I2S_USE_MSB_FORMAT
bool
default n
help
Specifies if the I2S should use MSB format instead. Some DACs (such as PT8211) need this enabled to ensure
compatibility with their LSBJ timing under their native bit-depth. This option is only adjusted by the DAC
choice and is not exposed to menuconfig.
See https://github.com/schreibfaul1/ESP32-audioI2S/blob/1d9b299d0197f99fc70335295adcd226dc220f88/src/Audio.cpp#L4929
choice AUDIO_BOARD
prompt "Audio board"
default ESP_LYRAT_V4_3_BOARD
help
Select an audio board to use with the ESP-ADF
config AUDIO_BOARD_CUSTOM
bool "Custom audio board"
config ESP_LYRAT_V4_3_BOARD
bool "ESP32-Lyrat V4.3"
config ESP_LYRAT_V4_2_BOARD
bool "ESP32-Lyrat V4.2"
config ESP_LYRATD_MSC_V2_1_BOARD
bool "ESP32-LyraTD-MSC V2.1"
config ESP_LYRATD_MSC_V2_2_BOARD
bool "ESP32-LyraTD-MSC V2.2"
config ESP_LYRAT_MINI_V1_1_BOARD
bool "ESP32-Lyrat-Mini V1.1"
config ESP32_KORVO_DU1906_BOARD
bool "ESP32_KORVO_DU1906"
config ESP32_S2_KALUGA_1_V1_2_BOARD
bool "ESP32-S2-Kaluga-1 v1.2"
config ESP_AI_THINKER_ES8388_BOARD
bool "ESP-AI-Thinker-ES8388 v2.2"
#config ESP32_S3_KORVO2_V3_BOARD
# bool "ESP32-S3-Korvo-2 v3"
#config ESP32_S3_KORVO2L_V1_BOARD
# bool "ESP32-S3-Korvo-2L v1"
#config ESP32_S3_BOX_LITE_BOARD
# bool "ESP32-S3-BOX-Lite"
#config ESP32_S3_BOX_BOARD
# bool "ESP32-S3-BOX"
#config ESP32_C3_LYRA_V2_BOARD
# bool "ESP32-C3-Lyra-v2.0"
#config ESP32_C6_DEVKIT_BOARD
# bool "ESP32-C6-DEVKIT"
endchoice
choice ESP32_KORVO_DU1906_DAC
prompt "ESP32 KORVO DU1906 Board DAC chip"
depends on ESP32_KORVO_DU1906_BOARD
default ESP32_KORVO_DU1906_DAC_TAS5805M
help
Select DAC chip to use on ESP32_KORVO_DU1906 board
config ESP32_KORVO_DU1906_DAC_TAS5805M
bool "ESP32_KORVO_DU1906_DAC_TAS5805M"
config ESP32_KORVO_DU1906_DAC_ES7148
bool "ESP32_KORVO_DU1906_DAC_ES7148"
endchoice
choice ESP32_KORVO_DU1906_ADC
prompt "ESP32 KORVO DU1906 Board ADC chip"
depends on ESP32_KORVO_DU1906_BOARD
default ESP32_KORVO_DU1906_ADC_ES7243
help
Select ADC chip to use on ESP32_KORVO_DU1906 board
config ESP32_KORVO_DU1906_ADC_ES7243
bool "ESP32_KORVO_DU1906_ADC_ES7243"
endchoice
menu "Custom Audio Board"
depends on AUDIO_BOARD_CUSTOM
choice GENERIC_BOARD_DAC
prompt "DAC chip"
default DAC_MA120
help
Select a DAC connected to the generic ESP32 board
config DAC_PCM51XX
bool "TI PCM51XX/TAS57XX based DAC"
config DAC_PCM5102A
bool "TI PCM5102A based DAC"
config DAC_MA120
bool "Infineon MA120 ClassD AMP"
config DAC_MA120X0
bool "Infineon MA120X0 ClassD AMP"
config DAC_ADAU1961
bool "Analog Devices ADAU1961 DAC"
config DAC_MAX98357
bool "Analog Devices MAX98357 DAC"
config DAC_TAS5805M
bool "Texas Instruments TAS5805M"
config DAC_PT8211
bool "Princeton Technology PT8211"
select I2S_USE_MSB_FORMAT
endchoice
menu "DAC I2C control interface"
config DAC_I2C_SDA
int "SDA pin"
default 12 if DAC_ADAU1961
default 21 if DAC_MA120 || DAC_PCM51XX || DAC_MA120 || DAC_MA120X0 || DAC_MAX98357 || DAC_PCM5102A || DAC_TAS5805M
default -1 if DAC_PT8211
help
I2C SDA pin of the DAC control interface
config DAC_I2C_SCL
int "SCL pin"
default 14 if DAC_ADAU1961
default 22 if DAC_MA120 || DAC_PCM51XX || DAC_MA120 || DAC_MA120X0 || DAC_MAX98357 || DAC_PCM5102A
default 27 if DAC_TAS5805M
default -1 if DAC_PT8211
help
I2C SCL pin of the DAC control interface
config DAC_I2C_ADDR
hex "I2C address"
default 0x70 if DAC_ADAU1961
default 0x20 if DAC_MA120 || DAC_PCM51XX || DAC_MA120 || DAC_MA120X0 || DAC_MAX98357 || DAC_PCM5102A
default 0x2D if DAC_TAS5805M
default 0x00 if DAC_PT8211
help
I2C Address of the DAC control interface
endmenu
menu "I2S master interface"
config MASTER_I2S_MCLK_PIN
int "Master i2s mclk"
default 3 if DAC_ADAU1961
default 0
help
Master audio interface master clock.
config MASTER_I2S_BCK_PIN
int "Master i2s bck"
default 15 if DAC_ADAU1961
default 23 if DAC_MAX98357
default 26 if DAC_TAS5805M
default 23
help
Master audio interface bit clock.
config MASTER_I2S_LRCK_PIN
int "Master i2s lrck"
default 13 if DAC_ADAU1961
default 24 if DAC_MAX98357
default 25 if DAC_TAS5805M
default 2
help
Master audio interface left/right sync clock.
config MASTER_I2S_DATAOUT_PIN
int "Master i2s data out"
default 4 if DAC_ADAU1961
default 25 if DAC_MAX98357
default 22 if DAC_TAS5805M
default 14
help
Master audio interface data out.
endmenu
menu "DAC-Operation-Mode"
depends on DAC_TAS5805M
config DAC_BRIDGE_MODE
bool "Enable Bridge-Mode"
default false if DAC_TAS5805M
help
If enabled left channel will be played with more power. To use the right channel please change Word-Select-Setting in Logic-Level-Settings.
endmenu
menu "Merus MA120x0 interface Configuration"
depends on DAC_MA120X0
config MA120X0_NENABLE_PIN
int "Master enable/disable for ma120x0"
default 16
help
GPIO number to control enable/disable.
config MA120X0_NMUTE_PIN
int "Master mute/unmute for ma120x0"
default 2
help
GPIO number to controm mute/unmute.
config MERUS_NERR_PIN
int "NERR monitor pin"
default 21
help
GPIO number to monitor NERROR.
config MERUS_NCLIP_PIN
int "Clip indication pin"
default 22
help
GPIO number low if clip observed
endmenu
menu "Merus MA120 interface Configuration"
depends on DAC_MA120
config MA120_ENABLE_PIN
int "Master enable/disable for ma120x0"
default 16
help
GPIO number to control enable/disable.
config MA120_NMUTE_PIN
int "Master mute/unmute for ma120x0"
default 2
help
GPIO number to controm mute/unmute.
config MERUS_NERR_PIN
int "NERR monitor pin"
default 21
help
GPIO number to monitor NERROR.
config MERUS_NCLIP_PIN
int "Clip indication pin"
default 22
help
GPIO number low if clip observed
endmenu
menu "TI PCM5102A interface Configuration"
depends on DAC_PCM5102A
config PCM5102A_MUTE_PIN
int "Master mute/unmute for PCM5102A"
default 18
help
GPIO number to control mute/unmute.
This is labeled "X(S)MT" on chip/boards
endmenu
menu "MAX98357 interface Configuration"
depends on DAC_MAX98357
config MAX98357_MUTE_PIN
int "Master mute/mode for MAX98357"
default 18
help
GPIO number to control mute/mode. This require a special resistor to select the correct mode.
You need to put a serie resistor to select the mode (GPIO --> Resistor --> SD):
LEFT only : 0ohm (direct connection)
RIGHT only : 220Kohm
(L+R)/2 : 1Mohm
Refer to Analog Devices' doc for more infos.
This is labeled "SD" on chip/boards.
endmenu
menu "PT8211 interface Configuration"
depends on DAC_PT8211
config PT8211_MUTE_PIN
int "Master mute/unmute"
default -1
help
GPIO number to control mute/unmute.
Note that PT8211 does not have a mute control pin. This output is intended to control external circuit (e.g., amplifier).
config PT8211_MUTE_ACTIVE_LOW
bool "Mute active LOW"
default false
help
Output LOW instead of HIGH on mute/unmute pin when in mute state.
endmenu
menu "Logic-Level-Settings"
config INVERT_MCLK_LEVEL
bool "Invert Logic Level MCLK"
default false
help
Invert the Logic-Level of MCLK.
config INVERT_WORD_SELECT_LEVEL
bool "Invert Logic Level WordSelect"
default false
help
Some Dacs can bridge their outputs. Word-Select is used for selecting the played audio channel. This will switch L/R.
config INVERT_BCLK_LEVEL
bool "Invert Logic Level BCLK"
default false
help
Invert the Logic-Level of BCLK.
endmenu
endmenu
endmenu