mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'feature/improve_doc_link_check' into 'master'
docs: fix broken links and re-enable linkchecker Closes IDF-2640 See merge request espressif/esp-idf!17919
This commit is contained in:
commit
030e52f5d4
@ -233,5 +233,4 @@ check_doc_links:
|
||||
script:
|
||||
- cd docs
|
||||
- pip install -U -r requirements.txt
|
||||
# At the moment this check will always fail due to multiple known limitations, ignore result
|
||||
- build-docs -t $DOCTGT -l $DOCLANG linkcheck || { echo "THERE ARE ISSUES DUE TO KNOWN LIMITATIONS, PLEASE FIX THEM. Nowadays we're ignored them to pass pipeline."; true; }
|
||||
- build-docs -t $DOCTGT -l $DOCLANG linkcheck
|
||||
|
@ -1447,7 +1447,7 @@ esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable);
|
||||
*
|
||||
*
|
||||
* @param[in] icon - External appearance value, these values are defined by the Bluetooth SIG, please refer to
|
||||
* https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.gap.appearance.xml
|
||||
* https://specificationrefs.bluetooth.com/assigned-values/Appearance%20Values.pdf
|
||||
*
|
||||
* @return
|
||||
* - ESP_OK : success
|
||||
|
@ -196,6 +196,21 @@ google_analytics_id = os.environ.get('CI_GOOGLE_ANALYTICS_ID', None)
|
||||
|
||||
project_homepage = 'https://github.com/espressif/esp-idf'
|
||||
|
||||
linkcheck_anchors = False
|
||||
|
||||
linkcheck_exclude_documents = ['index', # several false positives due to the way we link to different sections
|
||||
'api-reference/protocols/esp_local_ctrl', # Fails due to `https://<mdns-hostname>.local`
|
||||
'api-reference/provisioning/wifi_provisioning', # Fails due to `https://<mdns-hostname>.local`
|
||||
]
|
||||
|
||||
|
||||
linkcheck_ignore = ['https://webhome.phy.duke.edu/~rgb/General/dieharder.php', # Certificate error
|
||||
'https://dl.espressif.com/dl/esp32s3_rom.elf', # Not published
|
||||
'https://docs.espressif.com/projects/esptool/en/latest/esp32c2/espefuse/index.html', # Not published
|
||||
'https://www.espressif.com/sites/default/files/documentation/esp32-c2_datasheet_en.pdf', # Not published
|
||||
]
|
||||
|
||||
|
||||
# Custom added feature to allow redirecting old URLs
|
||||
with open('../page_redirects.txt') as f:
|
||||
lines = [re.sub(' +', ' ', line.strip()) for line in f.readlines() if line.strip() != '' and not line.startswith('#')]
|
||||
|
@ -152,7 +152,7 @@ Copyright (C) 2011, ChaN, all right reserved.
|
||||
.. _TinyBasic: https://github.com/BleuLlama/TinyBasicPlus
|
||||
.. _miniz: https://code.google.com/archive/p/miniz/
|
||||
.. _wpa_supplicant: https://w1.fi/wpa_supplicant/
|
||||
.. _FreeBSD net80211: https://github.com/freebsd/freebsd/tree/master/sys/net80211
|
||||
.. _FreeBSD net80211: https://github.com/freebsd/freebsd-src/tree/master/sys/net80211
|
||||
.. _TJpgDec: http://elm-chan.org/fsw/tjpgd/00index.html
|
||||
.. _argtable3: https://github.com/argtable/argtable3
|
||||
.. _linenoise: https://github.com/antirez/linenoise
|
||||
@ -160,7 +160,7 @@ Copyright (C) 2011, ChaN, all right reserved.
|
||||
.. _cJSON: https://github.com/DaveGamble/cJSON
|
||||
.. _micro-ecc: https://github.com/kmackay/micro-ecc
|
||||
.. _OpenBSD SD/MMC driver: https://github.com/openbsd/src/blob/f303646/sys/dev/sdmmc/sdmmc.c
|
||||
.. _Mbed TLS: https://github.com/ARMmbed/mbedtls
|
||||
.. _Mbed TLS: https://github.com/Mbed-TLS/mbedtls
|
||||
.. _spiffs: https://github.com/pellepl/spiffs
|
||||
.. _asio: https://github.com/chriskohlhoff/asio
|
||||
.. _mqtt: https://github.com/espressif/esp-mqtt
|
||||
|
@ -4,7 +4,7 @@ About
|
||||
|
||||
.. only:: esp32
|
||||
|
||||
This is documentation of `ESP-IDF <https://github.com/espressif/esp-idf>`_, the framework to develop applications for `{IDF_TARGET_NAME} <https://espressif.com/en/products/hardware/esp32/overview>`_ chip by `Espressif <https://espressif.com>`_.
|
||||
This is documentation of `ESP-IDF <https://github.com/espressif/esp-idf>`_, the framework to develop applications for `{IDF_TARGET_NAME} <https://www.espressif.com/en/products/socs/esp32>`_ chip by `Espressif <https://espressif.com>`_.
|
||||
|
||||
The {IDF_TARGET_NAME} is 2.4 GHz Wi-Fi and Bluetooth combo, which integrates one or two Xtensa® 32-bit LX6 CPU, with up to 600 DMIPS processing power.
|
||||
|
||||
|
@ -444,7 +444,7 @@ Good instructions on how to install, configure, and visualize data in Impulse fr
|
||||
6. Double-click the created port. View for this port should open.
|
||||
7. Click the ``Start/Stop Streaming`` button. Data should be loaded.
|
||||
8. Use the ``Zoom Out``, ``Zoom In`` and ``Zoom Fit`` buttons to inspect data.
|
||||
9. For settings measurement cursors and other features, please see `Impulse documentation <https://toem.de/index.php/projects/impulse>`_).
|
||||
9. For settings measurement cursors and other features, please see `Impulse documentation <https://toem.de/index.php/products/impulse>`_).
|
||||
|
||||
.. note::
|
||||
|
||||
@ -459,7 +459,7 @@ Gcov (Source Code Coverage)
|
||||
Basics of Gcov and Gcovr
|
||||
""""""""""""""""""""""""
|
||||
|
||||
Source code coverage is data indicating the count and frequency of every program execution path that has been taken within a program's runtime. `Gcov <https://en.wikipedia.org/wiki/Gcov>`_ is a GCC tool that, when used in concert with the compiler, can generate log files indicating the execution count of each line of a source file. The `Gcovr <https://gcovr.com>`_ tool is a utility for managing Gcov and generating summarized code coverage results.
|
||||
Source code coverage is data indicating the count and frequency of every program execution path that has been taken within a program's runtime. `Gcov <https://en.wikipedia.org/wiki/Gcov>`_ is a GCC tool that, when used in concert with the compiler, can generate log files indicating the execution count of each line of a source file. The `Gcovr <https://gcovr.com/>`_ tool is a utility for managing Gcov and generating summarized code coverage results.
|
||||
|
||||
Generally, using Gcov to compile and run programs on the host will undergo these steps:
|
||||
|
||||
@ -553,7 +553,7 @@ Generating Coverage Report
|
||||
|
||||
Once the code coverage data has been dumped, the ``.gcno``, ``.gcda`` and the source files can be used to generate a code coverage report. A code coverage report is simply a report indicating the number of times each line in a source file has been executed.
|
||||
|
||||
Both Gcov and Gcovr can be used to generate code coverage reports. Gcov is provided along with the Xtensa toolchain, whilst Gcovr may need to be installed separately. For details on how to use Gcov or Gcovr, refer to `Gcov documentation <https://gcc.gnu.org/onlinedocs/gcc/Gcov.html>`_ and `Gcovr documentation <http://gcovr.com/>`_.
|
||||
Both Gcov and Gcovr can be used to generate code coverage reports. Gcov is provided along with the Xtensa toolchain, whilst Gcovr may need to be installed separately. For details on how to use Gcov or Gcovr, refer to `Gcov documentation <https://gcc.gnu.org/onlinedocs/gcc/Gcov.html>`_ and `Gcovr documentation <https://gcovr.com/>`_.
|
||||
|
||||
Adding Gcovr Build Target to Project
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -1016,7 +1016,7 @@ Importing a library might look like this for a hypothetical library ``foo`` to b
|
||||
|
||||
For an actual example, take a look at :example:`build_system/cmake/import_lib`. Take note that what needs to be done in order to import the library may vary. It is recommended to read up on the library's documentation for instructions on how to import it from other projects. Studying the library's CMakeLists.txt and build structure can also be helpful.
|
||||
|
||||
It is also possible to wrap a third-party library to be used as a component in this manner. For example, the :component:`mbedtls` component is a wrapper for Espressif's fork of `mbedtls <https://github.com/ARMmbed/mbedtls>`_. See its :component_file:`component CMakeLists.txt <mbedtls/CMakeLists.txt>`.
|
||||
It is also possible to wrap a third-party library to be used as a component in this manner. For example, the :component:`mbedtls` component is a wrapper for Espressif's fork of `mbedtls <https://github.com/Mbed-TLS/mbedtls>`_. See its :component_file:`component CMakeLists.txt <mbedtls/CMakeLists.txt>`.
|
||||
|
||||
The CMake variable ``ESP_PLATFORM`` is set to 1 whenever the ESP-IDF build system is being used. Tests such as ``if (ESP_PLATFORM)`` can be used in generic CMake code if special IDF-specific logic is required.
|
||||
|
||||
|
@ -530,11 +530,13 @@ Generally, a Provisioner is used to provision unprovisioned devices and form a m
|
||||
3.2 Why is the Wi-Fi throughput so low when Wi-Fi and ESP-BLE-MESH coexist?
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The `ESP32-DevKitC <../../hw-reference/esp32/get-started-devkitc>`_ board without PSRAM can run properly but the throughput of it is low since it has no PSRAM. When Bluetooth and Wi-Fi coexist, the throughput of ESP32-DevKitC with PSRAM can be stabilized to more than 1Mbps.
|
||||
.. only:: esp32
|
||||
|
||||
And some configurations in menuconfig shall be enabled to support PSRAM.
|
||||
The :doc:`ESP32-DevKitC <../../hw-reference/esp32/get-started-devkitc>` board without PSRAM can run properly but the throughput of it is low since it has no PSRAM. When Bluetooth and Wi-Fi coexist, the throughput of ESP32-DevKitC with PSRAM can be stabilized to more than 1Mbps.
|
||||
|
||||
- :code:`ESP32-specific --> Support for external,SPI-connected RAM --> Try to allocate memories of Wi-Fi and LWIP...`
|
||||
Some configurations in menuconfig shall be enabled to support PSRAM.
|
||||
|
||||
- :code:`{IDF_TARGET_NAME}-specific --> Support for external,SPI-connected RAM --> Try to allocate memories of Wi-Fi and LWIP...`
|
||||
- :code:`Bluetooth --> Bluedroid Enable --> BT/BLE will first malloc the memory from the PSRAM`
|
||||
- :code:`Bluetooth --> Bluedroid Enable --> Use dynamic memory allocation in BT/BLE stack.`
|
||||
- :code:`Bluetooth --> Bluetooth controller --> BLE full scan feature supported.`
|
||||
|
@ -123,11 +123,11 @@ Mesh Applications
|
||||
* :example_file:`Fast Provisioning Client Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_client/tutorial/BLE_Mesh_Fast_Prov_Client_Example_Walkthrough.md>`
|
||||
* :example_file:`Fast Provisioning Server Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_server/tutorial/BLE_Mesh_Fast_Prov_Server_Example_Walkthrough.md>`
|
||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_fast_provision>`
|
||||
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`__
|
||||
* `Demo Video <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`__
|
||||
* ESP-BLE-MESH and Wi-Fi Coexistence
|
||||
* :example_file:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/tutorial/BLE_Mesh_WiFi_Coexist_Example_Walkthrough.md>`
|
||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist>`
|
||||
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`__
|
||||
* `Demo Video <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`__
|
||||
* ESP-BLE-MESH Console Commands
|
||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_console>`
|
||||
|
||||
|
@ -229,9 +229,9 @@ ESP-BLE-MESH Examples
|
||||
ESP-BLE-MESH Demo Videos
|
||||
========================
|
||||
|
||||
* `Provisioning of ESP-BLE-MESH nodes using Smartphone App <http://download.espressif.com/BLE_MESH/Docs4Customers/esp-ble-mesh-demo.mp4>`_
|
||||
* `Espressif Fast Provisioning using ESP-BLE-MESH App <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`_
|
||||
* `Espressif ESP-BLE-MESH and Wi-Fi Coexistence <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`_
|
||||
* `Provisioning of ESP-BLE-MESH nodes using Smartphone App <https://download.espressif.com/BLE_MESH/Docs4Customers/esp-ble-mesh-demo.mp4>`_
|
||||
* `Espressif Fast Provisioning using ESP-BLE-MESH App <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`_
|
||||
* `Espressif ESP-BLE-MESH and Wi-Fi Coexistence <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`_
|
||||
|
||||
|
||||
ESP-BLE-MESH FAQ
|
||||
@ -264,13 +264,13 @@ Bluetooth SIG Documentation
|
||||
|
||||
- `BLE Mesh Core Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=429633>`_
|
||||
- `BLE Mesh Model Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=429634>`_
|
||||
- `An Intro to Bluetooth Mesh Part 1 <https://blog.bluetooth.com/an-intro-to-bluetooth-mesh-part1>`_ / `Part 2 <https://blog.bluetooth.com/an-intro-to-bluetooth-mesh-part2>`__
|
||||
- `The Fundamental Concepts of Bluetooth Mesh Networking, Part 1 <https://blog.bluetooth.com/the-fundamental-concepts-of-bluetooth-mesh-networking-part-1>`_ / `Part 2 <https://blog.bluetooth.com/the-fundamental-concepts-of-bluetooth-mesh-networking-part-2>`__
|
||||
- `Bluetooth Mesh Networking: Friendship <https://blog.bluetooth.com/bluetooth-mesh-networking-series-friendship>`_
|
||||
- `Management of Devices in a Bluetooth Mesh Network <https://blog.bluetooth.com/management-of-devices-bluetooth-mesh-network>`_
|
||||
- `Bluetooth Mesh Security Overview <https://blog.bluetooth.com/bluetooth-mesh-security-overview>`_
|
||||
- `Provisioning a Bluetooth Mesh Network Part 1 <https://blog.bluetooth.com/provisioning-a-bluetooth-mesh-network-part-1>`_ / `Part 2 <https://blog.bluetooth.com/provisioning-a-bluetooth-mesh-network-part-2>`__
|
||||
- `An Intro to Bluetooth Mesh Part 1 <https://www.bluetooth.com/blog/an-intro-to-bluetooth-mesh-part1>`_ / `Part 2 <https://www.bluetooth.com/blog/an-intro-to-bluetooth-mesh-part2>`__
|
||||
- `The Fundamental Concepts of Bluetooth Mesh Networking, Part 1 <https://www.bluetooth.com/blog/the-fundamental-concepts-of-bluetooth-mesh-networking-part-1>`_ / `Part 2 <https://www.bluetooth.com/blog/the-fundamental-concepts-of-bluetooth-mesh-networking-part-2>`__
|
||||
- `Bluetooth Mesh Networking: Friendship <https://www.bluetooth.com/blog/bluetooth-mesh-networking-series-friendship>`_
|
||||
- `Management of Devices in a Bluetooth Mesh Network <https://www.bluetooth.com/blog/management-of-devices-bluetooth-mesh-network>`_
|
||||
- `Bluetooth Mesh Security Overview <https://www.bluetooth.com/blog/bluetooth-mesh-security-overview>`_
|
||||
- `Provisioning a Bluetooth Mesh Network Part 1 <https://www.bluetooth.com/blog/provisioning-a-bluetooth-mesh-network-part-1>`_ / `Part 2 <https://www.bluetooth.com/blog/provisioning-a-bluetooth-mesh-network-part-2>`__
|
||||
|
||||
|
||||
.. _ESP32-DevKitC: https://www.espressif.com/en/products/hardware/esp32-devkitc/overview
|
||||
.. _ESP32-DevKitC: https://www.espressif.com/en/products/devkits/esp32-devkitc/overview
|
||||
.. _ESP-WROVER-KIT: https://www.espressif.com/en/products/hardware/esp-wrover-kit/overview
|
||||
|
@ -215,7 +215,7 @@ ESP-BLE-MESH Terminology
|
||||
- A node can also use an IV Update procedure to signal to peer nodes that it is updating the IV Index.
|
||||
- The IV Update procedure is used to update the value of ESP-BLE-MESH network's IV Index. This value is related to the random number required for message encryption. To ensure that the value of the random number is not repeated, this value is periodically incremented. IV Index is a 32-bit value and a shared network resource. For example, all nodes in a mesh network share the same IV Index value. Starting from 0x00000000, the IV Index increments during the IV Update procedure and maintained by a specific process, ensuring the IV Index shared in the mesh network is the same. This can be done when the node believes that it has the risk of exhausting its sequence number, or when it determines that another node is nearly exhausting its sequence number. Note: The update time must not be less than 96 hours. It can be triggered when a secure network beacon is received, or when the node determines that its sequence number is greater than a certain value.
|
||||
|
||||
For more terms, please see: `ESP-BLE-MESH Glossary of Terms <https://www.bluetooth.com/learn-about-bluetooth/bluetooth-technology/topology-options/le-mesh/mesh-glossary/>`_.
|
||||
For more terms, please see: `ESP-BLE-MESH Glossary of Terms <https://www.bluetooth.com/learn-about-bluetooth/recent-enhancements/mesh/mesh-glossary/>`_.
|
||||
|
||||
|
||||
|
||||
|
@ -34,7 +34,7 @@ Windows
|
||||
|
||||
1. Using standard USB A / micro USB B cable connect |devkit-name| to the computer. Switch the |devkit-name| on.
|
||||
|
||||
2. Wait until USB ports of |devkit-name| are recognized by Windows and drives are installed. If they do not install automatically, then download them from https://www.ftdichip.com/Drivers/D2XX.htm and install manually.
|
||||
2. Wait until USB ports of |devkit-name| are recognized by Windows and drives are installed. If they do not install automatically, then download them from https://ftdichip.com/drivers/d2xx-drivers/ and install manually.
|
||||
|
||||
3. Download Zadig tool (Zadig_X.X.exe) from https://zadig.akeo.ie/ and run it.
|
||||
|
||||
@ -103,7 +103,7 @@ On macOS, using FT2232 for JTAG and serial port at the same time needs some addi
|
||||
Manually unloading the driver
|
||||
.............................
|
||||
|
||||
1. Install FTDI driver from https://www.ftdichip.com/Drivers/VCP.htm
|
||||
1. Install FTDI driver from https://ftdichip.com/drivers/vcp-drivers/
|
||||
|
||||
2. Connect USB cable to the |devkit-name|.
|
||||
|
||||
|
@ -26,7 +26,7 @@
|
||||
Open On-Chip Debugger v0.10.0-esp32-20190708 (2019-07-08-11:04)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
none separate
|
||||
adapter speed: 20000 kHz
|
||||
force hard breakpoints
|
||||
|
@ -25,7 +25,7 @@
|
||||
Open On-Chip Debugger v0.10.0-esp32-20201202-26-g05a036c2 (2021-03-15-17:18)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
Info : only one transport option; autoselect 'jtag'
|
||||
Warn : Transport "jtag" was already selected
|
||||
force hard breakpoints
|
||||
|
@ -26,7 +26,7 @@
|
||||
Open On-Chip Debugger v0.10.0-esp32-20200420 (2020-04-20-16:15)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
none separate
|
||||
adapter speed: 20000 kHz
|
||||
force hard breakpoints
|
||||
|
@ -26,7 +26,7 @@
|
||||
Open On-Chip Debugger v0.10.0-esp32-20210902 (2021-10-05-23:44)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
debug_level: 2
|
||||
|
||||
Info : only one transport option; autoselect 'jtag'
|
||||
|
@ -95,7 +95,7 @@ Selecting JTAG Adapter
|
||||
|
||||
If you decide to use separate JTAG adapter, look for one that is compatible with both the voltage levels on the {IDF_TARGET_NAME} as well as with the OpenOCD software. The JTAG port on the {IDF_TARGET_NAME} is an industry-standard JTAG port which lacks (and does not need) the TRST pin. The JTAG I/O pins all are powered from the VDD_3P3_RTC pin (which normally would be powered by a 3.3 V rail) so the JTAG adapter needs to be able to work with JTAG pins in that voltage range.
|
||||
|
||||
On the software side, OpenOCD supports a fair amount of JTAG adapters. See http://openocd.org/doc/html/Debug-Adapter-Hardware.html for an (unfortunately slightly incomplete) list of the adapters OpenOCD works with. This page lists SWD-compatible adapters as well; take note that the {IDF_TARGET_NAME} does not support SWD. JTAG adapters that are hardcoded to a specific product line, e.g. ST-LINK debugging adapters for STM32 families, will not work.
|
||||
On the software side, OpenOCD supports a fair amount of JTAG adapters. See https://openocd.org/doc/html/Debug-Adapter-Hardware.html for an (unfortunately slightly incomplete) list of the adapters OpenOCD works with. This page lists SWD-compatible adapters as well; take note that the {IDF_TARGET_NAME} does not support SWD. JTAG adapters that are hardcoded to a specific product line, e.g. ST-LINK debugging adapters for STM32 families, will not work.
|
||||
|
||||
The minimal signalling to get a working JTAG connection are TDI, TDO, TCK, TMS and GND. Some JTAG debuggers also need a connection from the {IDF_TARGET_NAME} power line to a line called e.g. Vtar to set the working voltage. SRST can optionally be connected to the CH_PD of the {IDF_TARGET_NAME}, although for now, support in OpenOCD for that line is pretty minimal.
|
||||
|
||||
@ -119,7 +119,7 @@ The output should be as follows (although the version may be more recent than li
|
||||
Open On-Chip Debugger v0.10.0-esp32-20190708 (2019-07-08-11:04)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
|
||||
You may also verify that OpenOCD knows where its configuration scripts are located by printing the value of ``OPENOCD_SCRIPTS`` environment variable, by typing ``echo $OPENOCD_SCRIPTS`` (for Linux and macOS) or ``echo %OPENOCD_SCRIPTS%`` (for Windows). If a valid path is printed, then OpenOCD is set up correctly.
|
||||
|
||||
|
@ -285,4 +285,4 @@ In case you encounter a problem with OpenOCD or GDB programs itself and do not f
|
||||
4. Attach both ``openocd_log.txt`` and ``gdb_log.txt`` files to your issue report.
|
||||
|
||||
|
||||
.. _OpenOCD Manual: http://openocd.org/doc/html/index.html
|
||||
.. _OpenOCD Manual: https://openocd.org/doc/html/index.html
|
||||
|
@ -9,7 +9,7 @@ ESP-IDF provides several kinds of programming interfaces:
|
||||
|
||||
* C functions, structures, enums, type definitions and preprocessor macros declared in public header files of ESP-IDF components. Various pages in the API Reference section of the programming guide contain descriptions of these functions, structures and types.
|
||||
* Build system functions, predefined variables and options. These are documented in the :ref:`build system guide<cmake_buildsystem_api>`.
|
||||
* `Kconfig <kconfig>`_ options can can be used in code and in the build system (CMakeLists.txt) files.
|
||||
* :doc:`Kconfig <kconfig>` options can can be used in code and in the build system (CMakeLists.txt) files.
|
||||
* :doc:`Host tools <../api-guides/tools/index>` and their command line parameters are also part of ESP-IDF interface.
|
||||
|
||||
ESP-IDF consists of components written specifically for ESP-IDF as well as third-party libraries. In some cases, an ESP-IDF-specific wrapper is added to the third-party library, providing an interface that is either simpler or better integrated with the rest of ESP-IDF facilities. In other cases, the original API of the third-party library is presented to the application developers.
|
||||
@ -96,7 +96,7 @@ It is not recommended to reference these components directly in custom projects
|
||||
API Stability
|
||||
-------------
|
||||
|
||||
ESP-IDF uses `Semantic Versioning <http://semver.org/>`_ as explained in the :ref:`versions page<versioning-scheme>`.
|
||||
ESP-IDF uses `Semantic Versioning <https://semver.org/>`_ as explained in the :ref:`versions page<versioning-scheme>`.
|
||||
|
||||
Minor and bugfix releases of ESP-IDF guarantee compatibility with previous releases. The sections below explain different aspects and limitations to compatibility.
|
||||
|
||||
@ -109,7 +109,7 @@ The following changes are allowed between minor versions and do not break source
|
||||
|
||||
* Deprecating functions (using the ``deprecated`` attribute) and header files (using a preprocessor ``#warning``). Deprecations are listed in ESP-IDF relese notes. It is recommended to update the source code to use the newer functions or files that replace the deprecated ones, however this is not mandatory. Deprecated functions and files can be removed in major versions of ESP-IDF.
|
||||
* Renaming components, moving source and header files between components — provided that the build system ensures that correct files are still found.
|
||||
* Renaming Kconfig options. Kconfig system `renaming mechanism <configuration-options-compatibility>`_ ensures that the original Kconfig option names can still be used by the application in ``sdkconfig`` file, CMake files and source code.
|
||||
* Renaming Kconfig options. Kconfig system :ref:`renaming mechanism <configuration-options-compatibility>` ensures that the original Kconfig option names can still be used by the application in ``sdkconfig`` file, CMake files and source code.
|
||||
|
||||
Lack of binary compatibility
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -132,7 +132,7 @@ While we try to make upgrading to a new ESP-IDF version easy, there are parts of
|
||||
* Changes made to mitigate security issues or to replace insecure default behaviors with a secure ones.
|
||||
* Features which were never functional. For example, if it was never possible to use a certain function or an enumeration value, it may get renamed (as part of fixing it) or removed. This includes software features which depend on non-functional chip hardware features.
|
||||
* Unexpected or undefined behavior (for example, due to missing validation of argument ranges) that is not documented explicitly may be fixed/changed.
|
||||
* Location of `Kconfig <kconfig>`_ options in menuconfig.
|
||||
* Location of :doc:`Kconfig <kconfig>` options in menuconfig.
|
||||
* Location and names of example projects.
|
||||
|
||||
.. _designated initializers: https://en.cppreference.com/w/c/language/struct_initialization
|
||||
|
@ -22,7 +22,7 @@ ESP-IDF currently supports two host stacks. The Bluedroid based stack (default)
|
||||
|
||||
For the overview of the ESP32 Bluetooth stack architecture, follow the links below:
|
||||
|
||||
* `ESP32 Bluetooth Architecture (PDF) <http://espressif.com/sites/default/files/documentation/esp32_bluetooth_architecture_en.pdf>`_
|
||||
* `ESP32 Bluetooth Architecture (PDF) <https://espressif.com/sites/default/files/documentation/esp32_bluetooth_architecture_en.pdf>`_
|
||||
|
||||
Code examples for this API section are provided in the :example:`bluetooth/bluedroid` directory of ESP-IDF examples.
|
||||
|
||||
|
@ -3,7 +3,7 @@ NimBLE-based host APIs
|
||||
Overview
|
||||
========
|
||||
|
||||
Apache MyNewt NimBLE is a highly configurable and BT SIG qualifiable BLE stack providing both host and controller functionalities. ESP-IDF supports NimBLE host stack which is specifically ported for ESP32 platform and FreeRTOS. The underlying controller is still the same (as in case of Bluedroid) providing VHCI interface. Refer to `NimBLE user guide <http://mynewt.apache.org/latest/network/index.html#>`_ for a complete list of features and additional information on NimBLE stack. Most features of NimBLE including BLE Mesh are supported by ESP-IDF. The porting layer is kept cleaner by maintaining all the existing APIs of NimBLE along with a single ESP-NimBLE API for initialization, making it simpler for the application developers.
|
||||
Apache MyNewt NimBLE is a highly configurable and BT SIG qualifiable BLE stack providing both host and controller functionalities. ESP-IDF supports NimBLE host stack which is specifically ported for ESP32 platform and FreeRTOS. The underlying controller is still the same (as in case of Bluedroid) providing VHCI interface. Refer to `NimBLE user guide <https://mynewt.apache.org/latest/network/index.html>`_ for a complete list of features and additional information on NimBLE stack. Most features of NimBLE including BLE Mesh are supported by ESP-IDF. The porting layer is kept cleaner by maintaining all the existing APIs of NimBLE along with a single ESP-NimBLE API for initialization, making it simpler for the application developers.
|
||||
|
||||
Architecture
|
||||
============
|
||||
|
@ -197,7 +197,7 @@ If you use a development board without pull-ups, you can do the following:
|
||||
|
||||
.. warning::
|
||||
|
||||
Burning eFuses is irreversible! The issue list above might be out of date, so please make sure that the module you are burning has a 3.3 V flash chip by checking the information on http://www.espressif.com/. If you burn the 3.3 V eFuses on a module with a 1.8 V flash chip, the module will stop functioning.
|
||||
Burning eFuses is irreversible! The issue list above might be out of date, so please make sure that the module you are burning has a 3.3 V flash chip by checking the information on https://www.espressif.com/. If you burn the 3.3 V eFuses on a module with a 1.8 V flash chip, the module will stop functioning.
|
||||
|
||||
If you are sure that you need to irreversibly burn eFuses, go to your ESP-IDF directory and run the following command:
|
||||
|
||||
|
@ -25,7 +25,7 @@ In-depth design details of touch sensors and firmware development guidelines for
|
||||
|
||||
.. only:: SOC_TOUCH_VERSION_1
|
||||
|
||||
For more information about testing touch sensors in various configurations, please check the `Guide for ESP32-Sense-Kit <https://github.com/espressif/esp-dev-kits/blob/master/esp32-sense-kit/docs/esp32_sense_kit_guide_en.md>`_.
|
||||
For more information about testing touch sensors in various configurations, please check the `Guide for ESP32-Sense-Kit <https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32/esp32-sense-kit/user_guide.html>`_.
|
||||
|
||||
Functionality Overview
|
||||
----------------------
|
||||
|
@ -3,7 +3,7 @@ ASIO port
|
||||
|
||||
Overview
|
||||
--------
|
||||
Asio is a cross-platform C++ library, see https://think-async.com. It provides a consistent asynchronous model using a modern C++ approach.
|
||||
Asio is a cross-platform C++ library, see https://think-async.com/Asio/. It provides a consistent asynchronous model using a modern C++ approach.
|
||||
|
||||
|
||||
ASIO documentation
|
||||
|
@ -54,9 +54,9 @@ Generating the List of Root Certificates
|
||||
----------------------------------------
|
||||
The list of root certificates comes from Mozilla's NSS root certificate store, which can be found `here <https://wiki.mozilla.org/CA/Included_Certificates>`_
|
||||
The list can be downloaded and created by running the script ``mk-ca-bundle.pl`` that is distributed as a part of `curl <https://github.com/curl/curl>`_.
|
||||
Another alternative would be to download the finished list directly from the curl website: `CA certificates extracted from Mozilla <https://curl.haxx.se/docs/caextract.html>`_
|
||||
Another alternative would be to download the finished list directly from the curl website: `CA certificates extracted from Mozilla <https://curl.se/docs/caextract.html>`_
|
||||
|
||||
The common certificates bundle were made by selecting the authorities with a market share of more than 1 % from w3tech's `SSL Survey <https://w3techs.com/technologies/overview/ssl_certificate/all>`_.
|
||||
The common certificates bundle were made by selecting the authorities with a market share of more than 1 % from w3tech's `SSL Survey <https://w3techs.com/technologies/overview/ssl_certificate>`_.
|
||||
These authorities were then used to pick the names of the certificates for the filter list, `cmn_crt_authorities.csv`, from `this list <https://ccadb-public.secure.force.com/mozilla/IncludedCACertificateReportPEMCSV>`_ provided by Mozilla.
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
Mbed TLS
|
||||
========
|
||||
|
||||
`Mbed TLS <https://github.com/ARMmbed/mbedtls>`_ is a C library that implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems.
|
||||
`Mbed TLS <https://github.com/Mbed-TLS/mbedtls>`_ is a C library that implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems.
|
||||
|
||||
.. note:: ESP-IDF uses a `fork <https://github.com/espressif/mbedtls>`_ of Mbed TLS which includes a few patches (related to hardware routines of certain modules like ``bignum (MPI)`` and ``ECC``) over vanilla Mbed TLS.
|
||||
|
||||
|
@ -7,7 +7,7 @@ Overview
|
||||
|
||||
mDNS is a multicast UDP service that is used to provide local network service and host discovery.
|
||||
|
||||
mDNS is installed by default on most operating systems or is available as separate package. On ``Mac OS`` it is installed by default and is called ``Bonjour``. Apple releases an installer for ``Windows`` that can be found `on Apple's support page <https://support.apple.com/downloads/bonjour%2520for%2520windows>`_. On ``Linux``, mDNS is provided by `avahi <https://github.com/lathiat/avahi>`_ and is usually installed by default.
|
||||
mDNS is installed by default on most operating systems or is available as separate package. On ``Mac OS`` it is installed by default and is called ``Bonjour``. Apple releases an installer for ``Windows`` that can be found `on Apple's support page <https://support.apple.com/downloads/bonjour-for-windows>`_. On ``Linux``, mDNS is provided by `avahi <https://github.com/lathiat/avahi>`_ and is usually installed by default.
|
||||
|
||||
mDNS Properties
|
||||
^^^^^^^^^^^^^^^
|
||||
|
@ -4,7 +4,7 @@ ESP-Modbus
|
||||
The Espressif ESP-Modbus Library (esp-modbus) supports Modbus communication in the networks based on RS485, Wi-Fi, Ethernet interfaces.
|
||||
The ESP-IDF component `freemodbus` has been moved from ESP-IDF since version v5.0 to a separate repository:
|
||||
|
||||
* `ESP-Modbus component on GitHub <https://www.github.com/espressif/esp-modbus>`__
|
||||
* `ESP-Modbus component on GitHub <https://github.com/espressif/esp-modbus>`__
|
||||
|
||||
Hosted Documentation
|
||||
--------------------
|
||||
|
@ -127,7 +127,7 @@ Examples:
|
||||
Argument parsing
|
||||
----------------
|
||||
|
||||
For argument parsing, ``console`` component includes `argtable3 <http://www.argtable.org/>`_ library. Please see `tutorial <http://www.argtable.org/tutorial/>`_ for an introduction to `argtable3 <http://www.argtable.org/>`_. Github repository also includes `examples <https://github.com/argtable/argtable3/tree/master/examples>`_.
|
||||
For argument parsing, ``console`` component includes `argtable3 <https://www.argtable.org/>`_ library. Please see `tutorial <https://www.argtable.org/tutorial/>`_ for an introduction to `argtable3 <https://www.argtable.org/>`_. Github repository also includes `examples <https://github.com/argtable/argtable3/tree/master/examples>`_.
|
||||
|
||||
|
||||
Command registration and dispatching
|
||||
|
@ -151,12 +151,14 @@ Implementation Notes
|
||||
|
||||
Knowledge about the regions of memory in the chip comes from the "soc" component, which contains memory layout information for the chip, and the different capabilities of each region. Each region's capabilities are prioritised, so that (for example) dedicated DRAM and IRAM regions will be used for allocations ahead of the more versatile D/IRAM regions.
|
||||
|
||||
Each contiguous region of memory contains its own memory heap. The heaps are created using the `multi_heap <API Reference - Multi Heap API>`_ functionality. multi_heap allows any contiguous region of memory to be used as a heap.
|
||||
Each contiguous region of memory contains its own memory heap. The heaps are created using the :ref:`multi_heap <multi-heap>` functionality. multi_heap allows any contiguous region of memory to be used as a heap.
|
||||
|
||||
The heap capabilities allocator uses knowledge of the memory regions to initialize each individual heap. Allocation functions in the heap capabilities API will find the most appropriate heap for the allocation (based on desired capabilities, available space, and preferences for each region's use) and then calling :cpp:func:`multi_heap_malloc` for the heap situated in that particular region.
|
||||
|
||||
Calling ``free()`` involves finding the particular heap corresponding to the freed address, and then calling :cpp:func:`multi_heap_free` on that particular multi_heap instance.
|
||||
|
||||
.. _multi-heap:
|
||||
|
||||
API Reference - Multi Heap API
|
||||
------------------------------
|
||||
|
||||
|
@ -25,7 +25,7 @@ Overview
|
||||
|
||||
1. Provide overview where and how this API may be used.
|
||||
2. Where applicable include code snippets to illustrate functionality of particular functions.
|
||||
3. To distinguish between sections, use the following `heading levels <http://www.sphinx-doc.org/en/stable/rest.html#sections>`_:
|
||||
3. To distinguish between sections, use the following `heading levels <https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#sections>`_:
|
||||
|
||||
* ``#`` with overline, for parts
|
||||
* ``*`` with overline, for chapters
|
||||
|
@ -3,7 +3,7 @@ Copyright Header Guide
|
||||
|
||||
ESP-IDF is released under :project_file:`the Apache License 2.0 <LICENSE>` with some additional third-party copyrighted code released under various licenses. For further information please refer to :doc:`the list of copyrights and licenses <../../../COPYRIGHT>`.
|
||||
|
||||
This page explains how the source code should be properly marked with a copyright header. ESP-IDF uses `The Software Package Data Exchange (SPDX) <https://spdx.org>`_ format which is short and can be easily read by humans or processed by automated tools for copyright checks.
|
||||
This page explains how the source code should be properly marked with a copyright header. ESP-IDF uses `The Software Package Data Exchange (SPDX) <https://spdx.dev>`_ format which is short and can be easily read by humans or processed by automated tools for copyright checks.
|
||||
|
||||
How to Check the Copyright Headers
|
||||
----------------------------------
|
||||
|
@ -11,7 +11,7 @@ Structure
|
||||
- If the example has additional functionality, split it logically into separate C or C++ source files under ``main`` and place a corresponding header file in the same directory.
|
||||
- If the example has a lot of additional functionality, consider adding a ``components`` directory to the example project and make some example-specific components with library functionality. Only do this if the components are specific to the example, if they're generic or common functionality then they should be added to ESP-IDF itself.
|
||||
- The example should have a ``README.md`` file. Use the :idf_file:`template example README <docs/TEMPLATE_EXAMPLE_README.md>` and adapt it for your particular example.
|
||||
- Examples should have a ``pytest_<example name>.py`` file for running an automated example test. If submitting a GitHub Pull Request which includes an example, it's OK not to include this file initially. The details can be discussed as part of the `Pull Request <https://help.github.com/articles/creating-a-pull-request/>`_. Please refer to :doc:`IDF Tests with Pytest Guide <esp-idf-tests-with-pytest>` for details.
|
||||
- Examples should have a ``pytest_<example name>.py`` file for running an automated example test. If submitting a GitHub Pull Request which includes an example, it's OK not to include this file initially. The details can be discussed as part of the `Pull Request <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request>`_. Please refer to :doc:`IDF Tests with Pytest Guide <esp-idf-tests-with-pytest>` for details.
|
||||
|
||||
General Guidelines
|
||||
------------------
|
||||
|
@ -8,7 +8,7 @@ The purpose of this description is to provide quick summary on documentation sty
|
||||
Introduction
|
||||
------------
|
||||
|
||||
When documenting code for this repository, please follow `Doxygen style <http://doxygen.nl/manual/docblocks.html#specialblock>`_. You are doing it by inserting special commands, for instance ``@param``, into standard comments blocks, for example: ::
|
||||
When documenting code for this repository, please follow `Doxygen style <https://www.doxygen.nl/manual/docblocks.html#specialblock>`_. You are doing it by inserting special commands, for instance ``@param``, into standard comments blocks, for example: ::
|
||||
|
||||
/**
|
||||
* @param ratio this is oxygen to air ratio
|
||||
@ -22,7 +22,7 @@ Typical comment block, that contains documentation of a function, looks like bel
|
||||
:align: center
|
||||
:alt: Sample inline code documentation
|
||||
|
||||
Doxygen supports couple of formatting styles. It also gives you great flexibility on level of details to include in documentation. To get familiar with available features, please check data rich and very well organized `Doxygen Manual <http://doxygen.nl/manual/index.html>`_.
|
||||
Doxygen supports couple of formatting styles. It also gives you great flexibility on level of details to include in documentation. To get familiar with available features, please check data rich and very well organized `Doxygen Manual <https://www.doxygen.nl/manual/index.html>`_.
|
||||
|
||||
|
||||
Why we need it?
|
||||
@ -204,4 +204,4 @@ Related Documents
|
||||
|
||||
.. _interactive shell: http://interactive.blockdiag.com/?compression=deflate&src=eJxlUMFOwzAMvecrrO3aITYQQirlAIIzEseJQ5q4TUSIq8TVGIh_J2m7jbKc7Ge_5_dSO1Lv2soWvoVYgieNoMh7VGzJR9FJtugZ7lYQ0UcKEbYNOY36rRQHZHUPT68vV5tceGLbWCUzPfeaFFMoBZzecVc56vWwJFnWMmJ59CCZg617xpOFbTSyw0pmvT_HJ7hxtFNGBr6wvuu5SCkchcrZ1vAeXZomznh5YgTqfcpR02cBO6vZVDeXBRjMjKEcFRbLh8f18-Z2UUBDnqP9wmp9ncRmSSfND2ldGo2h_zse407g0Mxc1q7HzJ3-4jzYYTJjtQH3iSV-fgFzx50J
|
||||
|
||||
.. _Breathe: https://breathe.readthedocs.io
|
||||
.. _Breathe: https://breathe.readthedocs.io/en/latest/
|
||||
|
@ -6,7 +6,7 @@ We welcome contributions to the esp-idf project!
|
||||
How to Contribute
|
||||
-----------------
|
||||
|
||||
Contributions to esp-idf - fixing bugs, adding features, adding documentation - are welcome. We accept contributions via `Github Pull Requests <https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests>`_.
|
||||
Contributions to esp-idf - fixing bugs, adding features, adding documentation - are welcome. We accept contributions via `Github Pull Requests <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests>`_.
|
||||
|
||||
Before Contributing
|
||||
-------------------
|
||||
|
@ -32,7 +32,7 @@ What's More?
|
||||
|
||||
For detailed usage, please refer to the documentation of pre-commit_.
|
||||
|
||||
.. _pre-commit: https://www.pre-commit.com/
|
||||
.. _pre-commit: https://pre-commit.com/
|
||||
|
||||
Common Problems For Windows Users
|
||||
---------------------------------
|
||||
|
@ -13,8 +13,8 @@ Connect the {IDF_TARGET_NAME} board to the PC using the USB cable. If device dri
|
||||
|
||||
Below is the list of USB to serial converter chips installed on most of the {IDF_TARGET_NAME} boards produced by Espressif together with links to the drivers:
|
||||
|
||||
* CP210x: `CP210x USB to UART Bridge VCP Drivers <https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers>`_
|
||||
* FTDI: `FTDI Virtual COM Port Drivers <https://www.ftdichip.com/Drivers/VCP.htm>`_
|
||||
* CP210x: `CP210x USB to UART Bridge VCP Drivers <https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers>`_
|
||||
* FTDI: `FTDI Virtual COM Port Drivers <https://ftdichip.com/drivers/vcp-drivers/>`_
|
||||
|
||||
Please check the board user guide for specific USB to serial converter chip used. The drivers above are primarily for reference. Under normal circumstances, the drivers should be bundled with an operating system and automatically installed upon connecting the board to the PC.
|
||||
|
||||
@ -82,7 +82,7 @@ Now verify that the serial connection is operational. You can do this using a se
|
||||
Windows and Linux
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
In this example we will use `PuTTY SSH Client <http://www.putty.org/>`_ that is available for both Windows and Linux. You can use other serial program and set communication parameters like below.
|
||||
In this example we will use `PuTTY SSH Client <https://www.putty.org/>`_ that is available for both Windows and Linux. You can use other serial program and set communication parameters like below.
|
||||
|
||||
Run terminal, set identified serial port, baud rate = 115200, data bits = 8, stop bits = 1, and parity = N. Below are example screen shots of setting the port and such transmission parameters (in short described as 115200-8-1-N) on Windows and Linux. Remember to select exactly the same serial port you have identified in steps above.
|
||||
|
||||
|
@ -265,7 +265,7 @@ Related Documents
|
||||
.. _First Steps on ESP-IDF: ../get-started/first-steps.html
|
||||
.. _cmake: https://cmake.org/
|
||||
.. _ninja: https://ninja-build.org/
|
||||
.. _ccache: https://ccache.samba.org/
|
||||
.. _ccache: https://ccache.dev/
|
||||
.. _homebrew: https://brew.sh/
|
||||
.. _MacPorts: https://www.macports.org/install.php
|
||||
.. _Catalina 10.15 release notes: https://developer.apple.com/documentation/macos-release-notes/macos-catalina-10_15-release-notes
|
||||
|
@ -31,6 +31,6 @@ Supported Features
|
||||
Bugs & Feature Requests
|
||||
=======================
|
||||
|
||||
If you face an issue with certain feature of VS Code or VS Code in general we recommend you ask your question in the `forum <http://esp32.com/viewforum.php?f=40>`_, or open a `GitHub Issue <https://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`_ for our dev teams to review.
|
||||
If you face an issue with certain feature of VS Code or VS Code in general we recommend you ask your question in the `forum <https://esp32.com/viewforum.php?f=40>`_, or open a `GitHub Issue <https://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`_ for our dev teams to review.
|
||||
|
||||
We also welcome new feature requests. Most of the features we have today are a result of people asking for them to be implemented. To improve certain aspects of the extension, `raise your feature request on GitHub <http://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`_.
|
||||
|
@ -299,4 +299,4 @@ Related Documents
|
||||
- `ESP32-S2 Datasheet (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-s2_datasheet_en.pdf>`_
|
||||
- `ESP32-C3 Datasheet (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf>`_
|
||||
- `ESP32-S3 Datasheet (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_en.pdf>`_
|
||||
- `ESP Product Selector <http://products.espressif.com:8000/#/>`_
|
||||
- `ESP Product Selector <https://products.espressif.com/#/>`_
|
@ -106,7 +106,7 @@ Retail Orders
|
||||
|
||||
If you order one or several samples of the board, each ESP32-PICO-DevKitM-2 development board comes in an individual package.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
Wholesale Orders
|
||||
------------------
|
||||
|
@ -117,7 +117,7 @@ Retail Orders
|
||||
|
||||
If you order one or several samples of the board, each ESP32-PICO-KIT-1 development board comes in an individual package.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
@ -361,7 +361,7 @@ No previous versions available.
|
||||
Related Documents
|
||||
===================
|
||||
|
||||
* `ESP32-PICO-V3 Datasheet <http://espressif.com/sites/default/files/documentation/esp32-pico-v3_datasheet_en.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-V3 Datasheet <https://espressif.com/sites/default/files/documentation/esp32-pico-v3_datasheet_en.pdf>`_ (PDF)
|
||||
* `ESP Product Selector <https://products.espressif.com/#/product-selector?names=>`_
|
||||
* `ESP32-PICO-KIT-1 Schematic <https://dl.espressif.com/dl/schematics/SCH_ESP32-PICO-KIT-1_V1_0_20200811A.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT-1 PCB Layout <https://dl.espressif.com/dl/schematics/PCB_ESP32-PICO-KIT-1_V1.0_20200811.pdf>`_ (PDF)
|
||||
|
@ -75,5 +75,5 @@ Related Documents
|
||||
-----------------
|
||||
|
||||
* `ESP32-PICO-KIT V3 schematic <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v3_schematic.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-D4 Datasheet <http://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_en.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-D4 Datasheet <https://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_en.pdf>`_ (PDF)
|
||||
* :doc:`../../hw-reference/index`
|
||||
|
@ -225,7 +225,7 @@ Related Documents
|
||||
* `ESP32-PICO-KIT V4 schematic <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v4_schematic.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT V4.1 schematic <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v4.1_schematic.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT Reference Design <https://www.espressif.com/sites/default/files/documentation/esp32-pico-kit_v4.1_20180314_en.zip>`_ containing OrCAD schematic, PCB layout, gerbers and BOM
|
||||
* `ESP32-PICO-D4 Datasheet <http://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_en.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-D4 Datasheet <https://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_en.pdf>`_ (PDF)
|
||||
* :doc:`../../hw-reference/index`
|
||||
|
||||
|
||||
|
@ -53,7 +53,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-DevKitM-1 comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -166,7 +166,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-DevKitS(-R) comes in an individual package in either antistatic bag or any packaging depending on a retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -98,7 +98,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-C3-DevKitC-02 comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -98,7 +98,7 @@ Retail Orders
|
||||
|
||||
If you order one or several samples, each ESP32-C3-DevKitM-1 comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -45,7 +45,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-S2-DevKitM-1(U) comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -236,7 +236,7 @@ If you order one or several samples of the kit, each ESP32-S2-Kaluga-1 developme
|
||||
- Screws (x4)
|
||||
- Nuts (x4)
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -257,7 +257,7 @@ The contents are as follows:
|
||||
- Screws (x4)
|
||||
- Nuts (x4)
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
@ -393,4 +393,3 @@ Related Documents
|
||||
For other design documentation for the board, please contact us at sales@espressif.com.
|
||||
|
||||
|
||||
|
@ -105,7 +105,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-S2-DevKitC-1 comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
Wholesale Orders
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
@ -47,7 +47,7 @@ Retail orders
|
||||
|
||||
If you order a few samples, each ESP32-S2-Saola-1 comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
Wholesale Orders
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
@ -173,7 +173,7 @@ Retail Orders
|
||||
|
||||
If you order a few samples, each board comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -111,7 +111,7 @@ Retail Orders
|
||||
|
||||
If you order a few samples, each board comes in an individual package in either antistatic bag or any packaging depending on your retailer.
|
||||
|
||||
For retail orders, please go to https://www.espressif.com/en/company/contact/buy-a-sample.
|
||||
For retail orders, please go to https://www.espressif.com/en/contact-us/get-samples.
|
||||
|
||||
|
||||
Wholesale Orders
|
||||
|
@ -8,7 +8,7 @@ ESP-IDF Programming Guide
|
||||
|
||||
The function API documentation is excluded from the preview. Add docs_full label to the MR to generate the complete documentation.
|
||||
|
||||
This is the documentation for Espressif IoT Development Framework (`esp-idf <https://github.com/espressif/esp-idf>`_). ESP-IDF is the official development framework for the `ESP32, ESP32-S and ESP32-C Series SoCs <https://www.espressif.com/en/products/hardware/socs>`_.
|
||||
This is the documentation for Espressif IoT Development Framework (`esp-idf <https://github.com/espressif/esp-idf>`_). ESP-IDF is the official development framework for the `ESP32, ESP32-S and ESP32-C Series SoCs <https://www.espressif.com/en/products/socs>`_.
|
||||
|
||||
.. only:: html
|
||||
|
||||
|
@ -42,7 +42,7 @@ Tencent IoT
|
||||
Tencentyun IoT
|
||||
--------------
|
||||
|
||||
`https://github.com/espressif/esp-qcloud <https://github.com/espressif/esp-qcloud>`_ is an open source repository for {IDF_TARGET_NAME} based on Tencentyun's `qcloud-iot-sdk-embedded-c SDK <https://github.com/tencentyun/qcloud-iot-sdk-embedded-c>`_.
|
||||
`https://github.com/espressif/esp-qcloud <https://github.com/espressif/esp-qcloud>`_ is an open source repository for {IDF_TARGET_NAME} based on Tencentyun's `qcloud-iot-sdk-embedded-c SDK <https://github.com/TencentCloud/tencentcloud-iot-sdk-embedded-c>`_.
|
||||
|
||||
Baidu IoT
|
||||
---------
|
||||
|
@ -6,7 +6,7 @@ Migration of Protocol Components to ESP-IDF 5.0
|
||||
Mbed TLS
|
||||
--------
|
||||
|
||||
For ESP-IDF v5.0, `Mbed TLS <https://github.com/ARMmbed/mbedtls>`_ has been updated from v2.x to v3.1.0.
|
||||
For ESP-IDF v5.0, `Mbed TLS <https://github.com/Mbed-TLS/mbedtls>`_ has been updated from v2.x to v3.1.0.
|
||||
|
||||
The official guide for Mbed TLS to migrate from version 2.x to version 3.0 or greater can be found `here <https://github.com/espressif/mbedtls/blob/9bb5effc3298265f829878825d9bd38478e67514/docs/3.0-migration-guide.md>`__.
|
||||
|
||||
|
@ -21,7 +21,7 @@ Useful Links
|
||||
|
||||
* To develop applications using Arduino platform, refer to `Arduino core for the ESP32, ESP32-S2 and ESP32-C3 <https://github.com/espressif/arduino-esp32#readme>`_.
|
||||
|
||||
* Several `books <https://www.espressif.com/en/support/iot-college/books-new>`_ have been written about ESP32 and they are listed on `Espressif <https://www.espressif.com/en/support/iot-college/books-new>`__ web site.
|
||||
* Several `books <https://www.espressif.com/en/ecosystem/community-engagement/books>`_ have been written about ESP32 and they are listed on `Espressif <https://www.espressif.com/en/ecosystem/community-engagement/books>`__ web site.
|
||||
|
||||
* If you're interested in contributing to ESP-IDF, please check the :doc:`contribute/index`.
|
||||
|
||||
|
@ -52,7 +52,7 @@ See :ref:`updating` if you already have a local copy of ESP-IDF and wish to upda
|
||||
Versioning Scheme
|
||||
-----------------
|
||||
|
||||
ESP-IDF uses `Semantic Versioning <http://semver.org/>`_. This means that:
|
||||
ESP-IDF uses `Semantic Versioning <https://semver.org/>`_. This means that:
|
||||
|
||||
- Major Releases, like ``v3.0``, add new functionality and may change functionality. This includes removing deprecated functionality.
|
||||
|
||||
@ -254,7 +254,7 @@ Each time you ``git pull`` this branch, ESP-IDF will be updated with fixes for t
|
||||
|
||||
There is no dedicated documentation for release branches. It is recommended to use the documentation for the closest version to the branch which is currently checked out.
|
||||
|
||||
.. _`Releases page`: http://github.com/espressif/esp-idf/releases
|
||||
.. _`Releases page`: https://github.com/espressif/esp-idf/releases
|
||||
.. _`list of branches`: https://github.com/espressif/esp-idf/branches
|
||||
.. _`list of tags`: https://github.com/espressif/esp-idf/tags
|
||||
.. _`current stable version`: https://docs.espressif.com/projects/esp-idf/en/stable/
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
.. only:: esp32
|
||||
|
||||
本指南为 `乐鑫 <https://espressif.com>`_ 公司 `{IDF_TARGET_NAME} <https://espressif.com/en/products/hardware/esp32/overview>`_ 官方应用开发框架 `ESP-IDF <https://github.com/espressif/esp-idf>`_ 的配套文档。
|
||||
本指南为 `乐鑫 <https://espressif.com>`_ 公司 `{IDF_TARGET_NAME} <https://www.espressif.com/en/products/socs/esp32>`_ 官方应用开发框架 `ESP-IDF <https://github.com/espressif/esp-idf>`_ 的配套文档。
|
||||
|
||||
{IDF_TARGET_NAME} 芯片是一款 2.4 GHz Wi-Fi 和蓝牙双模芯片,内置 1 或 2 个 Xtensa® 32 位 LX6 处理器,运算能力最高可达 600 DMIPS。
|
||||
|
||||
|
@ -444,7 +444,7 @@ Start 子命令语法:
|
||||
6. 双击创建的端口,会打开此端口的视图。
|
||||
7. 单击 ``Start/Stop Streaming`` 按钮,数据将会被加载。
|
||||
8. 使用 ``Zoom Out``,``Zoom In`` 和 ``Zoom Fit`` 按钮来查看数据。
|
||||
9. 有关设置测量光标和其他的功能,请参阅 `Impulse 官方文档 <http://toem.de/index.php/projects/impulse>`_ 。
|
||||
9. 有关设置测量光标和其他的功能,请参阅 `Impulse 官方文档 <https://toem.de/index.php/projects/impulse>`_ 。
|
||||
|
||||
.. note::
|
||||
|
||||
@ -459,7 +459,7 @@ Gcov(源代码覆盖)
|
||||
Gcov 和 Gcovr 简介
|
||||
""""""""""""""""""""""""
|
||||
|
||||
源代码覆盖率显示程序运行时间内执行的每一条程序执行路径的数量和频率。`Gcov <https://en.wikipedia.org/wiki/Gcov>`_ 是一款 GCC 工具,与编译器协同使用时,可生成日志文件,显示源文件每行的执行次数。`Gcovr <https://gcovr.com>`_ 是管理 Gcov 和生成代码覆盖率总结的工具。
|
||||
源代码覆盖率显示程序运行时间内执行的每一条程序执行路径的数量和频率。`Gcov <https://en.wikipedia.org/wiki/Gcov>`_ 是一款 GCC 工具,与编译器协同使用时,可生成日志文件,显示源文件每行的执行次数。`Gcovr <https://gcovr.com/>`_ 是管理 Gcov 和生成代码覆盖率总结的工具。
|
||||
|
||||
一般来说,使用 Gcov 在主机上编译和运行程序会经过以下步骤:
|
||||
|
||||
@ -553,7 +553,7 @@ GDB 可以用来在 :cpp:func:`esp_gcov_dump` 上设置断点,然后使用 ``g
|
||||
|
||||
一旦代码覆盖数据被转储,``.gcno``、``.gcda`` 和源文件可以用来生成代码覆盖报告。该报告会显示源文件中每行被执行的次数。
|
||||
|
||||
Gcov 和 Gcovr 都可以用来生成代码覆盖报告。安装 Xtensa 工具链时会一起安装 Gcov,但 Gcovr 可能需要单独安装。关于如何使用 Gcov 或 Gcovr,请参考 `Gcov 文档 <https://gcc.gnu.org/onlinedocs/gcc/Gcov.html>`_ 和 `Gcovr 文档 <http://gcovr.com/>`_。
|
||||
Gcov 和 Gcovr 都可以用来生成代码覆盖报告。安装 Xtensa 工具链时会一起安装 Gcov,但 Gcovr 可能需要单独安装。关于如何使用 Gcov 或 Gcovr,请参考 `Gcov 文档 <https://gcc.gnu.org/onlinedocs/gcc/Gcov.html>`_ 和 `Gcovr 文档 <https://gcovr.com/>`_。
|
||||
|
||||
在工程中添加 Gcovr 构建目标
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -1016,7 +1016,7 @@ CMake 在许多开源的 C/C++ 项目中广泛使用,用户可以在自己的
|
||||
|
||||
实际的案例请参考 :example:`build_system/cmake/import_lib`。请注意,导入第三方库所需要做的工作可能会因库的不同而有所差异。建议仔细阅读第三方库的文档,了解如何将其导入到其它项目中。阅读第三方库的 CMakeLists.txt 文件以及构建结构也会有所帮助。
|
||||
|
||||
用这种方式还可以将第三方库封装成 ESP-IDF 的组件。例如 :component:`mbedtls` 组件就是封装了 `mbedtls 项目 <https://github.com/ARMmbed/mbedtls>`_ 得到的。详情请参考 :component_file:`mbedtls 组件的 CMakeLists.txt 文件 <mbedtls/CMakeLists.txt>`。
|
||||
用这种方式还可以将第三方库封装成 ESP-IDF 的组件。例如 :component:`mbedtls` 组件就是封装了 `mbedtls 项目 <https://github.com/Mbed-TLS/mbedtls>`_ 得到的。详情请参考 :component_file:`mbedtls 组件的 CMakeLists.txt 文件 <mbedtls/CMakeLists.txt>`。
|
||||
|
||||
每当使用 ESP-IDF 构建系统时,CMake 变量 ``ESP_PLATFORM`` 都会被设置为 1。如果要在通用的 CMake 代码加入 IDF 特定的代码时,可以采用 ``if (ESP_PLATFORM)`` 的形式加以分隔。
|
||||
|
||||
@ -1454,7 +1454,7 @@ CMake 中不可用的功能
|
||||
- ``COMPONENT_OBJS``:以前,可以以目标文件列表的方式指定组件源,现在,可以通过 ``COMPONENT_SRCS`` 以源文件列表的形式指定组件源。
|
||||
- ``COMPONENT_OBJEXCLUDE``:已被 ``COMPONENT_SRCEXCLUDE`` 替换。用于指定源文件(绝对路径或组件目录的相对路径)。
|
||||
- ``COMPONENT_EXTRA_CLEAN``:已被 ``ADDITIONAL_MAKE_CLEAN_FILES`` 属性取代,注意,:ref:`CMake 对此项功能有部分限制 <ADDITIONAL_MAKE_CLEAN_FILES_note>`。
|
||||
- ``COMPONENT_OWNBUILDTARGET`` & ``COMPONENT_OWNCLEANTARGET``:已被 CMake `外部项目 <ExternalProject>`_ 替代,详细内容请参阅 :ref:`component-build-full-override`。
|
||||
- ``COMPONENT_OWNBUILDTARGET`` & ``COMPONENT_OWNCLEANTARGET``:已被 CMake `外部项目 <ExternalProject_>` 替代,详细内容请参阅 :ref:`component-build-full-override`。
|
||||
- ``COMPONENT_CONFIG_ONLY``:已被 ``register_config_only_component()`` 函数替代,请参阅 :ref:`config_only_component`。
|
||||
- ``CFLAGS``、``CPPFLAGS``、``CXXFLAGS``:已被相应的 CMake 命令替代,请参阅 :ref:`component_build_control`。
|
||||
|
||||
|
@ -530,11 +530,13 @@ ESP-BLE-MESH 常见问题手册
|
||||
3.2 Wi-Fi 和 ESP-BLE-MESH 共存时,为什么 Wi-Fi 吞吐量很低?
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
未搭载 PSRAM 的 `ESP32-DevKitC <../../hw-reference/get-started-devkitc>`_ 开发板,Wi-Fi 和 ESP-BLE-MESH 共存可以正常运行,但是吞吐率较低。当 Wi-Fi 和 ESP-BLE-MESH 共存时,搭载 PSRAM 的 ESP32-DevKitC 速率可以稳定在 1 Mbps 以上。
|
||||
.. only:: esp32
|
||||
|
||||
未搭载 PSRAM 的 :doc:`ESP32-DevKitC <../../hw-reference/esp32/get-started-devkitc>` 开发板,Wi-Fi 和 ESP-BLE-MESH 共存可以正常运行,但是吞吐率较低。当 Wi-Fi 和 ESP-BLE-MESH 共存时,搭载 PSRAM 的 ESP32-DevKitC 速率可以稳定在 1 Mbps 以上。
|
||||
|
||||
应使能 menuconfig 中的一些配置来支持 PSRAM。
|
||||
|
||||
- :code:`ESP32-specific --> Support for external,SPI-connected RAM --> Try to allocate memories of Wi-Fi and LWIP...`
|
||||
- :code:`{IDF_TARGET_NAME}-specific --> Support for external,SPI-connected RAM --> Try to allocate memories of Wi-Fi and LWIP...`
|
||||
- :code:`Bluetooth --> Bluedriod Enable --> BT/BLE will first malloc the memory from the PSRAM`
|
||||
- :code:`Bluetooth --> Bluedriod Enable --> Use dynamic memory allocation in BT/BLE stack.`
|
||||
- :code:`Bluetooth --> Blutooth controller --> BLE full scan feature supported.`
|
||||
|
@ -229,9 +229,9 @@ ESP-BLE-MESH 示例
|
||||
ESP-BLE-MESH 演示视频
|
||||
======================
|
||||
|
||||
* `Provisioning of ESP-BLE-MESH nodes using Smartphone App <http://download.espressif.com/BLE_MESH/Docs4Customers/esp-ble-mesh-demo.mp4>`_
|
||||
* `Espressif Fast Provisioning using ESP-BLE-MESH App <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`_
|
||||
* `Espressif ESP-BLE-MESH and Wi-Fi Coexistence <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`_
|
||||
* `Provisioning of ESP-BLE-MESH nodes using Smartphone App <https://download.espressif.com/BLE_MESH/Docs4Customers/esp-ble-mesh-demo.mp4>`_
|
||||
* `Espressif Fast Provisioning using ESP-BLE-MESH App <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`_
|
||||
* `Espressif ESP-BLE-MESH and Wi-Fi Coexistence <https://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`_
|
||||
|
||||
|
||||
ESP-BLE-MESH 常见问题手册
|
||||
@ -262,15 +262,15 @@ ESP-BLE-MESH 常见问题手册
|
||||
蓝牙 SIG 文档
|
||||
-------------
|
||||
|
||||
- `BLE Mesh Profile Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=457092>`_
|
||||
- `BLE Mesh Model Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=457091>`_
|
||||
- `An Intro to Bluetooth Mesh Part 1 <https://blog.bluetooth.com/an-intro-to-bluetooth-mesh-part1>`_ / `Part 2 <https://blog.bluetooth.com/an-intro-to-bluetooth-mesh-part2>`__
|
||||
- `The Fundamental Concepts of Bluetooth Mesh Networking, Part 1 <https://blog.bluetooth.com/the-fundamental-concepts-of-bluetooth-mesh-networking-part-1>`_ / `Part 2 <https://blog.bluetooth.com/the-fundamental-concepts-of-bluetooth-mesh-networking-part-2>`__
|
||||
- `Bluetooth Mesh Networking: Friendship <https://blog.bluetooth.com/bluetooth-mesh-networking-series-friendship>`_
|
||||
- `Management of Devices in a Bluetooth Mesh Network <https://blog.bluetooth.com/management-of-devices-bluetooth-mesh-network>`_
|
||||
- `Bluetooth Mesh Security Overview <https://blog.bluetooth.com/bluetooth-mesh-security-overview>`_
|
||||
- `Provisioning a Bluetooth Mesh Network Part 1 <https://blog.bluetooth.com/provisioning-a-bluetooth-mesh-network-part-1>`_ / `Part 2 <https://blog.bluetooth.com/provisioning-a-bluetooth-mesh-network-part-2>`__
|
||||
- `BLE Mesh Core Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=429633>`_
|
||||
- `BLE Mesh Model Specification <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=429634>`_
|
||||
- `An Intro to Bluetooth Mesh Part 1 <https://www.bluetooth.com/blog/an-intro-to-bluetooth-mesh-part1>`_ / `Part 2 <https://www.bluetooth.com/blog/an-intro-to-bluetooth-mesh-part2>`__
|
||||
- `The Fundamental Concepts of Bluetooth Mesh Networking, Part 1 <https://www.bluetooth.com/blog/the-fundamental-concepts-of-bluetooth-mesh-networking-part-1>`_ / `Part 2 <https://www.bluetooth.com/blog/the-fundamental-concepts-of-bluetooth-mesh-networking-part-2>`__
|
||||
- `Bluetooth Mesh Networking: Friendship <https://www.bluetooth.com/blog/bluetooth-mesh-networking-series-friendship>`_
|
||||
- `Management of Devices in a Bluetooth Mesh Network <https://www.bluetooth.com/blog/management-of-devices-bluetooth-mesh-network>`_
|
||||
- `Bluetooth Mesh Security Overview <https://www.bluetooth.com/blog/bluetooth-mesh-security-overview>`_
|
||||
- `Provisioning a Bluetooth Mesh Network Part 1 <https://www.bluetooth.com/blog/provisioning-a-bluetooth-mesh-network-part-1>`_ / `Part 2 <https://www.bluetooth.com/blog/provisioning-a-bluetooth-mesh-network-part-2>`__
|
||||
|
||||
|
||||
.. _ESP32-DevKitC: https://www.espressif.com/en/products/hardware/esp32-devkitc/overview
|
||||
.. _ESP32-DevKitC: https://www.espressif.com/en/products/devkits/esp32-devkitc/overview
|
||||
.. _ESP-WROVER-KIT: https://www.espressif.com/en/products/hardware/esp-wrover-kit/overview
|
||||
|
@ -214,7 +214,7 @@ ESP-BLE-MESH Terminology
|
||||
- "A node can also use an IV Update procedure to signal to peer nodes that it is updating the IV Index."
|
||||
- IV 更新程序用于更新 ESP-BLE-MESH 网络的 IV Index 的值,这个值和消息加密时所需的随机数相关。为了保证随机数的值不重复,所以将这个值定期增加。IV Index 是一个 32 位的值,是一种共享网络资源,比如一个 mesh 网中的所有节点共享一个 IV Index 值。IV Index 从 0x00000000 开始,在 IV 更新过程中递增,并由特定的进程维护,以保证整个 Mesh 网内共享一个 IV Index。当节点认为它有耗尽其序列号的风险,或它确定另一个节点即将耗尽其序列号时,可以启动该程序。注意:每次的更新时间不得低于 96 小时。节点接收到 secure network beacon 或者确定自己的序列号大于特定值时,会触发 IV 更新程序。
|
||||
|
||||
官方定义摘自 `ESP-BLE-MESH Glossary of Terms <https://www.bluetooth.com/bluetooth-technology/topology-options/le-mesh/mesh-glossary/>`_.
|
||||
官方定义摘自 `ESP-BLE-MESH Glossary of Terms <https://www.bluetooth.com/learn-about-bluetooth/recent-enhancements/mesh/mesh-glossary/>`_.
|
||||
查看更多术语,也请参照上述网址。
|
||||
|
||||
|
||||
|
@ -34,7 +34,7 @@ Windows
|
||||
|
||||
1. 使用标准 USB A / micro USB B 线将 |devkit-name| 与计算机相连接,并打开板子的电源。
|
||||
|
||||
2. 等待 Windows 识别出 |devkit-name| 并且为其安装驱动。如果驱动没有被自动安装,请前往 `官网 <https://www.ftdichip.com/Drivers/D2XX.htm>`_ 下载并手动安装。
|
||||
2. 等待 Windows 识别出 |devkit-name| 并且为其安装驱动。如果驱动没有被自动安装,请前往 `官网 <https://ftdichip.com/drivers/d2xx-drivers/>`_ 下载并手动安装。
|
||||
|
||||
3. 从 `Zadig 官网 <http://zadig.akeo.ie/>`_ 下载 Zadig 工具(Zadig_X.X.exe)并运行。
|
||||
|
||||
@ -103,7 +103,7 @@ MacOS
|
||||
手动卸载驱动程序
|
||||
................
|
||||
|
||||
1. 从 `FTDI 官网 <https://www.ftdichip.com/Drivers/VCP.htm>`_ 安装驱动。
|
||||
1. 从 `FTDI 官网 <https://ftdichip.com/drivers/vcp-drivers/>`_ 安装驱动。
|
||||
|
||||
2. 使用 USB 线连接 |devkit-name|。
|
||||
|
||||
|
@ -95,7 +95,7 @@ JTAG 调试
|
||||
|
||||
如果您想使用单独的 JTAG 适配器,请确保其与 {IDF_TARGET_NAME} 的电平电压和 OpenOCD 软件都兼容。{IDF_TARGET_NAME} 使用的是业界标准的 JTAG 接口,它未使用(实际上也并不需要)TRST 信号脚。JTAG 使用的 IO 管脚由 VDD_3P3_RTC 电源管脚供电(通常连接到外部 3.3 V 的电源轨),因此 JTAG 硬件适配器的管脚需要能够在该电压范围内正常工作。
|
||||
|
||||
在软件方面,OpenOCD 支持相当多数量的 JTAG 适配器,请参阅 `OpenOCD 支持的适配器列表 <http://openocd.org/doc/html/Debug-Adapter-Hardware.html>`_ (请注意这一列表并不完整),其中还列出了兼容 SWD 接口的适配器,但请注意,{IDF_TARGET_NAME} 目前并不支持 SWD。此外,硬编码为只支持特定产品线的 JTAG 适配器也无法在 {IDF_TARGET_NAME} 上工作,例如仅针对 STM32 系列产品的 ST-LINK 适配器。
|
||||
在软件方面,OpenOCD 支持相当多数量的 JTAG 适配器,请参阅 `OpenOCD 支持的适配器列表 <https://openocd.org/doc/html/Debug-Adapter-Hardware.html>`_ (请注意这一列表并不完整),其中还列出了兼容 SWD 接口的适配器,但请注意,{IDF_TARGET_NAME} 目前并不支持 SWD。此外,硬编码为只支持特定产品线的 JTAG 适配器也无法在 {IDF_TARGET_NAME} 上工作,例如仅针对 STM32 系列产品的 ST-LINK 适配器。
|
||||
|
||||
保证 JTAG 正常工作需要连接的信号线包括:TDI、TDO、TCK、TMS 和 GND。一些 JTAG 适配器还需要 {IDF_TARGET_NAME} 提供一路电源到适配器的某个管脚上(比如 Vtar),用于设置适配器的工作电压。您也可以选择将 SRST 信号线连接到 {IDF_TARGET_NAME} 的 CH_PD 管脚上,但请注意,目前 OpenOCD 对该信号线提供的支持相当有限。
|
||||
|
||||
@ -119,7 +119,7 @@ JTAG 调试
|
||||
Open On-Chip Debugger v0.10.0-esp32-20190708 (2019-07-08-11:04)
|
||||
Licensed under GNU GPL v2
|
||||
For bug reports, read
|
||||
http://openocd.org/doc/doxygen/bugs.html
|
||||
https://openocd.org/doc/doxygen/bugs.html
|
||||
|
||||
您还可以检查 ``OPENOCD_SCRIPTS`` 环境变量的值,以确认 OpenOCD 配置文件的路径,Linux 和 macOS 用户可以在终端输入 ``echo $OPENOCD_SCRIPTS``,Windows 用户需要输入 ``echo %OPENOCD_SCRIPTS%``。如果终端输出了有效路径,则表明您已经正确安装 OpenOCD。
|
||||
|
||||
|
@ -285,4 +285,4 @@ Kconfig 配置项 :ref:`CONFIG_SECURE_BOOT_ALLOW_JTAG` 可以改变这个默认
|
||||
4. 请将 ``openocd_log.txt`` 和 ``gdb_log.txt`` 文件附在你的问题报告中。
|
||||
|
||||
|
||||
.. _OpenOCD 参考手册: http://openocd.org/doc/html/index.html
|
||||
.. _OpenOCD 参考手册: https://openocd.org/doc/html/index.html
|
||||
|
@ -22,7 +22,7 @@ ESP-IDF 目前支持两个主机堆栈。基于 Bluedroid 的堆栈(默认)
|
||||
|
||||
请点击下方链接,查看 ESP32 蓝牙架构:
|
||||
|
||||
* `ESP32 蓝牙架构 (PDF) <http://espressif.com/sites/default/files/documentation/esp32_bluetooth_architecture_cn.pdf>`_
|
||||
* `ESP32 蓝牙架构 (PDF) <https://espressif.com/sites/default/files/documentation/esp32_bluetooth_architecture_cn.pdf>`_
|
||||
|
||||
蓝牙 API 的示例代码存放于 ESP-IDF 示例项目的 :example:`bluetooth/bluedroid` 目录下。
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
.. only:: SOC_TOUCH_VERSION_1
|
||||
|
||||
如果想评估触摸传感器的多种应用场景,请查看 `ESP32 触摸功能开发套件 <https://github.com/espressif/esp-dev-kits/blob/master/esp32-sense-kit/docs/esp32_sense_kit_guide_en.md>`_。
|
||||
如果想评估触摸传感器的多种应用场景,请查看 `ESP32 触摸功能开发套件 <https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32/esp32-sense-kit/user_guide.html>`_。
|
||||
|
||||
功能介绍
|
||||
----------------------
|
||||
|
@ -7,7 +7,7 @@ mDNS 服务
|
||||
|
||||
mDNS 是一种组播 UDP 服务,用来提供本地网络服务和主机发现。
|
||||
|
||||
绝大多数的操作系统默认都会安装 mDNS 服务,或者提供单独的安装包。``Mac OS`` 默认会安装名为 ``Bonjour`` 的服务(该服务基于 mDNS),此外 Apple 还发布了适用于 Windows 系统的安装程序,可以在 `官方支持 <https://support.apple.com/downloads/bonjour%2520for%2520windows>`_ 找到。在 ``Linux`` 上,mDNS 服务由 `avahi <https://github.com/lathiat/avahi>`_ 提供,通常也会被默认安装。
|
||||
绝大多数的操作系统默认都会安装 mDNS 服务,或者提供单独的安装包。``Mac OS`` 默认会安装名为 ``Bonjour`` 的服务(该服务基于 mDNS),此外 Apple 还发布了适用于 Windows 系统的安装程序,可以在 `官方支持 <https://support.apple.com/downloads/bonjour-for-windows>`_ 找到。在 ``Linux`` 上,mDNS 服务由 `avahi <https://github.com/lathiat/avahi>`_ 提供,通常也会被默认安装。
|
||||
|
||||
mDNS 属性
|
||||
^^^^^^^^^
|
||||
|
@ -6,13 +6,13 @@ ESP-IDF 提供了 ``console`` 组件,它包含了开发基于串口的交互
|
||||
|
||||
- 行编辑,由 `linenoise <https://github.com/antirez/linenoise>`_ 库具体实现,它支持处理退格键和方向键,支持回看命令的历史记录,支持命令的自动补全和参数提示。
|
||||
- 将命令行拆分为参数列表。
|
||||
- 参数解析,由 `argtable3 <http://www.argtable.org/>`_ 库具体实现,该库提供解析 GNU 样式的命令行参数的 API。
|
||||
- 参数解析,由 `argtable3 <https://www.argtable.org/>`_ 库具体实现,该库提供解析 GNU 样式的命令行参数的 API。
|
||||
- 用于注册和调度命令的函数。
|
||||
- 帮助创建 REPL (Read-Evaluate-Print-Loop) 环境的函数。
|
||||
|
||||
.. note::
|
||||
|
||||
这些功能模块可以一起使用也可以独立使用,例如仅使用行编辑和命令注册的功能,然后使用 ``getopt`` 函数或者自定义的函数来实现参数解析,而不是直接使用 `argtable3 <http://www.argtable.org/>`_ 库。同样地,还可以使用更简单的命令输入方法(比如 ``fgets`` 函数)和其他用于命令分割和参数解析的方法。
|
||||
这些功能模块可以一起使用也可以独立使用,例如仅使用行编辑和命令注册的功能,然后使用 ``getopt`` 函数或者自定义的函数来实现参数解析,而不是直接使用 `argtable3 <https://www.argtable.org/>`_ 库。同样地,还可以使用更简单的命令输入方法(比如 ``fgets`` 函数)和其他用于命令分割和参数解析的方法。
|
||||
|
||||
行编辑
|
||||
------
|
||||
@ -127,7 +127,7 @@ Linenoise 库不需要显式地初始化,但是在调用行编辑函数之前
|
||||
参数解析
|
||||
--------
|
||||
|
||||
对于参数解析,``console`` 组件使用 `argtable3 <http://www.argtable.org/>`_ 库。有关 `argtable3 <http://www.argtable.org/>`_ 的介绍请查看 `教程 <http://www.argtable.org/tutorial/>`_ 或者 Github 仓库中的 `示例代码 <https://github.com/argtable/argtable3/tree/master/examples>`_ 。
|
||||
对于参数解析,``console`` 组件使用 `argtable3 <https://www.argtable.org/>`_ 库。有关 `argtable3 <https://www.argtable.org/>`_ 的介绍请查看 `教程 <https://www.argtable.org/tutorial/>`_ 或者 Github 仓库中的 `示例代码 <https://github.com/argtable/argtable3/tree/master/examples>`_ 。
|
||||
|
||||
|
||||
命令的注册与调度
|
||||
|
@ -11,7 +11,7 @@
|
||||
- 如果该示例项目的子任务比较多,请根据逻辑将其拆分为 ``main`` 目录下的多个 C 或者 C++ 源文件,并将对应的头文件也放在同一目录下。
|
||||
- 如果该示例项目具有多种功能,可以考虑在项目中增加一个 ``components`` 子目录,通过库功能,将示例项目的不同功能划分为不同的组件。注意,如果该组件提供的功能相对完整,且具有一定的通用性,则应该将它们添加到 ESP-IDF 的 ``components`` 目录中,使其成为 ESP-IDF 的一部分。
|
||||
- 示例项目需要包含一个 ``README.md`` 文件,建议使用 :idf_file:`示例项目 README 模板 <docs/TEMPLATE_EXAMPLE_README.md>` ,并根据项目实际情况进行修改。
|
||||
- 示例项目需要包含一个 ``example_test.py`` 文件,用于进行自动化测试。如果在 GitHub 上初次提交 Pull Request 时,可以先不包含这个脚本文件。具体细节,请见有关 `Pull Request <https://help.github.com/articles/creating-a-pull-request/>`_ 的相关内容。
|
||||
- 示例项目需要包含一个 ``example_test.py`` 文件,用于进行自动化测试。如果在 GitHub 上初次提交 Pull Request 时,可以先不包含这个脚本文件。具体细节,请见有关 `Pull Request <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request>`_ 的相关内容。
|
||||
|
||||
一般准则
|
||||
--------
|
||||
|
@ -13,8 +13,8 @@
|
||||
|
||||
以下是乐鑫 {IDF_TARGET_NAME} 开发板驱动程序的链接:
|
||||
|
||||
* CP210x: `CP210x USB 至 UART 桥 VCP 驱动程序 <https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers>`_
|
||||
* FTDI: `FTDI 虚拟 COM 端口驱动程序 <https://www.ftdichip.com/Drivers/VCP.htm>`_
|
||||
* CP210x: `CP210x USB 至 UART 桥 VCP 驱动程序 <https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers>`_
|
||||
* FTDI: `FTDI 虚拟 COM 端口驱动程序 <https://ftdichip.com/drivers/vcp-drivers/>`_
|
||||
|
||||
以上驱动仅供参考,请参考开发板用户指南,查看开发板具体使用的 USB 转串口芯片。一般情况下,当 {IDF_TARGET_NAME} 开发板与 PC 连接时,对应驱动程序应该已经被打包在操作系统中,并已经自动安装。
|
||||
|
||||
|
@ -31,6 +31,6 @@ VS Code IDE 快速入门
|
||||
Bugs 问题 & 功能请求
|
||||
=======================
|
||||
|
||||
如果您在使用 VS Code 或其某些功能上遇到问题,建议您在 `论坛 <http://esp32.com/viewforum.php?f=40>`_ 或是 `GitHub Issue <https://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`_ 上提出您的问题,我们开发团队会对问题进行解答。
|
||||
如果您在使用 VS Code 或其某些功能上遇到问题,建议您在 `论坛 <https://esp32.com/viewforum.php?f=40>`_ 或是 `GitHub Issue <https://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`_ 上提出您的问题,我们开发团队会对问题进行解答。
|
||||
|
||||
我们也欢迎您提出新的功能需求,正是由于用户要求新功能或是建议对现有功能进行改善,才成就我们今天所具备的大多数功能。欢迎您在 `Github <http://github.com/espressif/vscode-esp-idf-extension/issues/new/choose>`__ 上提出功能请求。
|
||||
|
@ -299,4 +299,4 @@
|
||||
- `ESP32-S2 技术规格书 (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-s2_datasheet_cn.pdf>`_
|
||||
- `ESP32-C3 技术规格书 (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_cn.pdf>`_
|
||||
- `ESP32-S3 技术规格书 (PDF) <https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_cn.pdf>`_
|
||||
- `ESP 产品选型 <http://products.espressif.com:8000/#/>`_
|
||||
- `ESP 产品选型 <https://products.espressif.com/#/>`_
|
@ -106,7 +106,7 @@ ESP32-PICO-DevKitM-2 开发板的主要组件、接口及控制方式见下图
|
||||
|
||||
如购买样品,每个 ESP32-PICO-DevKitM-2 将单独包装。
|
||||
|
||||
零售订单,请前往 https://www.espressif.com/en/company/contact/buy-a-sample。
|
||||
零售订单,请前往 https://www.espressif.com/en/contact-us/get-samples。
|
||||
|
||||
批量订单
|
||||
-----------
|
||||
|
@ -117,7 +117,7 @@ ESP32-PICO-KIT-1 开发板的主要组件、接口及控制方式见下图。
|
||||
|
||||
如购买样品,每个 ESP32-PICO-KIT-1 将单独包装。
|
||||
|
||||
零售订单,请前往 https://www.espressif.com/en/company/contact/buy-a-sample。
|
||||
零售订单,请前往 https://www.espressif.com/en/contact-us/get-samples。
|
||||
|
||||
|
||||
批量订单
|
||||
@ -361,7 +361,7 @@ Header J3
|
||||
相关文档
|
||||
=========
|
||||
|
||||
* `ESP32-PICO-V3 技术规格书 <http://espressif.com/sites/default/files/documentation/esp32-pico-v3_datasheet_cn.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-V3 技术规格书 <https://espressif.com/sites/default/files/documentation/esp32-pico-v3_datasheet_cn.pdf>`_ (PDF)
|
||||
* `乐鑫产品选型工具 <https://products.espressif.com/#/product-selector?names=>`__
|
||||
* `ESP32-PICO-KIT-1 原理图 <https://dl.espressif.com/dl/schematics/SCH_ESP32-PICO-KIT-1_V1_0_20200811A.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT-1 PCB 布局图 <https://dl.espressif.com/dl/schematics/PCB_ESP32-PICO-KIT-1_V1.0_20200811.pdf>`_ (PDF)
|
||||
|
@ -75,5 +75,5 @@ ESP32-PICO-KIT V3 上电前,请首先确认开发板完好无损。
|
||||
-----------------
|
||||
|
||||
* `ESP32-PICO-KIT V3 原理图 <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v3_schematic.pdf>`_ (PDF)
|
||||
* `《ESP32-PICO-D4 技术规格书》 <http://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_cn.pdf>`_ (PDF)
|
||||
* `《ESP32-PICO-D4 技术规格书》 <https://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_cn.pdf>`_ (PDF)
|
||||
* :doc:`../../hw-reference/index`
|
||||
|
@ -225,7 +225,7 @@ ESP32-PICO-KIT 的尺寸为 52 x 20.3 x 10 mm (2.1" x 0.8" x 0.4")。
|
||||
* `ESP32-PICO-KIT V4 原理图 <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v4_schematic.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT V4.1 原理图 <https://dl.espressif.com/dl/schematics/esp32-pico-kit-v4.1_schematic.pdf>`_ (PDF)
|
||||
* `ESP32-PICO-KIT 参考设计 <https://www.espressif.com/sites/default/files/documentation/esp32-pico-kit_v4.1_20180314_cn.zip>`_ ,内含 OrCAD 原理图、PCB 布局、Gerbers 和 BOM 表
|
||||
* `《ESP32-PICO-D4 技术规格书》 <http://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_cn.pdf>`_ (PDF)
|
||||
* `《ESP32-PICO-D4 技术规格书》 <https://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_cn.pdf>`_ (PDF)
|
||||
* :doc:`../../hw-reference/index`
|
||||
|
||||
|
||||
|
@ -264,6 +264,6 @@ R19 CLK SD_CLK
|
||||
- `ESP32-WROOM-32 技术规格书 <https://espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_cn.pdf>`_ (PDF)
|
||||
- `ESP32-WROOM-32D & ESP32-WROOM-32U 技术规格书 <https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32d_esp32-wroom-32u_datasheet_cn.pdf>`_ (PDF)
|
||||
- `ESP32-SOLO-1 技术规格书 <https://www.espressif.com/sites/default/files/documentation/esp32-solo-1_datasheet_cn.pdf>`_ (PDF)
|
||||
- `ESP32-WROVER 技术规格书 <https://espressif.com/sites/default/files/documentation/esp32-wrover_datasheet_cn.pdf>`_ (PDF)
|
||||
- `ESP32-WROVER 技术规格书 <https://espressif.com/sites/default/files/documentation/esp32_wrover_datasheet_cn.pdf>`_ (PDF)
|
||||
- `ESP32-WROVER-B 技术规格书 <https://www.espressif.com/sites/default/files/documentation/esp32-wrover-b_datasheet_cn.pdf>`_ (PDF)
|
||||
- `乐鑫产品选型工具 <https://products.espressif.com/#/product-selector?names=>`__
|
@ -8,7 +8,7 @@ ESP-IDF 编程指南
|
||||
|
||||
快速预览中不包括 API 函数文档。如需生成完整的文档,请在 MR 中添加 docs_full 标签。
|
||||
|
||||
这里是乐鑫 IoT 开发框架 (`esp-idf <https://github.com/espressif/esp-idf>`_) 的文档中心。ESP-IDF 是 `ESP32、ESP32-S 和 ESP32-C <https://www.espressif.com/en/products/hardware/socs>`_ 系列芯片的官方开发框架。
|
||||
这里是乐鑫 IoT 开发框架 (`esp-idf <https://github.com/espressif/esp-idf>`_) 的文档中心。ESP-IDF 是 `ESP32、ESP32-S 和 ESP32-C <https://www.espressif.com/en/products/socs>`_ 系列芯片的官方开发框架。
|
||||
|
||||
.. only:: html
|
||||
|
||||
|
@ -52,7 +52,7 @@ ESP-IDF 在 GitHub 平台上的完整发布历史请见 `发布说明页面`_。
|
||||
版本管理
|
||||
-----------------
|
||||
|
||||
ESP-IDF 采用了 `语义版本管理方法 <http://semver.org/>`_,即您可以从字面含义理解每个版本的差异。其中
|
||||
ESP-IDF 采用了 `语义版本管理方法 <https://semver.org/>`_,即您可以从字面含义理解每个版本的差异。其中
|
||||
|
||||
- 主要版本(例 ``v3.0``)代表有重大更新,包括增加新特性、改变现有特性及移除已弃用的特性。
|
||||
|
||||
@ -254,7 +254,7 @@ Git 工作流
|
||||
|
||||
发布分支并不会有专门的配套文档,建议您使用与本分支最接近版本的文档。
|
||||
|
||||
.. _`发布说明页面`: http://github.com/espressif/esp-idf/releases
|
||||
.. _`发布说明页面`: https://github.com/espressif/esp-idf/releases
|
||||
.. _`分支列表`: https://github.com/espressif/esp-idf/branches
|
||||
.. _`标签列表`: https://github.com/espressif/esp-idf/tags
|
||||
.. _`最新稳定版本`: https://docs.espressif.com/projects/esp-idf/zh_CN/stable/
|
||||
|
Loading…
x
Reference in New Issue
Block a user