* Is the code adequately commented for people to understand how it is structured?
-* Is there documentation or examples that go with code contributions? [There are additional suggestions for writing good examples in the examples README](examples/README.md).
+* Is there documentation or examples that go with code contributions? `There are additional suggestions for writing good examples in the examples README <https://github.com/espressif/esp-idf/tree/master/examples>`_.
* Are comments and documentation written in clear English, with no spelling or grammar errors?
Legal Part
----------
-Before a contribution can be accepted, you will need to sign our :doc:`Contributor Agreement <docs/contributor-agreement>`. You will be prompted for this automatically as part of the Pull Request process.
+Before a contribution can be accepted, you will need to sign our `Contributor Agreement <http://esp-idf.readthedocs.io/en/latest/contributing.html>`_. You will be prompted for this automatically as part of the Pull Request process.
+
+
-PROJECT_NAME = "ESP32 Programming Guide"
-XML_OUTPUT = xml
-GENERATE_LATEX = NO
-GENERATE_MAN = NO
-GENERATE_RTF = NO
-CASE_SENSE_NAMES = NO
-INPUT = ../components/esp32/include/esp_wifi.h ../components/driver/include/driver/gpio.h ../components/esp32/include/rom/gpio.h
-RECURSIVE = YES
-QUIET = YES
-JAVADOC_AUTOBRIEF = YES
-GENERATE_HTML = NO
-GENERATE_XML = YES
-WARN_LOGFILE = "DoxyGenWarningLog.txt"
\ No newline at end of file
+PROJECT_NAME = "ESP32 Programming Guide"
+XML_OUTPUT = xml
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+GENERATE_RTF = NO
+CASE_SENSE_NAMES = NO
+INPUT = ../components/esp32/include/esp_wifi.h ../components/driver/include/driver/gpio.h ../components/esp32/include/rom/gpio.h ../components/bt/include/bt.h
+RECURSIVE = YES
+QUIET = YES
+JAVADOC_AUTOBRIEF = YES
+GENERATE_HTML = NO
+GENERATE_XML = YES
+WARN_LOGFILE = "DoxyGenWarningLog.txt"
--- /dev/null
+Bluetooth API
+=============
+
+Overview
+--------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Application Example
+-------------------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Reference
+---------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Type Definitions
+^^^^^^^^^^^^^^^^
+
+.. doxygentypedef:: vhci_host_callback
+
+Functions
+^^^^^^^^^
+
+.. doxygenfunction:: API_vhci_host_check_send_available
+.. doxygenfunction:: API_vhci_host_register_callback
+.. doxygenfunction:: API_vhci_host_send_packet
+.. doxygenfunction:: bt_controller_init
+
Wi-Fi API
=========
+Overview
+--------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Application Example
+-------------------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Reference
+---------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
Macros
------
+++ /dev/null
-Example Visualizations
-======================
-
-Function prototpe
------------------
-
-.. c:function:: esp_err_t esp_wifi_get_ap_list (uint16_t *number, wifi_ap_list_t *ap_list)
-.. c:function:: esp_err_t esp_wifi_set_protocol (wifi_interface_t ifx, uint8_t protocol_bitmap)
-
-
-Function definition
--------------------
-
-Wi-Fi
-^^^^^
-.. doxygenfunction:: esp_wifi_init
-.. doxygenfunction:: esp_wifi_set_config
-
-GPIO
-^^^^
-.. doxygenfunction:: gpio_isr_register
-
-Led Control
-^^^^^^^^^^^
-
-.. doxygenfunction:: ledc_timer_set
-
-
-Enum definition
----------------
-
-.. doxygenenum:: wifi_auth_mode_t
-
-
-Struct definition
------------------
-
-.. doxygenstruct:: wifi_scan_config_t
- :members:
-
-
GPIO API
========
-Functions
+Overview
+--------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Application Example
+-------------------
+
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Reference
---------
+`Instructions <http://esp-idf.readthedocs.io/en/latest/api/template.html>`_
+
+Functions
+^^^^^^^^^
+
.. doxygenfunction:: gpio_config
.. doxygenfunction:: gpio_set_intr_type
.. doxygenfunction:: gpio_intr_enable
.. doxygenfunction:: gpio_wakeup_disable
.. doxygenfunction:: gpio_isr_register
-*Example code:*
-
-Configuration of GPIO as an output
+*Example code:* Configuration of GPIO as an output
.. code-block:: c
io_conf.pull_up_en = 0; //disable pull-up mode
gpio_config(&io_conf); //configure GPIO with the given settings
-Configuration of GPIO as an input
+*Example code:* Configuration of GPIO as an input
.. code-block:: c
gpio_config(&io_conf); //configure GPIO with the given settings
-Low level ROM GPIO functions
+ROM GPIO functions
+^^^^^^^^^^^^^^^^^^
.. doxygenfunction:: gpio_init
.. doxygenfunction:: gpio_output_set
.. doxygenfunction:: gpio_pad_pulldown
.. doxygenfunction:: gpio_pad_unhold
.. doxygenfunction:: gpio_pad_hold
+
+
--- /dev/null
+Template API
+=============
+
+Overview
+--------
+
+INSTRUCTIONS: Provide overview where and how this API may be used. For large number of functions, break down description into groups.
+
+
+Application Example
+-------------------
+
+INSTRUCTIONS: Provide one or more pratical examples to demonstrate functionality of this API.
+
+
+Reference
+---------
+
+INSTRUCTIONS: Provide list of API memebers divided into sections. Use coresponding **.. doxygen** directices, so member documentation is auto updated.
+
+* Data Structures **.. doxygenstruct**
+* Macros **.. doxygendefine**
+* Type Definitions **.. doxygentypedef**
+* Enumerations **.. doxygenenum**
+* Functions **.. doxygenfunction**
+* Variables **.. doxygenvariable**
+
+Include code snippotes to ilustrate functionality of particular functions where applicable. Skip section hearder if empty.
+
+
+Data Structures
+^^^^^^^^^^^^^^^
+
+.. Data Structures .. doxygenstruct
+
+Macros
+^^^^^^
+
+.. Macros .. doxygendefine
+
+Type Definitions
+^^^^^^^^^^^^^^^^
+
+.. Type Definitions .. doxygentypedef
+
+Enumerations
+^^^^^^^^^^^^
+
+.. Enumerations .. doxygenenum
+
+Functions
+^^^^^^^^^
+
+.. Functions .. doxygenfunction
+
+Variables
+^^^^^^^^^
+
+.. Variables .. doxygenvariable
+
+
-.. Read the Docs Template documentation master file
-
ESP32 Programming Guide
=======================
Eclipse IDE <eclipse-setup>
.. toctree::
- :caption: Want More?
+ :caption: What Else?
:maxdepth: 1
partition-tables
:maxdepth: 1
Wi-Fi <api/esp_wifi>
+ Bluetooth <api/bt>
GPIO <api/gpio>
- api/example
+ Template <api/template>
.. toctree::
:caption: Technical Reference