OVMS3-idf/examples
Wangjialin 870efdb9d4 bugfix(uart): patten detect function
requirement from github(https://github.com/espressif/esp-idf/issues/805): to provide the position in the buffer of the pattern detected.

requirement from AT application: in AT app, when no hardware flow control is enabled, in some situation the rx buffer might be full, and the terminator “+++” might be lost, we can use pattern detect interrupt to avoid missing the terminator. When pattern detect interrupt happens, it will not send a data event at the same time.

1. Add API to get position of detected pattern in rx buffer
2. Modify UART event example
3. Add comments for uart_flush, add alias API uart_flush_input to clear the rx buffer
4. Modify the way rx_buffered_len is calculated
2018-01-22 13:33:51 +08:00
..
bluetooth Merge branch 'bugfix/btdm_avrc_connect_state_evt' into 'master' 2018-01-09 19:33:06 +08:00
ethernet feat(emac): add support for emac to use internal (APLL) clock outputs. 2017-11-13 14:18:58 +08:00
get-started sdkconfig: Remove rest of the references to WIFI_ENABLED 2017-08-16 15:55:42 +05:30
performance udp_perf/tcp_perf examples: Erase NVS if no more free pages 2017-11-20 16:07:52 +11:00
peripherals bugfix(uart): patten detect function 2018-01-22 13:33:51 +08:00
protocols lwip: Change socket API macros to static-inline 2017-11-29 11:42:14 +05:30
storage GPIO2 note updated 2018-01-03 10:48:57 +11:00
system ulp: document the need to wait for RTC to be ready for wakeup 2017-12-11 12:11:46 +08:00
wifi example: some modification about iperf example 2017-12-19 18:28:22 +08:00
README.md examples: Standardise naming of files, symbols, etc. in examples 2017-03-27 17:42:05 +11:00

Examples

This directory contains a growing number of simple example projects for esp-idf. These are intended to show basic esp-idf functionality, and to provide you can use for your own projects.

Using Examples

Building examples is the same as building any other project:

  • Follow the setup instructions in the top-level esp-idf README.

  • Set IDF_PATH environment variable to point to the path to the esp-idf top-level directory.

  • Change into the directory of the example you'd like to build.

  • make menuconfig to configure the example. Most examples require a simple WiFi SSID & password via this configuration.

  • make to build the example.

  • Follow the printed instructions to flash, or run make flash.

Copying Examples

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.

The IDF_PATH environment variable is the only thing that connects the example to the rest of the esp-idf system.

If you're looking for a more bare-bones project to start from, try esp-idf-template.

Contributing Examples

If you have a new example you think we'd like, please consider sending it to us as a Pull Request.

Please read the esp-idf CONTRIBUTING.rst file which lays out general contribution rules.

In addition, here are some tips for creating good examples:

  • A good example is documented and the basic options can be configured.
  • A good example does not contain a lot of code. If there is a lot of generic code in the example, consider refactoring that code into a standalone component and then use the component's API in your example.
  • Names (of files, functions, variables, etc.) inside examples should be distinguishable from names of other parts of IDF (ideally, use example in names.)
  • Functions and variables used inside examples should be declared static where possible.
  • Examples should demonstrate one distinct thing each. Avoid multi-purposed "demo" examples, split these into multiple examples instead.
  • Examples must be licensed under the Apache License 2.0 or (preferably for examples) if possible you can declare the example to be Public Domain / Creative Commons Zero.