diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 18e14a5c5..5751c0cdb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -126,6 +126,14 @@ variables: - idf.py build - cp sdkconfig.defaults.backup sdkconfig.defaults +.build_esp32c6_thread_example: &build_esp32c6_thread_example + - cd $ESP_MATTER_PATH/examples/light + - cp sdkconfig.defaults.esp32c6 sdkconfig.defaults.c6_backup + - cp sdkconfig.defaults.c6_thread sdkconfig.defaults.esp32c6 + - idf.py set-target esp32c6 + - idf.py build + - cp sdkconfig.defaults.c6_backup sdkconfig.defaults.esp32c6 + .build_examples_template: stage: build image: gitlab.espressif.cn:5050/app-frameworks/esp-matter/build-env:latest @@ -225,6 +233,7 @@ build_esp_matter_examples_non_pytest_idf_v5_1: IDF_VERSION: "6b1f40b9bfb91ec82fab4a60e5bfb4ca0c9b062f" script: - *build_external_platform_example + - *build_esp32c6_thread_example # mfg_test_app needs an secure boot signing key, generating one here - cd ${ESP_MATTER_PATH}/examples/mfg_test_app diff --git a/examples/generic_switch/sdkconfig.defaults.esp32c6 b/examples/generic_switch/sdkconfig.defaults.esp32c6 index 97cd0133a..c10ac5328 100644 --- a/examples/generic_switch/sdkconfig.defaults.esp32c6 +++ b/examples/generic_switch/sdkconfig.defaults.esp32c6 @@ -13,14 +13,6 @@ CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING=n # FreeRTOS should use legacy API CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y -# Enable OpenThread -CONFIG_OPENTHREAD_ENABLED=y -CONFIG_OPENTHREAD_SRP_CLIENT=y -CONFIG_OPENTHREAD_DNS_CLIENT=y -CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC=n -CONFIG_OPENTHREAD_LOG_LEVEL_NOTE=y -CONFIG_OPENTHREAD_CLI=n - # Disable lwip ipv6 autoconfig CONFIG_LWIP_IPV6_AUTOCONFIG=n @@ -28,19 +20,15 @@ CONFIG_LWIP_IPV6_AUTOCONFIG=n CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" -# LwIP config for OpenThread -CONFIG_LWIP_IPV6_NUM_ADDRESSES=8 -CONFIG_LWIP_MULTICAST_PING=y - -# MDNS platform -CONFIG_USE_MINIMAL_MDNS=n +# Use minimal mDNS +CONFIG_USE_MINIMAL_MDNS=y CONFIG_ENABLE_EXTENDED_DISCOVERY=y # Enable OTA Requestor CONFIG_ENABLE_OTA_REQUESTOR=y -# Disable STA and AP for ESP32C6 -CONFIG_ENABLE_WIFI_STATION=n +# Disable AP +CONFIG_ENABLE_WIFI_STATION=y CONFIG_ENABLE_WIFI_AP=n # Button diff --git a/examples/light/sdkconfig.defaults.c6_thread b/examples/light/sdkconfig.defaults.c6_thread new file mode 100644 index 000000000..0c65765db --- /dev/null +++ b/examples/light/sdkconfig.defaults.c6_thread @@ -0,0 +1,51 @@ +CONFIG_IDF_TARGET="esp32c6" + +# libsodium +CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y + +# NIMBLE +CONFIG_BT_ENABLED=y +CONFIG_BT_NIMBLE_ENABLED=y +CONFIG_BT_NIMBLE_EXT_ADV=n +CONFIG_BT_NIMBLE_HCI_EVT_BUF_SIZE=70 +CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING=n + +# FreeRTOS should use legacy API +CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y + +# Enable OpenThread +CONFIG_OPENTHREAD_ENABLED=y +CONFIG_OPENTHREAD_SRP_CLIENT=y +CONFIG_OPENTHREAD_DNS_CLIENT=y +CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC=n +CONFIG_OPENTHREAD_LOG_LEVEL_NOTE=y +CONFIG_OPENTHREAD_CLI=n + +# Disable lwip ipv6 autoconfig +CONFIG_LWIP_IPV6_AUTOCONFIG=n + +# Use a custom partition table +CONFIG_PARTITION_TABLE_CUSTOM=y +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" + +# LwIP config for OpenThread +CONFIG_LWIP_IPV6_NUM_ADDRESSES=8 +CONFIG_LWIP_MULTICAST_PING=y + +# MDNS platform +CONFIG_USE_MINIMAL_MDNS=n +CONFIG_ENABLE_EXTENDED_DISCOVERY=y + +# Enable OTA Requestor +CONFIG_ENABLE_OTA_REQUESTOR=y + +# Disable STA and AP for ESP32C6 +CONFIG_ENABLE_WIFI_STATION=n +CONFIG_ENABLE_WIFI_AP=n + +# Button +CONFIG_BUTTON_PERIOD_TIME_MS=20 +CONFIG_BUTTON_LONG_PRESS_TIME_MS=5000 + +# Enable chip shell +CONFIG_ENABLE_CHIP_SHELL=y diff --git a/examples/light_switch/sdkconfig.defaults.esp32c6 b/examples/light_switch/sdkconfig.defaults.esp32c6 index 0c65765db..c10ac5328 100644 --- a/examples/light_switch/sdkconfig.defaults.esp32c6 +++ b/examples/light_switch/sdkconfig.defaults.esp32c6 @@ -13,14 +13,6 @@ CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING=n # FreeRTOS should use legacy API CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y -# Enable OpenThread -CONFIG_OPENTHREAD_ENABLED=y -CONFIG_OPENTHREAD_SRP_CLIENT=y -CONFIG_OPENTHREAD_DNS_CLIENT=y -CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC=n -CONFIG_OPENTHREAD_LOG_LEVEL_NOTE=y -CONFIG_OPENTHREAD_CLI=n - # Disable lwip ipv6 autoconfig CONFIG_LWIP_IPV6_AUTOCONFIG=n @@ -28,19 +20,15 @@ CONFIG_LWIP_IPV6_AUTOCONFIG=n CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" -# LwIP config for OpenThread -CONFIG_LWIP_IPV6_NUM_ADDRESSES=8 -CONFIG_LWIP_MULTICAST_PING=y - -# MDNS platform -CONFIG_USE_MINIMAL_MDNS=n +# Use minimal mDNS +CONFIG_USE_MINIMAL_MDNS=y CONFIG_ENABLE_EXTENDED_DISCOVERY=y # Enable OTA Requestor CONFIG_ENABLE_OTA_REQUESTOR=y -# Disable STA and AP for ESP32C6 -CONFIG_ENABLE_WIFI_STATION=n +# Disable AP +CONFIG_ENABLE_WIFI_STATION=y CONFIG_ENABLE_WIFI_AP=n # Button @@ -49,3 +37,4 @@ CONFIG_BUTTON_LONG_PRESS_TIME_MS=5000 # Enable chip shell CONFIG_ENABLE_CHIP_SHELL=y + diff --git a/examples/refrigerator/sdkconfig.defaults.esp32c6 b/examples/refrigerator/sdkconfig.defaults.esp32c6 index b31792812..c10ac5328 100644 --- a/examples/refrigerator/sdkconfig.defaults.esp32c6 +++ b/examples/refrigerator/sdkconfig.defaults.esp32c6 @@ -1,14 +1,5 @@ CONFIG_IDF_TARGET="esp32c6" -# Default to 921600 baud when flashing and monitoring device -CONFIG_ESPTOOLPY_BAUD_921600B=y -CONFIG_ESPTOOLPY_BAUD=921600 -CONFIG_ESPTOOLPY_COMPRESSED=y -CONFIG_ESPTOOLPY_FLASHFREQ_40M=y -CONFIG_ESPTOOLPY_FLASHFREQ="40m" -CONFIG_ESPTOOLPY_MONITOR_BAUD_115200B=y -CONFIG_ESPTOOLPY_MONITOR_BAUD=115200 - # libsodium CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y @@ -22,14 +13,6 @@ CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING=n # FreeRTOS should use legacy API CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y -# Enable OpenThread -CONFIG_OPENTHREAD_ENABLED=y -CONFIG_OPENTHREAD_SRP_CLIENT=y -CONFIG_OPENTHREAD_DNS_CLIENT=y -CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC=n -CONFIG_OPENTHREAD_LOG_LEVEL_NOTE=y -CONFIG_OPENTHREAD_CLI=n - # Disable lwip ipv6 autoconfig CONFIG_LWIP_IPV6_AUTOCONFIG=n @@ -37,30 +20,15 @@ CONFIG_LWIP_IPV6_AUTOCONFIG=n CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" -# LwIP config for OpenThread -CONFIG_LWIP_IPV6_NUM_ADDRESSES=8 -CONFIG_LWIP_MULTICAST_PING=y - -# mbedTLS -CONFIG_MBEDTLS_HARDWARE_AES=n -CONFIG_MBEDTLS_HARDWARE_MPI=n -CONFIG_MBEDTLS_HARDWARE_SHA=n -CONFIG_MBEDTLS_HARDWARE_ECC=y -CONFIG_MBEDTLS_ATCA_HW_ECDSA_SIGN=n -CONFIG_MBEDTLS_ATCA_HW_ECDSA_VERIFY=n -CONFIG_MBEDTLS_CMAC_C=y -CONFIG_MBEDTLS_SSL_PROTO_DTLS=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ECJPAKE=y - -# MDNS platform -CONFIG_USE_MINIMAL_MDNS=n +# Use minimal mDNS +CONFIG_USE_MINIMAL_MDNS=y CONFIG_ENABLE_EXTENDED_DISCOVERY=y # Enable OTA Requestor CONFIG_ENABLE_OTA_REQUESTOR=y -# Disable STA and AP for ESP32C6 -CONFIG_ENABLE_WIFI_STATION=n +# Disable AP +CONFIG_ENABLE_WIFI_STATION=y CONFIG_ENABLE_WIFI_AP=n # Button