Waveshare ESP32-P4-Core-DEV-KIT

Waveshare · ESP32-P4-Core-DEV-KIT (SKU 34679) / ESP32-P4-Core-DEV-KIT-M (SKU 34680)

Компактная ESP32-P4 с 32 МБ Flash, 32 МБ PSRAM, MIPI-CSI/DSI и USB OTG HS.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьСложно
Проекты с компонентом

О МОДУЛЕ

Что делает ESP32-P4-Core-DEV-KIT (SKU 34679) / ESP32-P4-Core-DEV-KIT-M (SKU 34680)

ESP32-P4-Core-DEV-KIT построена вокруг модуля Waveshare ESP32-P4-Core. Плата ориентирована на собственные дисплейные интерфейсы, обработку изображений, USB и периферию. MIPI-CSI и MIPI-DSI выведены на отдельные FPC-разъёмы; камера и дисплей приобретаются и подбираются отдельно по электрической совместимости и поддержке драйвера.

Одна карточка описывает два исполнения: SKU 34679 без припаянных штыревых разъёмов и SKU 34680 с суффиксом -M, у которого штыри припаяны. Объём памяти и основная схема интерфейсов одинаковы. Это семейство Core-DEV-KIT; нельзя переносить на него наличие ESP32-C6, Ethernet, SD-слота или аудиокодека с других плат P4. Встроенных Wi-Fi/Bluetooth и беспроводного сопроцессора у этой платы нет.

PSRAM объёмом 32 МБ находится в корпусе ESP32-P4, а 32 МБ NOR Flash — в модуле ESP32-P4-Core. Значения свободной кучи и памяти, доступной приложению, будут меньше и зависят от прошивки. Два HP-ядра исполняют основное приложение; LP-ядро — отдельная малопотребляющая подсистема, а не третье равноправное ядро приложения.

Ревизию кристалла нельзя определить по обозначению -M. Официальный репозиторий разделяет pre-v3 и v3.x: профили, бинарные файлы и sdkconfig несовместимы. Для pre-v3 встречается предел 360 МГц, для v3.x — 400 МГц; выбирать частоту и профиль нужно по маркировке и диагностике своего экземпляра. Не обходите проверку ревизии через --force.

Для первого запуска используйте UART USB-C, ESP-IDF и официальный 00_board_check без внешних устройств. Поддержка конкретного дисплея, камеры и Arduino-примера проверяется отдельно по версии BSP и SDK. Фотография взята из официального репозитория Waveshare; распиновка и дополнительные иллюстрации являются оригинальными схемой/чертежом, а не сгенерированной реконструкцией.

Характеристики

Процессор
ESP32-P4; 32-битный RISC-V, два HP-ядра и отдельное LP-ядро
Частота и ревизия
HP: до 360 МГц для legacy pre-v3 либо до 400 МГц для v3.x; LP: до 40 МГц. Ревизия экземпляра не установлена.
Внутренняя память
768 КБ HP L2MEM, 32 КБ LP SRAM, 8 КБ SPM (scratchpad memory); ROM: 128 КБ HP + 16 КБ LP
PSRAM в корпусе ESP32-P4
32 МБ
NOR Flash в ESP32-P4-Core
32 МБ
Выводы
Два ряда по 20 контактов плюс нижние GPIO-площадки; 40 контактов не равны 40 независимым GPIO
MIPI
Отдельные 2-lane CSI и DSI, FPC 22 контакта по схеме платы
USB
USB-C UART через CH343P; USB-C native USB Serial/JTAG; USB 2.0 HS на MX1.25 4-pin
Адресный RGB
WS2812B-0807, DIN через R35 от GPIO34 по опубликованной схеме
Кнопки
BOOT: GPIO35; RESET: ESP_EN
CAN/TWAI
Контроллер TWAI в ESP32-P4; внешнему CAN требуется отдельный согласованный трансивер
Размер платы
58 × 28,62 мм по чертежу; шаг боковых контактов 2,54 мм
Исполнения
SKU 34679: без припаянных штырей; SKU 34680: -M, с припаянными штырями
Беспроводная связь
Wi-Fi/Bluetooth и сопроцессора ESP32-C6 на этой плате нет
Аппаратная ревизия
Ревизия конкретного кристалла/PCB не установлена; схема и актуальный профиль должны соответствовать экземпляру
Интерфейс
I²C, SPI, UART
Питание модуля
Первый запуск: 5 В через один USB-C UART. GPIO имеют уровни 3,3 В и не предназначены для 5 В. Контакты VBUS/VSYS/3V3 — цепи питания, не GPIO; VSYS не аккумуляторный вход с зарядкой. Не подавать питание на 3V3/EN/RUN вместо штатного USB и не соединять внешние источники без проверки схемы. FPC-камеру и дисплей подключать только при снятом питании, после сверки pinout и напряжений.

ПРАКТИКА

Подключение

Схема подключения
Контакт модуляКонтакт платыНазначение
USB-C UARTUSB хоста → CH343P → UART0Предпочтён для примера; TX ESP32-P4=GPIO37, RX=GPIO38. Нужен кабель данных; драйвер CH343P зависит от ОС.
USB-C с надписью USBGPIO24 D− / GPIO25 D+Native USB Serial/JTAG по схеме; это другой путь, чем UART-разъём и отдельный HS-выход.
SDA / SCLGPIO7 / GPIO8Подписаны на боковых площадках; общие с I²C дисплея/камеры. В схеме J1/J2 I²C подтянут к 3,3 В; внешние устройства не должны подтягивать к 5 В.
Встроенный RGB DINGPIO34WS2812B; нужен адресный протокол/RMT, обычный gpio_set_level не задаёт цвет. GP48 с других ESP32 не переносить.
BOOT / RESETGPIO35 / ESP_ENBOOT при включении/сбросе вводит в download mode. EN у регулятора и RUN/ESP_EN — разные сигналы по схеме.
MX1.25 4-pin USB HSP1: pin1 VCC_5V, pin2 D−, pin3 D+, pin4 GNDНомера схемы; сверить физическую ориентацию и G/D+/D−/V на плате. Не использовать как батарейный разъём.
Боковые контакты DM / DPВыводы USBD1_N / USBD1_P высокоскоростного USBНе обычные GPIO и не GPIO24/25 native USB-C.
MIPI DSI / CSIРазъёмы DISPLAY J2 / CAMERA J122-контактные FPC по схеме. Общего размера разъёма недостаточно для совместимости; проверить тип, pinout, ориентацию шлейфа, питание и драйвер.
VBUS / VSYS / 3V3 / GNDЦепи USB0_5V / VCC_5V / ESP_3V3 / GNDПо красным именам сетей схемы. В U10 использован общий символ с устаревшими внутренними именами GP00 и т. п.; это не реальные номера ESP32-P4. Для GPIO читать внешние имена GPIOxx и маркировку платы.

Подходит для ESP32. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать Waveshare ESP32-P4-Core-DEV-KIT / -M в мой проект. Уточни задачу, SKU, ревизию кристалла и PCB, ESP-IDF/Arduino/BSP и периферию. У этой платы 32 МБ NOR Flash и 32 МБ PSRAM, но нет встроенных Wi-Fi/Bluetooth, ESP32-C6, Ethernet PHY, SD-слота и аудиокодека. Не переносить ресурсы ESP32-P4-Module-DEV-KIT/WIFI6.

Начни с USB-C UART и 00_board_check из waveshareteam/ESP32-P4-Platform, затем подготовь схему, зависимости, минимальный пример, диагностику ошибок и проверку. GPIO7/8 разделены с CSI/DSI I²C, WS2812B на GPIO34, BOOT на GPIO35. Для дисплея/камеры проверь точную модель, FPC, питание и драйвер. Для CAN добавь внешний трансивер. Выбери профиль pre-v3/v3.x по фактическому кристаллу, не по суффиксу -M; не обходи проверку ревизии и не включай irreversible security settings. Общие демо содержат Flash 16 MB: для этой платы исправь настройку на 32 MB через menuconfig. Не называй проверкой на железе просмотр исходников или успешную компиляцию.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Целевой чип ESP-IDF
esp32p4

Не esp32, esp32s3 или esp32c6.

Опорная версия ESP-IDF
v5.5.5

Объявлена в текущем официальном GETTING_STARTED; hardware-run в этой карточке не выполнялся.

Снимок Waveshare Platform
6f78fa810ec505048c1941e3d09cefc9f29129bd

Фиксированный проверенный исходник; документация веб-сайта содержит другие старые имена revision defaults.

Диагностический проект
examples/esp-idf/00_board_check

Не требует экрана, камеры, сети или внешних GPIO.

Flash Size
32 MB; CONFIG_ESPTOOLPY_FLASHSIZE_32MB=y

В idf.py menuconfig → Serial flasher config выбрать 32 MB. Общий sdkconfig.defaults примера содержит 16 MB: это не реальная ёмкость Core-DEV-KIT.

Профиль v3.x
config/esp32p4_rev3_x.defaults

Только после подтверждения v3.0+; SELECTS_REV_LESS_V3=n, REV_MIN_300=y.

Профиль legacy pre-v3
config/esp32p4_rev1_3.defaults

Для поддерживаемого v1.x, включая v1.3; SELECTS_REV_LESS_V3=y, REV_MIN_100=y. Для иных stepping сначала сверить поддержку IDF, не выбирать наугад.

PSRAM в board_check
CONFIG_SPIRAM=y; CONFIG_SPIRAM_SPEED_200M=y

Параметры проверенного общего примера; реальную инициализацию подтвердить по журналу. Свободная PSRAM не обязана равняться 32 MB.

Первый USB-порт
UART USB-C; serial monitor 115200 baud

Через CH343P. Использовать один источник питания; PORT заменить реальным портом.

RGB / I²C
WS2812B GPIO34; SDA GPIO7; SCL GPIO8

GPIO7/8 также используются камерой/дисплеем. В первом диагностическом примере не задействуются.

Получить зафиксированный диагностический проект

text
git clone https://github.com/waveshareteam/ESP32-P4-Platform.git
cd ESP32-P4-Platform
git checkout 6f78fa810ec505048c1941e3d09cefc9f29129bd
cd examples/esp-idf/00_board_check

Команды подготовки проекта в настроенном ESP-IDF v5.5.5 terminal. Это ещё не прошивка. Сначала определить фактическую ревизию кристалла по маркировке/диагностике, затем выбрать ровно один из двух вариантов ниже.

Сборка для подтверждённого кристалла v3.x

text
idf.py -B build-core-v3 -D SDKCONFIG=sdkconfig.core-v3 -D "SDKCONFIG_DEFAULTS=sdkconfig.defaults;../../../config/esp32p4_rev3_x.defaults" set-target esp32p4
idf.py -B build-core-v3 -D SDKCONFIG=sdkconfig.core-v3 menuconfig
idf.py -B build-core-v3 -D SDKCONFIG=sdkconfig.core-v3 build
idf.py -B build-core-v3 -D SDKCONFIG=sdkconfig.core-v3 -p PORT flash monitor

Полный workflow официального 00_board_check для v3.x при установленных SDK/toolchain. В menuconfig перед build обязательно выбрать Flash Size 32 MB и проверить PSRAM/консоль. PORT — реальный UART-порт. Нельзя применять этот бинарный файл к v1.x. Не компилировалось и не прошивалось в ходе подготовки карточки.

Альтернатива: подтверждённый legacy v1.x

text
idf.py -B build-core-v1 -D SDKCONFIG=sdkconfig.core-v1 -D "SDKCONFIG_DEFAULTS=sdkconfig.defaults;../../../config/esp32p4_rev1_3.defaults" set-target esp32p4
idf.py -B build-core-v1 -D SDKCONFIG=sdkconfig.core-v1 menuconfig
idf.py -B build-core-v1 -D SDKCONFIG=sdkconfig.core-v1 build
idf.py -B build-core-v1 -D SDKCONFIG=sdkconfig.core-v1 -p PORT flash monitor

Только для поддерживаемого legacy v1.x, включая v1.3; это отдельная альтернатива, а не продолжение v3.x-команд. В menuconfig выставить Flash Size 32 MB. Не смешивать sdkconfig/бинарные файлы двух build-папок; не использовать --force. Для неопределённой ревизии сначала остановиться и идентифицировать кристалл.

Как оценить результат board_check

text
IDF target: esp32p4
Silicon revision: фактическая ревизия экземпляра
Flash size: проверить настройку и определённую ёмкость
PSRAM: initialized
alive: периодический диагностический вывод

Это список ожидаемых полей, не журнал выполненного теста. Демо выводит два HP CPU cores, ревизию, данные Flash/кучи и alive раз в 5 секунд. 16 MB в README — общий пример для других плат; Core-DEV-KIT имеет 32 MB. При ошибке PSRAM, ревизии или загрузки сохранить лог и исправить конфигурацию, а не отключать проверки.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты