mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-12-26 15:03:53 +01:00
cpu/esp32: add BLE support for ESP32-C3
This commit is contained in:
parent
2ec9ca1276
commit
aba5e35ac4
@ -27,6 +27,12 @@ config HAS_ESP_BLE_ESP32
|
||||
Indicates that the ESP32x SoC uses the SDK Bluetooth LE library
|
||||
for the ESP32 variant.
|
||||
|
||||
config HAS_ESP_BLE_ESP32C3
|
||||
bool
|
||||
help
|
||||
Indicates that the ESP32x SoC uses the SDK Bluetooth LE library
|
||||
for the ESP32-C3 variant.
|
||||
|
||||
config HAS_ESP_HW_COUNTER
|
||||
bool
|
||||
help
|
||||
|
||||
@ -15,6 +15,7 @@ config MODULE_ESP_BLE
|
||||
select MODULE_ESP_IDF_BLE
|
||||
select PACKAGE_ESP32_SDK_LIB_PHY
|
||||
select PACKAGE_ESP32_SDK_LIB_BT_ESP32 if HAS_ESP_BLE_ESP32
|
||||
select PACKAGE_ESP32_SDK_LIB_BT_ESP32C3 if HAS_ESP_BLE_ESP32C3
|
||||
|
||||
config MODULE_ESP_JTAG
|
||||
bool "Enable JTAG debugging interface"
|
||||
|
||||
@ -31,6 +31,12 @@ config CPU_FAM_ESP32C3
|
||||
select CPU_CORE_RV32IMC
|
||||
select HAS_ARCH_ESP32
|
||||
select HAS_CPU_ESP32
|
||||
select HAS_BLE_ADV_EXT
|
||||
select HAS_BLE_NIMBLE
|
||||
select HAS_BLE_NIMBLE_NETIF
|
||||
select HAS_BLE_PHY_2MBIT
|
||||
select HAS_ESP_BLE
|
||||
select HAS_ESP_BLE_ESP32C3
|
||||
select HAS_ESP_WIFI_ENTERPRISE
|
||||
select HAS_PUF_SRAM
|
||||
|
||||
|
||||
@ -25,6 +25,9 @@ ifneq (,$(filter esp_ble,$(USEMODULE)))
|
||||
ifeq (esp32,$(CPU_FAM))
|
||||
FEATURES_REQUIRED += esp_ble_esp32
|
||||
USEPKG += esp32_sdk_lib_bt_esp32
|
||||
else ifeq (esp32c3,$(CPU_FAM))
|
||||
FEATURES_REQUIRED += esp_ble_esp32c3
|
||||
USEPKG += esp32_sdk_lib_bt_esp32c3
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@ -28,6 +28,13 @@ ifeq (esp32,$(CPU_FAM))
|
||||
FEATURES_PROVIDED += ble_nimble_netif
|
||||
FEATURES_PROVIDED += esp_ble
|
||||
FEATURES_PROVIDED += esp_ble_esp32
|
||||
else ifeq (esp32c3,$(CPU_FAM))
|
||||
FEATURES_PROVIDED += ble_adv_ext
|
||||
FEATURES_PROVIDED += ble_nimble
|
||||
FEATURES_PROVIDED += ble_nimble_netif
|
||||
FEATURES_PROVIDED += ble_phy_2mbit
|
||||
FEATURES_PROVIDED += esp_ble
|
||||
FEATURES_PROVIDED += esp_ble_esp32c3
|
||||
endif
|
||||
|
||||
ifneq (,$(filter esp32-wrover% esp32s2%r2 esp32s3%r2 esp32s3%r8 esp32s3%r8v,$(CPU_MODEL)))
|
||||
|
||||
@ -161,10 +161,10 @@ endif
|
||||
|
||||
LINKFLAGS += -L$(RIOTCPU)/$(CPU)/ld/$(CPU_FAM)/
|
||||
|
||||
ifeq (,$(filter esp_ble,$(USEMODULE)))
|
||||
LINKFLAGS += -T$(RIOTCPU)/$(CPU)/ld/$(CPU_FAM)/memory.ld
|
||||
else
|
||||
ifneq (,$(filter esp32_sdk_lib_bt_esp32,$(USEPKG)))
|
||||
LINKFLAGS += -T$(RIOTCPU)/$(CPU)/ld/$(CPU_FAM)/memory_bt.ld
|
||||
else
|
||||
LINKFLAGS += -T$(RIOTCPU)/$(CPU)/ld/$(CPU_FAM)/memory.ld
|
||||
endif
|
||||
LINKFLAGS += -T$(RIOTCPU)/$(CPU)/ld/$(CPU_FAM)/sections.ld
|
||||
|
||||
@ -216,6 +216,8 @@ ifneq (,$(filter esp_ble,$(USEMODULE)))
|
||||
ARCHIVES += -lphy -lstdc++
|
||||
ifeq (esp32,$(CPU_FAM))
|
||||
ARCHIVES += -lrtc
|
||||
else ifeq (esp32c3,$(CPU_FAM))
|
||||
ARCHIVES += -lbtbb
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@ -241,7 +241,7 @@ The key features of ESP32-C3 are:
|
||||
| SPIs | 3 | yes (1) |
|
||||
| UARTs | 2 | yes |
|
||||
| WiFi | IEEE 802.11 b/g/n built in | yes |
|
||||
| Bluetooth | Bluetooth 5 (LE) | no |
|
||||
| Bluetooth | Bluetooth 5 (LE) | yes |
|
||||
| Ethernet | - | - |
|
||||
| CAN | version 2.0 | yes |
|
||||
| IR | up to 4 channels TX/RX | - |
|
||||
|
||||
@ -108,7 +108,6 @@
|
||||
#define CONFIG_BT_CONTROLLER_ONLY 1
|
||||
#else
|
||||
#define CONFIG_BT_ENABLED 0
|
||||
#define CONFIG_BTDM_RESERVE_DRAM 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
@ -94,6 +94,44 @@ extern "C" {
|
||||
#define CONFIG_ESP_SLEEP_POWER_DOWN_FLASH 1
|
||||
#define CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND 1
|
||||
|
||||
/**
|
||||
* ESP32-C3 BLE driver configuration (DO NOT CHANGE)
|
||||
*/
|
||||
#ifdef MODULE_ESP_BLE
|
||||
#define CONFIG_BT_CTRL_ADV_DUP_FILT_MAX 30
|
||||
#define CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD 20
|
||||
#define CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM 100
|
||||
#define CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP 1
|
||||
#define CONFIG_BT_CTRL_BLE_MAX_ACT 10
|
||||
#define CONFIG_BT_CTRL_BLE_MAX_ACT_EFF 10
|
||||
#define CONFIG_BT_CTRL_BLE_SCAN_DUPL 1
|
||||
#define CONFIG_BT_CTRL_BLE_STATIC_ACL_TX_BUF_NB 0
|
||||
#define CONFIG_BT_CTRL_CE_LENGTH_TYPE_EFF 0
|
||||
#define CONFIG_BT_CTRL_CE_LENGTH_TYPE_ORIG 1
|
||||
#define CONFIG_BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_DIS 1
|
||||
#define CONFIG_BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_EFF 0
|
||||
#define CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF 10
|
||||
#define CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P3 1
|
||||
#define CONFIG_BT_CTRL_HCI_MODE_VHCI 1
|
||||
#define CONFIG_BT_CTRL_HCI_TL 1
|
||||
#define CONFIG_BT_CTRL_HCI_TL_EFF 1
|
||||
#define CONFIG_BT_CTRL_HW_CCA_EFF 0
|
||||
#define CONFIG_BT_CTRL_HW_CCA_VAL 20
|
||||
#define CONFIG_BT_CTRL_MODE_EFF 1
|
||||
#define CONFIG_BT_CTRL_PINNED_TO_CORE 0
|
||||
#define CONFIG_BT_CTRL_RX_ANTENNA_INDEX_0 1
|
||||
#define CONFIG_BT_CTRL_RX_ANTENNA_INDEX_EFF 0
|
||||
#define CONFIG_BT_CTRL_SCAN_DUPL_CACHE_SIZE 100
|
||||
#define CONFIG_BT_CTRL_SCAN_DUPL_TYPE 0
|
||||
#define CONFIG_BT_CTRL_SCAN_DUPL_TYPE_DEVICE 1
|
||||
#define CONFIG_BT_CTRL_SLEEP_CLOCK_EFF 0
|
||||
#define CONFIG_BT_CTRL_SLEEP_MODE_EFF 0
|
||||
#define CONFIG_BT_CTRL_TX_ANTENNA_INDEX_0 1
|
||||
#define CONFIG_BT_CTRL_TX_ANTENNA_INDEX_EFF 0
|
||||
#define CONFIG_BT_ENABLED 1
|
||||
#define CONFIG_BT_SOC_SUPPORT_5_0 1
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user