depends on ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL
endchoice
- bool "BLE Scan Duplicate Options "
+ endmenu
+
+ config BLE_SCAN_DUPLICATE
++ bool "BLE Scan Duplicate Options"
+ depends on (BTDM_CONTROLLER_MODE_BTDM || BTDM_CONTROLLER_MODE_BLE_ONLY)
+ default y
+ help
+ This select enables parameters setting of BLE scan duplicate.
+
+ config DUPLICATE_SCAN_CACHE_SIZE
+ int "Maximum number of devices in scan duplicate filter"
+ depends on BLE_SCAN_DUPLICATE
+ range 10 200
+ default 20
+ help
+ Maximum number of devices which can be recorded in scan duplicate filter.
+ When the maximum amount of device in the filter is reached, the cache will be refreshed.
+
+ config BLE_MESH_SCAN_DUPLICATE_EN
+ bool "Special duplicate scan mechanism for BLE Mesh scan"
+ depends on BLE_SCAN_DUPLICATE
+ default n
+ help
+ This enables the BLE scan duplicate for special BLE Mesh scan.
+
+ config MESH_DUPLICATE_SCAN_CACHE_SIZE
+ int "Maximum number of Mesh adv packets in scan duplicate filter"
+ depends on BLE_MESH_SCAN_DUPLICATE_EN
+ range 10 200
+ default 50
+ help
+ Maximum number of adv packets which can be recorded in duplicate scan cache for BLE Mesh.
+ When the maximum amount of device in the filter is reached, the cache will be refreshed.
+
+
+
endmenu
menuconfig BLUEDROID_ENABLED
.rtc.bss (NOLOAD) :
{
_rtc_bss_start = ABSOLUTE(.);
- *rtc_wake_stub*.o(.bss .bss.*)
- *rtc_wake_stub*.o(COMMON)
+ *rtc_wake_stub*.*(.bss .bss.*)
+ *rtc_wake_stub*.*(COMMON)
+ *(.rtc.bss)
_rtc_bss_end = ABSOLUTE(.);
} > rtc_slow_seg
--- /dev/null
- set(COMPONENT_PRIV_REQUIRES "mbedtls" "lwip")
+set(COMPONENT_SRCDIRS "." "lib")
+set(COMPONENT_ADD_INCLUDEDIRS "include")
+set(COMPONENT_PRIV_INCLUDEDIRS "lib/include")
+
+set(COMPONENT_REQUIRES "nghttp")
++set(COMPONENT_PRIV_REQUIRES "mbedtls" "lwip" "esp-tls")
+
+register_component()
#if DMA_RX_BUF_NUM > 9
emac_config.emac_flow_ctrl_enable = config->flow_ctrl_enable;
#else
- if (config->flow_ctrl_enable == true) {
- ESP_LOGE(TAG, "eth flow ctrl init err!!! Please run make menuconfig and make sure DMA_RX_BUF_NUM > 9 .");
+ if(config->flow_ctrl_enable == true) {
- ESP_LOGE(TAG, "eth flow ctrl init err!!! Please run menuconfig and make sure DMA_RX_BUF_NUM > 9 .");
++ ESP_LOGE(TAG, "Can only configure flow_ctrl_enable==true if DMA_RX_BUF_NUM in menuconfig is >9. Disabling flow control.");
}
emac_config.emac_flow_ctrl_enable = false;
#endif
--- /dev/null
- The board comes in two versions, either with :ref:`esp-modules-and-boards-esp-wroom-32` or :ref:`esp-modules-and-boards-esp32-wrover` module soldered.\r
+ESP32-DevKitC V4 Getting Started Guide (CMake)\r
+==============================================\r
+\r
+This user guide shows how to get started with ESP32-DevKitC V4 development board. For description of other versions of the ESP32-DevKitC check :doc:`../hw-reference/index`.\r
+\r
+\r
+What You Need\r
+-------------\r
+\r
+* 1 × :ref:`ESP32-DevKitC V4 board <get-started-esp32-devkitc-board-front-cmake>`\r
+* 1 × USB A / micro USB B cable \r
+* 1 × PC loaded with Windows, Linux or Mac OS\r
+\r
+\r
+Overview\r
+--------\r
+\r
+ESP32-DevKitC V4 is a small-sized ESP32-based development board produced by `Espressif <https://espressif.com>`_. Most of the I/O pins are broken out to the pin headers on both sides for easy interfacing. Developers can connect these pins to peripherals as needed. Standard headers also make development easy and convenient when using a breadboard. \r
+\r
- :ref:`esp-modules-and-boards-esp-wroom-32` module soldered to the ESP32-DevKitC V4 board.\r
- ESP32-WROVER\r
- Optionally :ref:`esp-modules-and-boards-esp32-wrover` module may be soldered instead of the ESP-WROOM-32.\r
++The board supports various ESP32 modules, including :ref:`esp-modules-and-boards-esp32-wroom-32`, :ref:`ESP32-WROOM-32U <esp-modules-and-boards-esp32-wroom-32d-and-u>`, :ref:`ESP32-WROOM-32D <esp-modules-and-boards-esp32-wroom-32d-and-u>` and :ref:`esp-modules-and-boards-esp32-solo-1`.\r
+\r
+\r
+Functional Description\r
+----------------------\r
+\r
+The following list and figure below describe key components, interfaces and controls of ESP32-DevKitC V4 board.\r
+\r
+ESP-WROOM-32\r
++ :ref:`esp-modules-and-boards-esp32-wroom-32` module soldered to the ESP32-DevKitC V4 board. Optionally ESP32-WROOM-32D, ESP32-WROOM-32U or ESP32-SOLO-1 module may be soldered instead of the ESP32-WROOM-32.\r
+USB-UART Bridge\r
+ A single chip USB-UART bridge provides up to 3 Mbps transfers rates.\r
+Boot\r
+ Download button: holding down the **Boot** button and pressing the **EN** button initiates the firmware download mode. Then user can download firmware through the serial port.\r
+Micro USB Port\r
+ USB interface. It functions as the power supply for the board and the communication interface between PC and the ESP module.\r
+5V Power On LED\r
+ This LED lights when the USB or an external 5V power supply is applied to the board. For details see schematic in `Related Documents`_.\r
+EN\r
+ Reset button: pressing this button resets the system.\r
+I/O\r
+ Most of the pins on the ESP module are broken out to the pin headers on the board. Users can program ESP32 to enable multiple functions such as PWM, ADC, DAC, I2C, I2S, SPI, etc.\r
+\r
+ .. note::\r
+\r
+ Some of broken out pins are used internally be the ESP32 module to communicate with SPI memory. They are grouped on one side of the board besides the USB connector and labeled D0, D1, D2, D3, CMD and CLK. In general these pins should be left unconnected or access to the SPI flash memory / SPI RAM may be disturbed. \r
+\r
+ .. note::\r
+\r
+ GPIO16 and 17 are used internally by the ESP32-WROVER module. They are broken out and avialable for use only for boards that have the ESP-WROOM-32 module installed.\r
+\r
+\r
+.. _get-started-esp32-devkitc-board-front-cmake:\r
+\r
+.. figure:: ../../_static/esp32-devkitc-functional-overview.jpg\r
+ :align: center\r
+ :alt: ESP32-DevKitC V4 with ESP-WROOM-32 module soldered\r
+ :figclass: align-center\r
+\r
+ ESP32-DevKitC V4 with ESP-WROOM-32 module soldered\r
+\r
+\r
+Power Supply Options\r
+--------------------\r
+\r
+There following options are available to provide power supply to this board:\r
+\r
+1. Micro USB port, this is default power supply connection\r
+2. 5V / GND header pins\r
+3. 3V3 / GND header pins\r
+\r
+.. warning::\r
+\r
+ Above options are mutually exclusive, i.e. the power supply may be provided using only one of the above options. Attempt to power the board using more than one connection at a time may damage the board and/or the power supply source.\r
+\r
+\r
+Start Application Development\r
+------------------------------\r
+\r
+Before powering up the ESP32-DevKitC, please make sure that the board has been received in good condition with no obvious signs of damage.\r
+\r
+To start development of applications, proceed to section :doc:`index`, that will walk you through the following steps:\r
+\r
+* :ref:`get-started-setup-toolchain-cmake` in your PC to develop applications for ESP32 in C language\r
+* :ref:`get-started-connect-cmake` the module to the PC and verify if it is accessible\r
+* :ref:`get-started-build-cmake` for an example application\r
+* :ref:`get-started-flash-cmake` to run code on the ESP32\r
+* :ref:`get-started-build-monitor-cmake` instantly what the application is doing\r
+\r
+\r
+Board Dimensions\r
+----------------\r
+\r
+.. figure:: ../../_static/esp32-devkitc-dimensions-back.jpg\r
+ :align: center\r
+ :alt: ESP32 DevKitC board dimensions - back\r
+ :figclass: align-center\r
+\r
+ ESP32 DevKitC board dimensions - back\r
+\r
+\r
+Related Documents\r
+-----------------\r
+\r
+* `ESP32-DevKitC V4 schematic <https://dl.espressif.com/dl/schematics/esp32_devkitc_v4-sch.pdf>`_ (PDF)\r
+* `ESP32 Datasheet <https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf>`_ (PDF)\r
+* `ESP-WROOM-32 Datasheet <https://espressif.com/sites/default/files/documentation/esp-wroom-32_datasheet_en.pdf>`_ (PDF)\r
+* `ESP32-WROVER Datasheet <https://espressif.com/sites/default/files/documentation/esp32-wrover_datasheet_en.pdf>`_ (PDF)\r
+\r
+.. toctree::\r
+ :hidden:\r
+\r
+ get-started-devkitc-v2\r
:maxdepth: 1
General Notes <general-notes>
- Build System <build-system>
+ 编译系统 <build-system>
++ 编译系统 (CMake) <build-system-cmake>
Error Handling <error-handling>
Fatal Errors <fatal-errors>
Deep Sleep Wake Stubs <deep-sleep-stub>
# Override some defaults so BT stack is enabled and
# Classic BT is enabled and BT_DRAM_RELEASE is disabled
CONFIG_BT_ENABLED=y
+ CONFIG_BTDM_CONTROLLER_MODE_BLE_ONLY=
+ CONFIG_BTDM_CONTROLLER_MODE_BR_EDR_ONLY=
+ CONFIG_BTDM_CONTROLLER_MODE_BTDM=y
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_0=y
-CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_1=
+CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_1=n
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0
CONFIG_BTDM_CONTROLLER_HCI_MODE_VHCI=y
-CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4=
+CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4=n
CONFIG_BLUEDROID_ENABLED=y
CONFIG_BLUEDROID_PINNED_TO_CORE_0=y
-CONFIG_BLUEDROID_PINNED_TO_CORE_1=
+CONFIG_BLUEDROID_PINNED_TO_CORE_1=n
CONFIG_BLUEDROID_PINNED_TO_CORE=0
CONFIG_BTC_TASK_STACK_SIZE=3072
-CONFIG_BLUEDROID_MEM_DEBUG=
+CONFIG_BLUEDROID_MEM_DEBUG=n
CONFIG_CLASSIC_BT_ENABLED=y
CONFIG_A2DP_ENABLE=y
CONFIG_A2DP_SINK_ENABLE=y
-CONFIG_A2DP_SRC_ENABLE=
+CONFIG_A2DP_SRC_ENABLE=n
CONFIG_A2DP_SINK_TASK_STACK_SIZE=2048
-CONFIG_BT_SPP_ENABLED=
+CONFIG_BT_SPP_ENABLED=n
CONFIG_GATTS_ENABLE=y
-CONFIG_GATTC_ENABLE=
-CONFIG_BLE_SMP_ENABLE=
+CONFIG_GATTC_ENABLE=n
+CONFIG_BLE_SMP_ENABLE=n
CONFIG_BLE_ENABLE_SRVCHG_REG=y
-CONFIG_BT_STACK_NO_LOG=
+CONFIG_BT_STACK_NO_LOG=n
CONFIG_BT_ACL_CONNECTIONS=4
-CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=
-CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=
+CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=n
+CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=n
CONFIG_SMP_ENABLE=y
- CONFIG_BT_RESERVE_DRAM=0x10000
# BT config
#
CONFIG_BT_ENABLED=y
+ CONFIG_BTDM_CONTROLLER_MODE_BLE_ONLY=y
+ CONFIG_BTDM_CONTROLLER_MODE_BR_EDR_ONLY=
+ CONFIG_BTDM_CONTROLLER_MODE_BTDM=
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_0=y
-CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_1=
+CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_1=n
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0
CONFIG_BTDM_CONTROLLER_HCI_MODE_VHCI=y
-CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4=
+CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4=n
CONFIG_BLUEDROID_ENABLED=y
CONFIG_BLUEDROID_PINNED_TO_CORE_0=y
-CONFIG_BLUEDROID_PINNED_TO_CORE_1=
+CONFIG_BLUEDROID_PINNED_TO_CORE_1=n
CONFIG_BLUEDROID_PINNED_TO_CORE=0
CONFIG_BTC_TASK_STACK_SIZE=3072
-CONFIG_BLUEDROID_MEM_DEBUG=
-CONFIG_CLASSIC_BT_ENABLED=
+CONFIG_BLUEDROID_MEM_DEBUG=n
+CONFIG_CLASSIC_BT_ENABLED=n
CONFIG_GATTS_ENABLE=y
-CONFIG_GATTC_ENABLE=
-CONFIG_BLE_SMP_ENABLE=
+CONFIG_GATTC_ENABLE=n
+CONFIG_BLE_SMP_ENABLE=n
CONFIG_BLE_ENABLE_SRVCHG_REG=y
-CONFIG_BT_STACK_NO_LOG=
+CONFIG_BT_STACK_NO_LOG=n
CONFIG_BT_ACL_CONNECTIONS=4
-CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=
-CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=
-CONFIG_SMP_ENABLE=
+CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=n
+CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=n
+CONFIG_SMP_ENABLE=n
- CONFIG_BT_RESERVE_DRAM=0x10000
# Override some defaults so BT stack is enabled and
# Classic BT is enabled and BT_DRAM_RELEASE is disabled
CONFIG_BT_ENABLED=y
+ CONFIG_BTDM_CONTROLLER_MODE_BLE_ONLY=
+ CONFIG_BTDM_CONTROLLER_MODE_BR_EDR_ONLY=y
+ CONFIG_BTDM_CONTROLLER_MODE_BTDM=
CONFIG_CLASSIC_BT_ENABLED=y
-CONFIG_A2DP_ENABLE=
-CONFIG_GATTS_ENABLE=
-CONFIG_GATTC_ENABLE=
-CONFIG_BLE_SMP_ENABLE=
+CONFIG_A2DP_ENABLE=n
+CONFIG_GATTS_ENABLE=n
+CONFIG_GATTC_ENABLE=n
+CONFIG_BLE_SMP_ENABLE=n
components/espcoredump/espcoredump.py
components/heap/test_multi_heap_host/test_all_configs.sh
components/idf_test/unit_test/TestCaseScript/IDFUnitTest/__init__.py
+components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py
components/partition_table/gen_esp32part.py
components/partition_table/parttool.py
+ components/app_update/gen_empty_partition.py
+ components/app_update/dump_otadata.py
components/partition_table/test_gen_esp32part_host/gen_esp32part_tests.py
components/ulp/esp32ulp_mapgen.py
-components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py
docs/check_doc_warnings.sh
docs/check_lang_folder_sync.sh
docs/gen-kconfig-doc.py