From a733cbd0ea469af0667bbe3920ec06f9d2c7f80d Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Sat, 5 Sep 2026 13:55:51 -0400 Subject: [PATCH 1/7] Fill out board manifest for Waveshare ESP32-P4-WIFI6-DEV-KIT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add board-specific details to pin definitions and correct some errors. Add components for a variety of onboard devices: * In-package PSRAM (enabled by default) * Boot button * Shared I²C bus * Audio codec, speaker/microphone, and amplifier Also some optionally bundled accessories: * 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A screens (included with DEV-KIT-B and DEV-KIT-C), along with I²C backlight controls. (No touchscreen support yet, needs a GT9271 touchscreen driver) And a few helpers: * SPI bus components on standard locations on the Raspberry Pi compatible 40-pin header to make it easier to use Raspberry Pi hats. * An I²C bus on the I³C header. --- .../waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../definitions/boards.index.json | 2 +- .../manifest.yaml | 781 ++++++++++++------ .../featured_components.index.json | 2 +- 4 files changed, 545 insertions(+), 242 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index c978daaf09..8263ef0de3 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"c6_wifi"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet, MIPI DSI display and MIPI CSI camera connectors, microSD slot, 3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header, USB-A OTG (jumper-switchable) and USB-C ports, 28 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_components":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}],"hardware":{"connectivity":["wifi","ethernet"],"cpu_frequency":"400MHz","flash_size":"16MB"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","pins":[{"features":["pwm"],"gpio":0,"label":"GPIO0"},{"features":["pwm"],"gpio":1,"label":"GPIO1"},{"features":["pwm","touch"],"gpio":2,"label":"GPIO2","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":3,"label":"GPIO3","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":4,"label":"GPIO4","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":5,"label":"GPIO5","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":6,"label":"GPIO6","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":7,"label":"GPIO7","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":8,"label":"GPIO8","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":9,"label":"GPIO9","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":10,"label":"GPIO10","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":11,"label":"GPIO11","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":12,"label":"GPIO12","notes":"Touch channel"},{"features":["pwm","touch"],"gpio":13,"label":"GPIO13","notes":"Touch channel"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"features":["adc","pwm"],"gpio":20,"label":"GPIO20","notes":"ADC1_CH4"},{"features":["adc","pwm"],"gpio":21,"label":"GPIO21","notes":"ADC1_CH5"},{"features":["adc","pwm"],"gpio":22,"label":"GPIO22","notes":"ADC1_CH6"},{"features":["adc","pwm"],"gpio":23,"label":"GPIO23","notes":"ADC1_CH7"},{"features":["adc","pwm","usb_dm"],"gpio":24,"label":"GPIO24","notes":"ADC1_CH8 — USB OTG D-"},{"features":["adc","pwm","usb_dp"],"gpio":25,"label":"GPIO25","notes":"ADC1_CH9 — USB OTG D+"},{"features":["adc","pwm"],"gpio":26,"label":"GPIO26","notes":"ADC1_CH10"},{"features":["adc","pwm"],"gpio":27,"label":"GPIO27","notes":"ADC1_CH11"},{"available":false,"gpio":28,"label":"GPIO28","occupied_by":"Ethernet RMII CRS_DV"},{"available":false,"gpio":29,"label":"GPIO29","occupied_by":"Ethernet RMII RXD0"},{"available":false,"gpio":30,"label":"GPIO30","occupied_by":"Ethernet RMII RXD1"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet MDC"},{"features":["pwm"],"gpio":32,"label":"GPIO32"},{"features":["pwm"],"gpio":33,"label":"GPIO33"},{"available":false,"gpio":34,"label":"GPIO34","occupied_by":"Ethernet RMII TXD0"},{"available":false,"gpio":35,"label":"GPIO35","occupied_by":"Ethernet RMII TXD1"},{"features":["pwm","strapping"],"gpio":36,"label":"GPIO36","notes":"Strapping pin"},{"available":false,"gpio":37,"label":"GPIO37","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"available":false,"gpio":38,"label":"GPIO38","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"available":false,"gpio":39,"label":"GPIO39","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"available":false,"gpio":42,"label":"GPIO42","notes":"SPI Flash — do not use","occupied_by":"SPI Flash"},{"features":["pwm"],"gpio":43,"label":"GPIO43"},{"features":["pwm"],"gpio":44,"label":"GPIO44"},{"features":["pwm"],"gpio":45,"label":"GPIO45"},{"features":["pwm"],"gpio":46,"label":"GPIO46"},{"features":["pwm"],"gpio":47,"label":"GPIO47"},{"features":["pwm"],"gpio":48,"label":"GPIO48"},{"available":false,"gpio":49,"label":"GPIO49","occupied_by":"Ethernet RMII TX_EN"},{"available":false,"gpio":50,"label":"GPIO50","occupied_by":"Ethernet CLK"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet Power"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet MDIO"},{"features":["pwm"],"gpio":53,"label":"GPIO53"},{"available":false,"gpio":54,"label":"GPIO54","occupied_by":"ESP32-C6 co-processor (reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","sd-card","usb-c","camera","display","microphone"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46\"","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards.index.json b/esphome_device_builder/definitions/boards.index.json index 98168b4138..9af307999e 100644 --- a/esphome_device_builder/definitions/boards.index.json +++ b/esphome_device_builder/definitions/boards.index.json @@ -954,7 +954,7 @@ {"description":"Waveshare ESP32-P4-NANO with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with a reserved PoE module header, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, RTC battery header, USB-A OTG and USB-C ports, 28 user GPIOs.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-P4-Nano/","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_nano","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-P4-Nano/waveshare-esp32-p4-nano.webp"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Nano","product_url":"https://www.waveshare.com/esp32-p4-nano.htm","tags":["dev-kit","sd-card","usb-c","camera","display","microphone"]}, {"description":"Waveshare ESP32-P4-Pico in the Raspberry Pi Pico form factor with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an onboard ESP32-C6 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-Pico","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_pico","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-pico-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Pico","product_url":"https://www.waveshare.com/esp32-p4-pico.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, {"description":"Compact Waveshare ESP32-P4-WIFI6 board with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6","product_url":"https://www.waveshare.com/esp32-p4-wifi6.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, -{"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet, MIPI DSI display and MIPI CSI camera connectors, microSD slot, 3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header, USB-A OTG (jumper-switchable) and USB-C ports, 28 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","sd-card","usb-c","camera","display","microphone"]}, +{"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]}, {"description":"Waveshare ESP32-P4-WIFI6-POE-ETH with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1U co-processor with external antenna connector. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with PoE, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-A OTG and USB-C ports.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-POE-ETH","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_poe_eth","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-poe-eth-1_2.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-POE-ETH","product_url":"https://www.waveshare.com/esp32-p4-wifi6-poe-eth.htm","tags":["dev-kit","poe","sd-card","usb-c","camera","display","microphone","external-antenna"]}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/","esphome":{"board":"esp32-s3-devkitc-1","framework":"esp-idf","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8do","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/device.png"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8DO"}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/","esphome":{"board":"esp32s3box","framework":"arduino","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8ro","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image1.jpg","https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image2.jpg"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8RO","tags":["relay"]}, diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index cf71ed5b74..f1f7eda954 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -1,11 +1,18 @@ id: waveshare_esp32_p4_wifi6_dev_kit name: Waveshare ESP32-P4-WIFI6-DEV-KIT -description: Waveshare ESP32-P4-WIFI6-DEV-KIT with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, - 16MB flash, 32MB PSRAM). The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box - through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet, MIPI DSI display and MIPI - CSI camera connectors, microSD slot, 3.5mm audio jack plus microphone and speaker header, - I2C/I3C headers, RTC battery header, USB-A OTG (jumper-switchable) and USB-C ports, 28 user - GPIOs. +description: | + Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor. + Uses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). + The ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor. + 100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot, + 3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header, + USB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs. + The GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible. + Different revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4. + Several bundles were available, including additional components: + **ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B. + **ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display. + **ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display. manufacturer: Waveshare images: - https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg @@ -17,26 +24,39 @@ esphome: logger_hardware_uart: UART0 hardware: flash_size: 16MB + ram_size: 34381824 cpu_frequency: 400MHz connectivity: - wifi - ethernet + - bluetooth tags: - dev-kit +- breakout - sd-card - usb-c - camera - display - microphone +- speaker docs_url: https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT product_url: https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm featured_components: -- id: c6_wifi +- id: in_package_psram + component_id: psram + fields: + mode: + value: hex + locked: true + speed: 200MHz + ignore_not_found: false + +- id: esp32_hosted_c6 component_id: esp32_hosted - name: Wi-Fi via ESP32-C6 co-processor - description: Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 - Wi-Fi 6. Installed automatically in every new device — the wifi block only works while - this is present. If the C6 never comes up on your unit, try active_high false. + name: ESP32-C6 wireless co-processor + description: | + Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth. + The wifi and esp32_ble components only work while this is present. fields: type: value: sdio @@ -46,6 +66,7 @@ featured_components: locked: true active_high: value: true + locked: true reset_pin: value: GPIO54 locked: true @@ -67,11 +88,11 @@ featured_components: d3_pin: value: GPIO17 locked: true + - id: onboard_ethernet component_id: ethernet name: Onboard Ethernet - description: Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is - created without Wi-Fi credentials. + description: Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials. fields: type: value: IP101 @@ -93,331 +114,613 @@ featured_components: power_pin: value: GPIO51 locked: true + # crs_dv/rxdv pin: GPIO28 + # rxd0 pin: GPIO29 + # rxd1 pin: GPIO30 + # txd0 pin: GPIO34 + # txd1 pin: GPIO35 + +- id: boot_button + name: BOOT Button + description: | + Onboard "BOOT" button. + Conflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1). + component_id: binary_sensor.gpio + fields: + name: BOOT Button + pin: + value: + number: GPIO35 + inverted: true + ignore_strapping_warning: true + locked: true + id: boot_button + +- id: i2c_bus + name: Onboard / Shared I²C bus + description: | + The shared I²C bus used for onboard components (Audio codec), + and available for external devices via the I²C connector, + MIPI SCI and DSI connectors, + and SDA/SCL pins on the 40pin header. + This will also allow you to use some Raspberry Pi hats with I²C peripherals. + Onboard components support max frequency 400kHz. + If you connect additional peripherals, you may need to reduce the frequency. + component_id: i2c + fields: + id: + value: i2c_bus + locked: true + scl: + value: GPIO8 + locked: true + sda: + value: GPIO7 + locked: true + frequency: 400kHz + # Board has external 2.2K I²C pullup resistors, but vendor sample code still enables internal pullups + sda_pullup_enabled: true + scl_pullup_enabled: true + +- id: audio_bus + component_id: i2s_audio + fields: + id: + value: audio_bus + locked: true + i2s_lrclk_pin: + value: GPIO10 + locked: true + i2s_bclk_pin: + value: GPIO12 + locked: true + i2s_mclk_pin: + value: GPIO13 + locked: true + +- id: es8311_dac + component_id: audio_dac.es8311 + fields: + id: + value: es8311_dac + locked: true + use_mclk: + value: true + locked: true + use_microphone: + value: false # false means analog mic + locked: true + address: + value: 0x18 + locked: true + i2c_id: + value: i2c_bus + locked: true + bits_per_sample: 16bit + sample_rate: 16000 + requires: [i2c_bus] + +- id: audio_output + component_id: speaker.i2s_audio + fields: + id: audio_output + i2s_audio_id: + value: audio_bus + locked: true + i2s_dout_pin: + value: GPIO9 + locked: true + audio_dac: + value: es8311_dac + locked: true + dac_type: + value: external + locked: true + channel: mono + bits_per_sample: 16bit + sample_rate: 16000 + requires: [audio_bus, es8311_dac] + +- id: audio_input + component_id: microphone.i2s_audio + fields: + id: audio_input + adc_type: + value: external + locked: true + i2s_audio_id: + value: audio_bus + locked: true + i2s_din_pin: + value: GPIO11 + locked: true + pdm: + value: false + locked: true + bits_per_sample: 16bit + sample_rate: 16000 + requires: [audio_bus, es8311_dac] + +- id: audio_amplifier + name: Audio Amplifier Switch + component_id: switch.gpio + fields: + name: Audio Amplifier + id: audio_amplifier + icon: mdi:volume-high + restore_mode: ALWAYS_ON + pin: + value: GPIO53 + locked: true + +- id: mipi_dsi_ldo + name: Power regulator for MIPI DSI PHY + component_id: esp_ldo + fields: + channel: + value: 3 + locked: true + voltage: + value: 2.5V + locked: true + +- id: waveshare_7_dsi_touch_a_display + name: Waveshare 7-DSI-TOUCH-A Display + description: | + 7inch 720×1280 pixels IPS Panel display with 10-Point Touch, + bundled with ESP32-P4-WIFI6-DEV-KIT-B. + component_id: display.mipi_dsi + fields: + model: + value: WAVESHARE-7-DSI-TOUCH-A + locked: true + requires: [mipi_dsi_ldo] + +- id: waveshare_10_1_dsi_touch_a_display + name: Waveshare 10.1-DSI-TOUCH-A Display + description: | + 10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch, + bundled with ESP32-P4-WIFI6-DEV-KIT-C. + component_id: display.mipi_dsi + fields: + model: + value: WAVESHARE-10.1-DSI-TOUCH-A + locked: true + requires: [mipi_dsi_ldo] + +- id: waveshare_display_backlight_i2c_device + name: Waveshare DSI Display Backlight I²C Device + description: | + Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays. + component_id: i2c_device + fields: + id: + value: waveshare_display_backlight_i2c_device + locked: true + i2c_id: + value: i2c_bus + locked: true + address: + value: 0x45 + locked: true + requires: [i2c_bus] + +- id: waveshare_display_backlight_output + name: Waveshare DSI Display Backlight Output + description: | + Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays. + component_id: output.template + fields: + id: + value: waveshare_display_backlight_output + locked: true + type: + value: float + locked: true + write_action: + value: + - lambda: |- + const uint8_t value = (uint8_t) roundf(state * 255); + id(waveshare_display_backlight_i2c_device).write_byte(0x96, value); + locked: true + requires: [waveshare_display_backlight_i2c_device] + +- id: waveshare_display_backlight + name: Waveshare DSI Display Backlight + component_id: light.monochromatic + fields: + id: waveshare_display_backlight + output: + value: waveshare_display_backlight_output + locked: true + name: Display Backlight + icon: mdi:brightness-7 + restore_mode: ALWAYS_ON + entity_category: CONFIG + requires: [waveshare_display_backlight_output] + +- id: rpi_header_spi0 + name: Raspberry Pi GPIO header SPI0 bus + description: | + Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0. + This will allow you to use some Raspberry Pi hats with SPI peripherals. + Use this for hats where SCLK is on header pin 23 (RPi GPIO11), + MISO is on header pin 21 (RPi GPIO9), + and MOSI is on header pin 19 (RPi GPIO10). + The SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8) + or GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7). + component_id: spi + fields: + id: + value: rpi_header_spi0 + locked: true + clk_pin: + value: GPIO0 + locked: true + mosi_pin: + value: GPIO3 + locked: true + miso_pin: + value: GPIO2 + locked: true + +- id: rpi_header_spi1 + name: Raspberry Pi GPIO header SPI1 bus + description: | + Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1. + This will allow you to use some Raspberry Pi hats with SPI peripherals. + This SPI bus conflicts with the microSD power supply and audio amplifier control. + Use this for hats where SCLK is on header pin 40 (RPi GPIO21), + MISO is on header pin 35 (RPi GPIO19), + and MOSI is on header pin 38 (RPi GPIO20). + The SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18), + GPIO21 (header pin 11 / RPi GPIO17), + or GPIO46 (header pin 36 / RPi GPIO16). + component_id: spi + fields: + id: + value: rpi_header_spi1 + locked: true + clk_pin: + value: GPIO45 + locked: true + mosi_pin: + value: GPIO27 + locked: true + miso_pin: + value: GPIO53 + locked: true + +- id: rpi_header_id_i2c_bus + name: Raspberry Pi header HAT ID I²C bus + description: | + An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs. + Conflicts with the USB-C Serial/JTAG/OTG connector. + component_id: i2c + fields: + id: + value: rpi_header_id_i2c_bus + locked: true + scl: + value: GPIO25 + locked: true + sda: + value: GPIO24 + locked: true + frequency: 100kHz + sda_pullup_enabled: true + scl_pullup_enabled: true + +- id: i3c_connector_i2c_bus + name: I³C connector as I²C bus + description: | + Use the I³C connector as an I²C bus to attach additional peripherals. + This I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively). + component_id: i2c + fields: + id: i3c_connector_i2c_bus + scl: + value: GPIO32 + locked: true + sda: + value: GPIO33 + locked: true + sda_pullup_enabled: true + scl_pullup_enabled: true + default_components: -- c6_wifi +- in_package_psram +- esp32_hosted_c6 + +featured_bundles: +- id: audio_setup + name: Audio Input/Output (full setup) + component_ids: + - i2c_bus + - audio_bus + - es8311_dac + - audio_output + - audio_input + - audio_amplifier + +- id: waveshare_7_dsi_touch_a_display_setup + name: Waveshare 7-DSI-TOUCH-A Display (display and backlight control) + description: | + 7inch 720×1280 pixels IPS Panel display with 10-Point Touch, + bundled with ESP32-P4-WIFI6-DEV-KIT-B. + Also sets up a light component for controlling the display backlight. + component_ids: + - mipi_dsi_ldo + - waveshare_7_dsi_touch_a_display + - i2c_bus + - waveshare_display_backlight_i2c_device + - waveshare_display_backlight_output + - waveshare_display_backlight + +- id: waveshare_10_1_dsi_touch_a_display_setup + name: Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control) + description: | + 10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch, + bundled with ESP32-P4-WIFI6-DEV-KIT-C. + Also sets up a light component for controlling the display backlight. + component_ids: + - mipi_dsi_ldo + - waveshare_7_dsi_touch_a_display + - i2c_bus + - waveshare_display_backlight_i2c_device + - waveshare_display_backlight_output + - waveshare_display_backlight + pins: - gpio: 0 label: GPIO0 - features: - - pwm - available: null + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: 32.768kHz crystal + notes: 40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N - gpio: 1 label: GPIO1 - features: - - pwm - available: null + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: 32.768kHz crystal + notes: 40pin header pin 22 (RPi GPIO25) – XTAL_32K_P - gpio: 2 label: GPIO2 - features: - - pwm - - touch - available: null - notes: Touch channel + features: [touch, jtag, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1 - gpio: 3 label: GPIO3 - features: - - pwm - - touch - available: null - notes: Touch channel + features: [touch, jtag, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2 - gpio: 4 label: GPIO4 - features: - - pwm - - touch - available: null - notes: Touch channel + features: [touch, jtag, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3 - gpio: 5 label: GPIO5 - features: - - pwm - - touch - available: null - notes: Touch channel + features: [touch, jtag, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4 - gpio: 6 label: GPIO6 - features: - - pwm - - touch - available: null - notes: Touch channel + features: [touch, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: ESP32-C6 co-processor (GPIO2) + notes: 40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5 - gpio: 7 - label: GPIO7 - features: - - pwm - - touch - available: null - notes: Touch channel + label: SDA + features: [i2c_sda] + available: true + occupied_by: MIPI CSI, MIPI DSI, Audio Codec + notes: 40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components - gpio: 8 - label: GPIO8 - features: - - pwm - - touch - available: null - notes: Touch channel + label: SCL + features: [i2c_scl] + available: true + occupied_by: MIPI CSI, MIPI DSI, Audio Codec + notes: 40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components - gpio: 9 - label: GPIO9 - features: - - pwm - - touch - available: null - notes: Touch channel + available: false + occupied_by: Audio Codec (DSDIN) - gpio: 10 - label: GPIO10 - features: - - pwm - - touch - available: null - notes: Touch channel + available: false + occupied_by: Audio Codec (LRCK) - gpio: 11 - label: GPIO11 - features: - - pwm - - touch - available: null - notes: Touch channel + available: false + occupied_by: Audio Codec (ASDOUT) - gpio: 12 - label: GPIO12 - features: - - pwm - - touch - available: null - notes: Touch channel + available: false + occupied_by: Audio Codec (SCLK) - gpio: 13 - label: GPIO13 - features: - - pwm - - touch - available: null - notes: Touch channel + available: false + occupied_by: Audio Codec (MCLK) - gpio: 14 - label: GPIO14 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO D0) - gpio: 15 - label: GPIO15 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO D1) - gpio: 16 - label: GPIO16 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO D2) - gpio: 17 - label: GPIO17 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO D3) - gpio: 18 - label: GPIO18 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO CLK) - gpio: 19 - label: GPIO19 - features: [] available: false occupied_by: ESP32-C6 co-processor (SDIO CMD) - gpio: 20 label: GPIO20 - features: - - adc - - pwm - available: null - notes: ADC1_CH4 + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4 - gpio: 21 label: GPIO21 - features: - - adc - - pwm - available: null - notes: ADC1_CH5 + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5 - gpio: 22 label: GPIO22 - features: - - adc - - pwm - available: null - notes: ADC1_CH6 + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6 - gpio: 23 label: GPIO23 - features: - - adc - - pwm - available: null - notes: ADC1_CH7 + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output - gpio: 24 - label: GPIO24 - features: - - adc - - pwm - - usb_dm - available: null - notes: ADC1_CH8 — USB OTG D- + label: USB D- / GPIO24 + features: [usb_dm, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: USB Serial/JTAG/OTG + notes: USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0 - gpio: 25 - label: GPIO25 - features: - - adc - - pwm - - usb_dp - available: null - notes: ADC1_CH9 — USB OTG D+ + label: USB D+ / GPIO25 + features: [usb_dp, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: USB Serial/JTAG/OTG + notes: USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0 - gpio: 26 label: GPIO26 - features: - - adc - - pwm - available: null - notes: ADC1_CH10 + features: [usb_dm, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1 - gpio: 27 label: GPIO27 - features: - - adc - - pwm - available: null - notes: ADC1_CH11 + features: [usb_dp, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1 - gpio: 28 - label: GPIO28 - features: [] available: false - occupied_by: Ethernet RMII CRS_DV + occupied_by: Ethernet PHY + notes: EMAC RMII (Recommended) RXDV - gpio: 29 - label: GPIO29 - features: [] available: false - occupied_by: Ethernet RMII RXD0 + occupied_by: Ethernet PHY + notes: EMAC RMII (Recommended) RXD0 - gpio: 30 - label: GPIO30 - features: [] available: false - occupied_by: Ethernet RMII RXD1 + occupied_by: Ethernet PHY + notes: EMAC RMII (Recommended) RXD1 - gpio: 31 - label: GPIO31 - features: [] available: false - occupied_by: Ethernet MDC + occupied_by: Ethernet PHY (MDC) - gpio: 32 - label: GPIO32 - features: - - pwm - available: null + label: GPIO32 / I³C SCL + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL - gpio: 33 - label: GPIO33 - features: - - pwm - available: null + label: GPIO33 / I³C SDA + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA - gpio: 34 - label: GPIO34 - features: [] + features: [strapping] available: false - occupied_by: Ethernet RMII TXD0 + occupied_by: Ethernet PHY + notes: Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0 - gpio: 35 - label: GPIO35 - features: [] + features: [strapping, boot_button] available: false - occupied_by: Ethernet RMII TXD1 + occupied_by: Ethernet PHY, Boot Button + notes: Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1 - gpio: 36 label: GPIO36 - features: - - pwm - - strapping - available: null - notes: Strapping pin + features: [strapping, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0) - gpio: 37 - label: GPIO37 - features: [] - available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + label: TXD + features: [strapping, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: USB-Serial TX + notes: Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD - gpio: 38 - label: GPIO38 - features: [] - available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + label: RXD + features: [strapping, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: USB-Serial RX + notes: Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD - gpio: 39 - label: GPIO39 - features: [] + features: [spi_miso] available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + occupied_by: microSD (SD D0 / SPI MISO) + notes: SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output - gpio: 40 - label: GPIO40 - features: [] available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + occupied_by: microSD (SD D1) + notes: SD/MMC Card 1 CDATA1 - gpio: 41 - label: GPIO41 - features: [] available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + occupied_by: microSD (SD D2) + notes: SD/MMC Card 1 CDATA2 - gpio: 42 - label: GPIO42 - features: [] + features: [spi_cs] available: false - occupied_by: SPI Flash - notes: SPI Flash — do not use + occupied_by: microSD (SD D3 / SPI CS) + notes: SD/MMC Card 1 CDATA3 - gpio: 43 - label: GPIO43 - features: - - pwm - available: null + features: [spi_clk] + available: false + occupied_by: microSD (SD CLK / SPI CLK) + notes: SD/MMC Card 1 CCLK - gpio: 44 - label: GPIO44 - features: - - pwm - available: null + features: [spi_mosi] + available: false + occupied_by: microSD (SD CMD / SPI MOSI) + notes: SD/MMC Card 1 CCMD - gpio: 45 label: GPIO45 - features: - - pwm - available: null + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: microSD power supply + notes: 40pin header pin 40 (RPi GPIO21 / PCM_DOUT) - gpio: 46 - label: GPIO46 - features: - - pwm - available: null + label: GPIO46" + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 36 (RPi GPIO16) - gpio: 47 label: GPIO47 - features: - - pwm - available: null + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 37 (RPi GPIO26) - gpio: 48 label: GPIO48 - features: - - pwm - available: null + features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + notes: 40pin header pin 33 (RPi GPIO13 / PWM1) - gpio: 49 - label: GPIO49 - features: [] available: false - occupied_by: Ethernet RMII TX_EN + occupied_by: Ethernet PHY + notes: EMAC RMII (Alternative 2) PHY TXEN - gpio: 50 - label: GPIO50 - features: [] available: false - occupied_by: Ethernet CLK + occupied_by: Ethernet PHY + notes: EMAC RMII (Alternative 2) CLK - gpio: 51 - label: GPIO51 - features: [] available: false - occupied_by: Ethernet Power + occupied_by: Ethernet PHY (Reset) - gpio: 52 - label: GPIO52 - features: [] available: false - occupied_by: Ethernet MDIO + occupied_by: Ethernet PHY (MDIO) - gpio: 53 label: GPIO53 - features: - - pwm - available: null + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: Audio amplifier control + notes: 40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1 - gpio: 54 label: GPIO54 - features: [] - available: false - occupied_by: ESP32-C6 co-processor (reset) + features: [adc, pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] + available: true + occupied_by: ESP32-C6 co-processor (Reset) + notes: 40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1 diff --git a/esphome_device_builder/definitions/featured_components.index.json b/esphome_device_builder/definitions/featured_components.index.json index 1b734611bc..3555ce9d66 100644 --- a/esphome_device_builder/definitions/featured_components.index.json +++ b/esphome_device_builder/definitions/featured_components.index.json @@ -446,7 +446,7 @@ "waveshare_esp32_p4_nano":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_p4_pico":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], "waveshare_esp32_p4_wifi6":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], -"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], +"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}], "waveshare_esp32_p4_wifi6_poe_eth":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_s3_eth_8di_8do":[{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38}},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"do1"},"inverted":{"locked":true,"value":true},"name":{"value":"DO1"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":0,"pca9554":"tca9554_hub"}}},"id":"do1","locked_pins":{"pin":"pca9554:tca9554_hub:0"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do2"},"inverted":{"locked":true,"value":true},"name":{"value":"DO2"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":1,"pca9554":"tca9554_hub"}}},"id":"do2","locked_pins":{"pin":"pca9554:tca9554_hub:1"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do3"},"inverted":{"locked":true,"value":true},"name":{"value":"DO3"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":2,"pca9554":"tca9554_hub"}}},"id":"do3","locked_pins":{"pin":"pca9554:tca9554_hub:2"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do4"},"inverted":{"locked":true,"value":true},"name":{"value":"DO4"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":3,"pca9554":"tca9554_hub"}}},"id":"do4","locked_pins":{"pin":"pca9554:tca9554_hub:3"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do5"},"inverted":{"locked":true,"value":true},"name":{"value":"DO5"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":4,"pca9554":"tca9554_hub"}}},"id":"do5","locked_pins":{"pin":"pca9554:tca9554_hub:4"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do6"},"inverted":{"locked":true,"value":true},"name":{"value":"DO6"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":5,"pca9554":"tca9554_hub"}}},"id":"do6","locked_pins":{"pin":"pca9554:tca9554_hub:5"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do7"},"inverted":{"locked":true,"value":true},"name":{"value":"DO7"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":6,"pca9554":"tca9554_hub"}}},"id":"do7","locked_pins":{"pin":"pca9554:tca9554_hub:6"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do8"},"inverted":{"locked":true,"value":true},"name":{"value":"DO8"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":7,"pca9554":"tca9554_hub"}}},"id":"do8","locked_pins":{"pin":"pca9554:tca9554_hub:7"}}], "waveshare_esp32_s3_eth_8di_8ro":[{"component_id":"i2c","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"i2cbus"},"scan":{"value":false},"scl":{"locked":true,"value":41},"sda":{"locked":true,"value":42}},"id":"i2cbus","locked_pins":{"scl":41,"sda":42}},{"component_id":"pca9554","fields":{"address":{"value":32},"id":{"locked":true,"value":"TCA9554_hub"}},"id":"tca9554_hub","requires":["i2cbus"]},{"component_id":"psram","fields":{"mode":{"value":"octal"},"speed":{"value":"80MHz"}},"id":"onboard_psram","multi_conf":false,"name":"PSRAM"},{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"button.restart","fields":{"entity_category":{"value":"config"},"id":{"value":"restart_button"},"name":{"value":"Restart"}},"id":"restart_button"},{"component_id":"button.factory_reset","fields":{"entity_category":{"value":"config"},"id":{"value":"reset"},"name":{"value":"Factory Reset"}},"id":"reset"},{"component_id":"button.safe_mode","fields":{"entity_category":{"value":"config"},"id":{"value":"button_safe_mode_1"},"internal":{"value":false},"name":{"value":"Safe Mode"}},"id":"button_safe_mode_1"},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38},"requires":["onboard_psram"]},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"relay1"},"name":{"value":"Relay 1"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":0,"pca9554":"TCA9554_hub"}}},"id":"relay1","locked_pins":{"pin":"pca9554:TCA9554_hub:0"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay2"},"name":{"value":"Relay 2"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":1,"pca9554":"TCA9554_hub"}}},"id":"relay2","locked_pins":{"pin":"pca9554:TCA9554_hub:1"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay3"},"name":{"value":"Relay 3"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":2,"pca9554":"TCA9554_hub"}}},"id":"relay3","locked_pins":{"pin":"pca9554:TCA9554_hub:2"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay4"},"name":{"value":"Relay 4"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":3,"pca9554":"TCA9554_hub"}}},"id":"relay4","locked_pins":{"pin":"pca9554:TCA9554_hub:3"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay5"},"name":{"value":"Relay 5"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":4,"pca9554":"TCA9554_hub"}}},"id":"relay5","locked_pins":{"pin":"pca9554:TCA9554_hub:4"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay6"},"name":{"value":"Relay 6"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":5,"pca9554":"TCA9554_hub"}}},"id":"relay6","locked_pins":{"pin":"pca9554:TCA9554_hub:5"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay7"},"name":{"value":"Relay 7"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":6,"pca9554":"TCA9554_hub"}}},"id":"relay7","locked_pins":{"pin":"pca9554:TCA9554_hub:6"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay8"},"name":{"value":"Relay 8"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":7,"pca9554":"TCA9554_hub"}}},"id":"relay8","locked_pins":{"pin":"pca9554:TCA9554_hub:7"},"requires":["i2cbus","tca9554_hub"]}], From 10b68a334551c5adeae6fc93009c2eff52810b6e Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Sat, 5 Sep 2026 16:35:33 -0400 Subject: [PATCH 2/7] Fix quoting error on GPIO46 --- .../board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index 8263ef0de3..7eab4ba3f5 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46\"","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index f1f7eda954..8f2c42af43 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -684,7 +684,7 @@ pins: occupied_by: microSD power supply notes: 40pin header pin 40 (RPi GPIO21 / PCM_DOUT) - gpio: 46 - label: GPIO46" + label: GPIO46 features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] available: true notes: 40pin header pin 36 (RPi GPIO16) From b6599a02a7a372fd486048f5a0a4f790b11c0b38 Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Mon, 7 Sep 2026 09:54:48 -0400 Subject: [PATCH 3/7] ESP32-P4-WIFI6-DEV-KIT: revise and shorten description The description was a bit long for the UI, so shorten it by reducing detail. Update the name to describe that this is for the Rev1.1 and earlier boards, see: https://docs.waveshare.com/ESP32-P4-WIFI6-DEV-KIT/FAQ#:~:text=How%20to%20use%20the%20Type%2DA%20ports%20on%20the%20development%20board for a description of which board revisions use which ESP32-P4 chip revisions. A separate manifest can be added for the Rev1.2 board later. Note that the current image shows a Rev1.1 board (chip version v1.3). --- .../waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../definitions/boards.index.json | 2 +- .../manifest.yaml | 19 +++++++------------ 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index 7eab4ba3f5..63f579e26b 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards.index.json b/esphome_device_builder/definitions/boards.index.json index 9af307999e..0d60587ee9 100644 --- a/esphome_device_builder/definitions/boards.index.json +++ b/esphome_device_builder/definitions/boards.index.json @@ -954,7 +954,7 @@ {"description":"Waveshare ESP32-P4-NANO with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with a reserved PoE module header, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, RTC battery header, USB-A OTG and USB-C ports, 28 user GPIOs.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-P4-Nano/","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_nano","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-P4-Nano/waveshare-esp32-p4-nano.webp"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Nano","product_url":"https://www.waveshare.com/esp32-p4-nano.htm","tags":["dev-kit","sd-card","usb-c","camera","display","microphone"]}, {"description":"Waveshare ESP32-P4-Pico in the Raspberry Pi Pico form factor with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an onboard ESP32-C6 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-Pico","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_pico","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-pico-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Pico","product_url":"https://www.waveshare.com/esp32-p4-pico.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, {"description":"Compact Waveshare ESP32-P4-WIFI6 board with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6","product_url":"https://www.waveshare.com/esp32-p4-wifi6.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, -{"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nThe ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs.\nThe GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible.\nDifferent revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4.\nSeveral bundles were available, including additional components:\n**ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B.\n**ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display.\n**ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]}, +{"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]}, {"description":"Waveshare ESP32-P4-WIFI6-POE-ETH with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1U co-processor with external antenna connector. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with PoE, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-A OTG and USB-C ports.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-POE-ETH","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_poe_eth","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-poe-eth-1_2.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-POE-ETH","product_url":"https://www.waveshare.com/esp32-p4-wifi6-poe-eth.htm","tags":["dev-kit","poe","sd-card","usb-c","camera","display","microphone","external-antenna"]}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/","esphome":{"board":"esp32-s3-devkitc-1","framework":"esp-idf","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8do","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/device.png"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8DO"}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/","esphome":{"board":"esp32s3box","framework":"arduino","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8ro","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image1.jpg","https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image2.jpg"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8RO","tags":["relay"]}, diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index 8f2c42af43..46ebbbbfa1 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -1,18 +1,13 @@ id: waveshare_esp32_p4_wifi6_dev_kit -name: Waveshare ESP32-P4-WIFI6-DEV-KIT +name: Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier) description: | Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor. - Uses the ESP32-P4NRW32 or ESP32-P4NRW32X (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). - The ESP32-P4 has no built-in radio; Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor. - 100M RJ45 Ethernet (with optional PoE using a hat), MIPI DSI display and MIPI CSI camera connectors, microSD slot, - 3.5mm audio jack plus onboard microphone and amplified speaker header, I2C/I3C headers, RTC battery header, - USB-A OTG (jumper-switchable), USB-C USB serial adapter and Serial/JTAG ports, 28 user GPIOs. - The GPIO pins use the Raspberry Pi 40-pin header layout, and some Raspberry Pi hats are compatible. - Different revisions of the ESP32-P4-WIFI6-DEV-KIT may use engineering samples or production variants of the ESP32-P4. - Several bundles were available, including additional components: - **ESP32-P4-WIFI6-DEV-KIT-A:** Waveshare RPi Camera B. - **ESP32-P4-WIFI6-DEV-KIT-B:** Waveshare RPi Camera B, Waveshare 7-DSI-TOUCH-A Display. - **ESP32-P4-WIFI6-DEV-KIT-C:** Waveshare RPi Camera B, Waveshare 10.1-DSI-TOUCH-A Display. + Uses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). + Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor. + 100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot, + 3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header, + USB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header. + Optionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display. manufacturer: Waveshare images: - https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg From 760b98a9475852d382458b338e571ec16c5f5ed9 Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Mon, 7 Sep 2026 10:05:40 -0400 Subject: [PATCH 4/7] Fix 10.1-DSI-TOUCH-A bundle to reference correct display component --- .../board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index 63f579e26b..b9c51be931 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index 46ebbbbfa1..b9ceb0d81b 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -460,7 +460,7 @@ featured_bundles: Also sets up a light component for controlling the display backlight. component_ids: - mipi_dsi_ldo - - waveshare_7_dsi_touch_a_display + - waveshare_10_1_dsi_touch_a_display - i2c_bus - waveshare_display_backlight_i2c_device - waveshare_display_backlight_output From fadba73b4f39877d51f3ac5cf8cbb1b06e8ff7f1 Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Mon, 7 Sep 2026 10:13:10 -0400 Subject: [PATCH 5/7] ESP32-P4-WIFI6-DEV-KIT: enable pullup on boot_button Pin 35 has a weak pullup enabled at boot to make the button work for strapping. Explicitly enable the pullup if the button is used at runtime. --- .../board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml | 3 +++ .../definitions/featured_components.index.json | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index b9c51be931..004ad4bfff 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index b9ceb0d81b..b15019e546 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -127,6 +127,9 @@ featured_components: value: number: GPIO35 inverted: true + mode: + input: true + pullup: true ignore_strapping_warning: true locked: true id: boot_button diff --git a/esphome_device_builder/definitions/featured_components.index.json b/esphome_device_builder/definitions/featured_components.index.json index 3555ce9d66..fb9ea61ea5 100644 --- a/esphome_device_builder/definitions/featured_components.index.json +++ b/esphome_device_builder/definitions/featured_components.index.json @@ -446,7 +446,7 @@ "waveshare_esp32_p4_nano":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_p4_pico":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], "waveshare_esp32_p4_wifi6":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], -"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}], +"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}], "waveshare_esp32_p4_wifi6_poe_eth":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_s3_eth_8di_8do":[{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38}},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"do1"},"inverted":{"locked":true,"value":true},"name":{"value":"DO1"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":0,"pca9554":"tca9554_hub"}}},"id":"do1","locked_pins":{"pin":"pca9554:tca9554_hub:0"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do2"},"inverted":{"locked":true,"value":true},"name":{"value":"DO2"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":1,"pca9554":"tca9554_hub"}}},"id":"do2","locked_pins":{"pin":"pca9554:tca9554_hub:1"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do3"},"inverted":{"locked":true,"value":true},"name":{"value":"DO3"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":2,"pca9554":"tca9554_hub"}}},"id":"do3","locked_pins":{"pin":"pca9554:tca9554_hub:2"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do4"},"inverted":{"locked":true,"value":true},"name":{"value":"DO4"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":3,"pca9554":"tca9554_hub"}}},"id":"do4","locked_pins":{"pin":"pca9554:tca9554_hub:3"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do5"},"inverted":{"locked":true,"value":true},"name":{"value":"DO5"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":4,"pca9554":"tca9554_hub"}}},"id":"do5","locked_pins":{"pin":"pca9554:tca9554_hub:4"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do6"},"inverted":{"locked":true,"value":true},"name":{"value":"DO6"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":5,"pca9554":"tca9554_hub"}}},"id":"do6","locked_pins":{"pin":"pca9554:tca9554_hub:5"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do7"},"inverted":{"locked":true,"value":true},"name":{"value":"DO7"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":6,"pca9554":"tca9554_hub"}}},"id":"do7","locked_pins":{"pin":"pca9554:tca9554_hub:6"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do8"},"inverted":{"locked":true,"value":true},"name":{"value":"DO8"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":7,"pca9554":"tca9554_hub"}}},"id":"do8","locked_pins":{"pin":"pca9554:tca9554_hub:7"}}], "waveshare_esp32_s3_eth_8di_8ro":[{"component_id":"i2c","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"i2cbus"},"scan":{"value":false},"scl":{"locked":true,"value":41},"sda":{"locked":true,"value":42}},"id":"i2cbus","locked_pins":{"scl":41,"sda":42}},{"component_id":"pca9554","fields":{"address":{"value":32},"id":{"locked":true,"value":"TCA9554_hub"}},"id":"tca9554_hub","requires":["i2cbus"]},{"component_id":"psram","fields":{"mode":{"value":"octal"},"speed":{"value":"80MHz"}},"id":"onboard_psram","multi_conf":false,"name":"PSRAM"},{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"button.restart","fields":{"entity_category":{"value":"config"},"id":{"value":"restart_button"},"name":{"value":"Restart"}},"id":"restart_button"},{"component_id":"button.factory_reset","fields":{"entity_category":{"value":"config"},"id":{"value":"reset"},"name":{"value":"Factory Reset"}},"id":"reset"},{"component_id":"button.safe_mode","fields":{"entity_category":{"value":"config"},"id":{"value":"button_safe_mode_1"},"internal":{"value":false},"name":{"value":"Safe Mode"}},"id":"button_safe_mode_1"},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38},"requires":["onboard_psram"]},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"relay1"},"name":{"value":"Relay 1"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":0,"pca9554":"TCA9554_hub"}}},"id":"relay1","locked_pins":{"pin":"pca9554:TCA9554_hub:0"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay2"},"name":{"value":"Relay 2"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":1,"pca9554":"TCA9554_hub"}}},"id":"relay2","locked_pins":{"pin":"pca9554:TCA9554_hub:1"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay3"},"name":{"value":"Relay 3"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":2,"pca9554":"TCA9554_hub"}}},"id":"relay3","locked_pins":{"pin":"pca9554:TCA9554_hub:2"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay4"},"name":{"value":"Relay 4"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":3,"pca9554":"TCA9554_hub"}}},"id":"relay4","locked_pins":{"pin":"pca9554:TCA9554_hub:3"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay5"},"name":{"value":"Relay 5"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":4,"pca9554":"TCA9554_hub"}}},"id":"relay5","locked_pins":{"pin":"pca9554:TCA9554_hub:4"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay6"},"name":{"value":"Relay 6"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":5,"pca9554":"TCA9554_hub"}}},"id":"relay6","locked_pins":{"pin":"pca9554:TCA9554_hub:5"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay7"},"name":{"value":"Relay 7"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":6,"pca9554":"TCA9554_hub"}}},"id":"relay7","locked_pins":{"pin":"pca9554:TCA9554_hub:6"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay8"},"name":{"value":"Relay 8"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":7,"pca9554":"TCA9554_hub"}}},"id":"relay8","locked_pins":{"pin":"pca9554:TCA9554_hub:7"},"requires":["i2cbus","tca9554_hub"]}], From e0843f35cf960e0690c6adc767f0d19157ebab18 Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Mon, 7 Sep 2026 10:36:06 -0400 Subject: [PATCH 6/7] ESP32-P4-WIFI6-DEV-KIT - additional chip rev guidance, description cleanups --- .../waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../definitions/boards.index.json | 2 +- .../manifest.yaml | 47 +++++++++++-------- .../featured_components.index.json | 2 +- 4 files changed, 31 insertions(+), 22 deletions(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index 004ad4bfff..30501e295c 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Dev kit in Raspberry Pi form factor with engineering sample ESP32-P4\n(verify [chip marking](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html#chip-marking) is v1.x).\nESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE via HAT), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"Shared I²C bus used for onboard components (Audio codec),\nand exposed on I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header,\nallows you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max 400kHz.\nYou may need to reduce the frequency if you connect additional peripherals.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI0,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with external 32.768kHz crystal.\nSCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nSPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI1,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with microSD power supply and audio amplifier control.\nSCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nSPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) – XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards.index.json b/esphome_device_builder/definitions/boards.index.json index 0d60587ee9..164585128e 100644 --- a/esphome_device_builder/definitions/boards.index.json +++ b/esphome_device_builder/definitions/boards.index.json @@ -954,7 +954,7 @@ {"description":"Waveshare ESP32-P4-NANO with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with a reserved PoE module header, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, RTC battery header, USB-A OTG and USB-C ports, 28 user GPIOs.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-P4-Nano/","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_nano","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-P4-Nano/waveshare-esp32-p4-nano.webp"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Nano","product_url":"https://www.waveshare.com/esp32-p4-nano.htm","tags":["dev-kit","sd-card","usb-c","camera","display","microphone"]}, {"description":"Waveshare ESP32-P4-Pico in the Raspberry Pi Pico form factor with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an onboard ESP32-C6 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-Pico","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_pico","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-pico-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-Pico","product_url":"https://www.waveshare.com/esp32-p4-pico.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, {"description":"Compact Waveshare ESP32-P4-WIFI6 board with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1 co-processor. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-C port plus 4-pin USB OTG header, 27 user GPIOs.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-1.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6","product_url":"https://www.waveshare.com/esp32-p4-wifi6.htm","tags":["compact","sd-card","usb-c","camera","display","microphone"]}, -{"description":"Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor.\nUses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]}, +{"description":"Dev kit in Raspberry Pi form factor with engineering sample ESP32-P4\n(verify [chip marking](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html#chip-marking) is v1.x).\nESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE via HAT), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]}, {"description":"Waveshare ESP32-P4-WIFI6-POE-ETH with the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 32MB flash, 32MB PSRAM) and an ESP32-C6-MINI-1U co-processor with external antenna connector. The ESP32-P4 has no built-in radio; Wi-Fi 6 works out of the box through the onboard ESP32-C6 co-processor. 100M RJ45 Ethernet (IP101 PHY) with PoE, MIPI DSI display and MIPI CSI camera connectors, microSD slot, microphone + speaker header, USB-A OTG and USB-C ports.","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-POE-ETH","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"id":"waveshare_esp32_p4_wifi6_poe_eth","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-poe-eth-1_2.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-POE-ETH","product_url":"https://www.waveshare.com/esp32-p4-wifi6-poe-eth.htm","tags":["dev-kit","poe","sd-card","usb-c","camera","display","microphone","external-antenna"]}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/","esphome":{"board":"esp32-s3-devkitc-1","framework":"esp-idf","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8do","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8DO/device.png"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8DO"}, {"description":"Imported from devices.esphome.io — see linked docs for community notes.","docs_url":"https://devices.esphome.io/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/","esphome":{"board":"esp32s3box","framework":"arduino","platform":"esp32","variant":"esp32s3"},"id":"waveshare_esp32_s3_eth_8di_8ro","images":["https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image1.jpg","https://raw.githubusercontent.com/esphome/devices.esphome.io/main/src/docs/devices/Waveshare-ESP32-S3-ETH-8DI-8RO/image2.jpg"],"manufacturer":"","name":"WAVESHARE ESP32-S3-ETH-8DI-8RO","tags":["relay"]}, diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index b15019e546..231778a6c9 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -1,10 +1,16 @@ +# This manifest is for ESP32-P4-WIFI6-DEV-KIT boards with pre-v3.0 ESP-P4 chips +# no Rev silkscreen (i.e. Rev1.0) → chip revision v1.0 +# Rev1.1 silkscreen → chip revision v1.3 +# Rev1.2 silkscreen → chip revision v3.1 + id: waveshare_esp32_p4_wifi6_dev_kit name: Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier) description: | - Waveshare ESP32-P4-WIFI6-DEV-KIT in Raspberry Pi form factor. - Uses the ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). + Dev kit in Raspberry Pi form factor with engineering sample ESP32-P4 + (verify [chip marking](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html#chip-marking) is v1.x). + ESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM). Wi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor. - 100M RJ45 Ethernet (optional PoE), MIPI DSI display and MIPI CSI camera connectors, microSD slot, + 100M RJ45 Ethernet (optional PoE via HAT), MIPI DSI display and MIPI CSI camera connectors, microSD slot, 3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header, USB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header. Optionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display. @@ -109,6 +115,8 @@ featured_components: power_pin: value: GPIO51 locked: true + # ESP-P4 IO_MUX support multiple options for RMII connections. + # TODO: Lock these pins when RMII pin configuration is exposed. # crs_dv/rxdv pin: GPIO28 # rxd0 pin: GPIO29 # rxd1 pin: GPIO30 @@ -137,13 +145,13 @@ featured_components: - id: i2c_bus name: Onboard / Shared I²C bus description: | - The shared I²C bus used for onboard components (Audio codec), - and available for external devices via the I²C connector, + Shared I²C bus used for onboard components (Audio codec), + and exposed on I²C connector, MIPI SCI and DSI connectors, - and SDA/SCL pins on the 40pin header. - This will also allow you to use some Raspberry Pi hats with I²C peripherals. - Onboard components support max frequency 400kHz. - If you connect additional peripherals, you may need to reduce the frequency. + and SDA/SCL pins on the 40pin header, + allows you to use some Raspberry Pi hats with I²C peripherals. + Onboard components support max 400kHz. + You may need to reduce the frequency if you connect additional peripherals. component_id: i2c fields: id: @@ -340,12 +348,13 @@ featured_components: - id: rpi_header_spi0 name: Raspberry Pi GPIO header SPI0 bus description: | - Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0. - This will allow you to use some Raspberry Pi hats with SPI peripherals. - Use this for hats where SCLK is on header pin 23 (RPi GPIO11), + SPI bus on the 40pin header corresponding to Raspberry Pi SPI0, + allows you to use some Raspberry Pi hats with SPI peripherals. + Conflicts with external 32.768kHz crystal. + SCLK is on header pin 23 (RPi GPIO11), MISO is on header pin 21 (RPi GPIO9), and MOSI is on header pin 19 (RPi GPIO10). - The SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8) + SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8) or GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7). component_id: spi fields: @@ -365,13 +374,13 @@ featured_components: - id: rpi_header_spi1 name: Raspberry Pi GPIO header SPI1 bus description: | - Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1. - This will allow you to use some Raspberry Pi hats with SPI peripherals. - This SPI bus conflicts with the microSD power supply and audio amplifier control. - Use this for hats where SCLK is on header pin 40 (RPi GPIO21), + SPI bus on the 40pin header corresponding to Raspberry Pi SPI1, + allows you to use some Raspberry Pi hats with SPI peripherals. + Conflicts with microSD power supply and audio amplifier control. + SCLK is on header pin 40 (RPi GPIO21), MISO is on header pin 35 (RPi GPIO19), and MOSI is on header pin 38 (RPi GPIO20). - The SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18), + SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18), GPIO21 (header pin 11 / RPi GPIO17), or GPIO46 (header pin 36 / RPi GPIO16). component_id: spi @@ -475,7 +484,7 @@ pins: features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] available: true occupied_by: 32.768kHz crystal - notes: 40pin header pin 23 (RPi GPIO11 / SPI0 CLK) ­– XTAL_32K_N + notes: 40pin header pin 23 (RPi GPIO11 / SPI0 CLK) – XTAL_32K_N - gpio: 1 label: GPIO1 features: [pwm, i2c_sda, i2c_scl, spi_mosi, spi_miso, spi_clk, spi_cs, uart_tx, uart_rx] diff --git a/esphome_device_builder/definitions/featured_components.index.json b/esphome_device_builder/definitions/featured_components.index.json index fb9ea61ea5..1cfa982cda 100644 --- a/esphome_device_builder/definitions/featured_components.index.json +++ b/esphome_device_builder/definitions/featured_components.index.json @@ -446,7 +446,7 @@ "waveshare_esp32_p4_nano":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_p4_pico":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], "waveshare_esp32_p4_wifi6":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"}], -"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"The shared I²C bus used for onboard components (Audio codec),\nand available for external devices via the I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header.\nThis will also allow you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max frequency 400kHz.\nIf you connect additional peripherals, you may need to reduce the frequency.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI0.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nUse this for hats where SCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nThe SPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"Set up an SPI bus on the 40pin header corresponding to Raspberry Pi SPI1.\nThis will allow you to use some Raspberry Pi hats with SPI peripherals.\nThis SPI bus conflicts with the microSD power supply and audio amplifier control.\nUse this for hats where SCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nThe SPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}], +"waveshare_esp32_p4_wifi6_dev_kit":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"Shared I²C bus used for onboard components (Audio codec),\nand exposed on I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header,\nallows you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max 400kHz.\nYou may need to reduce the frequency if you connect additional peripherals.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI0,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with external 32.768kHz crystal.\nSCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nSPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI1,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with microSD power supply and audio amplifier control.\nSCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nSPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}], "waveshare_esp32_p4_wifi6_poe_eth":[{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6. Installed automatically in every new device — the wifi block only works while this is present. If the C6 never comes up on your unit, try active_high false.","fields":{"active_high":{"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"c6_wifi","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"Wi-Fi via ESP32-C6 co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"}], "waveshare_esp32_s3_eth_8di_8do":[{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38}},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"do1"},"inverted":{"locked":true,"value":true},"name":{"value":"DO1"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":0,"pca9554":"tca9554_hub"}}},"id":"do1","locked_pins":{"pin":"pca9554:tca9554_hub:0"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do2"},"inverted":{"locked":true,"value":true},"name":{"value":"DO2"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":1,"pca9554":"tca9554_hub"}}},"id":"do2","locked_pins":{"pin":"pca9554:tca9554_hub:1"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do3"},"inverted":{"locked":true,"value":true},"name":{"value":"DO3"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":2,"pca9554":"tca9554_hub"}}},"id":"do3","locked_pins":{"pin":"pca9554:tca9554_hub:2"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do4"},"inverted":{"locked":true,"value":true},"name":{"value":"DO4"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":3,"pca9554":"tca9554_hub"}}},"id":"do4","locked_pins":{"pin":"pca9554:tca9554_hub:3"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do5"},"inverted":{"locked":true,"value":true},"name":{"value":"DO5"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":4,"pca9554":"tca9554_hub"}}},"id":"do5","locked_pins":{"pin":"pca9554:tca9554_hub:4"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do6"},"inverted":{"locked":true,"value":true},"name":{"value":"DO6"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":5,"pca9554":"tca9554_hub"}}},"id":"do6","locked_pins":{"pin":"pca9554:tca9554_hub:5"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do7"},"inverted":{"locked":true,"value":true},"name":{"value":"DO7"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":6,"pca9554":"tca9554_hub"}}},"id":"do7","locked_pins":{"pin":"pca9554:tca9554_hub:6"}},{"component_id":"switch.gpio","fields":{"id":{"value":"do8"},"inverted":{"locked":true,"value":true},"name":{"value":"DO8"},"pin":{"locked":true,"value":{"mode":{"output":true},"number":7,"pca9554":"tca9554_hub"}}},"id":"do8","locked_pins":{"pin":"pca9554:tca9554_hub:7"}}], "waveshare_esp32_s3_eth_8di_8ro":[{"component_id":"i2c","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"i2cbus"},"scan":{"value":false},"scl":{"locked":true,"value":41},"sda":{"locked":true,"value":42}},"id":"i2cbus","locked_pins":{"scl":41,"sda":42}},{"component_id":"pca9554","fields":{"address":{"value":32},"id":{"locked":true,"value":"TCA9554_hub"}},"id":"tca9554_hub","requires":["i2cbus"]},{"component_id":"psram","fields":{"mode":{"value":"octal"},"speed":{"value":"80MHz"}},"id":"onboard_psram","multi_conf":false,"name":"PSRAM"},{"component_id":"ethernet","fields":{"clk_pin":{"locked":true,"value":"GPIO15"},"cs_pin":{"locked":true,"value":"GPIO16"},"interrupt_pin":{"locked":true,"value":"GPIO12"},"miso_pin":{"locked":true,"value":"GPIO14"},"mosi_pin":{"locked":true,"value":"GPIO13"},"type":{"locked":true,"value":"W5500"}},"id":"onboard_ethernet","locked_pins":{"clk_pin":15,"cs_pin":16,"interrupt_pin":12,"miso_pin":14,"mosi_pin":13},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","fields":{"disabled_by_default":{"value":true},"id":{"value":"binary_sensor_gpio_1"},"name":{"value":"Boot Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true},"number":0}}},"id":"binary_sensor_gpio_1","locked_pins":{"pin":0}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di1"},"name":{"value":"DI1"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":4}}},"id":"di1","locked_pins":{"pin":4}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di2"},"name":{"value":"DI2"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":5}}},"id":"di2","locked_pins":{"pin":5}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di3"},"name":{"value":"DI3"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":6}}},"id":"di3","locked_pins":{"pin":6}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di4"},"name":{"value":"DI4"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":7}}},"id":"di4","locked_pins":{"pin":7}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di5"},"name":{"value":"DI5"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":8}}},"id":"di5","locked_pins":{"pin":8}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di6"},"name":{"value":"DI6"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":9}}},"id":"di6","locked_pins":{"pin":9}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di7"},"name":{"value":"DI7"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":10}}},"id":"di7","locked_pins":{"pin":10}},{"component_id":"binary_sensor.gpio","fields":{"filters":{"locked":true,"value":[{"delayed_on_off":"10ms"}]},"id":{"value":"di8"},"name":{"value":"DI8"},"pin":{"locked":true,"value":{"inverted":true,"mode":"INPUT_PULLUP","number":11}}},"id":"di8","locked_pins":{"pin":11}},{"component_id":"button.restart","fields":{"entity_category":{"value":"config"},"id":{"value":"restart_button"},"name":{"value":"Restart"}},"id":"restart_button"},{"component_id":"button.factory_reset","fields":{"entity_category":{"value":"config"},"id":{"value":"reset"},"name":{"value":"Factory Reset"}},"id":"reset"},{"component_id":"button.safe_mode","fields":{"entity_category":{"value":"config"},"id":{"value":"button_safe_mode_1"},"internal":{"value":false},"name":{"value":"Safe Mode"}},"id":"button_safe_mode_1"},{"component_id":"light.esp32_rmt_led_strip","fields":{"channel_colors":{"locked":true,"value":"RGB"},"chipset":{"locked":true,"value":"WS2812"},"id":{"value":"rgb_led"},"name":{"value":"RGB LED"},"num_leds":{"locked":true,"value":1},"pin":{"locked":true,"value":38}},"id":"rgb_led","locked_pins":{"pin":38},"requires":["onboard_psram"]},{"component_id":"output.ledc","fields":{"id":{"value":"buzzer"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"number":46}}},"id":"buzzer","locked_pins":{"pin":46}},{"component_id":"switch.gpio","fields":{"id":{"value":"relay1"},"name":{"value":"Relay 1"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":0,"pca9554":"TCA9554_hub"}}},"id":"relay1","locked_pins":{"pin":"pca9554:TCA9554_hub:0"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay2"},"name":{"value":"Relay 2"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":1,"pca9554":"TCA9554_hub"}}},"id":"relay2","locked_pins":{"pin":"pca9554:TCA9554_hub:1"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay3"},"name":{"value":"Relay 3"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":2,"pca9554":"TCA9554_hub"}}},"id":"relay3","locked_pins":{"pin":"pca9554:TCA9554_hub:2"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay4"},"name":{"value":"Relay 4"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":3,"pca9554":"TCA9554_hub"}}},"id":"relay4","locked_pins":{"pin":"pca9554:TCA9554_hub:3"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay5"},"name":{"value":"Relay 5"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":4,"pca9554":"TCA9554_hub"}}},"id":"relay5","locked_pins":{"pin":"pca9554:TCA9554_hub:4"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay6"},"name":{"value":"Relay 6"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":5,"pca9554":"TCA9554_hub"}}},"id":"relay6","locked_pins":{"pin":"pca9554:TCA9554_hub:5"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay7"},"name":{"value":"Relay 7"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":6,"pca9554":"TCA9554_hub"}}},"id":"relay7","locked_pins":{"pin":"pca9554:TCA9554_hub:6"},"requires":["i2cbus","tca9554_hub"]},{"component_id":"switch.gpio","fields":{"id":{"value":"relay8"},"name":{"value":"Relay 8"},"pin":{"locked":true,"value":{"inverted":false,"mode":{"output":true},"number":7,"pca9554":"TCA9554_hub"}}},"id":"relay8","locked_pins":{"pin":"pca9554:TCA9554_hub:7"},"requires":["i2cbus","tca9554_hub"]}], From 47b474de295ff1d3ba513296a261e9c207ae1fbb Mon Sep 17 00:00:00 2001 From: Calvin Walton Date: Mon, 7 Sep 2026 10:46:31 -0400 Subject: [PATCH 7/7] ESP32-P4-WIFI6-DEV-KIT: add description for audio bundle --- .../board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json | 2 +- .../boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json index 30501e295c..06399a829d 100644 --- a/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json +++ b/esphome_device_builder/definitions/board_bodies/waveshare_esp32_p4_wifi6_dev_kit.json @@ -1 +1 @@ -{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Dev kit in Raspberry Pi form factor with engineering sample ESP32-P4\n(verify [chip marking](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html#chip-marking) is v1.x).\nESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE via HAT), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"Shared I²C bus used for onboard components (Audio codec),\nand exposed on I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header,\nallows you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max 400kHz.\nYou may need to reduce the frequency if you connect additional peripherals.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI0,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with external 32.768kHz crystal.\nSCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nSPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI1,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with microSD power supply and audio amplifier control.\nSCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nSPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) – XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} +{"default_components":[{"id":"in_package_psram"},{"id":"esp32_hosted_c6"}],"description":"Dev kit in Raspberry Pi form factor with engineering sample ESP32-P4\n(verify [chip marking](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html#chip-marking) is v1.x).\nESP32-P4NRW32 (dual-core RISC-V @ 400MHz, 16MB flash, 32MB PSRAM).\nWi-Fi 6 and Bluetooth are supported through the onboard ESP32-C6 co-processor.\n100M RJ45 Ethernet (optional PoE via HAT), MIPI DSI display and MIPI CSI camera connectors, microSD slot,\n3.5mm audio jack plus microphone and speaker header, I2C/I3C headers, RTC battery header,\nUSB-A OTG (jumper-switchable) and USB-C, 28 user GPIOs in RPi-compatible 40pin header.\nOptionally bundled with RPi Camera B, 7-DSI-TOUCH-A display, or 10.1-DSI-TOUCH-A display.\n","docs_url":"https://www.waveshare.com/wiki/ESP32-P4-WIFI6-DEV-KIT","esphome":{"board":"esp32-p4-evboard","engineering_sample":true,"framework":"esp-idf","logger_hardware_uart":"UART0","platform":"esp32","variant":"esp32p4"},"featured_bundles":[{"component_ids":["i2c_bus","audio_bus","es8311_dac","audio_output","audio_input","audio_amplifier"],"description":"Mono audio input/output using 3.5mm jack or onboard mic and speaker header.\nAdds a switch to control speaker header amplifier.\n","id":"audio_setup","name":"Audio Input/Output (full setup)"},{"component_ids":["mipi_dsi_ldo","waveshare_7_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_7_dsi_touch_a_display_setup","name":"Waveshare 7-DSI-TOUCH-A Display (display and backlight control)"},{"component_ids":["mipi_dsi_ldo","waveshare_10_1_dsi_touch_a_display","i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output","waveshare_display_backlight"],"description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\nAlso sets up a light component for controlling the display backlight.\n","id":"waveshare_10_1_dsi_touch_a_display_setup","name":"Waveshare 10.1-DSI-TOUCH-A Display (display and backlight control)"}],"featured_components":[{"component_id":"psram","fields":{"ignore_not_found":{"value":false},"mode":{"locked":true,"value":"hex"},"speed":{"value":"200MHz"}},"id":"in_package_psram","multi_conf":false},{"component_id":"esp32_hosted","description":"Onboard ESP32-C6 running ESP-Hosted over SDIO gives the radio-less ESP32-P4 Wi-Fi 6 and Bluetooth.\nThe wifi and esp32_ble components only work while this is present.\n","fields":{"active_high":{"locked":true,"value":true},"clk_pin":{"locked":true,"value":"GPIO18"},"cmd_pin":{"locked":true,"value":"GPIO19"},"d0_pin":{"locked":true,"value":"GPIO14"},"d1_pin":{"locked":true,"value":"GPIO15"},"d2_pin":{"locked":true,"value":"GPIO16"},"d3_pin":{"locked":true,"value":"GPIO17"},"reset_pin":{"locked":true,"value":"GPIO54"},"type":{"locked":true,"value":"sdio"},"variant":{"locked":true,"value":"ESP32C6"}},"id":"esp32_hosted_c6","locked_pins":{"clk_pin":18,"cmd_pin":19,"d0_pin":14,"d1_pin":15,"d2_pin":16,"d3_pin":17,"reset_pin":54},"multi_conf":false,"name":"ESP32-C6 wireless co-processor"},{"component_id":"ethernet","description":"Built-in IP101 Ethernet PHY (RMII) — selected automatically when a device is created without Wi-Fi credentials.","fields":{"clk":{"locked":true,"value":{"mode":"CLK_EXT_IN","pin":"GPIO50"}},"mdc_pin":{"locked":true,"value":"GPIO31"},"mdio_pin":{"locked":true,"value":"GPIO52"},"phy_addr":{"locked":true,"value":1},"power_pin":{"locked":true,"value":"GPIO51"},"type":{"locked":true,"value":"IP101"}},"id":"onboard_ethernet","locked_pins":{"clk.pin":50,"mdc_pin":31,"mdio_pin":52,"power_pin":51},"multi_conf":false,"name":"Onboard Ethernet"},{"component_id":"binary_sensor.gpio","description":"Onboard \"BOOT\" button.\nConflicts with Ethernet (GPIO35 is used for Ethernet PHY TXD1).\n","fields":{"id":{"value":"boot_button"},"name":{"value":"BOOT Button"},"pin":{"locked":true,"value":{"ignore_strapping_warning":true,"inverted":true,"mode":{"input":true,"pullup":true},"number":"GPIO35"}}},"id":"boot_button","locked_pins":{"pin":35},"name":"BOOT Button"},{"component_id":"i2c","description":"Shared I²C bus used for onboard components (Audio codec),\nand exposed on I²C connector,\nMIPI SCI and DSI connectors,\nand SDA/SCL pins on the 40pin header,\nallows you to use some Raspberry Pi hats with I²C peripherals.\nOnboard components support max 400kHz.\nYou may need to reduce the frequency if you connect additional peripherals.\n","fields":{"frequency":{"value":"400kHz"},"id":{"locked":true,"value":"i2c_bus"},"scl":{"locked":true,"value":"GPIO8"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO7"},"sda_pullup_enabled":{"value":true}},"id":"i2c_bus","locked_pins":{"scl":8,"sda":7},"name":"Onboard / Shared I²C bus"},{"component_id":"i2s_audio","fields":{"i2s_bclk_pin":{"locked":true,"value":"GPIO12"},"i2s_lrclk_pin":{"locked":true,"value":"GPIO10"},"i2s_mclk_pin":{"locked":true,"value":"GPIO13"},"id":{"locked":true,"value":"audio_bus"}},"id":"audio_bus","locked_pins":{"i2s_bclk_pin":12,"i2s_lrclk_pin":10,"i2s_mclk_pin":13}},{"component_id":"audio_dac.es8311","fields":{"address":{"locked":true,"value":24},"bits_per_sample":{"value":"16bit"},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"es8311_dac"},"sample_rate":{"value":16000},"use_mclk":{"locked":true,"value":true},"use_microphone":{"locked":true,"value":false}},"id":"es8311_dac","requires":["i2c_bus"]},{"component_id":"speaker.i2s_audio","fields":{"audio_dac":{"locked":true,"value":"es8311_dac"},"bits_per_sample":{"value":"16bit"},"channel":{"value":"mono"},"dac_type":{"locked":true,"value":"external"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_dout_pin":{"locked":true,"value":"GPIO9"},"id":{"value":"audio_output"},"sample_rate":{"value":16000}},"id":"audio_output","locked_pins":{"i2s_dout_pin":9},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"microphone.i2s_audio","fields":{"adc_type":{"locked":true,"value":"external"},"bits_per_sample":{"value":"16bit"},"i2s_audio_id":{"locked":true,"value":"audio_bus"},"i2s_din_pin":{"locked":true,"value":"GPIO11"},"id":{"value":"audio_input"},"pdm":{"locked":true,"value":false},"sample_rate":{"value":16000}},"id":"audio_input","locked_pins":{"i2s_din_pin":11},"requires":["audio_bus","i2c_bus","es8311_dac"]},{"component_id":"switch.gpio","fields":{"icon":{"value":"mdi:volume-high"},"id":{"value":"audio_amplifier"},"name":{"value":"Audio Amplifier"},"pin":{"locked":true,"value":"GPIO53"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"audio_amplifier","locked_pins":{"pin":53},"name":"Audio Amplifier Switch"},{"component_id":"esp_ldo","fields":{"channel":{"locked":true,"value":3},"voltage":{"locked":true,"value":"2.5V"}},"id":"mipi_dsi_ldo","multi_conf":false,"name":"Power regulator for MIPI DSI PHY"},{"component_id":"display.mipi_dsi","description":"7inch 720×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-B.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-7-DSI-TOUCH-A"}},"id":"waveshare_7_dsi_touch_a_display","name":"Waveshare 7-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"display.mipi_dsi","description":"10.1inch 800×1280 pixels IPS Panel display with 10-Point Touch,\nbundled with ESP32-P4-WIFI6-DEV-KIT-C.\n","fields":{"model":{"locked":true,"value":"WAVESHARE-10.1-DSI-TOUCH-A"}},"id":"waveshare_10_1_dsi_touch_a_display","name":"Waveshare 10.1-DSI-TOUCH-A Display","requires":["mipi_dsi_ldo"]},{"component_id":"i2c_device","description":"Generic I²C Device to access backlight control register on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"address":{"locked":true,"value":69},"i2c_id":{"locked":true,"value":"i2c_bus"},"id":{"locked":true,"value":"waveshare_display_backlight_i2c_device"}},"id":"waveshare_display_backlight_i2c_device","name":"Waveshare DSI Display Backlight I²C Device","requires":["i2c_bus"]},{"component_id":"output.template","description":"Float Output Component for backlight control on Waveshare 7-DSI-TOUCH-A and 10.1-DSI-TOUCH-A displays.\n","fields":{"id":{"locked":true,"value":"waveshare_display_backlight_output"},"type":{"locked":true,"value":"float"},"write_action":{"locked":true,"value":[{"lambda":"const uint8_t value = (uint8_t) roundf(state * 255);\nid(waveshare_display_backlight_i2c_device).write_byte(0x96, value);"}]}},"id":"waveshare_display_backlight_output","name":"Waveshare DSI Display Backlight Output","requires":["i2c_bus","waveshare_display_backlight_i2c_device"]},{"component_id":"light.monochromatic","fields":{"entity_category":{"value":"CONFIG"},"icon":{"value":"mdi:brightness-7"},"id":{"value":"waveshare_display_backlight"},"name":{"value":"Display Backlight"},"output":{"locked":true,"value":"waveshare_display_backlight_output"},"restore_mode":{"value":"ALWAYS_ON"}},"id":"waveshare_display_backlight","name":"Waveshare DSI Display Backlight","requires":["i2c_bus","waveshare_display_backlight_i2c_device","waveshare_display_backlight_output"]},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI0,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with external 32.768kHz crystal.\nSCLK is on header pin 23 (RPi GPIO11),\nMISO is on header pin 21 (RPi GPIO9),\nand MOSI is on header pin 19 (RPi GPIO10).\nSPI CS will be on GPIO36 (header pin 24 / RPi GPIO8)\nor GPIO32 (conflicts with I³C connector – header pin 26 / RPi GPIO7).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO0"},"id":{"locked":true,"value":"rpi_header_spi0"},"miso_pin":{"locked":true,"value":"GPIO2"},"mosi_pin":{"locked":true,"value":"GPIO3"}},"id":"rpi_header_spi0","locked_pins":{"clk_pin":0,"miso_pin":2,"mosi_pin":3},"name":"Raspberry Pi GPIO header SPI0 bus"},{"component_id":"spi","description":"SPI bus on the 40pin header corresponding to Raspberry Pi SPI1,\nallows you to use some Raspberry Pi hats with SPI peripherals.\nConflicts with microSD power supply and audio amplifier control.\nSCLK is on header pin 40 (RPi GPIO21),\nMISO is on header pin 35 (RPi GPIO19),\nand MOSI is on header pin 38 (RPi GPIO20).\nSPI CS will be on GPIO22 (header pin 12 / RPi GPIO18),\nGPIO21 (header pin 11 / RPi GPIO17),\nor GPIO46 (header pin 36 / RPi GPIO16).\n","fields":{"clk_pin":{"locked":true,"value":"GPIO45"},"id":{"locked":true,"value":"rpi_header_spi1"},"miso_pin":{"locked":true,"value":"GPIO53"},"mosi_pin":{"locked":true,"value":"GPIO27"}},"id":"rpi_header_spi1","locked_pins":{"clk_pin":45,"miso_pin":53,"mosi_pin":27},"name":"Raspberry Pi GPIO header SPI1 bus"},{"component_id":"i2c","description":"An I²C bus that allows you to read/write the information EEPROM on Raspberry Pi HATs.\nConflicts with the USB-C Serial/JTAG/OTG connector.\n","fields":{"frequency":{"value":"100kHz"},"id":{"locked":true,"value":"rpi_header_id_i2c_bus"},"scl":{"locked":true,"value":"GPIO25"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO24"},"sda_pullup_enabled":{"value":true}},"id":"rpi_header_id_i2c_bus","locked_pins":{"scl":25,"sda":24},"name":"Raspberry Pi header HAT ID I²C bus"},{"component_id":"i2c","description":"Use the I³C connector as an I²C bus to attach additional peripherals.\nThis I²C bus will also be available on the 40-pin header GPIO33 and GPIO32 (SDA and SCL, respectively).\n","fields":{"id":{"value":"i3c_connector_i2c_bus"},"scl":{"locked":true,"value":"GPIO32"},"scl_pullup_enabled":{"value":true},"sda":{"locked":true,"value":"GPIO33"},"sda_pullup_enabled":{"value":true}},"id":"i3c_connector_i2c_bus","locked_pins":{"scl":32,"sda":33},"name":"I³C connector as I²C bus"}],"hardware":{"connectivity":["wifi","ethernet","bluetooth"],"cpu_frequency":"400MHz","flash_size":"16MB","ram_size":34381824},"id":"waveshare_esp32_p4_wifi6_dev_kit","images":["https://www.waveshare.com/media/catalog/product/cache/1/image/800x800/9df78eab33525d08d6e5fb8d27136e95/e/s/esp32-p4-wifi6-dev-kit-1_3.jpg"],"manufacturer":"Waveshare","name":"Waveshare ESP32-P4-WIFI6-DEV-KIT (Rev1.1 and earlier)","pins":[{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":0,"label":"GPIO0","notes":"40pin header pin 23 (RPi GPIO11 / SPI0 CLK) – XTAL_32K_N","occupied_by":"32.768kHz crystal"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":1,"label":"GPIO1","notes":"40pin header pin 22 (RPi GPIO25) – XTAL_32K_P","occupied_by":"32.768kHz crystal"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":2,"label":"GPIO2","notes":"40pin header pin 21 (RPi GPIO9 / SPI0 MISO) – JTAG MTCK, Touch Sensor Channel 1"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":3,"label":"GPIO3","notes":"40pin header pin 19 (RPi GPIO10 / SPI0 MOSI) – JTAG MTDI, Touch Sensor Channel 2"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":4,"label":"GPIO4","notes":"40pin header pin 18 (RPi GPIO24) – JTAG MTMS, Touch Sensor Channel 3"},{"available":true,"features":["touch","jtag","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":5,"label":"GPIO5","notes":"40pin header pin 16 (RPi GPIO23) – JTAG MTDO, Touch Sensor Channel 4"},{"available":true,"features":["touch","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":6,"label":"GPIO6","notes":"40pin header pin 15 (RPi GPIO22) – Touch Sensor Channel 5","occupied_by":"ESP32-C6 co-processor (GPIO2)"},{"available":true,"features":["i2c_sda"],"gpio":7,"label":"SDA","notes":"40pin header pin 3 (RPi GPIO2 / I²C SDA), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":true,"features":["i2c_scl"],"gpio":8,"label":"SCL","notes":"40pin header pin 5 (RPi GPIO3 / I²C SCL), I²C connector – Shared I²C bus for onboard components","occupied_by":"MIPI CSI, MIPI DSI, Audio Codec"},{"available":false,"gpio":9,"label":"GPIO9","occupied_by":"Audio Codec (DSDIN)"},{"available":false,"gpio":10,"label":"GPIO10","occupied_by":"Audio Codec (LRCK)"},{"available":false,"gpio":11,"label":"GPIO11","occupied_by":"Audio Codec (ASDOUT)"},{"available":false,"gpio":12,"label":"GPIO12","occupied_by":"Audio Codec (SCLK)"},{"available":false,"gpio":13,"label":"GPIO13","occupied_by":"Audio Codec (MCLK)"},{"available":false,"gpio":14,"label":"GPIO14","occupied_by":"ESP32-C6 co-processor (SDIO D0)"},{"available":false,"gpio":15,"label":"GPIO15","occupied_by":"ESP32-C6 co-processor (SDIO D1)"},{"available":false,"gpio":16,"label":"GPIO16","occupied_by":"ESP32-C6 co-processor (SDIO D2)"},{"available":false,"gpio":17,"label":"GPIO17","occupied_by":"ESP32-C6 co-processor (SDIO D3)"},{"available":false,"gpio":18,"label":"GPIO18","occupied_by":"ESP32-C6 co-processor (SDIO CLK)"},{"available":false,"gpio":19,"label":"GPIO19","occupied_by":"ESP32-C6 co-processor (SDIO CMD)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":20,"label":"GPIO20","notes":"40pin header pin 13 (RPi GPIO27) – ADC1 Channel 4"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":21,"label":"GPIO21","notes":"40pin header pin 11 (RPi GPIO17) – ADC1 Channel 5"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":22,"label":"GPIO22","notes":"40pin header pin 12 (RPi GPIO18 / PCM_CLK) – ADC1 Channel 6"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":23,"label":"GPIO23","notes":"40pin header pin 7 (RPi GPIO4 / GPCLK0) – ADC1 Channel 7, 50MHz Reference Clock Output"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":24,"label":"USB D- / GPIO24","notes":"USB-C connector and 40pin header pin 27 (RPi GPIO0 / HAT ID I²C SDA) – USB Serial/JTAG N0, USB 2.0 Full-speed OTG N0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":25,"label":"USB D+ / GPIO25","notes":"USB-C connector and 40pin header pin 28 (RPi GPIO1 / HAT ID I²C SCL) – USB Serial/JTAG P0, USB 2.0 Full-speed OTG P0","occupied_by":"USB Serial/JTAG/OTG"},{"available":true,"features":["usb_dm","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":26,"label":"GPIO26","notes":"40pin header pin 31 (RPi GPIO6) – USB Serial/JTAG N1, USB 2.0 Full-speed OTG N1"},{"available":true,"features":["usb_dp","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":27,"label":"GPIO27","notes":"40pin header pin 38 (RPi GPIO20 / PCM_DIN) – USB Serial/JTAG P1, USB 2.0 Full-speed OTG P1"},{"available":false,"gpio":28,"label":"GPIO28","notes":"EMAC RMII (Recommended) RXDV","occupied_by":"Ethernet PHY"},{"available":false,"gpio":29,"label":"GPIO29","notes":"EMAC RMII (Recommended) RXD0","occupied_by":"Ethernet PHY"},{"available":false,"gpio":30,"label":"GPIO30","notes":"EMAC RMII (Recommended) RXD1","occupied_by":"Ethernet PHY"},{"available":false,"gpio":31,"label":"GPIO31","occupied_by":"Ethernet PHY (MDC)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":32,"label":"GPIO32 / I³C SCL","notes":"40pin header pin 26 (RPi GPIO7 / SPI0 CS1), I³C connector – I³C Master SCL"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":33,"label":"GPIO33 / I³C SDA","notes":"40pin header pin 29 (RPi GPIO5), I³C connector – I³C Master SDA"},{"available":false,"features":["strapping"],"gpio":34,"label":"GPIO34","notes":"Strapping pin (JTAG signal source) – EMAC RMII (Recommended) TXD0","occupied_by":"Ethernet PHY"},{"available":false,"features":["strapping","boot_button"],"gpio":35,"label":"GPIO35","notes":"Strapping pin (Chip boot mode, weak pull-up) – EMAC RMII (Recommended) TXD1","occupied_by":"Ethernet PHY, Boot Button"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":36,"label":"GPIO36","notes":"Strapping pin (Chip boot mode, ROM message printing), external pull-up – 40pin header pin 24 (RPi GPIO8 / SPI0 CS0)"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":37,"label":"TXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 8 (RPi GPIO14 / UART TXD) – UART0 TXD","occupied_by":"USB-Serial TX"},{"available":true,"features":["strapping","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":38,"label":"RXD","notes":"Strapping pin (Chip boot mode) – USB-Serial chip and 40pin header pin 10 (RPi GPIO16 / UART RXD) – UART0 RXD","occupied_by":"USB-Serial RX"},{"available":false,"features":["spi_miso"],"gpio":39,"label":"GPIO39","notes":"SD/MMC Card 1 CDATA0, 50MHz Reference Clock Output","occupied_by":"microSD (SD D0 / SPI MISO)"},{"available":false,"gpio":40,"label":"GPIO40","notes":"SD/MMC Card 1 CDATA1","occupied_by":"microSD (SD D1)"},{"available":false,"gpio":41,"label":"GPIO41","notes":"SD/MMC Card 1 CDATA2","occupied_by":"microSD (SD D2)"},{"available":false,"features":["spi_cs"],"gpio":42,"label":"GPIO42","notes":"SD/MMC Card 1 CDATA3","occupied_by":"microSD (SD D3 / SPI CS)"},{"available":false,"features":["spi_clk"],"gpio":43,"label":"GPIO43","notes":"SD/MMC Card 1 CCLK","occupied_by":"microSD (SD CLK / SPI CLK)"},{"available":false,"features":["spi_mosi"],"gpio":44,"label":"GPIO44","notes":"SD/MMC Card 1 CCMD","occupied_by":"microSD (SD CMD / SPI MOSI)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":45,"label":"GPIO45","notes":"40pin header pin 40 (RPi GPIO21 / PCM_DOUT)","occupied_by":"microSD power supply"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":46,"label":"GPIO46","notes":"40pin header pin 36 (RPi GPIO16)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":47,"label":"GPIO47","notes":"40pin header pin 37 (RPi GPIO26)"},{"available":true,"features":["pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":48,"label":"GPIO48","notes":"40pin header pin 33 (RPi GPIO13 / PWM1)"},{"available":false,"gpio":49,"label":"GPIO49","notes":"EMAC RMII (Alternative 2) PHY TXEN","occupied_by":"Ethernet PHY"},{"available":false,"gpio":50,"label":"GPIO50","notes":"EMAC RMII (Alternative 2) CLK","occupied_by":"Ethernet PHY"},{"available":false,"gpio":51,"label":"GPIO51","occupied_by":"Ethernet PHY (Reset)"},{"available":false,"gpio":52,"label":"GPIO52","occupied_by":"Ethernet PHY (MDIO)"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":53,"label":"GPIO53","notes":"40pin header pin 35 (RPi GPIO19 / PCM_FS) – ADC2 Channel 4, Analog Voltage Comparator 1","occupied_by":"Audio amplifier control"},{"available":true,"features":["adc","pwm","i2c_sda","i2c_scl","spi_mosi","spi_miso","spi_clk","spi_cs","uart_tx","uart_rx"],"gpio":54,"label":"GPIO54","notes":"40pin header pin 32 (RPi GPIO12 / PWM0) – ADC2 Channel 5, Analog Voltage Comparator 1","occupied_by":"ESP32-C6 co-processor (Reset)"}],"product_url":"https://www.waveshare.com/esp32-p4-wifi6-dev-kit.htm","tags":["dev-kit","breakout","sd-card","usb-c","camera","display","microphone","speaker"]} diff --git a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml index 231778a6c9..8fa36495bb 100644 --- a/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml +++ b/esphome_device_builder/definitions/boards/waveshare_esp32_p4_wifi6_dev_kit/manifest.yaml @@ -442,6 +442,9 @@ default_components: featured_bundles: - id: audio_setup name: Audio Input/Output (full setup) + description: | + Mono audio input/output using 3.5mm jack or onboard mic and speaker header. + Adds a switch to control speaker header amplifier. component_ids: - i2c_bus - audio_bus