Kconfig.projbuild 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. menu "Board Configuration"
  2. choice BOARD_TARGET
  3. prompt "Select Target Board"
  4. default BOARD_ESP32_GENERIC if IDF_TARGET_ESP32
  5. default BOARD_ESP32S2_GENERIC if IDF_TARGET_ESP32S2
  6. default BOARD_ESP32S3_GENERIC if IDF_TARGET_ESP32S3
  7. default BOARD_WAVESHARE_ESP32P4 if IDF_TARGET_ESP32P4
  8. config BOARD_SQUEEZEAMP
  9. bool "SqueezeAMP (8MB flash)"
  10. depends on IDF_TARGET_ESP32
  11. config BOARD_SQUEEZEAMP_4M
  12. bool "SqueezeAMP (4MB flash)"
  13. depends on IDF_TARGET_ESP32
  14. config BOARD_ESP32S2_GENERIC
  15. bool "ESP32-S2 Generic"
  16. depends on IDF_TARGET_ESP32S2
  17. config BOARD_ESP32S3_GENERIC
  18. bool "ESP32-S3 Generic"
  19. depends on IDF_TARGET_ESP32S3
  20. config BOARD_ESP32_GENERIC
  21. bool "ESP32 Board with >4M PSRAM"
  22. depends on IDF_TARGET_ESP32
  23. config BOARD_ESPARAGUS_AUDIO_BRICK
  24. bool "Esparagus Audio Brick (ESP32, TAS58xx)"
  25. depends on IDF_TARGET_ESP32
  26. config BOARD_ESPARAGUS_AUDIO_BRICK_S3
  27. bool "Esparagus Audio Brick (ESP32-S3, TAS58xx)"
  28. depends on IDF_TARGET_ESP32S3
  29. config BOARD_WAVESHARE_ESP32P4
  30. bool "Waveshare ESP32-P4 Module Dev Kit"
  31. depends on IDF_TARGET_ESP32P4
  32. config BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  33. bool "Waveshare ESP32-S3-Touch-LCD-1.54"
  34. depends on IDF_TARGET_ESP32S3
  35. config BOARD_ESPARAGUS_LOUDER
  36. bool "Louder Esparagus / Louder-ESP32 (ESP32, TAS58xx)"
  37. depends on IDF_TARGET_ESP32
  38. config BOARD_ESPARAGUS_LOUDER_S3
  39. bool "Louder Esparagus S3 / Louder-ESP32-S3 (ESP32-S3, TAS58xx)"
  40. depends on IDF_TARGET_ESP32S3
  41. config BOARD_MUSIC_BOX
  42. bool "Music Box (ESP32, NJW1195AV)"
  43. depends on IDF_TARGET_ESP32
  44. endchoice
  45. config BOARD_TARGET_PATH
  46. string
  47. default "squeezeamp" if BOARD_SQUEEZEAMP
  48. default "squeezeamp" if BOARD_SQUEEZEAMP_4M
  49. default "esp32s2-generic" if BOARD_ESP32S2_GENERIC
  50. default "esp32s3-generic" if BOARD_ESP32S3_GENERIC
  51. default "esp32-generic" if BOARD_ESP32_GENERIC
  52. default "esparagus-audio-brick" if BOARD_ESPARAGUS_AUDIO_BRICK
  53. default "esparagus-audio-brick" if BOARD_ESPARAGUS_AUDIO_BRICK_S3
  54. default "waveshare-esp32p4" if BOARD_WAVESHARE_ESP32P4
  55. default "waveshare-esp32s3" if BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  56. default "esparagus-audio-brick" if BOARD_ESPARAGUS_LOUDER
  57. default "esparagus-audio-brick" if BOARD_ESPARAGUS_LOUDER_S3
  58. default "music-box" if BOARD_MUSIC_BOX
  59. config BOARD_SQUEEZEAMP_COMMON
  60. bool
  61. default y if BOARD_SQUEEZEAMP || BOARD_SQUEEZEAMP_4M
  62. menu "Pin Configuration"
  63. menu "LED GPIOs"
  64. config LED_STATUS_GPIO
  65. int "Status LED GPIO"
  66. default -1
  67. help
  68. GPIO for status LED (single color). Set to -1 to disable.
  69. config LED_ERROR_GPIO
  70. int "Error LED GPIO"
  71. default -1
  72. help
  73. GPIO for error LED. Set to -1 to disable.
  74. config LED_RGB_GPIO
  75. int "RGB LED GPIO (WS2812)"
  76. default -1
  77. help
  78. GPIO for addressable RGB LED (WS2812). Set to -1 to disable.
  79. endmenu
  80. menu "I2S and S/PDIF Pin Configuration"
  81. config I2S_SCK_IO
  82. int "I2S Master Clock GPIO"
  83. default -1
  84. help
  85. I2S Master (system) Clock GPIO pin to use; needed with some I2S conversion boards.
  86. config I2S_BCK_IO
  87. int "I2S Bit Clock GPIO"
  88. default -1
  89. help
  90. I2S Bit Clock GPIO pin to use.
  91. config I2S_WS_IO
  92. int "I2S Word Select GPIO"
  93. default -1
  94. help
  95. I2S Word Select GPIO pin to use.
  96. config I2S_DO_IO
  97. int "I2S Data Output GPIO"
  98. default -1
  99. help
  100. I2S Data Output GPIO pin to use.
  101. config SPDIF_DO_IO
  102. int "SPDIF Data Output GPIO"
  103. default -1
  104. help
  105. GPIO for SPDIF data output. Set to -1 to disable S/PDIF.
  106. config I2S_GND_IO
  107. int "I2S GND GPIO"
  108. default -1
  109. help
  110. GPIO to provide GND to I2S DAC if powered from GPIO.
  111. 20mA maximum! Set to -1 to disable.
  112. config I2S_VCC_IO
  113. int "I2S VCC GPIO"
  114. default -1
  115. help
  116. GPIO to provide VCC to I2S DAC if powered from GPIO.
  117. 20mA maximum! Set to -1 to disable.
  118. endmenu
  119. menu "Control GPIOs"
  120. config BAT_CHANNEL
  121. int "Battery Monitor GPIO"
  122. default -1
  123. help
  124. GPIO for battery voltage monitoring ADC channel. Set to -1 to disable.
  125. config DAC_I2C_SDA
  126. int "I2C SDA GPIO for DAC"
  127. default -1
  128. help
  129. I2C data GPIO pin for DAC control. Set to -1 if not used.
  130. config DAC_I2C_SCL
  131. int "I2C SCL GPIO for DAC"
  132. default -1
  133. help
  134. I2C clock GPIO pin for DAC control. Set to -1 if not used.
  135. config JACK_GPIO
  136. int "Headphone Jack Detection GPIO"
  137. default -1
  138. help
  139. GPIO for headphone jack detection. Set to -1 to disable.
  140. config SPKFAULT_GPIO
  141. int "DAC/AMP Fault Detection GPIO"
  142. default -1
  143. help
  144. GPIO for speaker/amplifier fault detection. Set to -1 to disable.
  145. config MUTE_GPIO
  146. int "Mute GPIO"
  147. default -1
  148. help
  149. GPIO used to mute DAC/amplifier. Set to -1 to disable.
  150. config MUTE_GPIO_LEVEL
  151. int "Mute GPIO Active Level"
  152. default 0
  153. help
  154. Active level for mute GPIO (0=active low, 1=active high).
  155. endmenu
  156. menu "SPI Display Configuration"
  157. config SPI_SCLK_IO
  158. int "SPI Clock GPIO (display)"
  159. default 38
  160. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  161. help
  162. SPI clock GPIO for display.
  163. config SPI_MOSI_IO
  164. int "SPI MOSI GPIO (display)"
  165. default 39
  166. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  167. help
  168. SPI MOSI GPIO for display.
  169. config SPI_MISO_IO
  170. int "SPI MISO GPIO (display)"
  171. default -1
  172. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  173. help
  174. SPI MISO GPIO for display. Set to -1 if not used.
  175. config SPI_CS_IO
  176. int "SPI Chip Select GPIO (display)"
  177. default 21
  178. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  179. help
  180. SPI chip select GPIO for display.
  181. config SPI_DC_IO
  182. int "SPI Data Command GPIO (display)"
  183. default 45
  184. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  185. help
  186. SPI Data/Command GPIO for display.
  187. config SPI_RST_IO
  188. int "SPI Reset GPIO (display)"
  189. default 40
  190. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  191. help
  192. SPI reset GPIO for display.
  193. config SPI_BL_IO
  194. int "SPI Backlight GPIO (display)"
  195. default 46
  196. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  197. help
  198. GPIO for display backlight PWM dimming.
  199. config I2C_TOUCH_SDA_IO
  200. int "I2C SDA GPIO (touch controller)"
  201. default 42
  202. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  203. help
  204. I2C SDA GPIO for touch controller (CST816S).
  205. config I2C_TOUCH_SCL_IO
  206. int "I2C SCL GPIO (touch controller)"
  207. default 41
  208. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  209. help
  210. I2C SCL GPIO for touch controller (CST816S).
  211. config I2C_TOUCH_RST_IO
  212. int "I2C Touch Reset GPIO"
  213. default 47
  214. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  215. help
  216. GPIO for touch controller reset line.
  217. config I2C_TOUCH_INT_IO
  218. int "I2C Touch Interrupt GPIO"
  219. default 48
  220. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  221. help
  222. GPIO for touch controller interrupt line.
  223. config LED_BL_PWM_TIMER
  224. int "LED Backlight PWM Timer"
  225. default 0
  226. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  227. help
  228. LEDC timer number for display backlight PWM.
  229. config LED_BL_PWM_CHANNEL
  230. int "LED Backlight PWM Channel"
  231. default 0
  232. depends on BOARD_WAVESHARE_ESP32S3_TOUCH_LCD_154
  233. help
  234. LEDC channel number for display backlight PWM.
  235. endmenu
  236. menu "SPI and Ethernet Configuration"
  237. config ETH_W5500_ENABLED
  238. bool "Enable W5500 SPI Ethernet"
  239. default n
  240. help
  241. Enable W5500 SPI Ethernet support. Requires SPI bus pins
  242. and W5500 chip-select, interrupt and reset GPIOs.
  243. config SPI_CLK_GPIO
  244. int "SPI Clock GPIO"
  245. default 18
  246. depends on ETH_W5500_ENABLED
  247. help
  248. SPI bus clock GPIO (shared with display).
  249. config SPI_MOSI_GPIO
  250. int "SPI MOSI GPIO"
  251. default 23
  252. depends on ETH_W5500_ENABLED
  253. help
  254. SPI bus MOSI GPIO (shared with display).
  255. config SPI_MISO_GPIO
  256. int "SPI MISO GPIO"
  257. default 19
  258. depends on ETH_W5500_ENABLED
  259. help
  260. SPI bus MISO GPIO (shared with display).
  261. config ETH_W5500_CS_GPIO
  262. int "W5500 Chip Select GPIO"
  263. default 5
  264. depends on ETH_W5500_ENABLED
  265. help
  266. GPIO for W5500 SPI chip select.
  267. config ETH_W5500_INT_GPIO
  268. int "W5500 Interrupt GPIO"
  269. default 35
  270. depends on ETH_W5500_ENABLED
  271. help
  272. GPIO for W5500 interrupt. Set to -1 to use polling.
  273. config ETH_W5500_RST_GPIO
  274. int "W5500 Reset GPIO"
  275. default 14
  276. depends on ETH_W5500_ENABLED
  277. help
  278. GPIO for W5500 hardware reset. Set to -1 to disable.
  279. endmenu
  280. endmenu
  281. endmenu