Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ESP32 Arduino v3.1.0 Preparation #10202

Open
wants to merge 32 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
e1673e4
fix(build): IDF release/v5.3 466a392a and initial changes
me-no-dev Aug 19, 2024
f77ce04
fix(build): Fix many warnings
me-no-dev Aug 19, 2024
54f1c22
fix(build): Fix warning in FFat
me-no-dev Aug 19, 2024
c7e01e7
add(build): Add initial ESP32-P4 skeleton
me-no-dev Aug 20, 2024
7fe4aa6
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 21, 2024
0a8888d
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 22, 2024
4c4906f
fix(uart): sleep retention (#10248)
SuGlider Aug 28, 2024
fa67115
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
75b29fd
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
0b84244
Update core version to 3.1.0
me-no-dev Aug 28, 2024
e6dc9db
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
57518b8
ci(pre-commit): Apply automatic fixes
pre-commit-ci-lite[bot] Aug 28, 2024
8352caf
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
a8677a0
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
564612d
IDF release/v5.3 0bbd7281 (#10258)
me-no-dev Aug 28, 2024
22fb402
Merge branch 'master' into release/v3.1.x
me-no-dev Aug 28, 2024
855da42
Merge branch 'master' into release/v3.1.x
me-no-dev Sep 11, 2024
e68b1cc
Merge branch 'master' into release/v3.1.x
me-no-dev Sep 18, 2024
6768208
IDF release/v5.3 (#10272)
me-no-dev Sep 18, 2024
a4c33e3
feat(esp32p4): Add initial ESP32-P4 support (#10358)
lucasssvaz Sep 24, 2024
87c0e77
change(tools): Push generated binaries to PR
github-actions[bot] Sep 24, 2024
9398d52
Update package_esp32_index.template.json
me-no-dev Sep 24, 2024
4bb287e
fix(esp32p4): Fix compilation errors (#10371)
lucasssvaz Sep 25, 2024
7a01384
Merge branch 'master' into release/v3.1.x
me-no-dev Sep 25, 2024
6935131
Merge branch 'master' into release/v3.1.x
lucasssvaz Sep 30, 2024
8422b74
Fix touch examples JSON for P4
lucasssvaz Sep 30, 2024
a76b228
Fix ethernet examples JSON for P4
lucasssvaz Sep 30, 2024
a5a5809
Merge branch 'master' into release/v3.1.x
me-no-dev Oct 1, 2024
c980fdc
Update early system init function declaration
me-no-dev Oct 1, 2024
482c0a3
fix(psram): Do not abort if PSRAM is not found
me-no-dev Oct 1, 2024
753e203
fix(psram): ESP32-S2 does not like to early debug log
me-no-dev Oct 1, 2024
0db5bef
Merge branch 'master' into release/v3.1.x
me-no-dev Oct 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/scripts/on-push.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ if [ "$BUILD_PIO" -eq 0 ]; then
fi

#build sketches for different targets
build "esp32p4" "$CHUNK_INDEX" "$CHUNKS_CNT" "$BUILD_LOG" "$SKETCHES_FILE" "$SKETCHES_ESP32"
build "esp32s3" "$CHUNK_INDEX" "$CHUNKS_CNT" "$BUILD_LOG" "$SKETCHES_FILE" "$SKETCHES_ESP32"
build "esp32s2" "$CHUNK_INDEX" "$CHUNKS_CNT" "$BUILD_LOG" "$SKETCHES_FILE" "$SKETCHES_ESP32"
build "esp32c3" "$CHUNK_INDEX" "$CHUNKS_CNT" "$BUILD_LOG" "$SKETCHES_FILE" "$SKETCHES_ESP32"
Expand Down
20 changes: 3 additions & 17 deletions .github/scripts/on-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -219,12 +219,8 @@ find "$PKG_DIR" -name '*.git*' -type f -delete
##
RVTC_NAME="riscv32-esp-elf-gcc"
RVTC_NEW_NAME="esp-rv32"
X32TC_NAME="xtensa-esp32-elf-gcc"
X32TC_NAME="xtensa-esp-elf-gcc"
X32TC_NEW_NAME="esp-x32"
XS2TC_NAME="xtensa-esp32s2-elf-gcc"
XS2TC_NEW_NAME="esp-xs2"
XS3TC_NAME="xtensa-esp32s3-elf-gcc"
XS3TC_NEW_NAME="esp-xs3"

# Replace tools locations in platform.txt
echo "Generating platform.txt..."
Expand All @@ -233,9 +229,7 @@ sed "s/version=.*/version=$RELEASE_TAG/g" | \
sed 's/tools\.esp32-arduino-libs\.path\.windows=.*//g' | \
sed 's/{runtime\.platform\.path}.tools.esp32-arduino-libs/\{runtime.tools.esp32-arduino-libs.path\}/g' | \
sed 's/{runtime\.platform\.path}.tools.xtensa-esp-elf-gdb/\{runtime.tools.xtensa-esp-elf-gdb.path\}/g' | \
sed "s/{runtime\.platform\.path}.tools.xtensa-esp32-elf/\\{runtime.tools.$X32TC_NEW_NAME.path\\}/g" | \
sed "s/{runtime\.platform\.path}.tools.xtensa-esp32s2-elf/\\{runtime.tools.$XS2TC_NEW_NAME.path\\}/g" | \
sed "s/{runtime\.platform\.path}.tools.xtensa-esp32s3-elf/\\{runtime.tools.$XS3TC_NEW_NAME.path\\}/g" | \
sed "s/{runtime\.platform\.path}.tools.xtensa-esp-elf/\\{runtime.tools.$X32TC_NEW_NAME.path\\}/g" | \
sed 's/{runtime\.platform\.path}.tools.riscv32-esp-elf-gdb/\{runtime.tools.riscv32-esp-elf-gdb.path\}/g' | \
sed "s/{runtime\.platform\.path}.tools.riscv32-esp-elf/\\{runtime.tools.$RVTC_NEW_NAME.path\\}/g" | \
sed 's/{runtime\.platform\.path}.tools.esptool/\{runtime.tools.esptool_py.path\}/g' | \
Expand Down Expand Up @@ -293,15 +287,7 @@ rvtc_jq_arg="\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$X32TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$X32TC_NAME\")).name = \"$X32TC_NEW_NAME\" |\
(.packages[0].tools[] | select(.name==\"$X32TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].tools[] | select(.name==\"$X32TC_NAME\")).name = \"$X32TC_NEW_NAME\" |\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$XS2TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$XS2TC_NAME\")).name = \"$XS2TC_NEW_NAME\" |\
(.packages[0].tools[] | select(.name==\"$XS2TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].tools[] | select(.name==\"$XS2TC_NAME\")).name = \"$XS2TC_NEW_NAME\" |\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$XS3TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].platforms[0].toolsDependencies[] | select(.name==\"$XS3TC_NAME\")).name = \"$XS3TC_NEW_NAME\" |\
(.packages[0].tools[] | select(.name==\"$XS3TC_NAME\")).version = \"$RVTC_VERSION\" |\
(.packages[0].tools[] | select(.name==\"$XS3TC_NAME\")).name = \"$XS3TC_NEW_NAME\""
(.packages[0].tools[] | select(.name==\"$X32TC_NAME\")).name = \"$X32TC_NEW_NAME\""
cat "$PACKAGE_JSON_TEMPLATE" | jq "$rvtc_jq_arg" > "$OUTPUT_DIR/package-rvfix.json"
PACKAGE_JSON_TEMPLATE="$OUTPUT_DIR/package-rvfix.json"

Expand Down
4 changes: 4 additions & 0 deletions .github/scripts/sketch_utils.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ function build_sketch(){ # build_sketch <ide_path> <user_path> <path-to-ino> [ex
esp32c3_opts="PartitionScheme=huge_app,FlashMode=dio"
esp32c6_opts="PartitionScheme=huge_app,FlashMode=dio"
esp32h2_opts="PartitionScheme=huge_app,FlashMode=dio"
esp32p4_opts="PartitionScheme=huge_app,FlashMode=dio"

# Select the common part of the FQBN based on the target. The rest will be
# appended depending on the passed options.
Expand All @@ -114,6 +115,9 @@ function build_sketch(){ # build_sketch <ide_path> <user_path> <path-to-ino> [ex
"esp32h2")
fqbn="espressif:esp32:esp32h2:${options:-$esp32h2_opts}"
;;
"esp32p4")
fqbn="espressif:esp32:esp32p4:${options:-$esp32p4_opts}"
;;
esac

# Make it look like a JSON array.
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/lib.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ jobs:
- esp32s3
- esp32c6
- esp32h2
- esp32p4

include:
- target: esp32
Expand All @@ -56,6 +57,8 @@ jobs:
fqbn: espressif:esp32:esp32c6
- target: esp32h2
fqbn: espressif:esp32:esp32h2
- target: esp32p4
fqbn: espressif:esp32:esp32p4


steps:
Expand Down
45 changes: 23 additions & 22 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -194,28 +194,29 @@ jobs:
- name: Build Sketches
run: bash ./.github/scripts/on-push.sh

# PlatformIO on Windows, Ubuntu and Mac
build-platformio:
name: PlatformIO on ${{ matrix.os }}
needs: gen-chunks
if: |
needs.gen-chunks.outputs.build_all == 'true' ||
needs.gen-chunks.outputs.build_static_sketches == 'true' ||
needs.gen-chunks.outputs.build_platformio == 'true'
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
# # PlatformIO on Windows, Ubuntu and Mac
# build-platformio:
# name: PlatformIO on ${{ matrix.os }}
# needs: gen-chunks
# if: |
# needs.gen-chunks.outputs.build_all == 'true' ||
# needs.gen-chunks.outputs.build_static_sketches == 'true' ||
# needs.gen-chunks.outputs.build_platformio == 'true'
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os: [ubuntu-latest, windows-latest, macOS-latest]

steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Build Sketches
run: bash ./.github/scripts/on-push.sh 1 1 #equal and non-zero to trigger PIO
# steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-python@v5
# with:
# python-version: '3.x'
# - name: Build Sketches
# run: bash ./.github/scripts/on-push.sh 1 1 #equal and non-zero to trigger PIO

# ESP-IDF component build
build-esp-idf-component:
name: Build with ESP-IDF ${{ matrix.idf_ver }} for ${{ matrix.idf_target }}
needs: gen-chunks
Expand All @@ -231,8 +232,8 @@ jobs:
# See https://hub.docker.com/r/espressif/idf/tags and
# https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/tools/idf-docker-image.html
# for details.
idf_ver: ["release-v5.1"]
idf_target: ["esp32", "esp32s2", "esp32s3", "esp32c2", "esp32c3", "esp32c6", "esp32h2"]
idf_ver: ["release-v5.3"]
idf_target: ["esp32", "esp32s2", "esp32s3", "esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32p4"]
container: espressif/idf:${{ matrix.idf_ver }}
steps:
- name: Check out arduino-esp32 as a component
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ jobs:
strategy:
matrix:
type: ${{ fromJson(needs.gen-matrix.outputs.build-types) }}
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2']
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2', 'esp32p4']
with:
type: ${{ matrix.type }}
chip: ${{ matrix.chip }}
Expand All @@ -105,7 +105,7 @@ jobs:
fail-fast: false
matrix:
type: ${{ fromJson(needs.gen-matrix.outputs.hw-types) }}
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2']
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2', 'esp32p4']
with:
type: ${{ matrix.type }}
chip: ${{ matrix.chip }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests_wokwi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ jobs:
fail-fast: false
matrix:
type: ['validation']
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2']
chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2', 'esp32p4']
steps:
- name: Report pending
uses: actions/github-script@v7
Expand Down
6 changes: 3 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
# export ARDUINO_SKIP_IDF_VERSION_CHECK=1
# idf.py build

set(min_supported_idf_version "5.1.0")
set(max_supported_idf_version "5.1.99")
set(min_supported_idf_version "5.3.0")
set(max_supported_idf_version "5.3.99")
set(idf_version "${IDF_VERSION_MAJOR}.${IDF_VERSION_MINOR}.${IDF_VERSION_PATCH}")

if ("${idf_version}" AND NOT "$ENV{ARDUINO_SKIP_IDF_VERSION_CHECK}")
Expand Down Expand Up @@ -293,7 +293,7 @@ endforeach()
set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRARIES_INCLUDEDIRS})
set(srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS})
set(priv_includes cores/esp32/libb64)
set(requires spi_flash esp_partition mbedtls wpa_supplicant esp_adc esp_eth http_parser espressif__network_provisioning)
set(requires spi_flash esp_partition mbedtls wpa_supplicant esp_adc esp_eth http_parser esp_ringbuf esp_driver_gptimer esp_driver_usb_serial_jtag driver espressif__network_provisioning)
set(priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES})

if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ Here are the ESP32 series supported by the Arduino-ESP32 project:
| ESP32-S3 | Yes | Yes | [ESP32-S3](https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_en.pdf) |
| ESP32-C6 | Yes | Yes | [ESP32-C6](https://www.espressif.com/sites/default/files/documentation/esp32-c6_datasheet_en.pdf) |
| ESP32-H2 | Yes | Yes | [ESP32-H2](https://www.espressif.com/sites/default/files/documentation/esp32-h2_datasheet_en.pdf) |
| ESP32-P4 | No | No | [ESP32-P4](https://www.espressif.com/sites/default/files/documentation/esp32-p4_datasheet_en.pdf) |

> [!NOTE]
> ESP32-C2 is also supported by Arduino-ESP32 but requires rebuilding the static libraries. This is not trivial and requires a good understanding of the ESP-IDF
Expand Down
169 changes: 169 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,175 @@ esp32c2.menu.EraseFlash.all.upload.erase_cmd=-e

##############################################################

esp32p4.name=ESP32P4 Dev Module

esp32p4.bootloader.tool=esptool_py
esp32p4.bootloader.tool.default=esptool_py

esp32p4.upload.tool=esptool_py
esp32p4.upload.tool.default=esptool_py
esp32p4.upload.tool.network=esp_ota

esp32p4.upload.maximum_size=1310720
esp32p4.upload.maximum_data_size=327680
esp32p4.upload.flags=
esp32p4.upload.extra_flags=
esp32p4.upload.use_1200bps_touch=false
esp32p4.upload.wait_for_upload_port=false

esp32p4.serial.disableDTR=false
esp32p4.serial.disableRTS=false

esp32p4.build.tarch=riscv32
esp32p4.build.target=esp
esp32p4.build.mcu=esp32p4
esp32p4.build.core=esp32
esp32p4.build.variant=esp32p4
esp32p4.build.board=ESP32P4_DEV
esp32p4.build.bootloader_addr=0x2000

esp32p4.build.cdc_on_boot=0
esp32p4.build.f_cpu=360000000L
esp32p4.build.flash_size=4MB
esp32p4.build.flash_freq=80m
esp32p4.build.img_freq=80m
esp32p4.build.flash_mode=qio
esp32p4.build.boot=qio
esp32p4.build.partitions=default
esp32p4.build.defines=

## IDE 2.0 Seems to not update the value
esp32p4.menu.JTAGAdapter.default=Disabled
esp32p4.menu.JTAGAdapter.default.build.copy_jtag_files=0
esp32p4.menu.JTAGAdapter.builtin=Integrated USB JTAG
esp32p4.menu.JTAGAdapter.builtin.build.openocdscript=esp32p4-builtin.cfg
esp32p4.menu.JTAGAdapter.builtin.build.copy_jtag_files=1
esp32p4.menu.JTAGAdapter.external=FTDI Adapter
esp32p4.menu.JTAGAdapter.external.build.openocdscript=esp32p4-ftdi.cfg
esp32p4.menu.JTAGAdapter.external.build.copy_jtag_files=1
esp32p4.menu.JTAGAdapter.bridge=ESP USB Bridge
esp32p4.menu.JTAGAdapter.bridge.build.openocdscript=esp32p4-bridge.cfg
esp32p4.menu.JTAGAdapter.bridge.build.copy_jtag_files=1

esp32p4.menu.CDCOnBoot.default=Disabled
esp32p4.menu.CDCOnBoot.default.build.cdc_on_boot=0
esp32p4.menu.CDCOnBoot.cdc=Enabled
esp32p4.menu.CDCOnBoot.cdc.build.cdc_on_boot=1

esp32p4.menu.PSRAM.disabled=Disabled
esp32p4.menu.PSRAM.disabled.build.defines=
esp32p4.menu.PSRAM.enabled=Enabled
esp32p4.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM

esp32p4.menu.CDCOnBoot.default=Disabled
esp32p4.menu.CDCOnBoot.default.build.cdc_on_boot=0
esp32p4.menu.CDCOnBoot.cdc=Enabled
esp32p4.menu.CDCOnBoot.cdc.build.cdc_on_boot=1

esp32p4.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
esp32p4.menu.PartitionScheme.default.build.partitions=default
esp32p4.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS)
esp32p4.menu.PartitionScheme.defaultffat.build.partitions=default_ffat
esp32p4.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS)
esp32p4.menu.PartitionScheme.default_8MB.build.partitions=default_8MB
esp32p4.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336
esp32p4.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS)
esp32p4.menu.PartitionScheme.minimal.build.partitions=minimal
esp32p4.menu.PartitionScheme.no_fs=No FS 4MB (2MB APP x2)
esp32p4.menu.PartitionScheme.no_fs.build.partitions=no_fs
esp32p4.menu.PartitionScheme.no_fs.upload.maximum_size=2031616
esp32p4.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS)
esp32p4.menu.PartitionScheme.no_ota.build.partitions=no_ota
esp32p4.menu.PartitionScheme.no_ota.upload.maximum_size=2097152
esp32p4.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS)
esp32p4.menu.PartitionScheme.noota_3g.build.partitions=noota_3g
esp32p4.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576
esp32p4.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS)
esp32p4.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat
esp32p4.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152
esp32p4.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS)
esp32p4.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat
esp32p4.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576
esp32p4.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS)
esp32p4.menu.PartitionScheme.huge_app.build.partitions=huge_app
esp32p4.menu.PartitionScheme.huge_app.upload.maximum_size=3145728
esp32p4.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)
esp32p4.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
esp32p4.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
esp32p4.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS)
esp32p4.menu.PartitionScheme.fatflash.build.partitions=ffat
esp32p4.menu.PartitionScheme.fatflash.upload.maximum_size=2097152
esp32p4.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS)
esp32p4.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB
esp32p4.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728
esp32p4.menu.PartitionScheme.custom=Custom
esp32p4.menu.PartitionScheme.custom.build.partitions=
esp32p4.menu.PartitionScheme.custom.upload.maximum_size=16777216

## From https://docs.espressif.com/projects/esp-idf/en/latest/esp32p4/api-reference/kconfig.html#config-esp-default-cpu-freq-mhz
esp32p4.menu.CPUFreq.360=360MHz
esp32p4.menu.CPUFreq.360.build.f_cpu=360000000L
esp32p4.menu.CPUFreq.40=40MHz
esp32p4.menu.CPUFreq.40.build.f_cpu=40000000L

esp32p4.menu.FlashMode.qio=QIO
esp32p4.menu.FlashMode.qio.build.flash_mode=dio
esp32p4.menu.FlashMode.qio.build.boot=qio
esp32p4.menu.FlashMode.dio=DIO
esp32p4.menu.FlashMode.dio.build.flash_mode=dio
esp32p4.menu.FlashMode.dio.build.boot=dio

esp32p4.menu.FlashFreq.80=80MHz
esp32p4.menu.FlashFreq.80.build.flash_freq=80m
esp32p4.menu.FlashFreq.40=40MHz
esp32p4.menu.FlashFreq.40.build.flash_freq=40m

esp32p4.menu.FlashSize.4M=4MB (32Mb)
esp32p4.menu.FlashSize.4M.build.flash_size=4MB
esp32p4.menu.FlashSize.8M=8MB (64Mb)
esp32p4.menu.FlashSize.8M.build.flash_size=8MB
esp32p4.menu.FlashSize.8M.build.partitions=default_8MB
esp32p4.menu.FlashSize.2M=2MB (16Mb)
esp32p4.menu.FlashSize.2M.build.flash_size=2MB
esp32p4.menu.FlashSize.2M.build.partitions=minimal
esp32p4.menu.FlashSize.16M=16MB (128Mb)
esp32p4.menu.FlashSize.16M.build.flash_size=16MB

esp32p4.menu.UploadSpeed.921600=921600
esp32p4.menu.UploadSpeed.921600.upload.speed=921600
esp32p4.menu.UploadSpeed.115200=115200
esp32p4.menu.UploadSpeed.115200.upload.speed=115200
esp32p4.menu.UploadSpeed.256000.windows=256000
esp32p4.menu.UploadSpeed.256000.upload.speed=256000
esp32p4.menu.UploadSpeed.230400.windows.upload.speed=256000
esp32p4.menu.UploadSpeed.230400=230400
esp32p4.menu.UploadSpeed.230400.upload.speed=230400
esp32p4.menu.UploadSpeed.460800.linux=460800
esp32p4.menu.UploadSpeed.460800.macosx=460800
esp32p4.menu.UploadSpeed.460800.upload.speed=460800
esp32p4.menu.UploadSpeed.512000.windows=512000
esp32p4.menu.UploadSpeed.512000.upload.speed=512000

esp32p4.menu.DebugLevel.none=None
esp32p4.menu.DebugLevel.none.build.code_debug=0
esp32p4.menu.DebugLevel.error=Error
esp32p4.menu.DebugLevel.error.build.code_debug=1
esp32p4.menu.DebugLevel.warn=Warn
esp32p4.menu.DebugLevel.warn.build.code_debug=2
esp32p4.menu.DebugLevel.info=Info
esp32p4.menu.DebugLevel.info.build.code_debug=3
esp32p4.menu.DebugLevel.debug=Debug
esp32p4.menu.DebugLevel.debug.build.code_debug=4
esp32p4.menu.DebugLevel.verbose=Verbose
esp32p4.menu.DebugLevel.verbose.build.code_debug=5

esp32p4.menu.EraseFlash.none=Disabled
esp32p4.menu.EraseFlash.none.upload.erase_cmd=
esp32p4.menu.EraseFlash.all=Enabled
esp32p4.menu.EraseFlash.all.upload.erase_cmd=-e

##############################################################

esp32h2.name=ESP32H2 Dev Module

esp32h2.bootloader.tool=esptool_py
Expand Down
2 changes: 2 additions & 0 deletions cores/esp32/Client.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,9 @@
class Client : public Stream {
public:
virtual int connect(IPAddress ip, uint16_t port) = 0;
virtual int connect(IPAddress ip, uint16_t port, int32_t timeout) = 0;
virtual int connect(const char *host, uint16_t port) = 0;
virtual int connect(const char *host, uint16_t port, int32_t timeout) = 0;
virtual size_t write(uint8_t) = 0;
virtual size_t write(const uint8_t *buf, size_t size) = 0;
virtual int available() = 0;
Expand Down
Loading
Loading