From 488225c787021b9c5d7df2a267530f0372b48068 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Mon, 14 Jul 2025 14:26:47 +0200 Subject: [PATCH] add p4 to GH Actions (#23680) --- .github/workflows/Tasmota_build_devel.yml | 3 ++ .github/workflows/Tasmota_build_master.yml | 3 ++ .github/workflows/build_all_the_things.yml | 2 + boards/esp32p4.json | 45 ++++++++++++++++++++++ boards/esp32p4ser.json | 45 ++++++++++++++++++++++ platformio_tasmota_env32.ini | 14 ++++++- 6 files changed, 110 insertions(+), 2 deletions(-) create mode 100644 boards/esp32p4.json create mode 100644 boards/esp32p4ser.json diff --git a/.github/workflows/Tasmota_build_devel.yml b/.github/workflows/Tasmota_build_devel.yml index 56bb53215..67650370b 100644 --- a/.github/workflows/Tasmota_build_devel.yml +++ b/.github/workflows/Tasmota_build_devel.yml @@ -98,6 +98,8 @@ jobs: - tasmota32s3ser-safeboot - tasmota32c6-safeboot - tasmota32c6ser-safeboot + - tasmota32p4-safeboot + - tasmota32p4ser-safeboot steps: - uses: actions/checkout@v4 with: @@ -195,6 +197,7 @@ jobs: - tasmota32c2 - tasmota32c3 - tasmota32c6 + - tasmota32p4 - tasmota32s2 - tasmota32s2cdc - tasmota32s3 diff --git a/.github/workflows/Tasmota_build_master.yml b/.github/workflows/Tasmota_build_master.yml index 3f4398bf3..0e35e05b7 100644 --- a/.github/workflows/Tasmota_build_master.yml +++ b/.github/workflows/Tasmota_build_master.yml @@ -32,6 +32,8 @@ jobs: - tasmota32s3ser-safeboot - tasmota32c6-safeboot - tasmota32c6ser-safeboot + - tasmota32p4-safeboot + - tasmota32p4ser-safeboot steps: - uses: actions/checkout@v4 with: @@ -122,6 +124,7 @@ jobs: - tasmota32c2 - tasmota32c3 - tasmota32c6 + - tasmota32p4 - tasmota32s2 - tasmota32s2cdc - tasmota32s3 diff --git a/.github/workflows/build_all_the_things.yml b/.github/workflows/build_all_the_things.yml index 97a8a49c1..a84287f0c 100644 --- a/.github/workflows/build_all_the_things.yml +++ b/.github/workflows/build_all_the_things.yml @@ -95,6 +95,7 @@ jobs: - tasmota32c2 - tasmota32c3 - tasmota32c6 + - tasmota32p4 - tasmota32s2 - tasmota32s2cdc - tasmota32s3 @@ -112,6 +113,7 @@ jobs: - tasmota32c2-safeboot - tasmota32c3-safeboot - tasmota32c6-safeboot + - tasmota32p4-safeboot steps: - uses: actions/checkout@v4 - name: Set up Python diff --git a/boards/esp32p4.json b/boards/esp32p4.json new file mode 100644 index 000000000..d4edd2fb0 --- /dev/null +++ b/boards/esp32p4.json @@ -0,0 +1,45 @@ +{ + "build": { + "core": "esp32", + "extra_flags": [ + "-DARDUINO_TASMOTA -DESP32P4 -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE" + ], + "f_cpu": "360000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "mcu": "esp32p4", + "variant": "esp32p4", + "partitions": "partitions/esp32_partition_app2880k_fs320k.csv" + }, + "connectivity": [ + "wifi", + "bluetooth", + "openthread", + "ethernet" + ], + "debug": { + "openocd_target": "esp32p4.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Espressif Generic ESP32-P4 >= 4M Flash, Tasmota 2880k Code/OTA, >= 320k FS", + "upload": { + "arduino": { + "flash_extra_images": [ + [ + "0x10000", + "tasmota32p4-safeboot.bin" + ] + ] + }, + "flash_size": "4MB", + "maximum_ram_size": 768000, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 1500000 + }, + "url": "https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32p4/esp32-p4-function-ev-board/index.html", + "vendor": "Espressif" +} diff --git a/boards/esp32p4ser.json b/boards/esp32p4ser.json new file mode 100644 index 000000000..313a56278 --- /dev/null +++ b/boards/esp32p4ser.json @@ -0,0 +1,45 @@ +{ + "build": { + "core": "esp32", + "extra_flags": [ + "-DARDUINO_TASMOTA -DESP32P4 -DBOARD_HAS_PSRAM" + ], + "f_cpu": "360000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "mcu": "esp32p4", + "variant": "esp32p4", + "partitions": "partitions/esp32_partition_app2880k_fs320k.csv" + }, + "connectivity": [ + "wifi", + "bluetooth", + "openthread", + "ethernet" + ], + "debug": { + "openocd_target": "esp32p4.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Espressif Generic ESP32-P4 >= 4M Flash, Tasmota 2880k Code/OTA, >= 320k FS", + "upload": { + "arduino": { + "flash_extra_images": [ + [ + "0x10000", + "tasmota32p4-safeboot.bin" + ] + ] + }, + "flash_size": "4MB", + "maximum_ram_size": 768000, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 1500000 + }, + "url": "https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32p4/esp32-p4-function-ev-board/index.html", + "vendor": "Espressif" +} diff --git a/platformio_tasmota_env32.ini b/platformio_tasmota_env32.ini index 189e805bc..f5e871816 100644 --- a/platformio_tasmota_env32.ini +++ b/platformio_tasmota_env32.ini @@ -162,7 +162,7 @@ lib_ignore = ${safeboot_flags.lib_ignore} [env:tasmota32p4-safeboot] extends = env:tasmota32_base -board = esp32p4_ev +board = esp32p4 board_build.app_partition_name = safeboot build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_SAFEBOOT @@ -170,6 +170,16 @@ build_flags = ${env:tasmota32_base.build_flags} lib_extra_dirs = lib/lib_ssl, lib/libesp32 lib_ignore = ${safeboot_flags.lib_ignore} +[env:tasmota32p4ser-safeboot] +extends = env:tasmota32_base +board = esp32p4ser +board_build.app_partition_name = safeboot +build_flags = ${env:tasmota32_base.build_flags} + -DFIRMWARE_SAFEBOOT + -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/ser-safeboot.bin"' +lib_extra_dirs = lib/lib_ssl, lib/libesp32 +lib_ignore = ${safeboot_flags.lib_ignore} + [env:tasmota32] extends = env:tasmota32_base build_flags = ${env:tasmota32_base.build_flags} @@ -246,7 +256,7 @@ lib_ignore = ${env:tasmota32_base.lib_ignore} [env:tasmota32p4] extends = env:tasmota32_base -board = esp32p4_ev +board = esp32p4 build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32p4.bin"'