esp32h4: removed esp32h4 related codes

This commit is contained in:
laokaiyao 2023-04-13 14:32:25 +08:00
parent cae47ce37e
commit 954a6a2cff
110 changed files with 180 additions and 1982 deletions

24
Kconfig
View File

@ -66,28 +66,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
select FREERTOS_UNICORE select FREERTOS_UNICORE
select IDF_TARGET_ARCH_RISCV select IDF_TARGET_ARCH_RISCV
config IDF_TARGET_ESP32H4
bool
default "y" if IDF_TARGET="esp32h4"
select FREERTOS_UNICORE
select IDF_TARGET_ARCH_RISCV
choice IDF_TARGET_ESP32H4_BETA_VERSION
prompt "ESP32-H4 beta version"
depends on IDF_TARGET_ESP32H4
default IDF_TARGET_ESP32H4_BETA_VERSION_2
help
Currently ESP32-H4 has several beta versions for internal use only.
Select the one that matches your chip model.
config IDF_TARGET_ESP32H4_BETA_VERSION_1
bool
prompt "ESP32-H4 beta1"
config IDF_TARGET_ESP32H4_BETA_VERSION_2
bool
prompt "ESP32-H4 beta2"
endchoice
config IDF_TARGET_ESP32C2 config IDF_TARGET_ESP32C2
bool bool
default "y" if IDF_TARGET="esp32c2" default "y" if IDF_TARGET="esp32c2"
@ -116,10 +94,8 @@ mainmenu "Espressif IoT Development Framework Configuration"
default 0x0002 if IDF_TARGET_ESP32S2 default 0x0002 if IDF_TARGET_ESP32S2
default 0x0005 if IDF_TARGET_ESP32C3 default 0x0005 if IDF_TARGET_ESP32C3
default 0x0009 if IDF_TARGET_ESP32S3 default 0x0009 if IDF_TARGET_ESP32S3
default 0x000A if IDF_TARGET_ESP32H4_BETA_VERSION_1
default 0x000C if IDF_TARGET_ESP32C2 default 0x000C if IDF_TARGET_ESP32C2
default 0x000D if IDF_TARGET_ESP32C6 default 0x000D if IDF_TARGET_ESP32C6
default 0x000E if IDF_TARGET_ESP32H4_BETA_VERSION_2 # ESP32-TODO: IDF-3475
default 0x0010 if IDF_TARGET_ESP32H2 default 0x0010 if IDF_TARGET_ESP32H2
default 0xFFFF default 0xFFFF

View File

@ -37,8 +37,6 @@
#include "esp32c3/rom/secure_boot.h" #include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/secure_boot.h" #include "esp32s3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/secure_boot.h" #include "esp32c2/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -334,7 +334,7 @@ typedef enum {
/** /**
* @brief Revokes the old signature digest. To be called in the application after the rollback logic. * @brief Revokes the old signature digest. To be called in the application after the rollback logic.
* *
* Relevant for Secure boot v2 on ESP32-S2, ESP32-S3, ESP32-C3, ESP32-H4 where upto 3 key digests can be stored (Key \#N-1, Key \#N, Key \#N+1). * Relevant for Secure boot v2 on ESP32-S2, ESP32-S3, ESP32-C3 where upto 3 key digests can be stored (Key \#N-1, Key \#N, Key \#N+1).
* When key \#N-1 used to sign an app is invalidated, an OTA update is to be sent with an app signed with key \#N-1 & Key \#N. * When key \#N-1 used to sign an app is invalidated, an OTA update is to be sent with an app signed with key \#N-1 & Key \#N.
* After successfully booting the OTA app should call this function to revoke Key \#N-1. * After successfully booting the OTA app should call this function to revoke Key \#N-1.
* *

View File

@ -17,12 +17,6 @@ typedef enum {
ESP_CHIP_ID_ESP32S2 = 0x0002, /*!< chip ID: ESP32-S2 */ ESP_CHIP_ID_ESP32S2 = 0x0002, /*!< chip ID: ESP32-S2 */
ESP_CHIP_ID_ESP32C3 = 0x0005, /*!< chip ID: ESP32-C3 */ ESP_CHIP_ID_ESP32C3 = 0x0005, /*!< chip ID: ESP32-C3 */
ESP_CHIP_ID_ESP32S3 = 0x0009, /*!< chip ID: ESP32-S3 */ ESP_CHIP_ID_ESP32S3 = 0x0009, /*!< chip ID: ESP32-S3 */
ESP_CHIP_ID_ESP32C2 = 0x000C, /*!< chip ID: ESP32-C2 */
#if CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2
ESP_CHIP_ID_ESP32H4 = 0x000E, /*!< chip ID: ESP32-H4 Beta2*/ // ESP32H4-TODO: IDF-3475
#elif CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_1
ESP_CHIP_ID_ESP32H4 = 0x000A, /*!< chip ID: ESP32-H4 Beta1 */
#endif
ESP_CHIP_ID_ESP32C6 = 0x000D, /*!< chip ID: ESP32-C6 */ ESP_CHIP_ID_ESP32C6 = 0x000D, /*!< chip ID: ESP32-C6 */
ESP_CHIP_ID_INVALID = 0xFFFF /*!< Invalid chip ID (we defined it to make sure the esp_chip_id_t is 2 bytes size) */ ESP_CHIP_ID_INVALID = 0xFFFF /*!< Invalid chip ID (we defined it to make sure the esp_chip_id_t is 2 bytes size) */
} __attribute__((packed)) esp_chip_id_t; } __attribute__((packed)) esp_chip_id_t;

View File

@ -17,8 +17,6 @@
#include "esp32c3/rom/secure_boot.h" #include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/secure_boot.h" #include "esp32s3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/secure_boot.h" #include "esp32c2/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -27,9 +27,6 @@ int bootloader_clock_get_rated_freq_mhz(void)
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
return 160; return 160;
#elif CONFIG_IDF_TARGET_ESP32H4
return 96;
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6
return 160; return 160;

View File

@ -28,12 +28,6 @@
#include "esp32c3/rom/uart.h" #include "esp32c3/rom/uart.h"
#include "esp32c3/rom/gpio.h" #include "esp32c3/rom/gpio.h"
#include "esp32c3/rom/secure_boot.h" #include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/efuse.h"
#include "esp32h4/rom/crc.h"
#include "esp32h4/rom/uart.h"
#include "esp32h4/rom/gpio.h"
#include "esp32h4/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/efuse.h" #include "esp32c2/rom/efuse.h"
#include "esp32c2/rom/crc.h" #include "esp32c2/rom/crc.h"

View File

@ -29,8 +29,6 @@
#include "esp32s3/rom/secure_boot.h" #include "esp32s3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/secure_boot.h" #include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/rtc.h" #include "esp32c2/rom/rtc.h"
#include "esp32c2/rom/secure_boot.h" #include "esp32c2/rom/secure_boot.h"

View File

@ -13,8 +13,6 @@
#include "esp32c3/rom/secure_boot.h" #include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/secure_boot.h" #include "esp32s3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/secure_boot.h" #include "esp32c2/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -17,10 +17,6 @@ if(CONFIG_BT_ENABLED)
list(APPEND srcs "controller/esp32c3/bt.c") list(APPEND srcs "controller/esp32c3/bt.c")
list(APPEND include_dirs include/esp32c3/include) list(APPEND include_dirs include/esp32c3/include)
elseif(CONFIG_IDF_TARGET_ESP32H4)
list(APPEND srcs "controller/esp32h4/bt.c")
list(APPEND include_dirs include/esp32h4/include)
elseif(CONFIG_IDF_TARGET_ESP32C2) elseif(CONFIG_IDF_TARGET_ESP32C2)
list(APPEND srcs "controller/esp32c2/bt.c") list(APPEND srcs "controller/esp32c2/bt.c")
list(APPEND include_dirs include/esp32c2/include) list(APPEND include_dirs include/esp32c2/include)
@ -716,15 +712,6 @@ if(CONFIG_BT_ENABLED)
target_link_directories(${COMPONENT_LIB} INTERFACE target_link_directories(${COMPONENT_LIB} INTERFACE
"${CMAKE_CURRENT_LIST_DIR}/controller/lib_esp32c3_family/esp32s3") "${CMAKE_CURRENT_LIST_DIR}/controller/lib_esp32c3_family/esp32s3")
target_link_libraries(${COMPONENT_LIB} PUBLIC btdm_app) target_link_libraries(${COMPONENT_LIB} PUBLIC btdm_app)
elseif(CONFIG_IDF_TARGET_ESP32H4)
if(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_1)
# TODO: rename esp32h2 to esp32h4 [BT-2875]
add_prebuilt_library(libble_app "controller/lib_esp32h2/esp32h2-bt-lib/beta1/libble_app.a")
elseif(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2)
# TODO: rename esp32h2 to esp32h4 [BT-2875]
add_prebuilt_library(libble_app "controller/lib_esp32h2/esp32h2-bt-lib/beta2/libble_app.a")
endif()
target_link_libraries(${COMPONENT_LIB} PRIVATE libble_app)
elseif(CONFIG_IDF_TARGET_ESP32C2) elseif(CONFIG_IDF_TARGET_ESP32C2)
add_prebuilt_library(libble_app "controller/lib_esp32c2/esp32c2-bt-lib/libble_app.a") add_prebuilt_library(libble_app "controller/lib_esp32c2/esp32c2-bt-lib/libble_app.a")
target_link_libraries(${COMPONENT_LIB} PRIVATE libble_app) target_link_libraries(${COMPONENT_LIB} PRIVATE libble_app)

View File

@ -1,392 +0,0 @@
menu "HCI Config"
choice BT_LE_HCI_INTERFACE
prompt "Select HCI interface"
default BT_LE_HCI_INTERFACE_USE_RAM
config BT_LE_HCI_INTERFACE_USE_RAM
bool "ram"
help
Use RAM as HCI interface
config BT_LE_HCI_INTERFACE_USE_UART
bool "uart"
help
Use UART as HCI interface
endchoice
config BT_LE_HCI_UART_PORT
int "HCI UART port"
depends on BT_LE_HCI_INTERFACE_USE_UART
default 1
help
Set the port number of HCI UART
config BT_LE_HCI_UART_FLOWCTRL
bool "HCI uart Hardware Flow ctrl"
depends on BT_LE_HCI_INTERFACE_USE_UART
default n
config BT_LE_HCI_UART_TX_PIN
int "HCI uart Tx gpio"
depends on BT_LE_HCI_INTERFACE_USE_UART
default 19
config BT_LE_HCI_UART_RX_PIN
int "HCI uart Rx gpio"
depends on BT_LE_HCI_INTERFACE_USE_UART
default 10
config BT_LE_HCI_UART_RTS_PIN
int "HCI uart RTS gpio"
depends on BT_LE_HCI_UART_FLOWCTRL
default 4
config BT_LE_HCI_UART_CTS_PIN
int "HCI uart CTS gpio"
depends on BT_LE_HCI_UART_FLOWCTRL
default 5
config BT_LE_HCI_UART_BAUD
int "HCI uart baudrate"
depends on BT_LE_HCI_INTERFACE_USE_UART
default 921600
help
HCI uart baud rate 115200 ~ 1000000
choice BT_LE_HCI_UART_PARITY
prompt "select uart parity"
depends on BT_LE_HCI_INTERFACE_USE_UART
default BT_LE_HCI_UART_UART_PARITY_DISABLE
config BT_LE_HCI_UART_UART_PARITY_DISABLE
bool "PARITY_DISABLE"
help
UART_PARITY_DISABLE
config BT_LE_HCI_UART_UART_PARITY_EVEN
bool "PARITY_EVEN"
help
UART_PARITY_EVEN
config BT_LE_HCI_UART_UART_PARITY_ODD
bool "PARITY_ODD"
help
UART_PARITY_ODD
endchoice
config BT_LE_HCI_UART_TASK_STACK_SIZE
int "HCI uart task stack size"
depends on BT_LE_HCI_INTERFACE_USE_UART
default 1000
help
Set the size of uart task stack
endmenu
config BT_LE_CONTROLLER_NPL_OS_PORTING_SUPPORT
bool
default y
help
Enable NPL porting for controller.
menuconfig BT_LE_50_FEATURE_SUPPORT
bool "Enable BLE 5 feature"
depends on !BT_NIMBLE_ENABLED
default y
help
Enable BLE 5 feature
config BT_LE_LL_CFG_FEAT_LE_2M_PHY
bool "Enable 2M Phy"
depends on BT_LE_50_FEATURE_SUPPORT
default y
help
Enable 2M-PHY
config BT_LE_LL_CFG_FEAT_LE_CODED_PHY
bool "Enable coded Phy"
depends on BT_LE_50_FEATURE_SUPPORT
default y
help
Enable coded-PHY
config BT_LE_EXT_ADV
bool "Enable extended advertising"
depends on BT_LE_50_FEATURE_SUPPORT
default y
help
Enable this option to do extended advertising. Extended advertising
will be supported from BLE 5.0 onwards.
if BT_LE_EXT_ADV
config BT_LE_MAX_EXT_ADV_INSTANCES
int "Maximum number of extended advertising instances."
range 0 4
default 1
depends on BT_LE_EXT_ADV
help
Change this option to set maximum number of extended advertising
instances. Minimum there is always one instance of
advertising. Enter how many more advertising instances you
want.
Each extended advertising instance will take about 0.5k DRAM.
config BT_LE_EXT_ADV_MAX_SIZE
int "Maximum length of the advertising data."
range 0 1650
default 1650
depends on BT_LE_EXT_ADV
help
Defines the length of the extended adv data. The value should not
exceed 1650.
config BT_LE_ENABLE_PERIODIC_ADV
bool "Enable periodic advertisement."
default y
depends on BT_LE_EXT_ADV
help
Enable this option to start periodic advertisement.
config BT_LE_PERIODIC_ADV_SYNC_TRANSFER
bool "Enable Transer Sync Events"
depends on BT_LE_ENABLE_PERIODIC_ADV
default y
help
This enables controller transfer periodic sync events to host
endif
config BT_LE_MAX_PERIODIC_SYNCS
int "Maximum number of periodic advertising syncs"
depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
range 0 8
default 1 if BT_LE_ENABLE_PERIODIC_ADV
default 0
help
Set this option to set the upper limit for number of periodic sync
connections. This should be less than maximum connections allowed by
controller.
config BT_LE_MAX_PERIODIC_ADVERTISER_LIST
int "Maximum number of periodic advertiser list"
depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
range 1 5
default 5
help
Set this option to set the upper limit for number of periodic advertiser list.
menu "Memory Settings"
depends on !BT_NIMBLE_ENABLED
config BT_LE_MSYS_1_BLOCK_COUNT
int "MSYS_1 Block Count"
default 12
help
MSYS is a system level mbuf registry. For prepare write & prepare
responses MBUFs are allocated out of msys_1 pool. For NIMBLE_MESH
enabled cases, this block count is increased by 8 than user defined
count.
config BT_LE_MSYS_1_BLOCK_SIZE
int "MSYS_1 Block Size"
default 256
help
Dynamic memory size of block 1
config BT_LE_MSYS_2_BLOCK_COUNT
int "MSYS_2 Block Count"
default 24
help
Dynamic memory count
config BT_LE_MSYS_2_BLOCK_SIZE
int "MSYS_2 Block Size"
default 320
help
Dynamic memory size of block 2
config BT_LE_ACL_BUF_COUNT
int "ACL Buffer count"
default 10
help
The number of ACL data buffers.
config BT_LE_ACL_BUF_SIZE
int "ACL Buffer size"
default 517
help
This is the maximum size of the data portion of HCI ACL data packets.
It does not include the HCI data header (of 4 bytes)
config BT_LE_HCI_EVT_BUF_SIZE
int "HCI Event Buffer size"
default 257 if BT_LE_EXT_ADV
default 70
help
This is the size of each HCI event buffer in bytes. In case of
extended advertising, packets can be fragmented. 257 bytes is the
maximum size of a packet.
config BT_LE_HCI_EVT_HI_BUF_COUNT
int "High Priority HCI Event Buffer count"
default 30
help
This is the high priority HCI events' buffer size. High-priority
event buffers are for everything except advertising reports. If there
are no free high-priority event buffers then host will try to allocate a
low-priority buffer instead
config BT_LE_HCI_EVT_LO_BUF_COUNT
int "Low Priority HCI Event Buffer count"
default 8
help
This is the low priority HCI events' buffer size. Low-priority event
buffers are only used for advertising reports. If there are no free
low-priority event buffers, then an incoming advertising report will
get dropped
endmenu
config BT_LE_CONTROLLER_TASK_STACK_SIZE
int "Controller task stack size"
default 5120 if BLE_MESH
default 4096
help
This configures stack size of NimBLE controller task
config BT_LE_LL_RESOLV_LIST_SIZE
int "BLE LL Resolving list size"
range 1 5
default 4
help
Configure the size of resolving list used in link layer.
menuconfig BT_LE_SECURITY_ENABLE
bool "Enable BLE SM feature"
depends on !BT_NIMBLE_ENABLED
default y
help
Enable BLE sm feature
config BT_LE_SM_LEGACY
bool "Security manager legacy pairing"
depends on BT_LE_SECURITY_ENABLE
default y
help
Enable security manager legacy pairing
config BT_LE_SM_SC
bool "Security manager secure connections (4.2)"
depends on BT_LE_SECURITY_ENABLE
default y
help
Enable security manager secure connections
config BT_LE_SM_SC_DEBUG_KEYS
bool "Use predefined public-private key pair"
default n
depends on BT_LE_SECURITY_ENABLE && BT_LE_SM_SC
help
If this option is enabled, SM uses predefined DH key pair as described
in Core Specification, Vol. 3, Part H, 2.3.5.6.1. This allows to
decrypt air traffic easily and thus should only be used for debugging.
config BT_LE_LL_CFG_FEAT_LE_ENCRYPTION
bool "Enable LE encryption"
depends on BT_LE_SECURITY_ENABLE
default y
help
Enable encryption connection
config BT_LE_CRYPTO_STACK_MBEDTLS
bool "Override TinyCrypt with mbedTLS for crypto computations"
default y
depends on !BT_NIMBLE_ENABLED
select MBEDTLS_ECP_RESTARTABLE
select MBEDTLS_CMAC_C
help
Enable this option to choose mbedTLS instead of TinyCrypt for crypto
computations.
config BT_LE_WHITELIST_SIZE
int "BLE white list size"
range 1 15
default 12
depends on !BT_NIMBLE_ENABLED
help
BLE list size
config BT_LE_LL_DUP_SCAN_LIST_COUNT
int "BLE duplicate scan list count"
range 1 100
default 20
help
config the max count of duplicate scan list
config BT_LE_LL_SCA
int "BLE Sleep clock accuracy"
range 0 500
default 60
help
Sleep clock accuracy of our device (in ppm)
config BT_LE_MAX_CONNECTIONS
int "Maximum number of concurrent connections"
depends on !BT_NIMBLE_ENABLED
range 1 9
default 3
help
Defines maximum number of concurrent BLE connections. For ESP32, user
is expected to configure BTDM_CTRL_BLE_MAX_CONN from controller menu
along with this option. Similarly for ESP32-C3 or ESP32-S3, user is expected to
configure BT_CTRL_BLE_MAX_ACT from controller menu.
Each connection will take about 1k DRAM.
choice BT_LE_COEX_PHY_CODED_TX_RX_TLIM
prompt "Coexistence: limit on MAX Tx/Rx time for coded-PHY connection"
default BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
depends on !BT_NIMBLE_ENABLED
help
When using PHY-Coded in BLE connection, limitation on max tx/rx time can be applied to
better avoid dramatic performance deterioration of Wi-Fi.
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
bool "Force Enable"
help
Always enable the limitation on max tx/rx time for Coded-PHY connection
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
bool "Force Disable"
help
Disable the limitation on max tx/rx time for Coded-PHY connection
endchoice
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF
int
depends on !BT_NIMBLE_ENABLED
default 1 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
default 0 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
config BT_LE_SLEEP_ENABLE
bool "Enable BLE sleep"
default n
help
Enable BLE sleep
choice BT_LE_WAKEUP_SOURCE
prompt "BLE light sleep wakeup source"
depends on BT_LE_SLEEP_ENABLE
default BT_LE_WAKEUP_SOURCE_CPU_RTC_TIMER
config BT_LE_WAKEUP_SOURCE_CPU_RTC_TIMER
bool "Use ESP timer to wakeup CPU"
help
Use esp timer to wakeup CPU
endchoice
config BT_LE_USE_ESP_TIMER
bool "Use Esp Timer for callout"
depends on !BT_NIMBLE_ENABLED
default y
help
Set this option to use Esp Timer which has higher priority timer
instead of FreeRTOS timer

File diff suppressed because it is too large Load Diff

View File

@ -467,7 +467,7 @@ TEST_CASE("LEDC multi fade test", "[ledc]")
} }
#endif // SOC_LEDC_GAMMA_CURVE_FADE_SUPPORTED #endif // SOC_LEDC_GAMMA_CURVE_FADE_SUPPORTED
#if SOC_PCNT_SUPPORTED // Note. C3, C2, H4 do not have PCNT peripheral, the following test cases cannot be tested #if SOC_PCNT_SUPPORTED // Note. C3, C2 do not have PCNT peripheral, the following test cases cannot be tested
#include "driver/pulse_cnt.h" #include "driver/pulse_cnt.h"

View File

@ -33,7 +33,7 @@
#endif #endif
// H4 and C2 will not support external flash. // H2 and C2 will not support external flash.
#define TEST_FLASH_FREQ_MHZ 5 #define TEST_FLASH_FREQ_MHZ 5
typedef struct { typedef struct {

View File

@ -273,7 +273,7 @@ TEST_CASE("test slave send unaligned", "[spi]")
/******************************************************************************** /********************************************************************************
* Test By Master & Slave (2 boards) * Test By Master & Slave (2 boards)
* *
* Master (C3, C2, H4) && Slave (C3, C2, H4): * Master (C3, C2, H2) && Slave (C3, C2, H2):
* PIN | Master | Slave | * PIN | Master | Slave |
* ----| --------- | --------- | * ----| --------- | --------- |
* CS | 10 | 10 | * CS | 10 | 10 |

View File

@ -583,7 +583,7 @@ TEST_CASE("test spi slave hd segment mode, master too long", "[spi][spi_slv_hd]"
/******************************************************************************** /********************************************************************************
* Test By Master & Slave (2 boards) * Test By Master & Slave (2 boards)
* *
* Master (C3, C2, H4) && Slave (C3, C2, H4): * Master (C3, C2, H2) && Slave (C3, C2, H2):
* PIN | Master | Slave | * PIN | Master | Slave |
* ----| --------- | --------- | * ----| --------- | --------- |
* CS | 10 | 10 | * CS | 10 | 10 |

View File

@ -498,7 +498,7 @@ def main():
parser = argparse.ArgumentParser(description='ESP32 eFuse Manager') parser = argparse.ArgumentParser(description='ESP32 eFuse Manager')
parser.add_argument('--idf_target', '-t', help='Target chip type', choices=['esp32', 'esp32s2', 'esp32s3', 'esp32c3', parser.add_argument('--idf_target', '-t', help='Target chip type', choices=['esp32', 'esp32s2', 'esp32s3', 'esp32c3',
'esp32h4', 'esp32c2', 'esp32c6', 'esp32h2'], default='esp32') 'esp32c2', 'esp32c6', 'esp32h2'], default='esp32')
parser.add_argument('--quiet', '-q', help="Don't print non-critical status messages to stderr", action='store_true') parser.add_argument('--quiet', '-q', help="Don't print non-critical status messages to stderr", action='store_true')
parser.add_argument('--debug', help='Create header file with debug info', default=False, action='store_false') parser.add_argument('--debug', help='Create header file with debug info', default=False, action='store_false')
parser.add_argument('--info', help='Print info about range of used bits', default=False, action='store_true') parser.add_argument('--info', help='Print info about range of used bits', default=False, action='store_true')

View File

@ -8,17 +8,8 @@ if(CONFIG_ESP_COEX_SW_COEXIST_ENABLE OR CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE)
set(link_binary_libs 1) set(link_binary_libs 1)
set(ldfragments "linker.lf") set(ldfragments "linker.lf")
endif() endif()
set(srcs "src/coexist.c"
# TODO: need to remove these logic when unsupport esp32h4.
if(IDF_TARGET STREQUAL "esp32h4")
set(srcs
"src/coexist.c"
"esp32h2/esp_coex_adapter.c")
else()
set(srcs
"src/coexist.c"
"${idf_target}/esp_coex_adapter.c") "${idf_target}/esp_coex_adapter.c")
endif()
endif() endif()
if(CONFIG_ESP_WIFI_ENABLED) if(CONFIG_ESP_WIFI_ENABLED)
@ -38,14 +29,8 @@ if(CONFIG_ESP_COEX_SW_COEXIST_ENABLE OR CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE)
if(link_binary_libs) if(link_binary_libs)
set(blob coexist) set(blob coexist)
# TODO: need to remove these logic when unsupport esp32h4.
if(IDF_TARGET STREQUAL "esp32h4")
add_prebuilt_library(${blob} "${CMAKE_CURRENT_SOURCE_DIR}/lib/esp32h2/lib${blob}.a"
REQUIRES ${COMPONENT_NAME})
else()
add_prebuilt_library(${blob} "${CMAKE_CURRENT_SOURCE_DIR}/lib/${target_name}/lib${blob}.a" add_prebuilt_library(${blob} "${CMAKE_CURRENT_SOURCE_DIR}/lib/${target_name}/lib${blob}.a"
REQUIRES ${COMPONENT_NAME}) REQUIRES ${COMPONENT_NAME})
endif()
target_link_libraries(${COMPONENT_LIB} PUBLIC ${blob}) target_link_libraries(${COMPONENT_LIB} PUBLIC ${blob})
endif() endif()

View File

@ -47,16 +47,7 @@ idf_component_register(SRCS "${srcs}"
) )
set(target_name "${idf_target}") set(target_name "${idf_target}")
if(IDF_TARGET STREQUAL "esp32h4") target_link_directories(${COMPONENT_LIB} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lib/${target_name}")
if(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2)
target_link_directories(${COMPONENT_LIB} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lib/esp32h4/rev2")
endif()
if(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_1)
target_link_directories(${COMPONENT_LIB} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lib/esp32h4/rev1")
endif()
else()
target_link_directories(${COMPONENT_LIB} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lib/${target_name}")
endif()
# Override functions in PHY lib with the functions in 'phy_override.c' # Override functions in PHY lib with the functions in 'phy_override.c'
target_link_libraries(${COMPONENT_LIB} INTERFACE "-u include_esp_phy_override") target_link_libraries(${COMPONENT_LIB} INTERFACE "-u include_esp_phy_override")

View File

@ -54,10 +54,10 @@ void esp_phy_enable(void)
s_phy_access_ref++; s_phy_access_ref++;
_lock_release(&s_phy_access_lock); _lock_release(&s_phy_access_lock);
// ESP32H4-TODO: enable common clk. // ESP32H2-TODO: enable common clk.
} }
void esp_phy_disable(void) void esp_phy_disable(void)
{ {
// ESP32H4-TODO: close rf and disable clk for modem sleep and light sleep // ESP32H2-TODO: close rf and disable clk for modem sleep and light sleep
} }

View File

@ -33,7 +33,6 @@ typedef esp_pm_config_t esp_pm_config_esp32_t __attribute__((deprecated("pleas
typedef esp_pm_config_t esp_pm_config_esp32s2_t __attribute__((deprecated("please use esp_pm_config_t instead"))); typedef esp_pm_config_t esp_pm_config_esp32s2_t __attribute__((deprecated("please use esp_pm_config_t instead")));
typedef esp_pm_config_t esp_pm_config_esp32s3_t __attribute__((deprecated("please use esp_pm_config_t instead"))); typedef esp_pm_config_t esp_pm_config_esp32s3_t __attribute__((deprecated("please use esp_pm_config_t instead")));
typedef esp_pm_config_t esp_pm_config_esp32c3_t __attribute__((deprecated("please use esp_pm_config_t instead"))); typedef esp_pm_config_t esp_pm_config_esp32c3_t __attribute__((deprecated("please use esp_pm_config_t instead")));
typedef esp_pm_config_t esp_pm_config_esp32h4_t __attribute__((deprecated("please use esp_pm_config_t instead")));
typedef esp_pm_config_t esp_pm_config_esp32c2_t __attribute__((deprecated("please use esp_pm_config_t instead"))); typedef esp_pm_config_t esp_pm_config_esp32c2_t __attribute__((deprecated("please use esp_pm_config_t instead")));
typedef esp_pm_config_t esp_pm_config_esp32c6_t __attribute__((deprecated("please use esp_pm_config_t instead"))); typedef esp_pm_config_t esp_pm_config_esp32c6_t __attribute__((deprecated("please use esp_pm_config_t instead")));

View File

@ -73,8 +73,6 @@
#define REF_CLK_DIV_MIN 2 // TODO: IDF-5660 #define REF_CLK_DIV_MIN 2 // TODO: IDF-5660
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#define REF_CLK_DIV_MIN 2 #define REF_CLK_DIV_MIN 2
#elif CONFIG_IDF_TARGET_ESP32H4
#define REF_CLK_DIV_MIN 2
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#define REF_CLK_DIV_MIN 2 #define REF_CLK_DIV_MIN 2
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -15,7 +15,7 @@
* Feel free to change when debugging. * Feel free to change when debugging.
*/ */
static const int DRAM_ATTR s_trace_io[] = { static const int DRAM_ATTR s_trace_io[] = {
#if !defined(CONFIG_IDF_TARGET_ESP32C3) && !defined(CONFIG_IDF_TARGET_ESP32H4) && !defined(CONFIG_IDF_TARGET_ESP32C2) #if !defined(CONFIG_IDF_TARGET_ESP32C3) && !defined(CONFIG_IDF_TARGET_ESP32C2)
BIT(4), BIT(5), // ESP_PM_TRACE_IDLE BIT(4), BIT(5), // ESP_PM_TRACE_IDLE
BIT(16), BIT(17), // ESP_PM_TRACE_TICK BIT(16), BIT(17), // ESP_PM_TRACE_TICK
BIT(18), BIT(18), // ESP_PM_TRACE_FREQ_SWITCH BIT(18), BIT(18), // ESP_PM_TRACE_FREQ_SWITCH

View File

@ -67,8 +67,6 @@ static const int test_freqs[] = {40, CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ, 80, 40, 80
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
static const int test_freqs[] = {CONFIG_XTAL_FREQ, CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ, 80, CONFIG_XTAL_FREQ, 80, static const int test_freqs[] = {CONFIG_XTAL_FREQ, CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ, 80, CONFIG_XTAL_FREQ, 80,
CONFIG_XTAL_FREQ / 2, CONFIG_XTAL_FREQ}; // C2 xtal has 40/26MHz option CONFIG_XTAL_FREQ / 2, CONFIG_XTAL_FREQ}; // C2 xtal has 40/26MHz option
#elif CONFIG_IDF_TARGET_ESP32H4
static const int test_freqs[] = {32, CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ, 32} // TODO: IDF-3786
#else #else
static const int test_freqs[] = {240, 40, 160, 240, 80, 40, 240, 40, 80, 10, 80, 20, 40}; static const int test_freqs[] = {240, 40, 160, 240, 80, 40, 240, 40, 80, 10, 80, 20, 40};
#endif #endif

View File

@ -51,15 +51,7 @@ idf_component_register(SRCS ${sources}
PRIV_REQUIRES ${private_required_comp} PRIV_REQUIRES ${private_required_comp}
LDFRAGMENTS linker.lf) LDFRAGMENTS linker.lf)
if(target STREQUAL "esp32h4") set(ld_folder "ld")
if(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_1)
set(ld_folder "ld/rev1")
elseif(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2)
set(ld_folder "ld/rev2")
endif()
else()
set(ld_folder "ld")
endif()
# Append a target linker script at the target-specific path, # Append a target linker script at the target-specific path,
# only the 'name' part is different for each script # only the 'name' part is different for each script
@ -108,9 +100,6 @@ if(BOOTLOADER_BUILD)
elseif(target STREQUAL "esp32c3") elseif(target STREQUAL "esp32c3")
rom_linker_script("newlib") rom_linker_script("newlib")
elseif(target STREQUAL "esp32h4")
rom_linker_script("newlib")
elseif(target STREQUAL "esp32c2") elseif(target STREQUAL "esp32c2")
rom_linker_script("newlib") rom_linker_script("newlib")
rom_linker_script("mbedtls") rom_linker_script("mbedtls")
@ -215,16 +204,6 @@ else() # Regular app build
rom_linker_script("eco3") rom_linker_script("eco3")
endif() endif()
elseif(target STREQUAL "esp32h4")
rom_linker_script("newlib")
rom_linker_script("version")
if(CONFIG_NEWLIB_NANO_FORMAT AND time_t_size EQUAL 4)
# nano formatting functions in ROM are built for 32-bit time_t,
# only link them if the toolchain is also using 32-bit time_t and nano formatting was requested.
rom_linker_script("newlib-nano")
endif()
elseif(target STREQUAL "esp32c2") elseif(target STREQUAL "esp32c2")
rom_linker_script("newlib") rom_linker_script("newlib")
rom_linker_script("version") rom_linker_script("version")

View File

@ -17,8 +17,6 @@ When using ROM functions in esp-idf, the including convention is `<target>/rom/<
#include "esp32c3/rom/uart.h" #include "esp32c3/rom/uart.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/uart.h" #include "esp32s3/rom/uart.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/uart.h"
... ...
``` ```

View File

@ -99,7 +99,6 @@ menu "ESP System Settings"
default y if IDF_TARGET_ESP32S2 default y if IDF_TARGET_ESP32S2
default y if IDF_TARGET_ESP32C3 default y if IDF_TARGET_ESP32C3
default y if IDF_TARGET_ESP32S3 default y if IDF_TARGET_ESP32S3
default y if IDF_TARGET_ESP32H4
default y if IDF_TARGET_ESP32C6 default y if IDF_TARGET_ESP32C6
default n if IDF_TARGET_ESP32H2 # IDF-5667 default n if IDF_TARGET_ESP32H2 # IDF-5667
depends on SOC_RTC_FAST_MEM_SUPPORTED depends on SOC_RTC_FAST_MEM_SUPPORTED
@ -280,7 +279,7 @@ menu "ESP System Settings"
config ESP_CONSOLE_MULTIPLE_UART config ESP_CONSOLE_MULTIPLE_UART
bool bool
default y if !IDF_TARGET_ESP32C3 && !IDF_TARGET_ESP32H4 && !IDF_TARGET_ESP32C2 default y if !IDF_TARGET_ESP32C3 && !IDF_TARGET_ESP32C2
choice ESP_CONSOLE_UART_NUM choice ESP_CONSOLE_UART_NUM
prompt "UART peripheral to use for console output (0-1)" prompt "UART peripheral to use for console output (0-1)"

View File

@ -29,7 +29,7 @@
#define REASON_FREQ_SWITCH BIT(1) #define REASON_FREQ_SWITCH BIT(1)
#define REASON_GDB_CALL BIT(3) #define REASON_GDB_CALL BIT(3)
#if !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32H4 && !IDF_TARGET_ESP32C2 && !IDF_TARGET_ESP32C6 #if !CONFIG_IDF_TARGET_ESP32C3 && !IDF_TARGET_ESP32C2 && !IDF_TARGET_ESP32C6
#define REASON_PRINT_BACKTRACE BIT(2) #define REASON_PRINT_BACKTRACE BIT(2)
#define REASON_TWDT_ABORT BIT(4) #define REASON_TWDT_ABORT BIT(4)
#endif #endif
@ -66,7 +66,7 @@ static void IRAM_ATTR esp_crosscore_isr(void *arg) {
} else { } else {
WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_1_REG, 0); WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_1_REG, 0);
} }
#elif CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32H4 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2 #elif CONFIG_IDF_TARGET_ESP32C3|| CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2
WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_0_REG, 0); WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_0_REG, 0);
#endif #endif
@ -147,7 +147,7 @@ static void IRAM_ATTR esp_crosscore_int_send(int core_id, uint32_t reason_mask)
} else { } else {
WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_1_REG, SYSTEM_CPU_INTR_FROM_CPU_1); WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_1_REG, SYSTEM_CPU_INTR_FROM_CPU_1);
} }
#elif CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32H4 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2 #elif CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2
WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_0_REG, SYSTEM_CPU_INTR_FROM_CPU_0); WRITE_PERI_REG(SYSTEM_CPU_INTR_FROM_CPU_0_REG, SYSTEM_CPU_INTR_FROM_CPU_0);
#endif #endif
} }
@ -167,7 +167,7 @@ void IRAM_ATTR esp_crosscore_int_send_gdb_call(int core_id)
esp_crosscore_int_send(core_id, REASON_GDB_CALL); esp_crosscore_int_send(core_id, REASON_GDB_CALL);
} }
#if !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32H4 && !IDF_TARGET_ESP32C2 && !IDF_TARGET_ESP32C6 && !CONFIG_IDF_TARGET_ESP32H2 #if !CONFIG_IDF_TARGET_ESP32C3 && !IDF_TARGET_ESP32C2 && !IDF_TARGET_ESP32C6 && !CONFIG_IDF_TARGET_ESP32H2
void IRAM_ATTR esp_crosscore_int_send_print_backtrace(int core_id) void IRAM_ATTR esp_crosscore_int_send_print_backtrace(int core_id)
{ {
esp_crosscore_int_send(core_id, REASON_PRINT_BACKTRACE); esp_crosscore_int_send(core_id, REASON_PRINT_BACKTRACE);

View File

@ -17,8 +17,6 @@
#include "esp32s3/rom/rtc.h" #include "esp32s3/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/rtc.h" #include "esp32c3/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/rtc.h" #include "esp32c2/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6
@ -49,8 +47,6 @@ void bootloader_clock_configure(void)
uint32_t xtal_freq_mhz = 40; uint32_t xtal_freq_mhz = 40;
#ifdef CONFIG_IDF_TARGET_ESP32S2 #ifdef CONFIG_IDF_TARGET_ESP32S2
uint32_t apb_freq_hz = 20000000; uint32_t apb_freq_hz = 20000000;
#elif CONFIG_IDF_TARGET_ESP32H4
uint32_t apb_freq_hz = 32000000;
#else #else
uint32_t apb_freq_hz = CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ * 1000000; uint32_t apb_freq_hz = CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ * 1000000;
#endif // CONFIG_IDF_TARGET_ESP32S2 #endif // CONFIG_IDF_TARGET_ESP32S2

View File

@ -50,7 +50,7 @@ void esp_crosscore_int_send_freq_switch(int core_id);
void esp_crosscore_int_send_gdb_call(int core_id); void esp_crosscore_int_send_gdb_call(int core_id);
#if !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32H4 && !CONFIG_IDF_TARGET_ESP32C2 && !CONFIG_IDF_TARGET_ESP32C6 && !CONFIG_IDF_TARGET_ESP32H2 #if !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32C2 && !CONFIG_IDF_TARGET_ESP32C6 && !CONFIG_IDF_TARGET_ESP32H2
/** /**
* Send an interrupt to a CPU indicating it should print its current backtrace * Send an interrupt to a CPU indicating it should print its current backtrace
* *
@ -75,7 +75,7 @@ void esp_crosscore_int_send_print_backtrace(int core_id);
void esp_crosscore_int_send_twdt_abort(int core_id); void esp_crosscore_int_send_twdt_abort(int core_id);
#endif // CONFIG_ESP_TASK_WDT_EN #endif // CONFIG_ESP_TASK_WDT_EN
#endif // !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32H4 && !CONFIG_IDF_TARGET_ESP32C2 && !CONFIG_IDF_TARGET_ESP32C6 #endif // !CONFIG_IDF_TARGET_ESP32C3 && !CONFIG_IDF_TARGET_ESP32C2 && !CONFIG_IDF_TARGET_ESP32C6
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -56,11 +56,6 @@
#include "esp32h2/rtc.h" #include "esp32h2/rtc.h"
#include "esp32h2/rom/cache.h" #include "esp32h2/rom/cache.h"
#include "esp_memprot.h" #include "esp_memprot.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rtc.h"
#include "esp32h4/rom/cache.h"
#include "esp32h4/rom/secure_boot.h"
#include "esp_memprot.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"
#include "esp32c2/rom/cache.h" #include "esp32c2/rom/cache.h"

View File

@ -21,8 +21,6 @@
#include "esp32s3/rtc.h" #include "esp32s3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rtc.h" #include "esp32c3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -43,7 +43,7 @@
#define BROWNOUT "BROWN_OUT_RST" #define BROWNOUT "BROWN_OUT_RST"
#define STORE_ERROR "StoreProhibited" #define STORE_ERROR "StoreProhibited"
#elif CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32H4 || CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2
#define DEEPSLEEP "DSLEEP" #define DEEPSLEEP "DSLEEP"
#define LOAD_STORE_ERROR "Store access fault" #define LOAD_STORE_ERROR "Store access fault"
#define RESET "RTC_SW_CPU_RST" #define RESET "RTC_SW_CPU_RST"

View File

@ -31,8 +31,6 @@
#include "esp32s3/rtc.h" #include "esp32s3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rtc.h" #include "esp32c3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -32,8 +32,6 @@
#include "esp32c3/rom/ets_sys.h" #include "esp32c3/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/ets_sys.h" #include "esp32c2/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6
#include "esp32c6/rom/ets_sys.h" #include "esp32c6/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32H2 #elif CONFIG_IDF_TARGET_ESP32H2

View File

@ -25,8 +25,6 @@
#include "esp32s3/rtc.h" #include "esp32s3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rtc.h" #include "esp32c3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -1,5 +1,5 @@
/* /*
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD * SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
* *
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
@ -23,8 +23,6 @@
#include "esp32s3/rom/ets_sys.h" #include "esp32s3/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/ets_sys.h" #include "esp32c3/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/ets_sys.h" #include "esp32c2/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -1,6 +1,5 @@
menu "Wi-Fi" menu "Wi-Fi"
visible if !IDF_TARGET_ESP32H4
config ESP_WIFI_ENABLED config ESP_WIFI_ENABLED
bool bool

View File

@ -91,7 +91,6 @@ menu "Serial flasher config"
default ESPTOOLPY_FLASHFREQ_40M if IDF_TARGET_ESP32 default ESPTOOLPY_FLASHFREQ_40M if IDF_TARGET_ESP32
default ESPTOOLPY_FLASHFREQ_80M if ESPTOOLPY_FLASHFREQ_80M_DEFAULT default ESPTOOLPY_FLASHFREQ_80M if ESPTOOLPY_FLASHFREQ_80M_DEFAULT
default ESPTOOLPY_FLASHFREQ_60M if IDF_TARGET_ESP32C2 default ESPTOOLPY_FLASHFREQ_60M if IDF_TARGET_ESP32C2
default ESPTOOLPY_FLASHFREQ_48M if IDF_TARGET_ESP32H4
config ESPTOOLPY_FLASHFREQ_120M config ESPTOOLPY_FLASHFREQ_120M
bool "120 MHz" bool "120 MHz"
select SPI_FLASH_HPM_ENABLE select SPI_FLASH_HPM_ENABLE

View File

@ -6,14 +6,6 @@ idf_build_get_property(python PYTHON)
idf_build_get_property(idf_path IDF_PATH) idf_build_get_property(idf_path IDF_PATH)
set(chip_model ${target}) set(chip_model ${target})
# TODO: remove this if block when esp32h4 beta1 is no longer supported and we have h4 target in esptool
if(target STREQUAL "esp32h4")
if(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_1)
set(chip_model esp32h2beta1)
elseif(CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2)
set(chip_model esp32h2beta2)
endif()
endif()
set(ESPTOOLPY ${python} "$ENV{ESPTOOL_WRAPPER}" "${CMAKE_CURRENT_LIST_DIR}/esptool/esptool.py" --chip ${chip_model}) set(ESPTOOLPY ${python} "$ENV{ESPTOOL_WRAPPER}" "${CMAKE_CURRENT_LIST_DIR}/esptool/esptool.py" --chip ${chip_model})
set(ESPSECUREPY ${python} "${CMAKE_CURRENT_LIST_DIR}/esptool/espsecure.py") set(ESPSECUREPY ${python} "${CMAKE_CURRENT_LIST_DIR}/esptool/espsecure.py")

View File

@ -366,7 +366,7 @@ menu "FreeRTOS"
config FREERTOS_TICK_SUPPORT_SYSTIMER config FREERTOS_TICK_SUPPORT_SYSTIMER
bool bool
default y if !FREERTOS_TICK_SUPPORT_CORETIMER default y if !FREERTOS_TICK_SUPPORT_CORETIMER
# ESP32-S3, ESP32-C3 and ESP32-H4 can use Systimer for FreeRTOS SysTick # ESP32-S3 and ESP32-C3 can use Systimer for FreeRTOS SysTick
# ESP32S2 also has SYSTIMER but it can not be used for the FreeRTOS SysTick because: # ESP32S2 also has SYSTIMER but it can not be used for the FreeRTOS SysTick because:
# - It has only one counter, which already in use esp_timer. # - It has only one counter, which already in use esp_timer.
# A counter for SysTick should be stall in debug mode but work esp_timer. # A counter for SysTick should be stall in debug mode but work esp_timer.

View File

@ -15,8 +15,6 @@
#include "esp32c3/rom/rom_layout.h" #include "esp32c3/rom/rom_layout.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/rom_layout.h" #include "esp32s3/rom/rom_layout.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/rom_layout.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/rom_layout.h" #include "esp32c2/rom/rom_layout.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -12,8 +12,6 @@
#include "esp32s2/rom/digital_signature.h" #include "esp32s2/rom/digital_signature.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/digital_signature.h" #include "esp32c3/rom/digital_signature.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/digital_signature.h"
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/digital_signature.h" #include "esp32s3/rom/digital_signature.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -54,8 +54,6 @@
#include "esp32s3/rom/cache.h" #include "esp32s3/rom/cache.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32s3/rom/cache.h" #include "esp32s3/rom/cache.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/cache.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/cache.h" #include "esp32c2/rom/cache.h"
#endif #endif

View File

@ -29,8 +29,6 @@
#include "esp32s3/rom/libc_stubs.h" #include "esp32s3/rom/libc_stubs.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/libc_stubs.h" #include "esp32c3/rom/libc_stubs.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/libc_stubs.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/libc_stubs.h" #include "esp32c2/rom/libc_stubs.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6
@ -113,7 +111,7 @@ static struct syscall_stub_table s_stub_table = {
._printf_float = NULL, ._printf_float = NULL,
._scanf_float = NULL, ._scanf_float = NULL,
#endif #endif
#if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32H4 \ #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 \
|| CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2
/* TODO IDF-2570 : mark that this assert failed in ROM, to avoid confusion between IDF & ROM /* TODO IDF-2570 : mark that this assert failed in ROM, to avoid confusion between IDF & ROM
assertion failures (as function names & source file names will be similar) assertion failures (as function names & source file names will be similar)
@ -137,7 +135,7 @@ void esp_newlib_init(void)
syscall_table_ptr_pro = syscall_table_ptr_app = &s_stub_table; syscall_table_ptr_pro = syscall_table_ptr_app = &s_stub_table;
#elif CONFIG_IDF_TARGET_ESP32S2 #elif CONFIG_IDF_TARGET_ESP32S2
syscall_table_ptr_pro = &s_stub_table; syscall_table_ptr_pro = &s_stub_table;
#elif CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32H4 \ #elif CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 \
|| CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2
syscall_table_ptr = &s_stub_table; syscall_table_ptr = &s_stub_table;
#endif #endif

View File

@ -33,9 +33,6 @@
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/rtc.h" #include "esp32c3/rom/rtc.h"
#include "esp32c3/rtc.h" #include "esp32c3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/rtc.h"
#include "esp32h4/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/rtc.h" #include "esp32c2/rom/rtc.h"
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"

View File

@ -139,7 +139,7 @@ TEST_CASE("check if ROM or Flash is used for functions", "[newlib]")
TEST_ASSERT_FALSE(fn_in_rom(vfprintf)); TEST_ASSERT_FALSE(fn_in_rom(vfprintf));
#endif // CONFIG_NEWLIB_NANO_FORMAT || ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT #endif // CONFIG_NEWLIB_NANO_FORMAT || ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT
#if (CONFIG_NEWLIB_NANO_FORMAT && (CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32H4)) || ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT #if (CONFIG_NEWLIB_NANO_FORMAT && (CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32C2)) || ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT
TEST_ASSERT(fn_in_rom(sscanf)); TEST_ASSERT(fn_in_rom(sscanf));
#else #else
TEST_ASSERT_FALSE(fn_in_rom(sscanf)); TEST_ASSERT_FALSE(fn_in_rom(sscanf));
@ -148,7 +148,7 @@ TEST_CASE("check if ROM or Flash is used for functions", "[newlib]")
#if defined(CONFIG_IDF_TARGET_ESP32) && !defined(CONFIG_SPIRAM) #if defined(CONFIG_IDF_TARGET_ESP32) && !defined(CONFIG_SPIRAM)
TEST_ASSERT(fn_in_rom(atoi)); TEST_ASSERT(fn_in_rom(atoi));
TEST_ASSERT(fn_in_rom(strtol)); TEST_ASSERT(fn_in_rom(strtol));
#elif defined(CONFIG_IDF_TARGET_ESP32C3) || defined(CONFIG_IDF_TARGET_ESP32S3) || defined(CONFIG_IDF_TARGET_ESP32H4)\ #elif defined(CONFIG_IDF_TARGET_ESP32C3) || defined(CONFIG_IDF_TARGET_ESP32S3) \
|| defined(CONFIG_IDF_TARGET_ESP32C2) || defined(CONFIG_IDF_TARGET_ESP32C6) || defined(CONFIG_IDF_TARGET_ESP32C2) || defined(CONFIG_IDF_TARGET_ESP32C6)
/* S3 and C3 always use these from ROM */ /* S3 and C3 always use these from ROM */
TEST_ASSERT(fn_in_rom(atoi)); TEST_ASSERT(fn_in_rom(atoi));

View File

@ -35,8 +35,6 @@
#include "esp32s3/rtc.h" #include "esp32s3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C3 #elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rtc.h" #include "esp32c3/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rtc.h" #include "esp32c2/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6

View File

@ -298,9 +298,6 @@ otError otPlatRadioTransmit(otInstance *aInstance, otRadioFrame *aFrame)
aFrame->mPsdu[-1] = aFrame->mLength; // lenth locates one byte before the psdu (esp_openthread_radio_tx_psdu); aFrame->mPsdu[-1] = aFrame->mLength; // lenth locates one byte before the psdu (esp_openthread_radio_tx_psdu);
// TODO: remove this macro check when esp32h4 unsupported.
#if !CONFIG_IDF_TARGET_ESP32H4
// esp32h4 do not support tx security
if (otMacFrameIsSecurityEnabled(aFrame) && !aFrame->mInfo.mTxInfo.mIsSecurityProcessed) { if (otMacFrameIsSecurityEnabled(aFrame) && !aFrame->mInfo.mTxInfo.mIsSecurityProcessed) {
otMacFrameSetFrameCounter(aFrame, s_mac_frame_counter++); otMacFrameSetFrameCounter(aFrame, s_mac_frame_counter++);
if (otMacFrameIsKeyIdMode1(aFrame)) { if (otMacFrameIsKeyIdMode1(aFrame)) {
@ -314,12 +311,10 @@ otError otPlatRadioTransmit(otInstance *aInstance, otRadioFrame *aFrame)
esp_ieee802154_set_transmit_security(&aFrame->mPsdu[-1], s_security_key, s_security_addr); esp_ieee802154_set_transmit_security(&aFrame->mPsdu[-1], s_security_key, s_security_addr);
} }
// esp32h4 do not support transmit at
if (aFrame->mInfo.mTxInfo.mTxDelay != 0) { if (aFrame->mInfo.mTxInfo.mTxDelay != 0) {
esp_ieee802154_transmit_at(&aFrame->mPsdu[-1], aFrame->mInfo.mTxInfo.mCsmaCaEnabled, esp_ieee802154_transmit_at(&aFrame->mPsdu[-1], aFrame->mInfo.mTxInfo.mCsmaCaEnabled,
(aFrame->mInfo.mTxInfo.mTxDelayBaseTime + aFrame->mInfo.mTxInfo.mTxDelay)); (aFrame->mInfo.mTxInfo.mTxDelayBaseTime + aFrame->mInfo.mTxInfo.mTxDelay));
} else } else
#endif
{ {
esp_ieee802154_transmit(&aFrame->mPsdu[-1], aFrame->mInfo.mTxInfo.mCsmaCaEnabled); esp_ieee802154_transmit(&aFrame->mPsdu[-1], aFrame->mInfo.mTxInfo.mCsmaCaEnabled);
} }
@ -342,22 +337,15 @@ int8_t otPlatRadioGetRssi(otInstance *aInstance)
otRadioCaps otPlatRadioGetCaps(otInstance *aInstance) otRadioCaps otPlatRadioGetCaps(otInstance *aInstance)
{ {
return (otRadioCaps)(OT_RADIO_CAPS_ENERGY_SCAN | return (otRadioCaps)(OT_RADIO_CAPS_ENERGY_SCAN |
// TODO: remove this macro check when esp32h4 unsupported.
#if !CONFIG_IDF_TARGET_ESP32H4
OT_RADIO_CAPS_TRANSMIT_SEC | OT_RADIO_CAPS_RECEIVE_TIMING | OT_RADIO_CAPS_TRANSMIT_TIMING | OT_RADIO_CAPS_TRANSMIT_SEC | OT_RADIO_CAPS_RECEIVE_TIMING | OT_RADIO_CAPS_TRANSMIT_TIMING |
#endif
OT_RADIO_CAPS_ACK_TIMEOUT | OT_RADIO_CAPS_SLEEP_TO_TX); OT_RADIO_CAPS_ACK_TIMEOUT | OT_RADIO_CAPS_SLEEP_TO_TX);
} }
// TODO: remove this macro check when esp32h4 unsupported.
#if !CONFIG_IDF_TARGET_ESP32H4
// esp32h4 do not support receive at
otError otPlatRadioReceiveAt(otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration) otError otPlatRadioReceiveAt(otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
{ {
esp_ieee802154_receive_at((aStart + aDuration)); esp_ieee802154_receive_at((aStart + aDuration));
return OT_ERROR_NONE; return OT_ERROR_NONE;
} }
#endif
bool otPlatRadioGetPromiscuous(otInstance *aInstance) bool otPlatRadioGetPromiscuous(otInstance *aInstance)
{ {

View File

@ -69,8 +69,6 @@
#include "esp32c3/rom/ets_sys.h" #include "esp32c3/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C2 #elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/ets_sys.h" #include "esp32c2/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32H4
#include "esp32h4/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32C6 #elif CONFIG_IDF_TARGET_ESP32C6
#include "esp32c6/rom/ets_sys.h" #include "esp32c6/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32H2 #elif CONFIG_IDF_TARGET_ESP32H2

View File

@ -11,12 +11,12 @@ OpenThread can run under the following modes on Espressif chips:
Standalone node Standalone node
+++++++++++++++ +++++++++++++++
The full OpenThread stack and the application layer runs on the same chip. This mode is available on chips with 15.4 radio such as ESP32-H4. The full OpenThread stack and the application layer runs on the same chip. This mode is available on chips with 15.4 radio such as ESP32-H2.
Radio Co-Processor (RCP) Radio Co-Processor (RCP)
++++++++++++++++++++++++ ++++++++++++++++++++++++
The chip will be connected to another host running the OpenThread IP stack. It will send and received 15.4 packets on behalf of the host. This mode is available on chips with 15.4 radio such as ESP32-H4. The underlying transport between the chip and the host can be SPI or UART. For sake of latency, we recommend to use SPI as the underlying transport. The chip will be connected to another host running the OpenThread IP stack. It will send and received 15.4 packets on behalf of the host. This mode is available on chips with 15.4 radio such as ESP32-H2. The underlying transport between the chip and the host can be SPI or UART. For sake of latency, we recommend to use SPI as the underlying transport.
OpenThread host OpenThread host
+++++++++++++++ +++++++++++++++
@ -38,8 +38,8 @@ For chips without 15.4 radio, it can be connected to an RCP and run OpenThread u
# node labels # node labels
HOST_NODE [label="OpenThread \nhost\n(ESP32)", fontsize=14]; HOST_NODE [label="OpenThread \nhost\n(ESP32)", fontsize=14];
RCP [label="Radio \nCo-Processor\n(ESP32-H4)", fontsize=14]; RCP [label="Radio \nCo-Processor\n(ESP32-H2)", fontsize=14];
STANDALONE [label="Standalone \nnode\n (ESP32-H4)", fontsize=14]; STANDALONE [label="Standalone \nnode\n (ESP32-H2)", fontsize=14];
# node connections + labels # node connections + labels
RCP -> STANDALONE [label="15.4 radio", dir=both, style=dashed]; RCP -> STANDALONE [label="15.4 radio", dir=both, style=dashed];

View File

@ -189,25 +189,6 @@ The source clock can also limit the PWM frequency. The higher the source clock f
- 32 MHz - 32 MHz
- Dynamic Frequency Scaling compatible - Dynamic Frequency Scaling compatible
.. only:: esp32h2
.. list-table:: Characteristics of {IDF_TARGET_NAME} LEDC source clocks
:widths: 15 15 30
:header-rows: 1
* - Clock name
- Clock freq
- Clock capabilities
* - APB_CLK
- 96 MHz
- /
* - RC_FAST_CLK
- ~8 MHz
- Dynamic Frequency Scaling compatible, Light sleep compatible
* - XTAL_CLK
- 32 MHz
- Dynamic Frequency Scaling compatible
.. note:: .. note::
.. only:: SOC_CLK_RC_FAST_SUPPORT_CALIBRATION .. only:: SOC_CLK_RC_FAST_SUPPORT_CALIBRATION
@ -220,7 +201,7 @@ The source clock can also limit the PWM frequency. The higher the source clock f
.. only:: not SOC_LEDC_HAS_TIMER_SPECIFIC_MUX .. only:: not SOC_LEDC_HAS_TIMER_SPECIFIC_MUX
2. For {IDF_TARGET_NAME}, all timers share one clock source. In other words, it is impossible to use different clock sources for different timers. 1. For {IDF_TARGET_NAME}, all timers share one clock source. In other words, it is impossible to use different clock sources for different timers.
.. _ledc-api-configure-channel: .. _ledc-api-configure-channel:

View File

@ -188,25 +188,6 @@ LED PWM 控制器可在无需 CPU 干预的情况下自动改变占空比,实
- 32 MHz - 32 MHz
- 支持动态调频DFS功能 - 支持动态调频DFS功能
.. only:: esp32h2
.. list-table:: {IDF_TARGET_NAME} LEDC 时钟源特性
:widths: 10 10 30
:header-rows: 1
* - 时钟名称
- 时钟频率
- 时钟功能
* - APB_CLK
- 96 MHz
- /
* - RC_FAST_CLK
- ~8 MHz
- 支持动态调频DFS功能支持Light-sleep模式
* - XTAL_CLK
- 32 MHz
- 支持动态调频DFS功能
.. note:: .. note::
.. only:: SOC_CLK_RC_FAST_SUPPORT_CALIBRATION .. only:: SOC_CLK_RC_FAST_SUPPORT_CALIBRATION
@ -219,7 +200,7 @@ LED PWM 控制器可在无需 CPU 干预的情况下自动改变占空比,实
.. only:: not SOC_LEDC_HAS_TIMER_SPECIFIC_MUX .. only:: not SOC_LEDC_HAS_TIMER_SPECIFIC_MUX
2. {IDF_TARGET_NAME} 的所有定时器共用一个时钟源。因此 {IDF_TARGET_NAME} 不支持给不同的定时器配置不同的时钟源。 1. {IDF_TARGET_NAME} 的所有定时器共用一个时钟源。因此 {IDF_TARGET_NAME} 不支持给不同的定时器配置不同的时钟源。
.. _ledc-api-configure-channel: .. _ledc-api-configure-channel:

View File

@ -2,31 +2,31 @@
examples/bluetooth/bluedroid/ble: examples/bluetooth/bluedroid/ble:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/bluedroid/ble_50: examples/bluetooth/bluedroid/ble_50:
enable: enable:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/bluedroid/ble_50/multi-adv: examples/bluetooth/bluedroid/ble_50/multi-adv:
enable: enable:
- if: IDF_TARGET in ["esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -44,11 +44,11 @@ examples/bluetooth/bluedroid/coex/a2dp_gatts_coex:
examples/bluetooth/bluedroid/coex/gattc_gatts_coex: examples/bluetooth/bluedroid/coex/gattc_gatts_coex:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6", "esp32h2"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6", "esp32h2"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -58,7 +58,7 @@ examples/bluetooth/blufi:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -68,7 +68,7 @@ examples/bluetooth/esp_ble_mesh:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -78,7 +78,7 @@ examples/bluetooth/esp_ble_mesh/aligenie_demo:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -88,7 +88,7 @@ examples/bluetooth/esp_ble_mesh/ble_mesh_coex_test:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -138,23 +138,23 @@ examples/bluetooth/nimble:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/ble_l2cap_coc: examples/bluetooth/nimble/ble_l2cap_coc:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2" , "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2" , "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/ble_multi_adv: examples/bluetooth/nimble/ble_multi_adv:
enable: enable:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32h4", "esp32s3"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32s3"]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
@ -164,61 +164,61 @@ examples/bluetooth/nimble/ble_multi_adv:
examples/bluetooth/nimble/ble_periodic_adv: examples/bluetooth/nimble/ble_periodic_adv:
enable: enable:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/ble_periodic_sync: examples/bluetooth/nimble/ble_periodic_sync:
enable: enable:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/ble_phy: examples/bluetooth/nimble/ble_phy:
enable: enable:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32h4", "esp32s3" ] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32s3" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/ble_spp: examples/bluetooth/nimble/ble_spp:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32h4", "esp32s3" ] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32s3" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/blecent: examples/bluetooth/nimble/blecent:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/blehr: examples/bluetooth/nimble/blehr:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -228,17 +228,17 @@ examples/bluetooth/nimble/blemesh:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
examples/bluetooth/nimble/bleprph: examples/bluetooth/nimble/bleprph:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2", "esp32h4" ] - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32c6" , "esp32s3", "esp32h2" ]
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h2", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -248,7 +248,7 @@ examples/bluetooth/nimble/bleprph_wifi_coex:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet
@ -258,6 +258,6 @@ examples/bluetooth/nimble/hci:
temporary: true temporary: true
reason: the other targets are not tested yet reason: the other targets are not tested yet
disable_test: disable_test:
- if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"] - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3", "esp32c6"]
temporary: true temporary: true
reason: The runner doesn't support yet reason: The runner doesn't support yet

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE ANCS Example # ESP-IDF BLE ANCS Example
@ -28,7 +28,7 @@ All these characteristics require authorization for access.
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-H4/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-H2/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for power supply and programming * A USB cable for power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE Compatibility Test Example # ESP-IDF BLE Compatibility Test Example
@ -23,7 +23,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Eddystone Example # ESP-IDF Eddystone Example
@ -20,7 +20,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-H4/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-H2/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE HID Example # ESP-IDF BLE HID Example
@ -23,7 +23,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-H4/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-H2/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF iBeacon demo # ESP-IDF iBeacon demo

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF SPP GATT CLIENT demo # ESP-IDF SPP GATT CLIENT demo

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
## ESP-IDF GATT SERVER SPP Example ## ESP-IDF GATT SERVER SPP Example
@ -15,7 +15,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-S3/ESP32-C2/ESP32-H4 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-S3/ESP32-C2/ESP32-H2 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE throughput GATT CLIENT Test # ESP-IDF BLE throughput GATT CLIENT Test
@ -27,7 +27,7 @@ please set: `idf.py menuconfig --> Component config --> Example 'GATT CLIENT THR
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE throughput GATT SERVER Test # ESP-IDF BLE throughput GATT SERVER Test
@ -26,7 +26,7 @@ please set: `idf.py menuconfig --> Component config --> Example 'GATT CLIENT THR
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Client Example # ESP-IDF Gatt Client Example
@ -21,7 +21,7 @@ Please, check this [tutorial](tutorial/Gatt_Client_Example_Walkthrough.md) for m
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-H4/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-H2/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Security Client Example # ESP-IDF Gatt Security Client Example
@ -24,7 +24,7 @@ Please, check this [tutorial](tutorial/Gatt_Security_Client_Example_Walkthrough.
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Security Server Example # ESP-IDF Gatt Security Server Example
@ -23,7 +23,7 @@ There are some important points for this demo:
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 Soc (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 Soc (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Server Example # ESP-IDF Gatt Server Example
@ -23,7 +23,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Server Service Table Example # ESP-IDF Gatt Server Service Table Example
@ -17,7 +17,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-H4/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-H2/ESP32-C2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Client Multi Connection Example # ESP-IDF Gatt Client Multi Connection Example
@ -21,7 +21,7 @@ The code can be modified to connect to more devices (up to 4 devices by default)
### Hardware Required ### Hardware Required
* A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H4/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.) * A development board with ESP32/ESP32-C3/ESP32-C2/ESP32-H2/ESP32-S3 SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Gatt Security Client Example # ESP-IDF Gatt Security Client Example
@ -26,7 +26,7 @@ Please, check this [tutorial](tutorial/ble50_security_client_Example_Walkthrough
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC, ESP32-S3 SoC, ESP32-C2/ESP32-H4 SoC and BT5.0 supported chip (e.g., ESP32-C3-DevKitC-1 etc.) * A development board with ESP32-C3 SoC, ESP32-S3 SoC, ESP32-C2/ESP32-H2 SoC and BT5.0 supported chip (e.g., ESP32-C3-DevKitC-1 etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF BLE50 Security Server Example # ESP-IDF BLE50 Security Server Example
@ -24,7 +24,7 @@ There are some important points for this demo:
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2/ESP32-H4 SoC and BLE5.0 supoorted chips. (e.g., ESP32-C3-DevKitC-1, etc.) * A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2/ESP32-H2 SoC and BLE5.0 supoorted chips. (e.g., ESP32-C3-DevKitC-1, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- |
#ESP-IDF Multi Adv Example #ESP-IDF Multi Adv Example
@ -17,7 +17,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC,ESP32-S3/ESP32-H4/ESP32-C2 SoC and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC, etc.) * A development board with ESP32-C3 SoC,ESP32-S3/ESP32-H2/ESP32-C2 SoC and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# ESP_IDF Periodic Adv Example # ESP_IDF Periodic Adv Example
@ -21,7 +21,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2, ESP32-H4 and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC-1, etc.) * A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2, ESP32-H2 and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC-1, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# ESP-IDF Periodic Sync Example # ESP-IDF Periodic Sync Example
@ -19,7 +19,7 @@ idf.py set-target <chip_name>
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2, ESP32-H4 and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC-1, etc.) * A development board with ESP32-C3 SoC, ESP32-S3, ESP32-C2, ESP32-H2 and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC-1, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
ESP-IDF Gattc and Gatts Coexistence example ESP-IDF Gattc and Gatts Coexistence example
============================================== ==============================================

View File

@ -63,8 +63,6 @@ void app_main(void)
repl_config.prompt = "esp32c3>"; repl_config.prompt = "esp32c3>";
#elif CONFIG_IDF_TARGET_ESP32S3 #elif CONFIG_IDF_TARGET_ESP32S3
repl_config.prompt = "esp32s3>"; repl_config.prompt = "esp32s3>";
#elif CONFIG_IDF_TARGET_ESP32H4
repl_config.prompt = "esp32h4>";
#else #else
repl_config.prompt = "esp32>"; repl_config.prompt = "esp32>";
#endif #endif

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE Central L2CAP COC Example # BLE Central L2CAP COC Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE Central L2CAP COC Example # BLE Central L2CAP COC Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# BLE Multi Adv Example # BLE Multi Adv Example
@ -34,7 +34,7 @@ To configure number of advertising instances:
### Hardware Required ### Hardware Required
* A development board with ESP32-C3 SoC,ESP32-S3/ESP32-H4/ESP32-C2 SoC and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC, etc.) * A development board with ESP32-C3 SoC,ESP32-S3/ESP32-H2/ESP32-C2 SoC and BLE5.0 supported chips (e.g., ESP32-C3-DevKitC, etc.)
* A USB cable for Power supply and programming * A USB cable for Power supply and programming
See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it. See [Development Boards](https://www.espressif.com/en/products/devkits) for more information about it.

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# BLE Periodic Advertiser Example # BLE Periodic Advertiser Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# BLE Periodic Sync Example # BLE Periodic Sync Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# BLE Central PHY Example # BLE Central PHY Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | -------- | -------- | -------- | -------- | -------- |
# BLE Peripheral PHY Example # BLE Peripheral PHY Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE SPP central example # BLE SPP central example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE SPP peripheral example # BLE SPP peripheral example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE Central Example # BLE Central Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE Heart Rate Measurement Example # BLE Heart Rate Measurement Example

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
# BLE Peripheral Example # BLE Peripheral Example

View File

@ -142,7 +142,6 @@ menu "Example Ethernet Configuration"
default 14 if IDF_TARGET_ESP32 default 14 if IDF_TARGET_ESP32
default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 6 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 6 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 4 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI SCLK. Set the GPIO number used by SPI SCLK.
@ -152,7 +151,6 @@ menu "Example Ethernet Configuration"
default 13 if IDF_TARGET_ESP32 default 13 if IDF_TARGET_ESP32
default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 7 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 7 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 5 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI MOSI. Set the GPIO number used by SPI MOSI.
@ -162,14 +160,13 @@ menu "Example Ethernet Configuration"
default 12 if IDF_TARGET_ESP32 default 12 if IDF_TARGET_ESP32
default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 2 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 2 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 0 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI MISO. Set the GPIO number used by SPI MISO.
config EXAMPLE_ETH_SPI_CLOCK_MHZ config EXAMPLE_ETH_SPI_CLOCK_MHZ
int "SPI clock speed (MHz)" int "SPI clock speed (MHz)"
range 5 80 range 5 80
default 12 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32H4 default 12 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 36 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 36 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
help help
Set the clock speed (MHz) of SPI interface. Set the clock speed (MHz) of SPI interface.
@ -179,7 +176,6 @@ menu "Example Ethernet Configuration"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 15 if IDF_TARGET_ESP32 default 15 if IDF_TARGET_ESP32
default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2 default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2
default 1 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI CS0, i.e. Chip Select associated with the first SPI Eth module). Set the GPIO number used by SPI CS0, i.e. Chip Select associated with the first SPI Eth module).
@ -191,7 +187,6 @@ menu "Example Ethernet Configuration"
default 7 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 7 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 8 if IDF_TARGET_ESP32C3 default 8 if IDF_TARGET_ESP32C3
default 3 if IDF_TARGET_ESP32C2 default 3 if IDF_TARGET_ESP32C2
default 11 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI CS1, i.e. Chip Select associated with the second SPI Eth module. Set the GPIO number used by SPI CS1, i.e. Chip Select associated with the second SPI Eth module.
@ -200,7 +195,6 @@ menu "Example Ethernet Configuration"
range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX
default 4 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 default 4 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
default 4 if IDF_TARGET_ESP32C2 default 4 if IDF_TARGET_ESP32C2
default 9 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by the first SPI Ethernet module interrupt line. Set the GPIO number used by the first SPI Ethernet module interrupt line.
@ -210,7 +204,6 @@ menu "Example Ethernet Configuration"
range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX
default 33 if IDF_TARGET_ESP32 default 33 if IDF_TARGET_ESP32
default 5 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2 default 5 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2
default 10 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by the second SPI Ethernet module interrupt line. Set the GPIO number used by the second SPI Ethernet module interrupt line.

View File

@ -15,7 +15,6 @@ menu "Example Configuration"
default 14 if IDF_TARGET_ESP32 default 14 if IDF_TARGET_ESP32
default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 6 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 6 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 4 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI SCLK. Set the GPIO number used by SPI SCLK.
@ -25,7 +24,6 @@ menu "Example Configuration"
default 13 if IDF_TARGET_ESP32 default 13 if IDF_TARGET_ESP32
default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 7 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 7 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 5 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI MOSI. Set the GPIO number used by SPI MOSI.
@ -35,7 +33,6 @@ menu "Example Configuration"
default 12 if IDF_TARGET_ESP32 default 12 if IDF_TARGET_ESP32
default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
default 2 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2 default 2 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 0 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI MISO. Set the GPIO number used by SPI MISO.
@ -44,7 +41,6 @@ menu "Example Configuration"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 15 if IDF_TARGET_ESP32 default 15 if IDF_TARGET_ESP32
default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2 default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32C2
default 1 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by SPI CS. Set the GPIO number used by SPI CS.
@ -60,7 +56,6 @@ menu "Example Configuration"
range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_IN_RANGE_MAX
default 4 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 default 4 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
default 4 if IDF_TARGET_ESP32C2 default 4 if IDF_TARGET_ESP32C2
default 9 if IDF_TARGET_ESP32H4
help help
Set the GPIO number used by ENC28J60 interrupt. Set the GPIO number used by ENC28J60 interrupt.

View File

@ -6,8 +6,8 @@ See the [README.md](../README.md) file in the upper level [examples](../) direct
In this folder, it contains following OpenThread examples: In this folder, it contains following OpenThread examples:
* [ot_cli](ot_cli) is an OpenThread Command Line example, in addition to the features listed in [OpenThread CLI](https://github.com/openthread/openthread/blob/master/src/cli/README.md), it supports some additional features such as TCP, UDP and Iperf over lwIP. It runs on an 802.15.4 SoC like ESP32-H4. * [ot_cli](ot_cli) is an OpenThread Command Line example, in addition to the features listed in [OpenThread CLI](https://github.com/openthread/openthread/blob/master/src/cli/README.md), it supports some additional features such as TCP, UDP and Iperf over lwIP. It runs on an 802.15.4 SoC like ESP32-H2.
* [ot_rcp](ot_rcp) is an [OpenThread RCP](https://openthread.io/platforms/co-processor) example. It runs on an 802.15.4 SoC like ESP32-H4, to extend 802.15.4 radio. * [ot_rcp](ot_rcp) is an [OpenThread RCP](https://openthread.io/platforms/co-processor) example. It runs on an 802.15.4 SoC like ESP32-H2, to extend 802.15.4 radio.
* [ot_br](ot_br) is an [OpenThread Border Router](https://openthread.io/guides/border-router) example. It runs on a Wi-Fi SoC such as ESP32, ESP32-C3 and ESP32-S3. It needs an 802.15.4 SoC like ESP32-H4 running [ot_rcp](ot_rcp) example to provide 802.15.4 radio. * [ot_br](ot_br) is an [OpenThread Border Router](https://openthread.io/guides/border-router) example. It runs on a Wi-Fi SoC such as ESP32, ESP32-C3 and ESP32-S3. It needs an 802.15.4 SoC like ESP32-H2 running [ot_rcp](ot_rcp) example to provide 802.15.4 radio.

View File

@ -19,7 +19,7 @@ CONFIG_PARTITION_TABLE_MD5=y
# #
# mbedTLS # mbedTLS
# #
# ESP32H4-TODO: enable HW acceleration # ESP32H2-TODO: enable HW acceleration
CONFIG_MBEDTLS_HARDWARE_AES=n CONFIG_MBEDTLS_HARDWARE_AES=n
CONFIG_MBEDTLS_HARDWARE_MPI=n CONFIG_MBEDTLS_HARDWARE_MPI=n
CONFIG_MBEDTLS_HARDWARE_SHA=n CONFIG_MBEDTLS_HARDWARE_SHA=n

View File

@ -26,12 +26,12 @@
#if CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3 #if CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
#define I2C_SCL_IO (GPIO_NUM_16) #define I2C_SCL_IO (GPIO_NUM_16)
#define I2C_SDA_IO (GPIO_NUM_17) #define I2C_SDA_IO (GPIO_NUM_17)
#elif CONFIG_IDF_TARGET_ESP32C3
#define I2C_SCL_IO (GPIO_NUM_6)
#define I2C_SDA_IO (GPIO_NUM_7)
#elif CONFIG_IDF_TARGET_ESP32H2 #elif CONFIG_IDF_TARGET_ESP32H2
#define I2C_SCL_IO (GPIO_NUM_8) #define I2C_SCL_IO (GPIO_NUM_8)
#define I2C_SDA_IO (GPIO_NUM_9) #define I2C_SDA_IO (GPIO_NUM_9)
#else
#define I2C_SCL_IO (GPIO_NUM_6)
#define I2C_SDA_IO (GPIO_NUM_7)
#endif #endif
/* I2S port and GPIOs */ /* I2S port and GPIOs */

View File

@ -22,7 +22,7 @@
#include "esp_system.h" #include "esp_system.h"
#include "soc/spi_pins.h" #include "soc/spi_pins.h"
// h4 and c2 will not support external flash // h2 and c2 will not support external flash
#define EXAMPLE_FLASH_FREQ_MHZ 40 #define EXAMPLE_FLASH_FREQ_MHZ 40
static const char *TAG = "example"; static const char *TAG = "example";

View File

@ -73,7 +73,7 @@ openocd -c "set ESP_SEMIHOST_BASEDIR %IDF_PATH%/examples/storage/semihost_vfs/da
The above command will set `ESP_SEMIHOST_BASEDIR` variable to `examples/storage/semihost_vfs/data` subdirectory of ESP-IDF. With that, it is not necessary to run OpenOCD from that specific directory. The above command will set `ESP_SEMIHOST_BASEDIR` variable to `examples/storage/semihost_vfs/data` subdirectory of ESP-IDF. With that, it is not necessary to run OpenOCD from that specific directory.
> Note: This feature is not available for RISC-V based SoCs (ESP32-C3, ESP32-H4). To set the semihosting base directory, change into the required directory before running `openocd` command. > Note: This feature is not available for RISC-V based SoCs (ESP32-C3, ESP32-H2). To set the semihosting base directory, change into the required directory before running `openocd` command.
## Example output ## Example output

View File

@ -60,11 +60,9 @@ menu "Example Configuration"
config EXAMPLE_GPIO_WAKEUP_PIN config EXAMPLE_GPIO_WAKEUP_PIN
int "Enable wakeup from GPIO" int "Enable wakeup from GPIO"
default 0 if !IDF_TARGET_ESP32H4_BETA_VERSION_2 default 0
default 7 if IDF_TARGET_ESP32H4_BETA_VERSION_2
range 0 7 if IDF_TARGET_ESP32C6 range 0 7 if IDF_TARGET_ESP32C6
range 0 5 if !IDF_TARGET_ESP32H4_BETA_VERSION_2 range 0 5
range 7 12 if IDF_TARGET_ESP32H4_BETA_VERSION_2
config EXAMPLE_GPIO_WAKEUP_HIGH_LEVEL config EXAMPLE_GPIO_WAKEUP_HIGH_LEVEL
bool "Enable GPIO high-level wakeup" bool "Enable GPIO high-level wakeup"

View File

@ -7,4 +7,3 @@ CONFIG_ESP32S2_TIME_SYSCALL_USE_RTC=y
CONFIG_ESP32S3_TIME_SYSCALL_USE_RTC=y CONFIG_ESP32S3_TIME_SYSCALL_USE_RTC=y
CONFIG_ESP32C2_TIME_SYSCALL_USE_RTC=y CONFIG_ESP32C2_TIME_SYSCALL_USE_RTC=y
CONFIG_ESP32C3_TIME_SYSCALL_USE_RTC=y CONFIG_ESP32C3_TIME_SYSCALL_USE_RTC=y
CONFIG_ESP32H4_TIME_SYSCALL_USE_RTC=y

View File

@ -5,7 +5,7 @@ menu "Example Configuration"
config BLINK_GPIO config BLINK_GPIO
int "Blink GPIO number" int "Blink GPIO number"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 8 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32H4 || IDF_TARGET_ESP32C2 default 8 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C2
default 18 if IDF_TARGET_ESP32S2 default 18 if IDF_TARGET_ESP32S2
default 48 if IDF_TARGET_ESP32S3 default 48 if IDF_TARGET_ESP32S3
default 5 default 5

View File

@ -12,7 +12,7 @@
/* Most development boards have "boot" button attached to GPIO0. /* Most development boards have "boot" button attached to GPIO0.
* You can also change this to another pin. * You can also change this to another pin.
*/ */
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32H4 \ #if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2 \
|| CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32C6
#define BOOT_BUTTON_NUM 9 #define BOOT_BUTTON_NUM 9
#else #else

View File

@ -6,7 +6,7 @@
The folder contains examples demonstrating Zigbee Coordinator and End-Device roles The folder contains examples demonstrating Zigbee Coordinator and End-Device roles
* [HA_on_off_light](HA_on_off_light) is a standard HA on-off light bulb example demonstrating Zigbee End-device. It provides a simple on/off condition for a Zigbee light. It runs on an 802.15.4 SoC like ESP32-H4. For more details see the example readme file. * [HA_on_off_light](HA_on_off_light) is a standard HA on-off light bulb example demonstrating Zigbee End-device. It provides a simple on/off condition for a Zigbee light. It runs on an 802.15.4 SoC like ESP32-H2. For more details see the example readme file.
* [HA_on_off_switch](HA_on_off_switch) is a standard HA on-off switch example demonstrating Zigbee Coordinator role. It provides an on/off toggle to control a Zigbee HA on off light. It runs on an 802.15.4 SoC like ESP32-H4. For more details to see the example readme file. * [HA_on_off_switch](HA_on_off_switch) is a standard HA on-off switch example demonstrating Zigbee Coordinator role. It provides an on/off toggle to control a Zigbee HA on off light. It runs on an 802.15.4 SoC like ESP32-H2. For more details to see the example readme file.

Some files were not shown because too many files have changed in this diff Show More