/hal_espressif-3.6.0/docs/en/api-reference/system/ |
D | sleep_modes.rst | 13 …clocked from APB_CLK are powered off. The only parts of the chip which can still be powered on are: 23 …be done using several sources. These sources can be combined, in this case the chip will wake up w… 27 … or :cpp:func:`esp_deep_sleep_start` APIs. At this point the hardware will be configured according… 34 …ler_disable`, :cpp:func:`esp_wifi_stop`). WiFi and BT connections will not be maintained in deep s… 41 …ng appropriate calls (:cpp:func:`esp_wifi_stop`). WiFi connection will not be maintained in deep s… 43 If WiFi connection needs to be maintained, enable WiFi modem sleep, and enable automatic light slee… 51 RTC controller has a built in timer which can be used to wake up the chip after a predefined amount… 57 This wakeup mode doesn't require RTC peripherals or RTC memories to be powered on during sleep. 59 :cpp:func:`esp_sleep_enable_timer_wakeup` function can be used to enable deep sleep wakeup using a … 70 …keup mode when RTC peripherals are not forced to be powered on (i.e. ESP_PD_DOMAIN_RTC_PERIPH shou… [all …]
|
D | power_management.rst | 15 - Driver for a peripheral clocked from APB can request the APB frequency to be set to 80 MHz while … 17 - A peripheral driver may need interrupts to be enabled, which means it will have to request disabl… 24 Power management can be enabled at compile time, using the option :ref:`CONFIG_PM_ENABLE`. 26 …frequency, single/dual core mode, whether or not frequency switch needs to be done. Minimum extra … 28 …be enabled in an application by calling the function :cpp:func:`esp_pm_configure`. Its argument is… 30 …when the ``ESP_PM_CPU_FREQ_MAX`` lock is acquired. This field will usually be set to the default C… 31 …be set to the XTAL frequency value, or the XTAL frequency divided by an integer. Note that 10 MHz … 35 …equency will be determined by the :ref:`CONFIG_{IDF_TARGET_CFG_PREFIX}_DEFAULT_CPU_FREQ_MHZ` setti… 43 …d internal peripherals) will not be generated. A wakeup source described in the :doc:`sleep_modes`… 47 For example, the EXT0 and EXT1 wakeup sources can be used to wake up the chip via a GPIO. [all …]
|
D | intr_alloc.rst | 36 Non-shared interrupts can be either level- or edge-triggered. Shared interrupts can 37 only be level interrupts due to the chance of missed interrupts when edge interrupts are 52 Peripherals that can generate interrupts can be divided in two types: 70 …These peripherals can only be configured from the core they are associated with. When generating a… 72 …or of one core generate an interrupt on another core. That is why these sources can only be managed 74 …as normal, but they cannot be shared and will always have a fixed interrupt level (namely, the one… 82 …ernal interrupt slots in both CPU cores are wired to an interrupt multiplexer, which can be used to 90 …Care should be taken when calling :cpp:func:`esp_intr_alloc` from a task which is not pinned to a … 96 …om IRAM (and reads all its data from DRAM), and therefore does not need to be disabled during flas… 98 …ranteed minimum execution latency, as flash write and erase operations can be slow (erases can tak… [all …]
|
D | freertos_additions.rst | 18 …registering extra Idle and Tick hooks at run time. Moreover, the hooks can be asymmetric among bot… 28 …be filled manually by the user. For efficiency reasons, **items are always retrieved from the ring… 32 **Allow-Split buffers** will allow an item to be split in two parts when wrapping around the end of… 34 …tes, and any number of bytes can be sent or retrieved each time. Use byte buffers when separate it… 37 …ses. Therefore, when retrieving an item, the item pointer is guaranteed to be 32-bit aligned. This… 40 …be rounded up to a 32-bit aligned size (multiple of 4 bytes), however the true item size is record… 84 //This has to be done with SendAcquire, or the address may be different when we copy 200 …owever, the true size of the item is recorded inside the header which will be returned when the it… 215 …be sent to the buffer by ``SendComplete`` for the data to be accessible by the consumer. Multiple … 223 …em. Hence, if ``SendComplete`` is not called for the 20 bytes, it will not be available, nor will … [all …]
|
D | efuse.rst | 14 …er parameters. Each eFuse is a one-bit field which can be programmed to 1 after which it cannot be… 24 …or flash encrypt key. If not using that Flash Encryption feature, they can be used for another pur… 25 …* EFUSE_BLK2 is used for security boot key. If not using that Secure Boot feature, they can be use… 26 …* EFUSE_BLK3 can be partially reserved for the custom MAC address, or used entirely for user appli… 35 * EFUSE_BLK3 or EFUSE_BLK_USER_DATA can be used for user purposes; 36 …* EFUSE_BLK4 or EFUSE_BLK_KEY0 can be used as key (for secure_boot or flash_encryption) or for use… 37 …* EFUSE_BLK5 or EFUSE_BLK_KEY1 can be used as key (for secure_boot or flash_encryption) or for use… 38 …* EFUSE_BLK6 or EFUSE_BLK_KEY2 can be used as key (for secure_boot or flash_encryption) or for use… 39 …* EFUSE_BLK7 or EFUSE_BLK_KEY3 can be used as key (for secure_boot or flash_encryption) or for use… 40 …* EFUSE_BLK8 or EFUSE_BLK_KEY4 can be used as key (for secure_boot or flash_encryption) or for use… [all …]
|
/hal_espressif-3.6.0/components/esp_phy/ |
D | Kconfig | 7 … If this option is enabled, NVS will be initialized and calibration data will be loaded from there. 8 …PHY calibration will be skipped on deep sleep wakeup. If calibration data is not found, full calib… 9 … will be performed and stored in NVS. Normally, only partial calibration will be performed. 10 If this option is disabled, full calibration will be performed. 14 1.If your board is easy to be booted up with antenna disconnected. 22 If enabled, PHY init data will be loaded from a partition. 26 If PHY init data is stored in a partition, it has to be flashed there, 29 If this option is not enabled, PHY init data will be embedded 39 If enabled, PHY init data will be restored to default if 40 it cannot be verified successfully to avoid endless bootloops. [all …]
|
/hal_espressif-3.6.0/components/usb/ |
D | maintainers.md | 5 Note: The underlying DWC_OTG controller will sometimes be referred to as the Host Controller in thi… 7 …be called within critical sections. Therefore, the USB Host stack will prefix all such function na… 18 …ra notes regarding the hardware's behavior that are not specified / cannot be easily found in the … 28 - The channels will remain active (i.e., `HCCHAR.ChEna` will still be set) 29 … waiting for an interrupt) will not work for ISOC channels (the interrupt will never be generated). 52 - Models a single USB port where a single device can be attached 53 - Actions: Port can be powered ON/OFF, reset, suspended 59 …trollers abstraction of USB pipes. At any one point in time, a channel can be configured to map to… 60 - Channels have to be allocated and freed. It's possible to change a channel's endpoint characteris… 65 - A transfer descriptor list must be filled using `usbh_hal_xfer_desc_fill()` [all …]
|
/hal_espressif-3.6.0/docs/en/api-guides/ |
D | memory-types.rst | 8 …emory is executable, and can only be read or written via 4-byte aligned words. Data memory is not … 19 …ized data can also be placed into external RAM. To use this macro, the :ref:`CONFIG_SPIRAM_ALLOW_B… 31 Constant data may also be placed into DRAM, for example if it is used in an non-flash-safe ISR (see… 36 …``__NOINIT_ATTR`` can be used as attribute to place data into ``.noinit`` section. The values plac… 40 …be placed in external RAM. To do this, the :ref:`CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY` n… 61 ….. note:: Any internal SRAM which is not used for Instruction RAM will be made available as :ref:`… 66 Cases when parts of application should be placed into IRAM: 68 - Interrupt handlers must be placed into IRAM if ``ESP_INTR_FLAG_IRAM`` is used when registering th… 70 - Some timing critical code may be placed into IRAM to reduce the penalty associated with loading t… 79 If some specific application code needs to be placed into IRAM, it can be done by using the :doc:`l… [all …]
|
D | deep-sleep-stub.rst | 6 Deep sleep wake stub code is loaded into "RTC Fast Memory" and any data which it uses must also be … 11 Wake stub code must be carefully written: 17 …other RAM will be unintiailised and have random contents. The wake stub can use other RAM for temp… 30 If supplying a custom wake stub, the first thing it does should be to call ``esp_default_wake_deep_… 41 Wake stub code must be resident in RTC Fast Memory. This can be done in one of two ways. 58 Data used by stub code must be resident in RTC memory. 62 The data can be placed in RTC Fast memory or in RTC Slow memory which is also used by the ULP. 64 Specifying this data can be done in one of two ways: 66 …`` to specify any data (writeable or read-only, respectively) which should be loaded into RTC memo… 78 …be placed can be configured via menuconfig option named ``CONFIG_{IDF_TARGET_CFG_PREFIX}_RTCDATA_I… [all …]
|
D | external-ram.rst | 14 …l RAM, residing on the same die as the rest of the chip components. It can be insufficient for som… 34 …applications. Once the external RAM is initialized at startup, ESP-IDF can be configured to handle… 68 … ``heap_caps_malloc(size, MALLOC_CAP_SPIRAM)``. After use, this memory can be freed by calling the… 78 …the previous option. However, it is also added to the pool of RAM that can be returned by the stan… 82 An additional configuration item, :ref:`CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL`, can be used to set th… 89 …be allocated in internal memory, a second configuration item :ref:`CONFIG_SPIRAM_MALLOC_RESERVE_IN… 100 …If enabled, a region of the address space starting from {IDF_TARGET_PSRAM_ADDR_START} will be used… 102 …Additional data can be moved from the internal BSS segment to external RAM by applying the macro `… 108 …Remaining external RAM can also be added to the capability heap allocator using the method shown a… 118 …ace provided in external RAM will be used to store non-initialized data. The values placed in this… [all …]
|
D | build-system-legacy.rst | 21 …roject can be seen as an amalgamation of a number of components. For example, for a webserver that… 42 …s) and linked into an app. Some are provided by esp-idf itself, others may be sourced from other p… 46 …ds the path of the ``esp-idf`` directory. This allows the IDF framework to be decoupled from your … 48 …f the project. The toolchain should be installed in the system command line PATH, or the path to t… 75 …he project (including esp-idf itself). The "sdkconfig" file may or may not be added to the source … 77 …roject does not have to contain custom components of this kind, but it can be useful for structuri… 85 …a ``Kconfig`` file defining the `component configuration` options that can be set via the project … 90 …tains build settings for the entire project. By default, the project Makefile can be quite minimal. 109 These variables all have default values that can be overridden for custom behaviour. Look in ``make… 119 Any paths in these Makefile variables should be absolute paths. You can convert relative paths usin… [all …]
|
D | ulp-risc-v.rst | 16 … low power modes. The main difference from the FSM ULP is this variant can be programmed in C usin… 23 …:`Getting Started Guide <../../get-started/index>`, then the toolchain should already be installed. 30 To compile the ULP-RISC-V code as part of the component, the following steps must be taken: 32 1. The ULP-RISC-V code, written in C or assembly (must use the `.S` extension), must be placed into… 34 … the component (via ``idf_component_register``), this directory should not be added to the ``SRC_D… 47 …_binary`` specifies the ULP binary name. The name specified here will also be used by other genera… 49 …rgument specifies the list of component source files which include the header file to be generated. 50 … the dependencies correctly and ensure that the generated header file will be created before any o… 61 …me.elf``). The Map file (``ulp_app_name.map``) generated at this stage may be useful for debugging… 63 …5. **Dump the contents of the ELF file into a binary** (``ulp_app_name.bin``) which can then be em… [all …]
|
/hal_espressif-3.6.0/components/wear_levelling/doc/ |
D | wl_sw_structure.rst | 11 …format from current version incompatible with data format from previous versions, and could not be 34 - erase_range - erase range of memory. The address of rage must be rounded to the sector size. 46 - full_mem_size - amount of memory that was allocated and can be used by WLC 48 - page_size - size of memory for relocation at once. Must be N*sector_size, where N > 0. 52 - temp_buff_size - amount of memory that the WLC will allocate internally. Must be > 0. 64 …is wrong, the WLC can recover the state from another. The broken copy will be overwritten by anoth… 70 …egion divided to N pages (page could be equal to the sector size). One page defined as dummy page.… 72 …be counted by erase counter. When this counter reached the *updaterate* number the page after Dumm… 73 be cleared and move counter will be incremented. This procedure will be repeated again and again. 74 …y page will be at last page in the memory and erase counter will reach the updaterate, the move co… [all …]
|
/hal_espressif-3.6.0/components/freertos/include/freertos/ |
D | FreeRTOS.h | 82 …#error Missing definition: configMINIMAL_STACK_SIZE must be defined in FreeRTOSConfig.h. configM… 86 …#error Missing definition: configMAX_PRIORITIES must be defined in FreeRTOSConfig.h. See the Con… 90 #error configMAX_PRIORITIES must be defined to be greater than or equal to 1. 94 …#error Missing definition: configUSE_PREEMPTION must be defined in FreeRTOSConfig.h as either 1 o… 98 …#error Missing definition: configUSE_IDLE_HOOK must be defined in FreeRTOSConfig.h as either 1 or… 102 …#error Missing definition: configUSE_TICK_HOOK must be defined in FreeRTOSConfig.h as either 1 or… 106 …#error Missing definition: configUSE_16_BIT_TICKS must be defined in FreeRTOSConfig.h as either 1… 134 …skDelayUntil are both defined. INCLUDE_vTaskDelayUntil is no longer required and should be removed 207 #error configMAX_CO_ROUTINE_PRIORITIES must be greater than or equal to 1. 256 #error configMAX_TASK_NAME_LEN must be set to a minimum of 1 in FreeRTOSConfig.h [all …]
|
/hal_espressif-3.6.0/docs/en/api-guides/esp-ble-mesh/ |
D | ble-mesh-faq.rst | 14 Users could refer to the sections for quick answer to their questions. This document will be update… 22 …h network. And after provisioning, roles of the unprovisioned devices will be changed to those of … 33 1.2 If a Provisioner wants to change states of a node, what requirements should be met for a Provis… 37 … - NetKey and AppKey used to encrypt messages shall be owned by both the node and the Provisioner. 38 …- The address owned by the node shall be known, which could be its unicast address or subscription… 40 1.3 How can NetKey and AppKey be used? 43 …on of messages in Network Layer. Nodes with the same NetKey are assumed to be in the same subnet w… 44 …client model and server model are bound to different AppKeys, the communication cannot be achieved. 49 …- The API :cpp:func:`esp_ble_mesh_provisioner_add_local_net_key` can be used to add a NetKey with … 50 …- The API :cpp:func:`esp_ble_mesh_provisioner_add_local_app_key` can be used to add an AppKey with… [all …]
|
/hal_espressif-3.6.0/components/esp32/ |
D | Kconfig | 2 # TODO: this component simply shouldn't be included 46 CPU frequency to be set on application startup. 117 … will be occupied by the system. Which SPI host to use can be selected by the config item 119 option to select 80MHz will only be visible if the flash SPI speed is also 80MHz. 138 … when the cache line needs to be fetched from external RAM and an interrupt occurs. This enables a 140 vulnerable to this will not be emitted. 159 … encryption and this will be automatically disabled if this workaround is selected. 173 #This needs to be Y only for the dupldst workaround 188 … Putting these function in IRAM will allow them to be called when flash cache is disabled 198 … Putting these function in IRAM will allow them to be called when flash cache is disabled [all …]
|
/hal_espressif-3.6.0/components/bt/esp_ble_mesh/ |
D | Kconfig.in | 19 in BLE Mesh, and Scan Duplicate Type must be set by choosing the 38 allow sufficient free internal memory then alternate mode can be 78 be used, and internal DRAM will be allocated for FreeRTOS objects. 84 Choose the memory to be used for FreeRTOS objects. 92 can only be used for task stack when SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY 100 FreeRTOS objects, i.e. mutex, queue. Note: IRAM region cannot be used 148 Enable this option to allow BLE Mesh fast provisioning solution to be used. 152 into a node successfully, it can be changed to a temporary Provisioner. 157 Enable the device to be provisioned into a node. This option should be 158 enabled when an unprovisioned device is going to be provisioned into a [all …]
|
/hal_espressif-3.6.0/docs/en/api-reference/peripherals/ |
D | timer.rst | 21 * :ref:`timer-api-timer-initialization` - covers which parameters should be set up to get the timer… 32 …_TARGET_NAME} timer group should be identified using :cpp:type:`timer_group_t`. An individual time… 34 …be initialized by calling the function :cpp:func:`timer_init` and passing a structure :cpp:type:`t… 40 …- **Mode**: Sets if the counter should be incrementing or decrementing. It can be defined using :c… 42 - **Alarm Enable**: Can be set using :cpp:member:`alarm_en`. 64 …ange the rate of ticking. To avoid unpredictable results, the timer should be paused when changing… 65 Mode :cpp:func:`timer_set_counter_mode` Set if the counter should be incrementing or de… 66 Auto Reload :cpp:func:`timer_set_auto_reload` Set if the initial counter value should be relo… 74 …hen enable the alarm using :cpp:func:`timer_set_alarm`. The alarm can also be enabled during the t… 78 …* An interrupt will be triggered if previously configured. See Section :ref:`timer-api-interrupts`… [all …]
|
D | ds.rst | 8 … RSA parameters nor the input key for the HMAC key derivation function can be seen by the software… 18 In turn, the HMAC module uses a key from the eFuses key block which can be read-protected to preven… 24 Both the HMAC key and the RSA private key have to be created and stored before the DS peripheral ca… 25 This needs to be done in software on the {IDF_TARGET_NAME} or alternatively on a host. 35 Three parameters need to be prepared to calculate the digital signature: 39 #. and the message to be signed. 43 If software needs to do something else during the calculation, :cpp:func:`esp_ds_start_sign` can be… 44 Once the calculation has finished, :cpp:func:`esp_ds_finish_sign` can be called to get the resultin… 54 The DS peripheral on {IDF_TARGET_NAME} chip must be configured before it can be used for a TLS conn… 60 4) Then burn the 256 bit `HMAC_KEY` on the efuse, which can only be read by the DS peripheral. [all …]
|
D | spi_slave.rst | 12 …{IDF_TARGET_NAME} integrates two general purpose SPI controllers which can be used as slave nodes … 23 …{IDF_TARGET_NAME} integrates one general purpose SPI controller which can be used as slave node dr… 44 …asserting the CS line. Transactions are atomic, which means they can never be interrupted by anoth… 66 …ULL, the read phase will be skipped. If :cpp:member:`spi_slave_transaction_t::tx_buffer` is set to… 80 …If transactions will be longer than 32 bytes, allow a DMA channel 1 or 2 by setting the parameter … 84 …If transactions will be longer than 32 bytes, allow a DMA channel by setting the parameter ``dma_c… 86 …e latter two functions will be blocked until the Host has initiated and finished a transaction, ca… 94 …be transferred to or from a Device is read or written to a chunk of memory indicated by the :cpp:m… 96 …h drives the clock and CS lines. The actual length of the transmission can be read only after a tr… 98 …be sent and received. In this case, :cpp:member:`trans_len` is set to :cpp:member:`length` instead… [all …]
|
/hal_espressif-3.6.0/components/esp_pm/ |
D | Kconfig | 20 If disabled, DFS will not be active until the application 30 scale and base value need to be adjusted. Each adjustment may cause 32 If this option is enabled, RTC timer will be used as a reference to 45 This feature can be used to analyze which locks are preventing the chip 48 overhead, so should typically be disabled in production builds. 55 If enabled, some GPIOs will be used to signal events such as RTOS ticks, 58 This feature is intended to be used when analyzing/debugging behavior 59 of power management implementation, and should be kept disabled in 66 … If enabled, about 1.8KB of lightsleep related source code would be in IRAM and chip would sleep 68 This feature is intended to be used when lower power consumption is needed [all …]
|
/hal_espressif-3.6.0/components/app_update/ |
D | Kconfig.projbuild | 7 …If set, then the app will be built with the current time/date stamp. It is stored in the app descr… 8 …structure. If not set, time/date stamp will be excluded from app image. This can be useful for get… 16 This value will not be contained in the esp_app_desc structure. 23 This value will not be contained in the esp_app_desc structure. 29 … If this is enabled, then config item APP_PROJECT_VER will be used for the variable PROJECT_VER. 30 Other ways to set PROJECT_VER will be ignored. 46 if it needs to be printed by the panic handler code.
|
/hal_espressif-3.6.0/components/esp_hw_support/ |
D | Kconfig.spiram.common | 13 If this is enabled, the SPI RAM will be enabled during initial boot. Unless you 15 during boot-up can also be placed in SPI RAM. 24 but no PSRAM will be available. 30 The SPI RAM can be accessed in multiple methods: by just having it available as an unmanaged 59 … allocate chunks less than this size in internal memory, while allocations larger than this will be 73 …int "Reserve this amount of bytes for data that specifically needs to be in DMA or internal memory" 87 be sure to keep this in mind when adjusting this value. 89 …Note also that the DMA reserved pool may not be one single contiguous memory region, depending on … 98 …If enabled, variables with EXT_RAM_ATTR attribute will be placed in SPIRAM instead of internal DRA… 99 BSS section of `lwip`, `net80211`, `pp`, `bt` libraries will be automatically placed [all …]
|
/hal_espressif-3.6.0/components/freertos/ |
D | Kconfig | 14 # Intended to be used as a constant from other Kconfig files. 29 # ESP32S2 also has SYSTIMER but it can not be used for the FreeRTOS SysTick because: 31 # A counter for SysTick should be stall in debug mode but work esp_timer. 85 support will be built. 138 … the stack overflow may already be long gone by then. This option will use the last debug memory 145 …decreases by up to 60 bytes. This is because the watchpoint region has to be aligned to its size a… 159 If this option is enabled, interrupt stack frame will be modified to 163 nested interrupts: higer level interrupt stack can be traced back to the 175 This value must be at least 1. Index 0 is reserved for use by the pthreads API 176 thread-local-storage. Other indexes can be used for any desired purpose. [all …]
|
/hal_espressif-3.6.0/docs/en/security/ |
D | secure-boot-v2.rst | 14 …Secure Boot V2 uses RSA based app and bootloader verification. This document can also be used as a… 28 … that the first stage bootloader does not require signing as it is ROM code thus cannot be changed. 43 - Only one public key can be generated and stored in the chip during manufacturing. 47 - Up to three public keys can be generated and stored in the chip during manufacturing. 49 …ovides the facility to permanently revoke individual public keys. This can be configured conservat… 67 Only one signature block can be appended to the bootloader or application image in ESP32 ECO3. 71 …Up to 3 signature blocks can be appended to the bootloader or application image in {IDF_TARGET_NAM… 75 … over the air (OTA) update. If the currently selected OTA app image cannot be verified, the bootlo… 79 …e Boot V2 bit in the eFuse. If Secure Boot is disabled, a normal boot will be executed. If Secure … 81 …s signature block (:ref:`verify_signature-block`). If this fails, the boot process will be aborted. [all …]
|