ci(idf): Use included IDF examples in CI (#11240)
* ci(idf): Use included IDF examples in CI * fix(example): sets Matter version to be 1.3 or higher * feat(matter): sets c++ 2a as default * feat(matter): Update README.md * fix(matter): instructions about using more than one sdkconfig file --------- Co-authored-by: Sugar Glider <rodrigo.garcia@espressif.com>
This commit is contained in:
parent
571c2f74f2
commit
5262f5ad5e
15 changed files with 109 additions and 222 deletions
33
.github/scripts/on-push-idf.sh
vendored
Normal file
33
.github/scripts/on-push-idf.sh
vendored
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
CHECK_REQUIREMENTS="./components/arduino-esp32/.github/scripts/sketch_utils.sh check_requirements"
|
||||||
|
|
||||||
|
# Export IDF environment
|
||||||
|
. ${IDF_PATH}/export.sh
|
||||||
|
|
||||||
|
# Find all examples in ./components/arduino-esp32/idf_component_examples
|
||||||
|
idf_component_examples=$(find ./components/arduino-esp32/idf_component_examples -mindepth 1 -maxdepth 1 -type d)
|
||||||
|
|
||||||
|
for example in $idf_component_examples; do
|
||||||
|
if [ -f "$example"/ci.json ]; then
|
||||||
|
# If the target is listed as false, skip the sketch. Otherwise, include it.
|
||||||
|
is_target=$(jq -r --arg target "$IDF_TARGET" '.targets[$target]' "$example"/ci.json)
|
||||||
|
if [[ "$is_target" == "false" ]]; then
|
||||||
|
printf "\n\033[93mSkipping %s for target %s\033[0m\n\n" "$example" "$IDF_TARGET"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
idf.py -C "$example" set-target "$IDF_TARGET"
|
||||||
|
|
||||||
|
has_requirements=$(${CHECK_REQUIREMENTS} "$example" "$example/sdkconfig")
|
||||||
|
if [ "$has_requirements" -eq 0 ]; then
|
||||||
|
printf "\n\033[93m%s does not meet the requirements for %s. Skipping...\033[0m\n\n" "$example" "$IDF_TARGET"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "\n\033[95mBuilding %s\033[0m\n\n" "$example"
|
||||||
|
idf.py -C "$example" -DEXTRA_COMPONENT_DIRS="$PWD/components" build
|
||||||
|
done
|
||||||
2
.github/scripts/sketch_utils.sh
vendored
2
.github/scripts/sketch_utils.sh
vendored
|
|
@ -16,7 +16,7 @@ function check_requirements { # check_requirements <sketchdir> <sdkconfig_path>
|
||||||
local requirements_or
|
local requirements_or
|
||||||
|
|
||||||
if [ ! -f "$sdkconfig_path" ] || [ ! -f "$sketchdir/ci.json" ]; then
|
if [ ! -f "$sdkconfig_path" ] || [ ! -f "$sketchdir/ci.json" ]; then
|
||||||
echo "ERROR: sdkconfig or ci.json not found" 1>&2
|
echo "WARNING: sdkconfig or ci.json not found. Assuming requirements are met." 1>&2
|
||||||
# Return 1 on error to force the sketch to be built and fail. This way the
|
# Return 1 on error to force the sketch to be built and fail. This way the
|
||||||
# CI will fail and the user will know that the sketch has a problem.
|
# CI will fail and the user will know that the sketch has a problem.
|
||||||
else
|
else
|
||||||
|
|
|
||||||
20
.github/workflows/push.yml
vendored
20
.github/workflows/push.yml
vendored
|
|
@ -31,6 +31,7 @@ on:
|
||||||
- "!libraries/**.properties"
|
- "!libraries/**.properties"
|
||||||
- "!libraries/**.py"
|
- "!libraries/**.py"
|
||||||
- "package/**"
|
- "package/**"
|
||||||
|
- "idf_component_examples/**"
|
||||||
- "tools/**.py"
|
- "tools/**.py"
|
||||||
- "platform.txt"
|
- "platform.txt"
|
||||||
- "programmers.txt"
|
- "programmers.txt"
|
||||||
|
|
@ -45,7 +46,6 @@ on:
|
||||||
- "!.github/scripts/tests_*"
|
- "!.github/scripts/tests_*"
|
||||||
- "!.github/scripts/upload_*"
|
- "!.github/scripts/upload_*"
|
||||||
- "variants/esp32/**/*"
|
- "variants/esp32/**/*"
|
||||||
- "variants/esp32c2/**/*"
|
|
||||||
- "variants/esp32c3/**/*"
|
- "variants/esp32c3/**/*"
|
||||||
- "variants/esp32c6/**/*"
|
- "variants/esp32c6/**/*"
|
||||||
- "variants/esp32h2/**/*"
|
- "variants/esp32h2/**/*"
|
||||||
|
|
@ -124,7 +124,7 @@ jobs:
|
||||||
- 'idf_component.yml'
|
- 'idf_component.yml'
|
||||||
- 'Kconfig.projbuild'
|
- 'Kconfig.projbuild'
|
||||||
- 'CMakeLists.txt'
|
- 'CMakeLists.txt'
|
||||||
- "variants/esp32c2/**/*"
|
- "idf_component_examples/**"
|
||||||
|
|
||||||
- name: Set chunks
|
- name: Set chunks
|
||||||
id: set-chunks
|
id: set-chunks
|
||||||
|
|
@ -267,15 +267,23 @@ jobs:
|
||||||
submodules: recursive
|
submodules: recursive
|
||||||
path: components/arduino-esp32
|
path: components/arduino-esp32
|
||||||
|
|
||||||
|
- name: Setup jq
|
||||||
|
uses: dcarbone/install-jq-action@e397bd87438d72198f81efd21f876461183d383a # v3.0.1
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
env:
|
env:
|
||||||
IDF_TARGET: ${{ matrix.idf_target }}
|
IDF_TARGET: ${{ matrix.idf_target }}
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
. ${IDF_PATH}/export.sh
|
chmod a+x ./components/arduino-esp32/.github/scripts/*
|
||||||
idf.py create-project test
|
./components/arduino-esp32/.github/scripts/on-push-idf.sh
|
||||||
echo CONFIG_FREERTOS_HZ=1000 > test/sdkconfig.defaults
|
|
||||||
idf.py -C test -DEXTRA_COMPONENT_DIRS=$PWD/components build
|
- name: Upload generated sdkconfig files for debugging
|
||||||
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
||||||
|
if: always()
|
||||||
|
with:
|
||||||
|
name: sdkconfig-${{ matrix.idf_target }}
|
||||||
|
path: ./components/arduino-esp32/idf_component_examples/**/sdkconfig
|
||||||
|
|
||||||
# Save artifacts to gh-pages
|
# Save artifacts to gh-pages
|
||||||
save-master-artifacts:
|
save-master-artifacts:
|
||||||
|
|
|
||||||
4
idf_component_examples/.gitignore
vendored
Normal file
4
idf_component_examples/.gitignore
vendored
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
build/
|
||||||
|
managed_components/
|
||||||
|
dependencies.lock
|
||||||
|
sdkconfig
|
||||||
|
|
@ -8,6 +8,7 @@ set(PROJECT_VER_NUMBER 1)
|
||||||
# This should be done before using the IDF_TARGET variable.
|
# This should be done before using the IDF_TARGET variable.
|
||||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
|
|
||||||
|
idf_build_set_property(MINIMAL_BUILD ON)
|
||||||
project(arduino_managed_component_light)
|
project(arduino_managed_component_light)
|
||||||
|
|
||||||
# WARNING: This is just an example for using key for decrypting the encrypted OTA image
|
# WARNING: This is just an example for using key for decrypting the encrypted OTA image
|
||||||
|
|
@ -20,7 +21,7 @@ if(CONFIG_IDF_TARGET_ESP32C2)
|
||||||
include(relinker)
|
include(relinker)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
idf_build_set_property(CXX_COMPILE_OPTIONS "-std=gnu++17;-Os;-DCHIP_HAVE_CONFIG_H" APPEND)
|
idf_build_set_property(CXX_COMPILE_OPTIONS "-std=gnu++2a;-Os;-DCHIP_HAVE_CONFIG_H" APPEND)
|
||||||
idf_build_set_property(C_COMPILE_OPTIONS "-Os" APPEND)
|
idf_build_set_property(C_COMPILE_OPTIONS "-Os" APPEND)
|
||||||
# For RISCV chips, project_include.cmake sets -Wno-format, but does not clear various
|
# For RISCV chips, project_include.cmake sets -Wno-format, but does not clear various
|
||||||
# flags that depend on -Wformat
|
# flags that depend on -Wformat
|
||||||
|
|
|
||||||
|
|
@ -59,15 +59,22 @@ Use ESP-IDF 5.1.4 from https://github.com/espressif/esp-idf/tree/release/v5.1
|
||||||
This example has been tested with Arduino Core 3.0.4
|
This example has been tested with Arduino Core 3.0.4
|
||||||
|
|
||||||
The project will download all necessary components, including the Arduino Core.
|
The project will download all necessary components, including the Arduino Core.
|
||||||
Run `idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults.<SOC>.idf" -p <PORT> flash monitor`
|
Execute this sequence:
|
||||||
|
`<remove build folder> using linux rm command or Windows rmdir command`
|
||||||
|
`idf.py set-target <SoC_Target>`
|
||||||
|
`idf.py -D SDKCONFIG_DEFAULTS="sdkconfig_file1;sdkconfig_file2;sdkconfig_fileX" -p <PORT> flash monitor`
|
||||||
|
|
||||||
Example for ESP32-S3/Linux | macOS:
|
Example for ESP32-S3/Linux | macOS:
|
||||||
```
|
```
|
||||||
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults.esp32s3" -p /dev/ttyACM0 flash monitor
|
rm -rf build
|
||||||
|
idf.py set-target esp32s3
|
||||||
|
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults" -p /dev/ttyACM0 flash monitor
|
||||||
```
|
```
|
||||||
Example for ESP32-C3/Windows:
|
Example for ESP32-C3/Windows:
|
||||||
```
|
```
|
||||||
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults.esp32c3" -p com3 flash monitor
|
rmdir /s/q build
|
||||||
|
idf.py set-target esp32c3
|
||||||
|
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults" -p com3 flash monitor
|
||||||
```
|
```
|
||||||
|
|
||||||
It may be necessary to delete some folders and files before running `idf.py`
|
It may be necessary to delete some folders and files before running `idf.py`
|
||||||
|
|
@ -95,11 +102,15 @@ In order to build the application that will use Thread Networking instead of Wi-
|
||||||
|
|
||||||
Example for ESP32-C6/Linux | macOS:
|
Example for ESP32-C6/Linux | macOS:
|
||||||
```
|
```
|
||||||
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults.c6_thread" -p /dev/ttyACM0 flash monitor
|
rm -rf build
|
||||||
|
idf.py set-target esp32c6
|
||||||
|
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.c6_thread" -p /dev/ttyACM0 flash monitor
|
||||||
```
|
```
|
||||||
Example for ESP32-C6/Windows:
|
Example for ESP32-C6/Windows:
|
||||||
```
|
```
|
||||||
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults.c6_thread" -p com3 flash monitor
|
rmdir /s/q build
|
||||||
|
idf.py set-targt esp32c6
|
||||||
|
idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.c6_thread" -p com3 flash monitor
|
||||||
```
|
```
|
||||||
|
|
||||||
It may be necessary to delete some folders and files before running `idf.py`
|
It may be necessary to delete some folders and files before running `idf.py`
|
||||||
|
|
|
||||||
11
idf_component_examples/esp_matter_light/ci.json
Normal file
11
idf_component_examples/esp_matter_light/ci.json
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"targets": {
|
||||||
|
"esp32c2": false,
|
||||||
|
"esp32s2": false
|
||||||
|
},
|
||||||
|
"requires": [
|
||||||
|
"CONFIG_SOC_WIFI_SUPPORTED=y",
|
||||||
|
"CONFIG_ESP_MATTER_ENABLE_DATA_MODEL=y",
|
||||||
|
"CONFIG_MBEDTLS_HKDF_C=y"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -3,100 +3,40 @@ menu "Light Matter Accessory"
|
||||||
config BUTTON_PIN
|
config BUTTON_PIN
|
||||||
int
|
int
|
||||||
prompt "Button 1 GPIO"
|
prompt "Button 1 GPIO"
|
||||||
default ENV_GPIO_BOOT_BUTTON
|
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
|
||||||
|
default 0
|
||||||
range -1 ENV_GPIO_IN_RANGE_MAX
|
range -1 ENV_GPIO_IN_RANGE_MAX
|
||||||
help
|
help
|
||||||
The GPIO pin for button that will be used to turn on/off the Matter Light. It shall be connected to a push button. It can use the BOOT button of the development board.
|
The GPIO pin for button that will be used to turn on/off the Matter Light. It shall be connected to a push button. It can use the BOOT button of the development board.
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
|
|
||||||
menu "LEDs"
|
menu "LEDs"
|
||||||
config WS2812_PIN
|
config WS2812_PIN
|
||||||
int
|
int
|
||||||
prompt "WS2812 RGB LED GPIO"
|
prompt "WS2812 RGB LED GPIO"
|
||||||
default ENV_GPIO_RGB_LED
|
default 8 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
|
||||||
|
default 48
|
||||||
range -1 ENV_GPIO_OUT_RANGE_MAX
|
range -1 ENV_GPIO_OUT_RANGE_MAX
|
||||||
help
|
help
|
||||||
The GPIO pin for the Matter Light that will be driven by RMT. It shall be connected to one single WS2812 RGB LED.
|
The GPIO pin for the Matter Light that will be driven by RMT. It shall be connected to one single WS2812 RGB LED.
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
# TARGET CONFIGURATION
|
config ENV_GPIO_RANGE_MIN
|
||||||
if IDF_TARGET_ESP32C3
|
int
|
||||||
config ENV_GPIO_RANGE_MIN
|
default 0
|
||||||
int
|
|
||||||
default 0
|
|
||||||
|
|
||||||
config ENV_GPIO_RANGE_MAX
|
config ENV_GPIO_RANGE_MAX
|
||||||
int
|
int
|
||||||
default 19
|
default 19 if IDF_TARGET_ESP32C3
|
||||||
# GPIOs 20/21 are always used by UART in examples
|
default 30 if IDF_TARGET_ESP32C6
|
||||||
|
default 48
|
||||||
|
|
||||||
config ENV_GPIO_IN_RANGE_MAX
|
config ENV_GPIO_IN_RANGE_MAX
|
||||||
int
|
int
|
||||||
default ENV_GPIO_RANGE_MAX
|
default ENV_GPIO_RANGE_MAX
|
||||||
|
|
||||||
config ENV_GPIO_OUT_RANGE_MAX
|
config ENV_GPIO_OUT_RANGE_MAX
|
||||||
int
|
int
|
||||||
default ENV_GPIO_RANGE_MAX
|
default ENV_GPIO_RANGE_MAX
|
||||||
|
|
||||||
config ENV_GPIO_BOOT_BUTTON
|
|
||||||
int
|
|
||||||
default 9
|
|
||||||
|
|
||||||
config ENV_GPIO_RGB_LED
|
|
||||||
int
|
|
||||||
default 8
|
|
||||||
endif
|
|
||||||
if IDF_TARGET_ESP32C6
|
|
||||||
config ENV_GPIO_RANGE_MIN
|
|
||||||
int
|
|
||||||
default 0
|
|
||||||
|
|
||||||
config ENV_GPIO_RANGE_MAX
|
|
||||||
int
|
|
||||||
default 30
|
|
||||||
# GPIOs 16/17 are always used by UART in examples
|
|
||||||
|
|
||||||
config ENV_GPIO_IN_RANGE_MAX
|
|
||||||
int
|
|
||||||
default ENV_GPIO_RANGE_MAX
|
|
||||||
|
|
||||||
config ENV_GPIO_OUT_RANGE_MAX
|
|
||||||
int
|
|
||||||
default ENV_GPIO_RANGE_MAX
|
|
||||||
|
|
||||||
config ENV_GPIO_BOOT_BUTTON
|
|
||||||
int
|
|
||||||
default 9
|
|
||||||
|
|
||||||
config ENV_GPIO_RGB_LED
|
|
||||||
int
|
|
||||||
default 8
|
|
||||||
endif
|
|
||||||
if IDF_TARGET_ESP32S3
|
|
||||||
config ENV_GPIO_RANGE_MIN
|
|
||||||
int
|
|
||||||
default 0
|
|
||||||
|
|
||||||
config ENV_GPIO_RANGE_MAX
|
|
||||||
int
|
|
||||||
default 48
|
|
||||||
|
|
||||||
config ENV_GPIO_IN_RANGE_MAX
|
|
||||||
int
|
|
||||||
default ENV_GPIO_RANGE_MAX
|
|
||||||
|
|
||||||
config ENV_GPIO_OUT_RANGE_MAX
|
|
||||||
int
|
|
||||||
default ENV_GPIO_RANGE_MAX
|
|
||||||
|
|
||||||
config ENV_GPIO_BOOT_BUTTON
|
|
||||||
int
|
|
||||||
default 0
|
|
||||||
|
|
||||||
config ENV_GPIO_RGB_LED
|
|
||||||
int
|
|
||||||
default 48
|
|
||||||
endif
|
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
espressif/esp_matter:
|
espressif/esp_matter:
|
||||||
version: "^1.3.0"
|
version: ">=1.3.0"
|
||||||
# Adds Arduino Core from GitHub repository using main branch
|
# Adds Arduino Core from GitHub repository using main branch
|
||||||
espressif/arduino-esp32:
|
espressif/arduino-esp32:
|
||||||
version: "^3.0.5"
|
version: ">=3.0.5"
|
||||||
override_path: "../../../"
|
override_path: "../../../"
|
||||||
pre_release: true
|
pre_release: true
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
CONFIG_IDF_TARGET="esp32c3"
|
|
||||||
|
|
||||||
# Arduino Settings
|
# Arduino Settings
|
||||||
CONFIG_FREERTOS_HZ=1000
|
CONFIG_FREERTOS_HZ=1000
|
||||||
CONFIG_AUTOSTART_ARDUINO=y
|
CONFIG_AUTOSTART_ARDUINO=y
|
||||||
|
|
@ -1,68 +1,5 @@
|
||||||
CONFIG_IDF_TARGET="esp32c6"
|
CONFIG_IDF_TARGET="esp32c6"
|
||||||
|
|
||||||
# Arduino Settings
|
|
||||||
CONFIG_FREERTOS_HZ=1000
|
|
||||||
CONFIG_AUTOSTART_ARDUINO=y
|
|
||||||
|
|
||||||
# Log Levels
|
|
||||||
# Boot Messages - Log level
|
|
||||||
CONFIG_BOOTLOADER_LOG_LEVEL_ERROR=y
|
|
||||||
# Arduino Log Level
|
|
||||||
CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_INFO=y
|
|
||||||
# IDF Log Level
|
|
||||||
CONFIG_LOG_DEFAULT_LEVEL_ERROR=y
|
|
||||||
|
|
||||||
# Default to 921600 baud when flashing and monitoring device
|
|
||||||
CONFIG_ESPTOOLPY_BAUD_921600B=y
|
|
||||||
CONFIG_ESPTOOLPY_BAUD=921600
|
|
||||||
CONFIG_ESPTOOLPY_COMPRESSED=y
|
|
||||||
CONFIG_ESPTOOLPY_MONITOR_BAUD_115200B=y
|
|
||||||
CONFIG_ESPTOOLPY_MONITOR_BAUD=115200
|
|
||||||
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
|
|
||||||
|
|
||||||
#enable BT
|
|
||||||
CONFIG_BT_ENABLED=y
|
|
||||||
CONFIG_BT_NIMBLE_ENABLED=y
|
|
||||||
|
|
||||||
#disable BT connection reattempt
|
|
||||||
CONFIG_BT_NIMBLE_ENABLE_CONN_REATTEMPT=n
|
|
||||||
|
|
||||||
#enable lwip ipv6 autoconfig
|
|
||||||
CONFIG_LWIP_IPV6_AUTOCONFIG=y
|
|
||||||
|
|
||||||
# Use a custom partition table
|
|
||||||
CONFIG_PARTITION_TABLE_CUSTOM=y
|
|
||||||
CONFIG_PARTITION_TABLE_FILENAME="partitions.csv"
|
|
||||||
CONFIG_PARTITION_TABLE_OFFSET=0xC000
|
|
||||||
|
|
||||||
# Disable chip shell
|
|
||||||
CONFIG_ENABLE_CHIP_SHELL=n
|
|
||||||
|
|
||||||
# Enable OTA Requester
|
|
||||||
CONFIG_ENABLE_OTA_REQUESTOR=n
|
|
||||||
|
|
||||||
#enable lwIP route hooks
|
|
||||||
CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT=y
|
|
||||||
CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
|
|
||||||
|
|
||||||
# disable softap by default
|
|
||||||
CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
|
|
||||||
CONFIG_ENABLE_WIFI_STATION=y
|
|
||||||
CONFIG_ENABLE_WIFI_AP=n
|
|
||||||
|
|
||||||
# Disable DS Peripheral
|
|
||||||
CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL=n
|
|
||||||
|
|
||||||
# Use compact attribute storage mode
|
|
||||||
CONFIG_ESP_MATTER_NVS_USE_COMPACT_ATTR_STORAGE=y
|
|
||||||
|
|
||||||
# Enable HKDF in mbedtls
|
|
||||||
CONFIG_MBEDTLS_HKDF_C=y
|
|
||||||
|
|
||||||
# Increase LwIP IPv6 address number to 6 (MAX_FABRIC + 1)
|
|
||||||
# unique local addresses for fabrics(MAX_FABRIC), a link local address(1)
|
|
||||||
CONFIG_LWIP_IPV6_NUM_ADDRESSES=6
|
|
||||||
|
|
||||||
# libsodium
|
# libsodium
|
||||||
CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y
|
CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
CONFIG_IDF_TARGET="esp32s3"
|
|
||||||
|
|
||||||
# Arduino Settings
|
|
||||||
CONFIG_FREERTOS_HZ=1000
|
|
||||||
CONFIG_AUTOSTART_ARDUINO=y
|
|
||||||
|
|
||||||
# Log Levels
|
|
||||||
# Boot Messages - Log level
|
|
||||||
CONFIG_BOOTLOADER_LOG_LEVEL_ERROR=y
|
|
||||||
# Arduino Log Level
|
|
||||||
CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_INFO=y
|
|
||||||
# IDF Log Level
|
|
||||||
CONFIG_LOG_DEFAULT_LEVEL_ERROR=y
|
|
||||||
|
|
||||||
# Default to 921600 baud when flashing and monitoring device
|
|
||||||
CONFIG_ESPTOOLPY_BAUD_921600B=y
|
|
||||||
CONFIG_ESPTOOLPY_BAUD=921600
|
|
||||||
CONFIG_ESPTOOLPY_COMPRESSED=y
|
|
||||||
CONFIG_ESPTOOLPY_MONITOR_BAUD_115200B=y
|
|
||||||
CONFIG_ESPTOOLPY_MONITOR_BAUD=115200
|
|
||||||
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
|
|
||||||
|
|
||||||
#enable BT
|
|
||||||
CONFIG_BT_ENABLED=y
|
|
||||||
CONFIG_BT_NIMBLE_ENABLED=y
|
|
||||||
|
|
||||||
#disable BT connection reattempt
|
|
||||||
CONFIG_BT_NIMBLE_ENABLE_CONN_REATTEMPT=n
|
|
||||||
|
|
||||||
#enable lwip ipv6 autoconfig
|
|
||||||
CONFIG_LWIP_IPV6_AUTOCONFIG=y
|
|
||||||
|
|
||||||
# Use a custom partition table
|
|
||||||
CONFIG_PARTITION_TABLE_CUSTOM=y
|
|
||||||
CONFIG_PARTITION_TABLE_FILENAME="partitions.csv"
|
|
||||||
CONFIG_PARTITION_TABLE_OFFSET=0xC000
|
|
||||||
|
|
||||||
# Disable chip shell
|
|
||||||
CONFIG_ENABLE_CHIP_SHELL=n
|
|
||||||
|
|
||||||
# Enable OTA Requester
|
|
||||||
CONFIG_ENABLE_OTA_REQUESTOR=n
|
|
||||||
|
|
||||||
#enable lwIP route hooks
|
|
||||||
CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT=y
|
|
||||||
CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT=y
|
|
||||||
|
|
||||||
# disable softap by default
|
|
||||||
CONFIG_ESP_WIFI_SOFTAP_SUPPORT=n
|
|
||||||
CONFIG_ENABLE_WIFI_STATION=y
|
|
||||||
CONFIG_ENABLE_WIFI_AP=n
|
|
||||||
|
|
||||||
# Disable DS Peripheral
|
|
||||||
CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL=n
|
|
||||||
|
|
||||||
# Use compact attribute storage mode
|
|
||||||
CONFIG_ESP_MATTER_NVS_USE_COMPACT_ATTR_STORAGE=y
|
|
||||||
|
|
||||||
# Enable HKDF in mbedtls
|
|
||||||
CONFIG_MBEDTLS_HKDF_C=y
|
|
||||||
|
|
||||||
# Increase LwIP IPv6 address number to 6 (MAX_FABRIC + 1)
|
|
||||||
# unique local addresses for fabrics(MAX_FABRIC), a link local address(1)
|
|
||||||
CONFIG_LWIP_IPV6_NUM_ADDRESSES=6
|
|
||||||
|
|
@ -5,4 +5,6 @@
|
||||||
cmake_minimum_required(VERSION 3.16)
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
|
|
||||||
|
idf_build_set_property(MINIMAL_BUILD ON)
|
||||||
project(main)
|
project(main)
|
||||||
|
|
|
||||||
|
|
@ -9,4 +9,5 @@ include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
list(APPEND compile_definitions "ARDUINO_USB_CDC_ON_BOOT=1")
|
list(APPEND compile_definitions "ARDUINO_USB_CDC_ON_BOOT=1")
|
||||||
list(APPEND compile_definitions "ARDUINO_USB_MODE=1")
|
list(APPEND compile_definitions "ARDUINO_USB_MODE=1")
|
||||||
|
|
||||||
|
idf_build_set_property(MINIMAL_BUILD ON)
|
||||||
project(hw_cdc_hello_world)
|
project(hw_cdc_hello_world)
|
||||||
|
|
|
||||||
5
idf_component_examples/hw_cdc_hello_world/ci.json
Normal file
5
idf_component_examples/hw_cdc_hello_world/ci.json
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"requires": [
|
||||||
|
"CONFIG_SOC_USB_SERIAL_JTAG_SUPPORTED=y"
|
||||||
|
]
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue