• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

bluetooth/11-Mar-2024-177,480153,534

build_system/cmake/11-Mar-2024-629420

common_components/11-Mar-2024-2,5451,606

cxx/11-Mar-2024-4,7702,819

ethernet/11-Mar-2024-3,6772,817

get-started/11-Mar-2024-345191

mesh/11-Mar-2024-2,9212,250

peripherals/11-Mar-2024-25,49318,660

protocols/11-Mar-2024-29,70621,079

provisioning/11-Mar-2024-5,8893,865

security/flash_encryption/11-Mar-2024-383272

storage/11-Mar-2024-7,2415,017

system/11-Mar-2024-13,6649,492

wifi/11-Mar-2024-8,0216,063

README.mdD11-Mar-20242.6 KiB4631

README.md

1# Examples
2
3This directory contains a range of example ESP-IDF projects. These are intended to demonstrate parts of ESP-IDF functionality, and to provide code that you can copy and adapt into your own projects.
4
5# Example Layout
6
7The examples are grouped into subdirectories by category. Each category directory contains one or more example projects:
8
9* `bluetooth/bluedroid` contains Classic BT, BLE and coex examples using default Bluedroid host stack.
10* `bluetooth/nimble` contains BLE examples using NimBLE host stack.
11* `bluetooth/esp_ble_mesh` contains ESP BLE Mesh examples.
12* `bluetooth/hci` contains HCI transport (VHCI and HCI UART) examples
13* `ethernet` contains Ethernet examples.
14* `get-started` contains some very simple examples with minimal functionality.
15* `mesh` contains Wi-Fi Mesh examples.
16* `peripherals` contains examples showing driver functionality for the various onboard ESP32 peripherals.
17* `protocols` contains examples showing network protocol interactions.
18* `storage` contains examples showing data storage methods using SPI flash or external storage like the SD/MMC interface.
19* `system` contains examples which demonstrate some internal chip features, or debugging & development tools.
20* `wifi` contains examples of advanced Wi-Fi features. (For network protocol examples, see `protocols` instead.)
21* `build_system` contains examples of build system features
22
23# Using Examples
24
25Building an example is the same as building any other project:
26
27* Follow the Getting Started instructions which include building the "Hello World" example.
28* Change into the directory of the new example you'd like to build.
29* Run `idf.py menuconfig` to open the project configuration menu. Most examples have a project-specific "Example Configuration" section here (for example, to set the WiFi SSID & password to use).
30* `idf.py build` to build the example.
31* Follow the printed instructions to flash, or run `idf.py -p PORT flash`.
32
33# Copying Examples
34
35Each example is a standalone project. The examples *do not have to be inside the esp-idf directory*. You can copy an example directory to anywhere on your computer in order to make a copy that you can modify and work with.
36
37The `IDF_PATH` environment variable is the only thing that connects the example to the rest of ESP-IDF.
38
39If you're looking for a more bare-bones project to start from, try [esp-idf-template](https://github.com/espressif/esp-idf-template).
40
41# Contributing Examples
42
43If you have a new example you think we'd like, please consider sending it to us as a Pull Request.
44
45In the ESP-IDF documentation, you can find a "Creating Examples" page which lays out the steps to creating a top quality example.
46