]> granicus.if.org Git - esp-idf/blob - examples/README.md
Merge branch 'bugfix/btdm_respond_error_when_receives_unsupported_request' into ...
[esp-idf] / examples / README.md
1 # Examples
2
3 This 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
7 The examples are grouped into subdirectories by category. Each category directory contains one or more example projects:
8
9 * `bluetooth` contains Bluetooth (BLE & BT Classic) examples.
10 * `ethernet` contains Ethernet examples.
11 * `get-started` contains some very simple examples with minimal functionality.
12 * `mesh` contains Wi-Fi Mesh examples.
13 * `peripherals` contains examples showing driver functionality for the various onboard ESP32 peripherals.
14 * `protocols` contains examples showing network protocol interactions.
15 * `storage` contains examples showing data storage methods using SPI flash or external storage like the SD/MMC interface.
16 * `system` contains examples which demonstrate some internal chip features, or debugging & development tools.
17 * `wifi` contains examples of advanced Wi-Fi features. (For network protocol examples, see `protocols` instead.)
18
19 # Using Examples
20
21 Building an example is the same as building any other project:
22
23 * Follow the Getting Started instructions which include building the "Hello World" example.
24 * Change into the directory of the new example you'd like to build.
25 * `make menuconfig` to configure the example. Most examples have a project-specific "Example Configuration" section here (for example, to set the WiFi SSID & password to use).
26 * `make` to build the example.
27 * Follow the printed instructions to flash, or run `make flash`.
28
29 # Copying Examples
30
31 Each 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.
32
33 The `IDF_PATH` environment variable is the only thing that connects the example to the rest of ESP-IDF.
34
35 If you're looking for a more bare-bones project to start from, try [esp-idf-template](https://github.com/espressif/esp-idf-template).
36
37 # Contributing Examples
38
39 If you have a new example you think we'd like, please consider sending it to us as a Pull Request.
40
41 In the ESP-IDF documentation, you can find a "Creating Examples" page which lays out the steps to creating a top quality example.