From 2252642308cc2f3d7a53c61be3edf106c25bc7a0 Mon Sep 17 00:00:00 2001 From: wled-install <96419931+wled-install@users.noreply.github.com> Date: Sun, 15 Feb 2026 12:56:29 +0100 Subject: [PATCH] Update platformio.ini (Enviroment for Esp32-P4-Shield V2) --- platformio.ini | 142 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 141 insertions(+), 1 deletion(-) diff --git a/platformio.ini b/platformio.ini index 9e12b41475..a1f188e853 100644 --- a/platformio.ini +++ b/platformio.ini @@ -867,4 +867,144 @@ extra_scripts = pre:pio-scripts/set_conditional_libs.py ; i/o 47 Parallel IO ; i/o 48 Parallel IO ; i/o 53 ./. Audio Amp Enable (usable) -; WLED initialization done. \ No newline at end of file +; WLED initialization done. + +[env:ABC_WLED_ESP32P4_Shield_V2] +build_src_filter = +<**/*.c> + +<**/*.cpp> + +<**/*.S> + -<**/dmx*> + -<**/async-mqtt-client/**> + -<**/methods/Esp32_i2s*> + -<**/espalexa/**> + -<**/DS1307RTC*> + -<**/dependencies/dmx> +platform = https://github.com/pioarduino/platform-espressif32/releases/download/55.03.31-2/platform-espressif32.zip ;; https://github.com/troyhacks/platform-espressif32#Arduino/IDF5 +platform_packages = framework-arduinoespressif32 @ https://github.com/troyhacks/arduino-esp32#feature/esp32p4 + framework-arduinoespressif32-libs @ https://github.com/troyhacks/esp32-arduino-libs#main ;; 9d3db693436d2ff6244d7c981a7f19b22382bb62 ;; main ;; #d0dae8c20ba9ada0c0c3d488a8262ba0f07299bc ;; + ; toolchain-riscv32-esp @ https://github.com/espressif/crosstool-NG/releases/download/esp-14.2.0_20241119/riscv32-esp-elf-14.2.0_20241119-x86_64-w64-mingw32.zip +board_build.arduino.upstream_packages = no +board = esp32-p4-evboard +custom_add_libs = + ENABLE_VL53L8CX = https://github.com/stm32duino/VL53L8CX + USERMOD_ANIMARTRIX = https://github.com/troyhacks/animartrix.git +custom_remove_libs = + WLED_DISABLE_INFRARED = IRremoteESP8266 + WLED_DISABLE_MQTT = async-mqtt-client +build_unflags = -O2 + -D CONFIG_LWIP_TCPIP_TASK_AFFINITY + -D CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0 + -D CONFIG_ARDUINO_RUNNING_CORE + -D CONFIG_ARDUINO_EVENT_RUNNING_CORE +build_flags = -Ofast + -ffast-math + -mstrict-align + -fipa-pta + -freorder-blocks + -fno-jump-tables + -fno-tree-switch-conversion + -Wwrite-strings + -fstrict-volatile-bitfields + -D WLED_MAX_USERMODS=25 + -D WLEDMM_FASTPATH + -D WLEDMM_REMAP_AT_OUTPUT + -D WLEDMM_DISPLAY_W=800 ;; DSI Display Width + -D WLEDMM_DISPLAY_H=1280 ;; DIS Display Height + -D WLEDMM_DISPLAY_DEPTH=24 ;; DSI Display Bits Per Pixel (24 for RGB888) + -D WLEDMM_DISPLAY_BUTTONS=32 + -D WLEDMM_DISPLAY_BUTTONS_COLS=8 + -D REALTIME_OUTPUT_TIMER + ; -D WLED_DISABLE_LOGGING + ; -D PARLIO_TIMER + ; -D PARLIO_AUTO_OVERCLOCK + -D WLED_DANGEROUS_OPTIMIZATIONS + -D CONFIG_ARDUINO_RUNNING_CORE=0 + -D CONFIG_ARDUINO_EVENT_RUNNING_CORE=0 + -D CONFIG_ASYNC_TCP_RUNNING_CORE=1 + -D CONFIG_LWIP_TCPIP_TASK_AFFINITY=1 + -D CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1=1 + ; -D ARTNET_PRIORITY=24 + ; If you don't set PARLIO_PINS it's OK, it just sets all pins to disabled. Still "outputs" tho. + -D PARLIO_PINS=21,20,25,5,22,23,24,27,3,6,53,4,46,47,2,48 ;; GPIOs beyond 36 require some special ESP32-P4 LDO code or 47,48 don't work- added to WLED::setup()! + -D IMAGECACHE_BG_PRIORITY=1 ;; Priority: Recommended 18 or 20 (High, but < Background @ 24). + -D CONFIG_OTA_VERSION_FORCE_SLAVEFW + ; -D WLED_DEBUG + -D CORE_DEBUG_LEVEL=0 ;; ESP_LOG_VERBOSE ;; ESP_LOG_VERBOSE == 5 + -D NDEBUG ;; comment this out if REALLY debugging for things like Parallel IO, PPA, etc + -D WLED_USE_ETHERNET ;; Coexistence is slower but both work now. Ethernet is preferred automatically. + ; -D WLED_USE_ETHERNET_ONLY ;; Disable WiFi for performance reasons - on the P4 it needs high priority background tasks to talk to the C6 + -D E131_MAX_UNIVERSE_COUNT=50 + -D FAKE_DEFINE_151 + -D ARTNET_TIMER + ; -D ARTNET_SYNC_ENABLED ;; reduces tearing with FPP but also slower. + -D MAX_LEDS=99999 ;; 65535 ;; 18432 + -D MAX_LEDS_PER_BUS=99999 ;; 65535 ;; 18432 + -D MAX_LED_MEMORY=64000000 ;; times ONE HUNDRED + -D DEFAULT_LED_TYPE=TYPE_NET_ARTNET_RGB + -D LEDPIN=192 ;; at least get 192.x.x.x set properly for Art-Net + ; -D BTNPIN=46 ;; Boot button is on GPIO 35 and works as a "button", but polling it messes up Ethernet. + -D CONFIG_ASYNC_TCP_TASK_STACK_SIZE=61440 + -D BOARD_HAS_PSRAM + -D WLED_USE_PSRAM + ; -D WLED_USE_PSRAM_JSON + ; -D ALL_JSON_TO_PSRAM + -Wno-deprecated-declarations + -Wno-attributes + -D ESP_PLATFORM=1 + -D WLED_USE_MY_CONFIG + -g + -D FASTLED_NO_FASTLED + -D WLED_RELEASE_NAME=ESP32-P4_16MB + -D WLED_WATCHDOG_TIMEOUT=100 ;; Setting >0 will make the watchdog not panic. Workaround for now. + -D USERMOD_AUDIOREACTIVE + -D USERMOD_AUTO_PLAYLIST + -D USERMOD_PIONEER_PROLINK + -D USERMOD_ARTNETMAP + -D UM_AUDIOREACTIVE_USE_ESPDSP_FFT + -D SR_DMTYPE=4 ;; 9 = ES8311 (new) which is the codec chip on the ESP32-P4 EV board + -D I2S_SDPIN=33 + -D I2S_WSPIN=26 + -D I2S_CKPIN=32 + -D MCLK_PIN=36 + -D SR_ENABLE_DEFAULT + ; -D TROYHACKS_FAILSAFE_BUSSES ;; in case you have a bus type causing resets during testing, turn this on, upload, busses will be removed at boot. Then reflash without this flag. + -D WLED_DISABLE_ESPNOW ;; not working yet due to API changes in v5.3 + -D CONFIG_ADC_SUPPRESS_DEPRECATE_WARN + -D CONFIG_I2S_SUPPRESS_DEPRECATE_WARN + -D WLED_DISABLE_IMPROV_WIFISCAN + ; -D ENABLE_VL53L8CX + -D VL53L8CX_DISABLE_AMBIENT_PER_SPAD + -D VL53L8CX_DISABLE_NB_SPADS_ENABLED + -D VL53L8CX_DISABLE_NB_TARGET_DETECTED + -D VL53L8CX_DISABLE_SIGNAL_PER_SPAD + -D VL53L8CX_DISABLE_RANGE_SIGMA_MM + ; -D VL53L8CX_DISABLE_DISTANCE_MM + -D VL53L8CX_DISABLE_REFLECTANCE_PERCENT + ; -D VL53L8CX_DISABLE_TARGET_STATUS + -D VL53L8CX_DISABLE_MOTION_INDICATOR + ; -D SR_DEBUG + ; -D FFT_SAMPLING_LOG + ; -D USERMOD_ANIMARTRIX + ; -D WLEDMM_NO_MAP_RESET + ; -D WLED_DEBUG_MAPS + ; -D ES8311_ADDR=0x18 +lib_deps = https://github.com/Makuna/NeoPixelBus#CORE3 + https://github.com/softhack007/FastLED.git#ESP32-C6 + https://github.com/troyhacks/ESPAsyncWebServer + https://github.com/lovyan03/LovyanGFX +lib_ignore = WebServer +board_build.partitions = tools/WLED_ESP32_8MB_1500KB_FS.csv ;; WLED_ESP32_8MB.csv +board_build.flash_mode = qio +monitor_filters = esp32_exception_decoder, colorize +monitor_speed = 115200 +upload_speed = 921600 +framework = arduino +lib_compat_mode = strict +extra_scripts = pre:pio-scripts/set_conditional_libs.py + pre:pio-scripts/platformio_version.py + pre:pio-scripts/set_version.py + pre:pio-scripts/build-html.py + post:pio-scripts/output_bins.py + post:pio-scripts/strip-floats.py + pre:pio-scripts/user_config_copy.py + pre:pio-scripts/fix_codepage.py