diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index ab64b14..c77c208 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -50,7 +50,7 @@ jobs: run: | python -m pip install --upgrade pip pip install wheel - pip install -U https://github.com/pioarduino/platformio-core/archive/refs/tags/v6.1.17b2.zip + pip install -U https://github.com/pioarduino/platformio-core/archive/refs/tags/v6.1.18.zip pio pkg install --global --platform file://. - name: git clone Tasmota and add to examples run: | diff --git a/.github/workflows/release_zips.yml b/.github/workflows/release_zips.yml index 5f25ce2..a3d12f2 100644 --- a/.github/workflows/release_zips.yml +++ b/.github/workflows/release_zips.yml @@ -3,7 +3,7 @@ name: Create zip file with recursive source clone for release on: push: tags: - - 53* + - 54* jobs: release_zips: diff --git a/README.md b/README.md index 554f8b9..4de6a2a 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ ESP32 is a series of low-cost, low-power system on a chip microcontrollers with 1. Configure a platform option in platformio.ini file: ### Stable Arduino -currently espressif Arduino 3.1.3 and IDF 5.3.2.250210 +currently espressif Arduino 3.2.0 and IDF 5.4.1 ```ini [env:stable] @@ -39,8 +39,8 @@ board = ... ... ``` -### pioarduino only feature -ESP32-solo1 and ESP32-C2 support via **Hybrid compile** +### ESP32-solo1 and ESP32-C2 Arduino support (with pioarduino only feature: *Hybrid compile*) +Example configuration: ```ini [env:esp32solo1] diff --git a/boards/bpi-centi-s3.json b/boards/bpi-centi-s3.json new file mode 100644 index 0000000..01c9509 --- /dev/null +++ b/boards/bpi-centi-s3.json @@ -0,0 +1,52 @@ +{ + "build": { + "arduino": { + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DBOARD_HAS_PSRAM", + "-DARDUINO_BPI_CENTI_S3", + "-DARDUINO_USB_MODE=1", + "-DARDUINO_USB_CDC_ON_BOOT=1" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "hwids": [ + [ + "0x303A", + "0x80DF" + ] + ], + "mcu": "esp32s3", + "variant": "bpi_leaf_s3" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms" : [ + "espressif32" + ], + "name": "BPI-Centi-S3", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "use_1200bps_touch": true, + "wait_for_upload_port": true, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://wiki.banana-pi.org/BPI-Leaf-S3", + "vendor": "BPI Tech" +} diff --git a/boards/esp32-s3-devkitc-1-n32r8v.json b/boards/esp32-s3-devkitc-1-n32r8v.json new file mode 100644 index 0000000..39d725a --- /dev/null +++ b/boards/esp32-s3-devkitc-1-n32r8v.json @@ -0,0 +1,52 @@ +{ + "build": { + "arduino":{ + "partitions": "default_32MB.csv", + "memory_type": "opi_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "opi", + "psram_type": "opi", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N32R8V (32 MB Flash Octal, 8 MB PSRAM Octal)", + "upload": { + "flash_size": "32MB", + "maximum_ram_size": 327680, + "maximum_size": 33554432, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} diff --git a/boards/esp32-s3-devkitc1-n16r16.json b/boards/esp32-s3-devkitc1-n16r16.json new file mode 100644 index 0000000..99c7113 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n16r16.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_16MB.csv", + "memory_type": "qio_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "opi", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N16R8V (16 MB Flash Quad, 16 MB PSRAM Octal)", + "upload": { + "flash_size": "16MB", + "maximum_ram_size": 327680, + "maximum_size": 16777216, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n16r2.json b/boards/esp32-s3-devkitc1-n16r2.json new file mode 100644 index 0000000..08968e5 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n16r2.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_16MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N8R8 (16 MB Flash Quad, 2 MB PSRAM Quad)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 16777216, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n16r8.json b/boards/esp32-s3-devkitc1-n16r8.json new file mode 100644 index 0000000..1c7e5d6 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n16r8.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_16MB.csv", + "memory_type": "qio_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "opi", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N16R8V (16 MB Flash Quad, 8 MB PSRAM Octal)", + "upload": { + "flash_size": "16MB", + "maximum_ram_size": 327680, + "maximum_size": 16777216, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n4r2.json b/boards/esp32-s3-devkitc1-n4r2.json new file mode 100644 index 0000000..1ed4a33 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n4r2.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_4MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N8R8 (4 MB Flash Quad, 2 MB PSRAM Quad)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n4r8.json b/boards/esp32-s3-devkitc1-n4r8.json new file mode 100644 index 0000000..338fee2 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n4r8.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_4MB.csv", + "memory_type": "qio_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "opi", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N8R8 (4 MB Flash Quad, 8 MB PSRAM Octal)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n8r2.json b/boards/esp32-s3-devkitc1-n8r2.json new file mode 100644 index 0000000..46e2a89 --- /dev/null +++ b/boards/esp32-s3-devkitc1-n8r2.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N8R8 (8 MB Flash Quad, 2 MB PSRAM quad)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-devkitc1-n8r8.json b/boards/esp32-s3-devkitc1-n8r8.json new file mode 100644 index 0000000..6284c7c --- /dev/null +++ b/boards/esp32-s3-devkitc1-n8r8.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_8MB.csv", + "memory_type": "qio_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "opi", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms": [ + "espressif32" + ], + "name": "Espressif ESP32-S3-DevKitC-1-N8R8 (8 MB Flash Quad, 8 MB PSRAM Octal)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" +} \ No newline at end of file diff --git a/boards/esp32-s3-fh4r2.json b/boards/esp32-s3-fh4r2.json new file mode 100644 index 0000000..1333a31 --- /dev/null +++ b/boards/esp32-s3-fh4r2.json @@ -0,0 +1,56 @@ +{ + "build": { + "arduino":{ + "partitions": "default.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "psram_type": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms" : [ + "espressif32" + ], + "name": "Espressif ESP32-S3-FH4R2 (4 MB QD, 2MB PSRAM)", + "upload": { + "flash_size": "4MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/user-guide-devkitc-1.html", + "vendor": "Espressif" + } \ No newline at end of file diff --git a/boards/feenove-esp32-s3-n8r8.json b/boards/feenove-esp32-s3-n8r8.json new file mode 100644 index 0000000..0c508d5 --- /dev/null +++ b/boards/feenove-esp32-s3-n8r8.json @@ -0,0 +1,55 @@ +{ + "build": { + "arduino": { + "partitions": "default_8MB.csv", + "memory_type": "dio_opi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_ESP32S3_DEV", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1", + "-DBOARD_HAS_PSRAM" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "dio", + "psram_type": "opi", + "hwids": [ + [ + "0X303A", + "0x1001" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "platforms" : [ + "espressif32" + ], + "name": "Freenove ESP32-S3 WROOM N8R8 (8MB Flash / 8MB PSRAM)", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "require_upload_port": true, + "speed": 921600 + }, + "url": "https://github.com/Freenove/Freenove_ESP32_S3_WROOM_Board", + "vendor": "Freenove" +} diff --git a/boards/nologo_esp32c3_super_mini.json b/boards/nologo_esp32c3_super_mini.json new file mode 100644 index 0000000..e8e302c --- /dev/null +++ b/boards/nologo_esp32c3_super_mini.json @@ -0,0 +1,32 @@ +{ + "build": { + "core": "esp32", + "f_cpu": "160000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "extra_flags": "-DARDUINO_ESP32C3_DEV -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=1", + "mcu": "esp32c3", + "variant": "nologo_esp32c3_super_mini" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "openocd_target": "esp32c3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Nologo ESP32C3 SuperMini", + "upload": { + "flash_size": "4MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://www.nologo.tech/product/esp32/esp32c3/esp32c3supermini/esp32C3SuperMini.html", + "vendor": "Nologo" +} \ No newline at end of file diff --git a/boards/sparkfun_pro_micro_esp32c3.json b/boards/sparkfun_pro_micro_esp32c3.json new file mode 100644 index 0000000..e31d53f --- /dev/null +++ b/boards/sparkfun_pro_micro_esp32c3.json @@ -0,0 +1,36 @@ +{ + "build": { + "core": "esp32", + "f_cpu": "160000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "extra_flags": [ + "-DSPARKFUN_PRO_MICRO_ESP32C3", + "-DARDUINO_USB_MODE=1", + "-DARDUINO_USB_CDC_ON_BOOT=1" + ], + "mcu": "esp32c3", + "variant": "sparkfun_pro_micro_esp32c3" + }, + "connectivity": [ + "wifi", + "bluetooth" + ], + "debug": { + "openocd_target": "esp32c3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "SparkFun Pro Micro ESP32-C3", + "upload": { + "flash_size": "4MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://www.sparkfun.com/sparkfun-pro-micro-esp32-c3.html", + "vendor": "Sparkfun" +} \ No newline at end of file diff --git a/boards/um_bling.json b/boards/um_bling.json new file mode 100644 index 0000000..aeeabad --- /dev/null +++ b/boards/um_bling.json @@ -0,0 +1,51 @@ +{ + "build": { + "arduino":{ + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_BLING", + "-DBOARD_HAS_PSRAM", + "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "hwids": [ + [ + "0X303A", + "0x817F" + ] + ], + "mcu": "esp32s3", + "variant": "um_bling" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Unexpected Maker BLING!", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "use_1200bps_touch": true, + "wait_for_upload_port": true, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://unexpectedmaker.com/shop/bling", + "vendor": "Unexpected Maker" +} diff --git a/boards/um_feathers3.json b/boards/um_feathers3.json index 1a851fa..9c39ea9 100644 --- a/boards/um_feathers3.json +++ b/boards/um_feathers3.json @@ -1,7 +1,6 @@ { "build": { "arduino":{ - "ldscript": "esp32s3_out.ld", "partitions": "default_16MB.csv", "memory_type": "qio_qspi" }, @@ -10,6 +9,7 @@ "-DARDUINO_FEATHERS3", "-DBOARD_HAS_PSRAM", "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", "-DARDUINO_RUNNING_CORE=1", "-DARDUINO_EVENT_RUNNING_CORE=1" ], diff --git a/boards/um_feathers3_neo.json b/boards/um_feathers3_neo.json new file mode 100644 index 0000000..0849ee3 --- /dev/null +++ b/boards/um_feathers3_neo.json @@ -0,0 +1,51 @@ +{ + "build": { + "arduino":{ + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_FEATHERS3NEO", + "-DBOARD_HAS_PSRAM", + "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "hwids": [ + [ + "0X303A", + "0x81FB" + ] + ], + "mcu": "esp32s3", + "variant": "um_feathers3neo" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Unexpected Maker FeatherS3 Neo", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "use_1200bps_touch": true, + "wait_for_upload_port": true, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://unexpectedmaker.com/shop/feathers3neo", + "vendor": "Unexpected Maker" +} diff --git a/boards/um_nanos3.json b/boards/um_nanos3.json index 921a36e..742c0ac 100644 --- a/boards/um_nanos3.json +++ b/boards/um_nanos3.json @@ -1,7 +1,6 @@ { "build": { "arduino": { - "ldscript": "esp32s3_out.ld", "partitions": "default_8MB.csv", "memory_type": "qio_qspi" }, @@ -10,6 +9,7 @@ "-DBOARD_HAS_PSRAM", "-DARDUINO_NANOS3", "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", "-DARDUINO_RUNNING_CORE=1", "-DARDUINO_EVENT_RUNNING_CORE=1" ], diff --git a/boards/um_omgs3.json b/boards/um_omgs3.json new file mode 100644 index 0000000..55994d4 --- /dev/null +++ b/boards/um_omgs3.json @@ -0,0 +1,51 @@ +{ + "build": { + "arduino":{ + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_OMGS3", + "-DBOARD_HAS_PSRAM", + "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", + "-DARDUINO_RUNNING_CORE=1", + "-DARDUINO_EVENT_RUNNING_CORE=1" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "hwids": [ + [ + "0X303A", + "0x8224" + ] + ], + "mcu": "esp32s3", + "variant": "um_omgs3" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Unexpected Maker OMGS3", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "use_1200bps_touch": true, + "wait_for_upload_port": true, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://unexpectedmaker.com/shop/omgs3", + "vendor": "Unexpected Maker" +} diff --git a/boards/um_pros3.json b/boards/um_pros3.json index 8edcefa..484c024 100644 --- a/boards/um_pros3.json +++ b/boards/um_pros3.json @@ -1,7 +1,6 @@ { "build": { "arduino": { - "ldscript": "esp32s3_out.ld", "partitions": "default_16MB.csv", "memory_type": "qio_qspi" }, @@ -10,6 +9,7 @@ "-DARDUINO_PROS3", "-DBOARD_HAS_PSRAM", "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", "-DARDUINO_RUNNING_CORE=1", "-DARDUINO_EVENT_RUNNING_CORE=1" ], diff --git a/boards/um_tinyc6.json b/boards/um_tinyc6.json new file mode 100644 index 0000000..f34eee9 --- /dev/null +++ b/boards/um_tinyc6.json @@ -0,0 +1,38 @@ +{ + "build": { + "arduino":{ + "partitions": "default_8MB.csv", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DARDUINO_TINYC6" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "mcu": "esp32c6", + "variant": "um_tinyc6" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32c6.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "Unexpected Maker TinyC6", + "upload": { + "flash_size": "8MB", + "maximum_ram_size": 327680, + "maximum_size": 8388608, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://unexpectedmaker.com/shop/tinyc6", + "vendor": "Unexpected Maker" +} diff --git a/boards/um_tinys2.json b/boards/um_tinys2.json index 8a57216..7ca5ca4 100644 --- a/boards/um_tinys2.json +++ b/boards/um_tinys2.json @@ -1,7 +1,8 @@ { "build": { "arduino": { - "ldscript": "esp32s2_out.ld" + "partitions": "default_4MB.csv", + "memory_type": "qio_qspi" }, "core": "esp32", "extra_flags": [ diff --git a/boards/um_tinys3.json b/boards/um_tinys3.json index ed7b2a0..cac1514 100644 --- a/boards/um_tinys3.json +++ b/boards/um_tinys3.json @@ -1,7 +1,6 @@ { "build": { "arduino":{ - "ldscript": "esp32s3_out.ld", "partitions": "default_8MB.csv", "memory_type": "qio_qspi" }, @@ -10,6 +9,7 @@ "-DARDUINO_TINYS3", "-DBOARD_HAS_PSRAM", "-DARDUINO_USB_CDC_ON_BOOT=1", + "-DARDUINO_USB_MODE=1", "-DARDUINO_RUNNING_CORE=1", "-DARDUINO_EVENT_RUNNING_CORE=1" ], @@ -46,6 +46,6 @@ "require_upload_port": true, "speed": 460800 }, - "url": "https://unexpectedmaker.com/shop/ttinys3-esp32s3", + "url": "https://unexpectedmaker.com/shop/tinys3", "vendor": "Unexpected Maker" } diff --git a/builder/frameworks/arduino.py b/builder/frameworks/arduino.py index 96fbff6..4c2bd93 100644 --- a/builder/frameworks/arduino.py +++ b/builder/frameworks/arduino.py @@ -101,6 +101,7 @@ def install_python_deps(): deps = { "wheel": ">=0.35.1", + "rich-click": ">=1.8.6", "PyYAML": ">=6.0.2", "intelhex": ">=2.3.0" } @@ -239,9 +240,12 @@ def call_compile_libs(): SConscript("espidf.py") if check_reinstall_frwrk() == True: - print("*** Reinstall Arduino framework libs ***") + print("*** Reinstall Arduino framework ***") + shutil.rmtree(platform.get_package_dir("framework-arduinoespressif32")) shutil.rmtree(platform.get_package_dir("framework-arduinoespressif32-libs")) + ARDUINO_FRMWRK_URL = str(platform.get_package_spec("framework-arduinoespressif32")).split("uri=",1)[1][:-1] ARDUINO_FRMWRK_LIB_URL = str(platform.get_package_spec("framework-arduinoespressif32-libs")).split("uri=",1)[1][:-1] + pm.install(ARDUINO_FRMWRK_URL) pm.install(ARDUINO_FRMWRK_LIB_URL) if flag_custom_sdkconfig == True: call_compile_libs() diff --git a/builder/frameworks/espidf.py b/builder/frameworks/espidf.py index aa32f05..b77b733 100644 --- a/builder/frameworks/espidf.py +++ b/builder/frameworks/espidf.py @@ -82,6 +82,7 @@ def install_standard_python_deps(): deps = { "wheel": ">=0.35.1", + "rich-click": ">=1.8.6", "PyYAML": ">=6.0.2" } @@ -1530,12 +1531,11 @@ def install_python_deps(): # https://github.com/platformio/platformio-core/issues/4614 "urllib3": "<2", # https://github.com/platformio/platform-espressif32/issues/635 - "cryptography": "~=41.0.1" if IDF5 else ">=2.1.4,<35.0.0", + "cryptography": "~=41.0.1", "future": ">=0.18.3", - "pyparsing": ">=3.1.0,<4" if IDF5 else ">=2.0.3,<2.4.0", - "kconfiglib": "~=14.1.0" if IDF5 else "~=13.7.1", - "idf-component-manager": "~=2.0.1" if IDF5 else "~=1.0", - "esp-idf-kconfig": ">=1.4.2,<2.0.0" + "pyparsing": ">=3.1.0,<4", + "idf-component-manager": "~=2.0.1", + "esp-idf-kconfig": ">=2.5.0" } if sys_platform.system() == "Darwin" and "arm" in sys_platform.machine().lower(): @@ -2123,6 +2123,11 @@ if "arduino" in env.get("PIOFRAMEWORK") and "espidf" not in env.get("PIOFRAMEWOR shutil.move(join(arduino_libs,mcu,"sdkconfig"),join(arduino_libs,mcu,"sdkconfig.orig")) shutil.copyfile(join(env.subst("$PROJECT_DIR"),"sdkconfig."+env["PIOENV"]),join(arduino_libs,mcu,"sdkconfig")) shutil.copyfile(join(env.subst("$PROJECT_DIR"),"sdkconfig."+env["PIOENV"]),join(arduino_libs,"sdkconfig")) + try: + os.remove(join(env.subst("$PROJECT_DIR"),"dependencies.lock")) + os.remove(join(env.subst("$PROJECT_DIR"),"CMakeLists.txt")) + except: + pass print("*** Copied compiled %s IDF libraries to Arduino framework ***" % idf_variant) pio_exe_path = shutil.which("platformio"+(".exe" if IS_WINDOWS else "")) diff --git a/builder/frameworks/ulp.py b/builder/frameworks/ulp.py index 7965df1..7afa2ef 100644 --- a/builder/frameworks/ulp.py +++ b/builder/frameworks/ulp.py @@ -99,6 +99,7 @@ def generate_ulp_config(target_config): cmd = ( os.path.join(platform.get_package_dir("tool-cmake"), "bin", "cmake"), + "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON", "-DCMAKE_GENERATOR=Ninja", "-DCMAKE_TOOLCHAIN_FILE=" + os.path.join( @@ -117,6 +118,7 @@ def generate_ulp_config(target_config): "-DSDKCONFIG_HEADER=" + os.path.join(BUILD_DIR, "config", "sdkconfig.h"), "-DPYTHON=" + env.subst("$PYTHONEXE"), "-DSDKCONFIG_CMAKE=" + os.path.join(BUILD_DIR, "config", "sdkconfig.cmake"), + "-DCMAKE_MODULE_PATH=" + fs.to_unix_path(os.path.join(FRAMEWORK_DIR, "components", "ulp", "cmake")), "-GNinja", "-B", ULP_BUILD_DIR, diff --git a/examples/arduino-blink/platformio.ini b/examples/arduino-blink/platformio.ini index 26bd6f1..8fe2201 100644 --- a/examples/arduino-blink/platformio.ini +++ b/examples/arduino-blink/platformio.ini @@ -44,6 +44,24 @@ custom_component_remove = espressif/esp_hosted espressif/esp_rainmaker espressif/rmaker_common +[env:esp32-s3-arduino_nano_esp32] +platform = espressif32 +framework = arduino +board = arduino_nano_esp32 +monitor_speed = 115200 +custom_component_remove = espressif/esp_hosted + espressif/esp_wifi_remote + espressif/esp-dsp + espressif/esp32-camera + espressif/libsodium + espressif/esp-modbus + espressif/qrcode + espressif/esp_insights + espressif/esp_diag_data_store + espressif/esp_diagnostics + espressif/esp_rainmaker + espressif/rmaker_common + [env:esp32s3-qio_opi_per] ; OPI Performance settings -> Display use platform = espressif32 diff --git a/examples/arduino-matter-light/platformio.ini b/examples/arduino-matter-light/platformio.ini index 9c624da..fca1f7a 100644 --- a/examples/arduino-matter-light/platformio.ini +++ b/examples/arduino-matter-light/platformio.ini @@ -12,6 +12,5 @@ platform = espressif32 framework = arduino board_build.partitions = huge_app.csv -build_flags = -DCHIP_HAVE_CONFIG_H board = esp32-c6-devkitc-1 monitor_speed = 115200 diff --git a/platform.json b/platform.json index 74651b7..beaab0e 100644 --- a/platform.json +++ b/platform.json @@ -18,7 +18,7 @@ "type": "git", "url": "https://github.com/pioarduino/platform-espressif32.git" }, - "version": "53.03.13", + "version": "54.03.20", "frameworks": { "arduino": { "script": "builder/frameworks/arduino.py" @@ -33,13 +33,13 @@ "type": "framework", "optional": true, "owner": "espressif", - "version": "https://github.com/espressif/arduino-esp32/releases/download/3.1.3/esp32-3.1.3.zip" + "version": "https://github.com/espressif/arduino-esp32/releases/download/3.2.0/esp32-3.2.0.zip" }, "framework-arduinoespressif32-libs": { "type": "framework", "optional": true, "owner": "espressif", - "version": "https://github.com/espressif/esp32-arduino-lib-builder/releases/download/idf-release_v5.3/esp32-arduino-libs-idf-release_v5.3-489d7a2b-v1.zip" + "version": "https://github.com/espressif/esp32-arduino-lib-builder/releases/download/idf-release_v5.4/esp32-arduino-libs-idf-release_v5.4-2f7dcd86-v1.zip" }, "framework-arduino-c2-skeleton-lib": { "type": "framework", @@ -51,19 +51,19 @@ "type": "framework", "optional": true, "owner": "pioarduino", - "version": "https://github.com/pioarduino/esp-idf/releases/download/v5.3.2.250210/esp-idf-v5.3.2.zip" + "version": "https://github.com/pioarduino/esp-idf/releases/download/v5.4.1/esp-idf-v5.4.1.zip" }, "toolchain-xtensa-esp-elf": { "type": "toolchain", "optional": true, "owner": "platformio", - "version": "13.2.0+20240530" + "version": "14.2.0+20241119" }, "toolchain-riscv32-esp": { "type": "toolchain", "optional": true, "owner": "platformio", - "version": "13.2.0+20240530" + "version": "14.2.0+20241119" }, "toolchain-esp32ulp": { "type": "toolchain", @@ -86,7 +86,7 @@ "tool-esptoolpy": { "type": "uploader", "owner": "pioarduino", - "version": "https://github.com/pioarduino/esptool/releases/download/v4.8.6/esptool.zip" + "version": "https://github.com/pioarduino/esptool/releases/download/v4.8.8/esptool.zip" }, "tool-dfuutil-arduino": { "type": "uploader",