Commit Graph

557 Commits

Author SHA1 Message Date
Angus Gratton
1773770f44 Merge branch 'feature/multi_heap_assert' into 'master'
multi_heap: Print the problem address when aborting due to heap corruption

See merge request !1277
2017-09-25 09:51:14 +08:00
Angus Gratton
022d949ccf Merge branch 'doc/windows_env_updates' into 'master'
doc: Add steps to update Windows environment installations

See merge request !1298
2017-09-22 06:39:26 +08:00
Jeroen Domburg
c54a9ff40a Merge branch 'docs/FreeRTOS_SMP_Changes' into 'master'
docs: Added documentation for FreeRTOS SMP changes

See merge request !1238
2017-09-21 17:10:33 +08:00
Darian Leung
6ab552a6ea docs: Added documentation for FreeRTOS SMP changes
Added documentation about the ESP-IDF changes to FreeRTOS.
The documentation covers changes to the following FreeRTOS aspects.

    - Task Creation
    - Affects on scheduling (Task skipping, scheduler suspension, tick synchronicity)
    - Critical sections and disabling interrupts
    - Thread Local Storage Pointers and deletion callbacks
    - Configuring ESP-IDF FreeRTOS
2017-09-21 16:40:57 +08:00
Angus Gratton
ab531c0b48 doc: Add steps to update Windows environment installations 2017-09-21 16:57:06 +10:00
dziekon
e822b37883 Fix CDT GCC parser to correctly parse C++ commands
Previously suggested parser command pattern:

xtensa-esp32-elf-(g?cc)|([gc]\+\+)|(clang)

was incorrect for compilation of c++ files, as it is expanded by Eclipse into or between:

xtensa-esp32-elf-(g?cc)
([gc]\+\+)
(clang)

Additional grouping around existing pattern solves that issue, and helps Eclipse to correctly find ESP-IDF includes.

Merges https://github.com/espressif/esp-idf/pull/1005
2017-09-20 12:06:23 +10:00
Angus Gratton
0db01b4a4d windows: Update windows prereq script & precompiled environment download 2017-09-18 18:26:57 +10:00
Angus Gratton
76d8190444 multi_heap: Print the problem address when aborting due to heap corruption
New multi_heap code has proven effective at aborting when buffer overruns occur,
but it's currently hard to debug the stack traces from these failures.
2017-09-18 16:54:23 +10:00
Ivan Grokhotkov
7551e1d310 make,docs: update toolchain to 1.22.0-72-g4d49225 2017-09-18 10:32:44 +08:00
krzychb
6fa62ca604 Added a section how to update existing local esp-idf repository and load specific release. Inspired by issues #990 and #997 2017-09-15 19:54:36 +02:00
Wangjialin
2fceec4d85 feature(I2S-ADC): add ADC mode for I2S.
1. Support built-in ADC for I2S.
2. Modify code of ADC, made no change to the original APIs.
3. Add APIs in I2S:
esp_err_t i2s_set_adc_mode(adc_unit_t adc_unit, adc1_channel_t adc_channel);
4. Add I2S ADC/DAC example code.
5. add old-fashion definition to make it more compatible
6. replase spi_flash_ APIs with esp_partition_ APIs
7. add example of generating audio table from wav
8. change example sound
2017-09-14 13:24:08 +08:00
Angus Gratton
4b8aa9e20d ci: Add new check_doc_warnings.sh script, pre-process log lines
* Fixes issue in !1250 when IDF_PATH changes on build runner
* Allows checking document warnings before CI run
* Will be robust to line number changes in document files
2017-09-14 13:46:35 +10:00
Ivan Grokhotkov
b2adaf2a4c Merge branch 'feature/docs_adc_api_reference' into 'master'
More details added to  description of ADC API

See merge request !1240
2017-09-14 10:49:12 +08:00
krzychb
53fde7842e Resolved docs formatting issues that sneak into documentation with MR 1061 2017-09-13 21:00:48 +02:00
Jiang Jiang Jian
33a4a6a510 Merge branch 'feature/add_espnow' into 'master'
add ESPNOW feature

See merge request !1061
2017-09-13 20:32:53 +08:00
Ivan Grokhotkov
dfaf166436 Merge branch 'feature/toolchain-update' into 'master'
Toolchain update

See merge request !1204
2017-09-13 18:05:09 +08:00
Angus Gratton
61e3a5bd16 windows: Update toolchain & MSYS package download links 2017-09-13 17:27:47 +08:00
Ivan Grokhotkov
5586b4b799 Update toolchain download links 2017-09-13 17:27:47 +08:00
Ivan Grokhotkov
d7fb4a71a0 Merge branch 'feature/fail_build_on_sphinx_warning' into 'master'
Fail CI build on Sphinx warnings

See merge request !1228
2017-09-12 13:49:11 +08:00
krzychb
59792bb2c3 Fail CI build on Sphinx warnings 2017-09-12 07:12:57 +02:00
XiaXiaotian
e4ba31a8b9 add ESPNOW feature
ESPNOW is a kind of WiFi communication bettween WiFi devices, no
    matter they are connected to each other or not. Once two WiFi
    devices are paired, they can send data to or receive data from
    each other. The data is transmitted in action frame which can
    be encrypted with CCMP method. ESPNOW also support mutilcast frame
    transmitting.
2017-09-12 12:12:13 +08:00
krzychb
31eda99136 More detailed description of ADC API 2017-09-11 21:00:09 +02:00
me-no-dev
dd87deb278 Add SPIFFS Component to IDF 2017-09-11 19:56:40 +03:00
Ivan Grokhotkov
1e7c3854d3 Merge branch 'bugfix/warn_on_invalid_xtal_freq' into 'master'
soc/rtc: warn if detected XTAL frequency does not match configured one

See merge request !1242
2017-09-11 18:15:11 +08:00
Ivan Grokhotkov
de038f502c Merge branch 'feature/gpio_channel_macro' into 'master'
feat(global): add macros for GPIO->channel lookup

See merge request !1170
2017-09-11 12:15:08 +08:00
Ivan Grokhotkov
5a88f90a33 soc/rtc: warn if detected XTAL frequency does not match configured one
Since 9a8c0392, XTAL frequency is set to 40MHz by default, and users
of 26MHz boards need to select 26MHz manually. Most users are not aware
of this change, and existing getting started guides do not mention that
XTAL frequency needs to be set for some boards. So users are left with
garbage output from UART without any clue what to check.

This change adds a warning in case specific XTAL frequency was set, and
it does not match automatically detected one. This should help users
fix the issue.
2017-09-11 11:42:26 +08:00
Ivan Grokhotkov
050ae50e83 Merge branch 'bugfix/docs_broken_links' into 'master'
Fixed broken links in documentation

See merge request !1230
2017-09-08 12:06:43 +08:00
Ivan Grokhotkov
e12967297d Merge branch 'feature/docs_touch_pad_api' into 'master'
Touch Pad driver overview

See merge request !1195
2017-09-08 11:55:27 +08:00
krzychb
b69379941b Fixed broken links in documentation 2017-09-07 18:48:15 +02:00
Ivan Grokhotkov
40df6546c0 Merge branch 'feature/multi_heap_poisoning' into 'master'
Heap tracing & poisoning features

See merge request !749
2017-09-07 17:47:51 +08:00
Ivan Grokhotkov
b9dfb437ab Merge branch 'bugfix/intr_free' into 'master'
fix(intr): fix the logic for allocating and freeing interrupts.

See merge request !1124
2017-09-07 17:45:18 +08:00
Angus Gratton
72995bfcec doc: Add docs for heap trace & poisoning 2017-09-07 16:32:05 +10:00
michael
08b9fbc242 feat(global): add macros for GPIO->channel lookup
including: macros for dac, adc, touch, rtc_gpio, uart and clk_out.

TW#13970
2017-09-07 10:40:25 +08:00
Angus Gratton
4809c70899 Merge branch 'feature/register_heaps_runtime' into 'master'
heap: Support adding new heap regions at runtime

See merge request !1159
2017-09-07 10:18:21 +08:00
michael
c82e51cf79 fix(intr): always assign the same intr to a same source, disable the source only when all the handlers disabled.
also document handlers sharing a same source.

TW#13454, https://github.com/nodemcu/nodemcu-firmware/issues/1874

Breaking change: handles assigned to a same source should have the same flag now.
2017-09-06 15:20:01 +08:00
krzychb
672390c458 Mass replacement of http with https urls, fixed broken urls 2017-09-06 08:16:01 +02:00
krzychb
73297f1aa3 Separate section on touch detection 2017-09-05 20:43:15 +02:00
krzychb
7c7d29dc4a Implemented 2 of 3 review comments 2017-09-05 08:28:44 +02:00
krzychb
ba42c46cb3 Touch Pad driver overview 2017-09-05 08:28:44 +02:00
Angus Gratton
5f3cb9f9dc build system: Document --warn-undefined-variables and add a config item for it 2017-09-05 16:11:03 +10:00
Angus Gratton
5361c08989 heap: Support adding new heap regions at runtime
To facilitate this, the list of registered heap regions is now a linked list
(allowing entries to be appended at runtime.)
2017-09-05 14:07:02 +10:00
Ivan Grokhotkov
d2acf1ce77 sleep: add light sleep, factor out APIs common for deep/light sleep 2017-09-01 10:36:14 +08:00
lf
f77020ee5f Add quotes to PATH declarations
This is necessary in case someone has a space in their PATH variable (which is within the realm of possibility)

Merges https://github.com/espressif/esp-idf/pull/800
2017-08-30 17:55:00 +10:00
Patrick Hobusch
76cb1bac2b Fix distinction between shared and non-shared interrupts in docs
Merges https://github.com/espressif/esp-idf/pull/701
2017-08-30 17:55:00 +10:00
Jeroen Domburg
a1b5813049 Merge branch 'feature/adc_calibration' into 'master'
esp_adc_cal component

See merge request !1084
2017-08-30 10:00:19 +08:00
Angus Gratton
8bd6feedd4 Merge branch 'bugfix/docs_updates' into 'master'
Removed redundant 'Logging to Host' and docs cleaning

See merge request !1158
2017-08-30 09:43:00 +08:00
krzychb
8c3169b6be Removed redundant 'Logging to Host' and docs cleaning 2017-08-29 20:47:10 +02:00
Darian Leung
88b05f9391 esp_adc_cal: Added ADC calibration component
Added component containg API that is able to correct raw ADC readings
into a voltage in mV. Also provided a helper function that combines
the process of getting the raw ADC1 reading then converting it to a
voltage in mV. In doing so, the adc1_get_voltage() function of the ADC
driver has been deprecated. Instead there is now adc1_get_raw to obtain
the raw ADC1 reading, and adc1_to_voltage() that gets the raw reading
and converts all in one function. Functions using the deprecated
adc1_get_voltage() have also been updated to use adc1_get_raw().

Conversion is based on ADC characteristics. The characteristics are based
on the ADC's v_ref, herefore the appropriate structure and functions have
been provided to obtain the ADC characteristics.

The existing ADC driver has also been modified by adding a function to
route the internal ADC reference voltage to a GPIO allowing users to measure
it manually.

Relevant documentation has also been updated
2017-08-29 18:43:14 +08:00
Ivan Grokhotkov
3161854efb Merge branch 'bugfix/spi_hd_rx' into 'master'
fix(spi_dma_rx): add check to avoid using SPI half-duplex mode DMA with both MOSI and MISO phases.

See merge request !1111
2017-08-28 17:36:58 +08:00
michael
2554f61f05 doc(spi master): documents updated for several limitations. 2017-08-26 02:15:32 +08:00
Ivan Grokhotkov
631f552489 sdmmc: don't use high speed mode with SD over SPI
Disabling due to limitation of SPI driver (max 26MHz for full-duplex
mode over GPIO matrix)
2017-08-25 14:33:19 +08:00
Jeroen Domburg
1862736c3a Merge branch 'bugfix/the_esp-wrover-kit_identity' into 'master'
ESP-WROVER-KIT now integrates the ESP32-WROVER module by default.

See merge request !1096
2017-08-24 14:33:34 +08:00
Ivan Grokhotkov
cc96234bb8 Merge branch 'feature/docs_esp32-wrover_info' into 'master'
docs: Included information about ESP32-WROVER module

See merge request !1107
2017-08-24 14:30:06 +08:00
Wang Jia Lin
f1ecffb46c Merge branch 'bugfix/touch_pad_driver' into 'master'
driver(touch): fix bug and add more features

See merge request !1056
2017-08-23 19:12:39 +08:00
krzychb
173cce2850 docs: Included information about ESP32-WROVER module 2017-08-22 20:08:04 +02:00
Wangjialin
842caaab21 driver(touch): fix bug and add more features
1. add sens_struct.h
2. add definition of RTCCNTL and RTCIO
3. modify touch pad examples
4. update example code.
5. add comments add option in menuconfig
6. fix issue that pad index 8 and 9 are mismatched
7. add touch_pad_read_filtered() api to get value filtered by iir filter
8. modify touch pad isr func
9. Make the items in perihperal.ld in the sequence of address
10. delete Kconfig for touch pad
11. add touchpad filter APIs to adjust the filter
12. add touch_pad into index.rst
13. add touch_pad in Doxyfile
14. add touch_pad.rst
2017-08-22 21:21:39 +08:00
Ivan Grokhotkov
908f94c8e9 docs: wifi: use list instead of nested table
Latex backend does not support nested tables, which caused documentation
build to fail on readthedocs.
2017-08-22 15:12:35 +08:00
Ivan Grokhotkov
430cf3e9b3 docs: link to Kconfig options documentation 2017-08-22 15:12:35 +08:00
Ivan Grokhotkov
a2f4f2999d docs: generate documentation for Kconfig options
This adds a simple script which parses Kconfig files using Kconfiglib
and emits ReST document with the list of all options. For each option
a link target is generated, to make it possible to link to any Kconfig
option from the rest of the documentation.
Since Kconfiglib is not on PyPI, the latest version (45f87b9d) is
bundled into the docs directory.
2017-08-22 15:12:34 +08:00
Ivan Grokhotkov
5de7c91a54 add console component and example 2017-08-21 15:58:27 +08:00
krzychb
f2ce3e8678 ESP-WROVER-KIT now integrates the ESP32-WROVER module by default. But it is still compatible with both ESP-WROOM-32 and ESP32-WROVER. The latest baseboard is still V3. The original 'ESP-WROVER-KIT' that integrates ESP-WROOM-32 is unlikely to be produced any longer, while the original 'ESP-WROVER-KIT-RVB' is renamed as “ESP-WROVER-KIT” and in mass production. 2017-08-19 21:16:00 +02:00
Ivan Grokhotkov
bfb15c6fc9 Merge branch 'bugfix/docs_app_trace_lib' into 'master'
Update of "Application Level Tracing library" documentation to reflect "esp32" target

See merge request !1081
2017-08-16 19:12:51 +08:00
Ivan Grokhotkov
44f5b9f78d Merge branch 'bugfix/docs_datasheet_link_fix' into 'master'
Fix the wrong link of the datasheet

See merge request !1100
2017-08-16 19:11:43 +08:00
krzychb
b0b323df37 Included 'Introduction' from original 'Get Started' PDF 2017-08-14 08:06:42 +02:00
krzychb
fe80e1a595 Fixed Breathe release because 'latest' introduces errors 2017-08-09 19:09:59 +02:00
krzychb
00a81564f0 Merge branch 'master' of https://gitlab.espressif.cn:6688/idf/esp-idf into feature/docs_setup_sphinx 2017-08-09 18:46:43 +02:00
Ivan Grokhotkov
43b81c8f11 Merge branch 'feature/fast_crypto_used_in_supplicant' into 'master'
Add the fast crypto function in supplicant, relate to the task tw13712

See merge request !1075
2017-08-09 21:55:05 +08:00
Deng Xin
57bc38d867 Add the fast crypto function in supplicant
optimize the speed when do wifi connect
2017-08-09 21:36:13 +08:00
Anton Maklakov
3a608a359d doc: Fix the wrong link 2017-08-09 18:41:02 +08:00
Ivan Grokhotkov
b8b553d122 Merge branch 'feature/docs_build_openocd_windows' into 'master'
Provided instruction to build OpenOCD from sources using MSYS2

See merge request !1062
2017-08-09 13:17:35 +08:00
Ivan Grokhotkov
142f4ac071 Merge branch 'feature/docs_wrover_kit_description' into 'master'
Updated desription of ESP-WROVER-KIT features in getting started guide, changed …

See merge request !1064
2017-08-09 13:17:19 +08:00
krzychb
ca5065c66c Trace collection command examples 2017-08-05 16:54:58 +02:00
krzychb
485518cb59 Target change, clarifications and formatting updates 2017-08-04 22:17:31 +02:00
Ivan Grokhotkov
d286d2f647 Merge branch 'feature/apptrace_api_ext' into 'master'
esp32: Apptrace API enhancement

See merge request !1021
2017-08-02 14:34:42 +08:00
krzychb
b1fcfca987 Updated desription of ESP-WROVER-KIT features in getting started guide, changed link to JTAG Debugging 2017-08-02 06:57:28 +02:00
krzychb
2e94b51b9c Instructions how to setup tools and build documentation locally 2017-08-02 06:33:55 +02:00
krzychb
d5119dd529 Provided instruction to build OpenOCD from sources using MSYS2 2017-08-02 06:10:44 +02:00
Ivan Grokhotkov
dce7fcb90d Merge branch 'bugfix/sdspi_docs' into 'master'
Fix SD SPI docs

See merge request !1058
2017-07-28 16:03:45 +08:00
Ivan Grokhotkov
3bd6194c58 Merge branch 'feature/docs_jtag_debugging' into 'master'
Update and extension of Debugging documentation

See merge request !850
2017-07-27 22:03:45 +08:00
Ivan Grokhotkov
770b9e3b9e docs: fix warnings related to SD SPI documentation 2017-07-27 20:43:26 +08:00
Ivan Grokhotkov
d4982e0b64 docs: temporary downgrade Sphinx to 1.5.6 to work around Breathe issue 2017-07-27 20:43:26 +08:00
Ivan Grokhotkov
046b2c0aa4 docs: add OpenOCD/JTAG instructions for macOS 2017-07-27 20:25:56 +08:00
Jeroen Domburg
09c8851b8d Merge branch 'feature/esp-wrover-kit-rvb_note' into 'master'
Add a note what is different about ESP-WROVER-KIT RVB

See merge request !1008
2017-07-26 16:12:58 +08:00
krzychb
f50fd070c9 Updated links to binary distributions of OpenOCD 2017-07-26 14:53:54 +08:00
Alexey Gerenkov
7d86f167ee docs: Flashing over JTAG was added 2017-07-26 14:53:48 +08:00
krzychb
1fb85b494c JTAG Debugging - revamping of Debugging documentation 2017-07-26 14:53:43 +08:00
Ivan Grokhotkov
002f38fa8f Merge branch 'feature/sdspi_driver' into 'master'
SD SPI mode driver

This MR adds functionality to support SD cards connected via SPI interface.
Additionally, two bugs are fixed:
- Definition of `SPI_TRANS_MODE_DIOQIO_ADDR` in spi_master driver
- SD card probing frequency was 4000kHz instead of 400kHz as required by the standard

See merge request !727
2017-07-26 13:51:37 +08:00
Alexey Gerenkov
60c45ae2c4 Updated acc to comments 2017-07-24 20:07:21 +03:00
Alexey Gerenkov
c2c9149a24 esp32: Apptrace API enhancement
- User down buffer configuration support
 - bugfix: ring buf - avalable write size undeflow
 - SysView down buf support updated
2017-07-24 19:57:44 +03:00
Liu Zhi Fu
508855538e docs: add wifi.rst
Add more documents about WiFi API/Event Mechanism/State Machine etc
2017-07-24 10:20:06 +08:00
Dmitry Yakovlev
e5bb45f381 driver: SD protocol driver for SPI peripheral 2017-07-20 13:43:07 +08:00
Angus Gratton
d664e32394 build system: Use component.mk for all components, refactor bootloader build
For config-only components, component.mk should now contain "COMPONENT_CONFIG_ONLY := 1"

Also refactored some of the generation of linker paths, library list. This required cleaning up the way the bootloader
project works, it's now mostly independent from the parent.
2017-07-19 09:10:48 +10:00
Angus Gratton
5492ba759a build system docs: Add some notes about project-level variables 2017-07-19 09:07:53 +10:00
Angus Gratton
2571e66a29 build system: Make component searching more explicit, obsolete SRCDIRS
Each COMPONENT_DIRS directory can now either be a component directory, or a parent directory containing component
subdirectories.

When searching for components, skip any directory which doesn't have component.mk, Kconfig.projbuild, or
Makefile.projbuild in it. This helps with debugging, list-components output, etc.
2017-07-19 09:07:53 +10:00
Angus Gratton
2c1fe6663d build system: Add list-components target for debugging component discovery 2017-07-19 09:07:53 +10:00
Ivan Grokhotkov
0ae916d555 Merge branch 'feature/high_level_interrupts' into 'master'
Break out high-level interrupts so a component can override them

See merge request !675
2017-07-18 10:42:31 +08:00
krzychb
d3788b0db1 Add a note what is different about ESP-WROVER-KIT RVB 2017-07-17 07:16:31 +02:00
Angus Gratton
b71f47670f doc: Move romconsole doc sub-headings to sub-headings
Removes them from the API guides ToC.
2017-07-13 14:33:29 +08:00
Angus Gratton
71c70cb15c heap: Refactor heap regions/capabilities out of FreeRTOS
Remove tagged heap API, rename caps_xxx to heap_caps_xxx

Also includes additional heap_caps_xxx inspection functions.
2017-07-10 17:46:03 +08:00
Jeroen Domburg
6cf6f43ac5 Merge branch 'feature/update_wrover_v3' into 'master'
docs: layout of esp-wrover-kit updated to v3

See merge request !929
2017-07-07 14:16:36 +08:00
Jeroen Domburg
1d748db209 Break out high-level interrupts so a component can override them 2017-07-07 12:51:33 +08:00
Ivan Grokhotkov
0087b887ae docs: update general notes section on IRAM/ISRs
- Remove outdated note that all ISRs should be in IRAM
- Replace “ISR handler” with “ISR” or “interrupt handler”
2017-07-06 10:47:18 +08:00
Ivan Grokhotkov
cd1b6abc8c docs: fix flash encryption key storage block, use same names as in TRM 2017-07-06 10:47:18 +08:00
krzychb
9bb4dac3d2 Layout of esp-wrover-kit updated to v3 2017-07-05 21:21:54 +02:00
Jeroen Domburg
50e486f9eb Some documentation for the undocumented ROM console. 2017-06-29 19:01:50 +08:00
Ivan Grokhotkov
9b955f4c9f Merge branch 'feature/sysview_via_apptrace' into 'master'
sysview via apptrace

See merge request !708
2017-06-29 08:40:13 +08:00
Alexey Gerenkov
8d43859b6a esp32: SEGGER SystemView Tracing Support
Implements support for system level traces compatible with SEGGER
SystemView tool on top of ESP32 application tracing module.
That kind of traces can help to analyse program's behaviour.
SystemView can show timeline of tasks/ISRs execution, context switches,
statistics related to the CPUs' load distribution etc.

Also this commit adds useful feature to ESP32 application tracing module:
 - Trace data buffering is implemented to handle temporary peaks of events load
2017-06-27 20:52:43 +03:00
Angus Gratton
906a61d9ee docs: Add some notes about Windows COM ports, serial port drivers 2017-06-27 10:06:29 +10:00
krzychb
1015780931 Pin List has been moved to the Datasheet, fixed links 2017-06-21 08:13:42 +02:00
krzychb
9edf376bc3 Fixed link to JTAG Debugging for ESP32 2017-06-19 22:42:22 +02:00
Angus Gratton
d2bada24dc Merge branch 'feature/add_wrover_kit_v3_doc' into 'master'
Add WROVER-KIT v3 hw to hw reference

See merge request !818
2017-06-19 08:59:20 +08:00
Ivan Grokhotkov
643aa41953 Merge branch 'bugfix/doc_adding_to_path' into 'master'
Fixed  adding to PATH and setting up IDF_PATH procedures, ref. issue report #656

See merge request !807
2017-06-14 09:16:58 +08:00
Ivan Grokhotkov
af1bec4625 Merge branch 'bugfix/ulp_fixes' into 'master'
Minor fixes for ULP

See merge request !800
2017-06-14 09:12:55 +08:00
krzychb
a8075df8dc Fixed procedures, ref. issue report #656 2017-06-11 21:17:03 +02:00
Angus Gratton
d00b2428bb Merge branch 'feature/doc_note_about_component_search_order' into 'master'
Add a note about handling of same-named components in different component search paths

See merge request !788
2017-06-06 14:36:33 +08:00
Jeroen Domburg
35dae5dff5 Add ESP-WROVER-KIT v3 to the hw reference 2017-06-05 12:59:59 +08:00
Jeroen Domburg
764a70752a Use Unix line ends 2017-06-05 12:34:54 +08:00
jack
fc130fba86 fix bug that files missing commit in MR 773 2017-05-31 19:37:39 +08:00
Ivan Grokhotkov
3a787c4830 ulp: fix macro names in documentation 2017-05-31 18:23:24 +08:00
Ivan Grokhotkov
7abd9bc023 ULP: remove deprecated cycle_sel field from ADC instruction
Cycle_sel field was never used in binutils and was always set to zero.
This change removes it from documentation and examples.

Needs ULP binutils with this change:
https://github.com/espressif/binutils-esp32ulp/commit/af79434
2017-05-31 18:22:48 +08:00
Angus Gratton
034d37b9cb Merge branch 'bugfix/doc-small-updates' into 'master'
Small fixes/updates to toolchain installation procedures

See merge request !782
2017-05-29 07:09:47 +08:00
Jeroen Domburg
e0ac345fd2 Add a note about handling of same-named components in different component search paths 2017-05-25 19:45:59 +08:00
Jeroen Domburg
79ca00af49 Add cleaner way to conditionally compile files 2017-05-25 16:12:27 +08:00
krzychb
d12f871be6 Small fixes/updates to toolchain installation procedures 2017-05-25 08:01:42 +02:00
zhiweijian
4ffb4911e1 gatt_server example receive prepare write 2017-05-22 10:33:36 +08:00
krzychb
30edcca1fb docs: Generate Doxygen directives for API documentation
This is to resolve issue reported in https://github.com/espressif/esp-idf/issues/130.
2017-05-19 18:26:02 +02:00
Ivan Grokhotkov
98e15df7f6 examples: add ULP ADC example 2017-05-16 13:15:02 +08:00
Jiang Jiang Jian
a6608648db Merge branch 'driver_merge_tmp/mcpwm' into 'master'
feature: Motor Control PWM(mcpwm) driver and examples



See merge request !698
2017-05-12 18:21:38 +08:00
Wangjialin
1f055d28b8 Driver update: I2S pdm and built-in DAC
1. Modify I2S DAC built-in mode settings
2. Add I2S pdm mode
3. Correct I2S signal index in full-duplex mode
4. Modify dac output function
5. Add dac pad init functions
6. Modify DAC documentation
7. Add i2s_set_dac_mode API
2017-05-12 16:21:02 +08:00
Kewal M Shah
2008f4d88c feature: add Motor Control PWM(mcpwm) driver
1. Name change from chopper to carrier, block diagram update, minor changes to example codes
2. mcpwm_reg.h changed, brought uniformity in comments, worked on suggestions, duty to accept float. Some name changes!
3. Minor readme changes and Indetation
4. Minor change:  move mcpwm_reg.h and mcpwm_struct.h to new path
5. Minor change: addition of BLDC example code and Readme
6. Name changed from epwm to mcpwm
7. Improve the reg name in mcpwm_struct.h
8. Name change chopper>carrier, deadband>deadtime
2017-05-12 15:47:59 +08:00
XiaXiaotian
b22067a8f0 Optimize configuration of base MAC address
Application developer can call APIs to configure base MAC address
    instead of using menuconfig.
2017-05-10 10:15:07 +08:00
Ivan Grokhotkov
04eb6f6129 Merge branch 'feature/save_esptool_flash_args' into 'master'
CI: save download config in CI build jobs:

IDF built app download config may change with some modification.
save the download configs for built APP in build stage.
then we can use the correct download config in test stage.

See merge request !676
2017-05-08 15:48:28 +08:00
zhiweijian
71401bc9b3 Component/bt:add API to prepare write descriptor for gattc 2017-05-05 18:08:47 +08:00
zhiweijian
fb45ee7a4c Component/bt: add new cmd for blufi ,ESP32 close a gatt connection 2017-05-04 20:31:58 +08:00
He Yin Ling
6c5e60943e build: add document about how to save flash args 2017-05-02 13:17:57 +08:00
krzychb
1a19747678 Getting started guides 2017-04-27 19:51:42 +02:00
Jeroen Domburg
46fa2cfb46 Merge branch 'feature/spi_slave' into 'master'
Split common SPI stuff out of master driver; add slave driver; add workaround for DMA issue.

This merge req mainly adds a slave device. In order to do this, the original master driver is refactored into common code shared by master and slave modes, and a slave driver is added.

The other things added are:
- Added a workaround for a 'feature' of the ESP32 silicon that can lock up the receive DMA channel in some situations. This can only be fixed by resetting *both* DMA channels. The workaround implemented makes sure that the reset only happens when both channels are idle
- Got rid of the automatic choice between register- and DMA-based transfers. The master (and slave) code will now always go for a DMA transfer if a DMA channel is given, and always go for register-based transfers if no DMA channel is given.
- Add in a bunch of fixes for outstanding Github issues.

See merge request !659
2017-04-27 12:28:42 +08:00
Jeroen Domburg
4c06dca15c SPI: Small fixes according to MR comments 2017-04-27 11:49:04 +08:00
Jeroen Domburg
e9c372bc2d SPI: Split common SPI stuff out of master driver; add slave driver; add workaround for DMA issue. 2017-04-27 11:49:04 +08:00
Ivan Grokhotkov
b540322dc1 Merge branch 'feature/wear_levelling' into 'master'
wear levelling

This MR adds wear levelling component. It presents an interface similar to the interface of spi_flash and esp_partition. Inside, it stores data inside a partition to in a way that reduces worst case number of erase cycles for any given sector.

Also included are APIs similar to the ones provided for SDMMC to mount FAT filesystem on top of the wear levelling partition. A simple example shows how this API can be used.

Ref TW10338.

See merge request !567
2017-04-25 19:46:11 +08:00
Angus Gratton
453b5ded1d ethernet: Add convenience functions esp_eth_smi_wait_value() & esp_eth_smi_wait_set()
Covers the common case of waiting for a particular PHY register to have a particular value.
2017-04-20 18:03:00 +10:00
Angus Gratton
453722ba54 ethernet: Refactor PHY support to be part of ethernet component
Move generic PHY support into its own interface
2017-04-20 18:03:00 +10:00
Ivan Grokhotkov
52b51df859 add wear_levelling component and example 2017-04-17 11:01:17 +08:00
Yulong
c6a516f122 component/bt:move the btdm_rebase_ssp_api branch to this branch 2017-04-13 10:14:28 -04:00
Jiang Jiang Jian
6ace4f6fa4 Merge branch 'feature/btdm_avrc' into 'master'
Feature/btdm avrc

The source branch "feature/btdm_avrc" includes classic Bluetooth profiles A2DP(sink role) and AVRCP(controller role); 
Menuconfig options to control whether to enable classic BT is added.

See merge request !591
2017-04-13 14:36:58 +08:00
Ivan Grokhotkov
7a4fffca24 Merge branch 'bugfix/doc_update_for_centos' into 'master'
Update manual for CentOS

Actualize information about  dependencies on CentOS 7 

See merge request !649
2017-04-12 10:39:35 +08:00
Anton Maklakov
a4a0ccdce3 doc: Update manual for CentOS 2017-04-11 17:59:47 +08:00
Alexey Gerenkov
0860f46220 spi_flash: Fixed bug in SPI flash ROM driver to work with embedded flash chip
1) fixed SPI_read_status: added check for flash busy flag in matrix mode
2) fixed SPI_page_program: enable write before writing data to SPI FIFO
3) SPI flash ROM funcs replacement is controlled via menuconfig option
2017-04-11 10:51:19 +08:00
wangmengyang
ccfe4fefeb component/bt: implement classic Bluetooth profiles A2DP(sink) and AVRCP(controller) 2017-04-10 16:12:21 +08:00
wangmengyang
dbd4e0522e Merge branch 'master' into feature/btdm_avrc 2017-04-06 14:59:58 +08:00
Tian Hao
d90a35af19 component/bt : modify bluetooth config style 2017-04-06 11:35:53 +08:00
Angus Gratton
60e81e5e63 docs: Fix Windows shell path in Step 4
Closes #493 https://github.com/espressif/esp-idf/issues/493
2017-04-05 10:58:34 +10:00
wangmengyang
9d745be3f7 Merge branch 'master' into feature/btdm_avrc 2017-03-31 12:51:45 +08:00
Angus Gratton
c0fb62531e doc: Fix some Windows Setup Guide links 2017-03-30 12:09:50 +11:00
Angus Gratton
987631b9a0 windows: Don't expand PATH when generating setup
Ref #467 https://github.com/espressif/esp-idf/issues/467
2017-03-30 12:09:50 +11:00
Angus Gratton
16ef01dc69 Merge branch 'bugfix/windows_setup' into 'master'
Windows setup improvements

* Tweak Makefile to significantly reduce startup time on Windows (also reduced on other platforms, but less obvious.)
* Revise windows setup installation script to fix various issues, use latest toolchain.
* Tweak Windows config docs

See merge request !597
2017-03-28 10:49:08 +08:00
Angus Gratton
cecdfdb0c0 Merge branch 'feature/doc_boards_and_modules' into 'master'
doc: add dev module and boards by Espressif

Overview, picture, link to schematic, ref. design, etc. for the following development module and boards:

- ESP-WROOM-32
- ESP32 Core Board V2 / ESP32 DevKitC
- ESP32 Demo Board V2
- ESP32 WROVER KIT V1 / ESP32 DevKitJ V1
- ESP32 WROVER KIT V2


See merge request !560
2017-03-27 14:39:12 +08:00
Dmitry Yakovlev
a6e4e89592 ulp: add build system integration and example 2017-03-27 12:41:00 +08:00
Angus Gratton
aceb08f938 docs: Mention the 'examples' dir in the setup docs 2017-03-27 11:02:49 +11:00
Angus Gratton
f5aee6a6e6 windows config: Update Windows setup script, pre-installed image, instructions.
Add notes about MSYS2 package mirrors & HTTP proxies for users in China.

Closes #260 https://github.com/espressif/esp-idf/issues/260
Closes #281 https://github.com/espressif/esp-idf/issues/281
Closes #200 https://github.com/espressif/esp-idf/issues/200
Closes #430 https://github.com/espressif/esp-idf/pull/430
Accomplishes similar goals to #264 https://github.com/espressif/esp-idf/pull/264
2017-03-27 11:02:49 +11:00
Ivan Grokhotkov
ecee175962 Merge branch 'bugfix/nvs_init_check_empty_pages' into 'master'
Error handling in NVS initialization

Previously nvs_flash_init worked under an assumption that there should always be at least one free page available. This is true during normal operation, but in some cases (such as when changing application partition table from a non-OTA to an OTA one), NVS partition may get truncated, which will cause empty pages to be lost.

This MR adds error checks for this condition, and updates code which calls `nvs_flash_init` to check for the return code.
For most examples, a simple `ESP_ERROR_CHECK` is added around `nvs_flash_init`. For NVS examples and the OTA example, more robust error handling is added.

This change also removes nvs_flash_init calls from examples which don't use NVS.

See merge request !582
2017-03-23 17:57:15 +08:00
Angus Gratton
e477ce93e9 idf_monitor: Small fixes (baud rate, EOL, /dev/tty.X on macOS, Ctrl-T on failure)
* "make monitor" not passed the configured baud rate
  Closes #436 https://github.com/espressif/esp-idf/issues/436
* Pass toolchain prefix from sdkconfig into monitor tool
* Allow setting EOL in idf_monitor.py, use CRLF by default
* Detect if /dev/tty.X is used on macOS, warn and replace with /dev/cu.X
* If a build fails or gdb exits, ignore Ctrl-T (allowing Ctrl-T Ctrl-A/F to be same key sequence everywhere)
* Add a note about winpty on Windows
  Ref 02fdf8271d (commitcomment-21369196)
2017-03-21 16:00:32 +08:00
wangmengyang
8ec94418de component/bt: clean up the API header and generate documentation files 2017-03-18 14:55:31 +08:00
Angus Gratton
02fdf8271d Merge branch 'feature/idf_monitor' into 'master'
Expand  'make monitor' support

New 'make monitor' idf_monitor tool for better monitor output. Running 'make monitor' will now:
* Automatically look up code addresses via addr2line and print function, source file, line number in terminal.
* Can reset the ESP32 by typing Ctrl-T Ctrl-R.
* Can run "make flash" by typing Ctrl-T Ctrl-F.
* Can run "make app-flash" by typing Ctrl-T Ctrl-A.
* If gdb stub starts, monitor will automatically run gdb and connect. When gdb exits, ESP32 resets and monitor resumes.
* Exit is still Ctrl-[

Have some more features I'd like to add (log output to file, crash dump support) but I think this is at the point of being useful.


See merge request !565
2017-03-15 10:41:08 +08:00
Ivan Grokhotkov
5a23ec4dc4 nvs: check that storage has at least one free page
This change adds a check for the free page count to nvs_flash_init.
Under normal operation, NVS keeps at least one free page available,
except for transient states such as freeing up new page. Due to external
factors (such as NVS partition size reduction) this free page could be
lost, making NVS operation impossible. Previously this would cause an
error when performing any nvs_set operation or opening a new namespace.
With this change, an error is returned from nvs_flash_init to indicate
that NVS partition is in such a state.
2017-03-14 22:03:39 +08:00
Angus Gratton
2156408d45 Merge branch 'feature/aws_iot_sdk' into 'master'
Amazon AWS IoT SDK

Amazon IoT SDK component, plus two examples derived from their Linux samples.


See merge request !132
2017-03-14 10:21:08 +08:00
Angus Gratton
1544544f8a tools: New idf_monitor 'make monitor' tool for smarter monitor output 2017-03-13 09:31:45 +08:00
Ivan Grokhotkov
48516fded2 deep sleep: add notice that pads used for wakeup will be configured as RTC GPIOs
Closes https://github.com/espressif/esp-idf/issues/245
2017-03-09 10:21:31 +11:00
Krzysztof
23fc2ef0bd USB to serial driver links 2017-03-08 21:00:27 +01:00
Ivan Grokhotkov
66c693eebb Merge branch 'feature/deep_sleep_wakeup_from_touch' into 'master'
add wakeup from touch sensor, and deep sleep example

- add new deep sleep wakeup mode
- change documentation to explain incompatibilities between different wakeup mode, add error checks
- add new ULP instructions necessary for ULP wakeup scenario
- fix issues with I_WR_REG, I_SLEEP, I_END instructions
- add deep sleep example, illustrating the use of timer, gpio, touch, and ULP wakeup triggers

See merge request !461
2017-03-08 14:27:58 +08:00
Krzysztof
79449cce57 ESP32 module datasheet and JTAG debugger App Note links 2017-03-07 20:20:02 +01:00
Angus Gratton
4820b64a7f Add jsmn JSON parser component 2017-03-07 10:18:47 +11:00
Krzysztof
5275f29efe doc: add dev module and boards by Espressif 2017-03-06 21:44:10 +01:00
Angus Gratton
5f82322ffa docs/eclipse: Add considerations for PATH, PYTHONPATH
Thanks to @motla who mentioned these on github:
https://github.com/espressif/esp-idf/pull/157#issuecomment-271109920
2017-03-03 15:33:23 +11:00
Angus Gratton
3442d4d463 spi_flash: Add spi_flash_cache_enabled() test function 2017-03-03 15:33:23 +11:00
Angus Gratton
6ee5a1e492 sdmmc: Use slot width as default slot_config width parameter, instead of 4
Ref #361 https://github.com/espressif/esp-idf/pull/361
2017-03-03 14:59:15 +11:00
Angus Gratton
2575d1dd70 docs/*-setup: Use --enable-local instead of --prefix=$PWD for ct-ng 2017-03-03 14:59:15 +11:00
Daniel Bovensiepen
41e29d7384 docs/linux-setup: Install dependencies for Ubuntu 16.04
Not sure which Ubuntu is used in the installation guide but for the latest LTS release 16.04 we need libtool-bin for
compiling crosstool-NG proper

Merges #46 https://github.com/espressif/esp-idf/pull/46
2017-03-03 14:59:15 +11:00
gbcwbz
7bb4c8521a docs: Fix typo in build-system.rst
Merges #355 https://github.com/espressif/esp-idf/pull/355
2017-03-03 14:59:15 +11:00
Ivan Grokhotkov
4ecd26ce77 Merge branch 'feature/fatfs_dynamic_pdrv' into 'master'
FATFS enable support for multiple drives

Current implementation has drive numbers and paths hardcoded to support
only one FATFS drive. Arduino has it's own SPI driver to allow
compatibility and flexibility. With the MR it is possible to have up to
```_VOLUMES``` drives connected (SPI, SDMMC and others) at the same
time and accessed through VFS

See merge request !478
2017-03-03 11:40:37 +08:00
Ivan Grokhotkov
8911e666a0 Merge branch 'feature/docs_partition_ota_flash' into 'master'
Partition/SPI/OTA docs & OTA new functionality

* Update partition, SPI flash & OTA docs to reflect functionality changes
* Refactor OTA implementation to perform checks mentioned in API doc
* Add new functions to OTA API: esp_ota_get_running_partition() & esp_ota_get_next_update_partition() functions
* Add spi_flash_cache2phys() & spi_flash_phys2cache() functions to support esp_ota_get_running_partition()


See merge request !513
2017-03-03 11:27:01 +08:00
Tian Hao
b582697889 component/bt : add adv/scan start complete event
1. indicate adv/scan start complete success or failed
2. controller do limit of adv/scan concurrence, so add some codes to report adv/scan start failed or not.
2017-02-23 17:54:22 +08:00
Ivan Grokhotkov
4af5f572f4 add deep sleep wake up example 2017-02-22 18:40:31 +08:00
Ivan Grokhotkov
a64181f14f deep sleep: add functions to check wakeup cause
This change adds esp_deep_sleep_get_wakeup_cause, which returns the
source which has caused wakeup from deep sleep.

Similar to esp_deep_sleep_get_ext1_wakeup_status, a function is added
to check touch pad wakeup status: esp_deep_sleep_get_touchpad_wakeup_status.
This function returns the touch pad which has caused wakeup.
2017-02-22 14:40:36 +08:00
Ivan Grokhotkov
07ff47f103 deep sleep: clarify compatibility issues between wakeup sources
ULP and touch FSMs in ESP32 revisions 0 and 1 do not operate correctly
if RTC_PERIPH power domain is force powered on (ESP_PD_OPTION_ON).

Both ULP and touch still work, but clock frequency of the ULP may be
incorrect and touch values may be off by considerable amount. As such,
when these wakeup modes are used, RTC_PERIPH power domain has to be set
to ESP_PD_OPTION_AUTO (or, in the current implementation,
ESP_PD_OPTION_OFF — though this will change in the future when _OFF will
actually *force* the power domain to be powered off).

Because EXT0 wakeup source requires RTC_PERIPH to be powered ON, mark
ULP and touch wakeup sources as incompatible with EXT0. Workaround for
this is to use EXT1 wakeup source instead, which offers similar or
better functions without having to keep RTC_PERIPH powered on.
2017-02-22 14:40:36 +08:00
Wangjialin
fb261c0bd5 1. deal with conflicting wakeup triggers
2. modify deep_sleep.rst, add description of touch wakeup.
2017-02-22 14:40:36 +08:00
Angus Gratton
f29768c404 Build system: Add new BATCH_BUILD flag to disable interactive parts of the build
Mostly useful for Eclipse (where accidentally running interactive
config hangs the build), but also good for CI and other automated
build systems.
2017-02-22 11:59:37 +11:00
Angus Gratton
8dede8f8a4 Eclipse: Process Windows paths correctly using cygpath
Includes splitting the Windows Eclipse setup doc into a separate page,
as it has so many additional steps.

Addresses github #17 and #166
https://github.com/espressif/esp-idf/issues/17
https://github.com/espressif/esp-idf/issues/166
2017-02-22 11:59:37 +11:00
Angus Gratton
25f739c183 ota ops: Add new functions esp_ota_get_next_update_partition / esp_ota_get_running_partition
* Update OTA example to use these.
* Refactor esp_ota_begin() to return ESP_ERR_OTA_PARTITION_CONFLICT as documented
2017-02-22 10:24:42 +11:00
Angus Gratton
093dd98101 spi_flash: Add new phys2cache & cache2phys functions to query flash cache mappings 2017-02-22 10:22:50 +11:00
XiaXiaotian
678ec0bd04 Merge branch 'master' of ssh://gitlab.espressif.cn:27227/idf/esp-idf into feature/disable_phy_rf_when_disable_wifi_bt 2017-02-21 01:20:48 +08:00
Tian Hao
12a7293b31 component/bt : add bluetooth status check
1. add bluetooth controller/host initialize status check
2. separate bluetooth controller task schedule loop from controller init
2017-02-21 01:05:37 +08:00
Angus Gratton
1f3a2e900c docs: Improve/clarify partition, OTA & SPI flash docs
Related to #313 https://github.com/espressif/esp-idf/issues/313
2017-02-20 15:31:42 +11:00
Angus Gratton
bfdfcbfaef docs: Add missing peripheral driver docs (ADC, DAC, RTC I/O, I2S) 2017-02-20 10:39:29 +11:00
Tian Hao
4bd5b0c91a component/bt : add bt enable/disable for power save
1. add new APIs bt controller enable/disab/deinit
2. make bt controller work need to call two APIs of esp_bt_controller_init and enable
3. modify phy init to make mac reset once
2017-02-17 19:24:58 +08:00
Angus Gratton
4c9fdb7c52 Docs: Mark PDF links as such in the documentation index
Nothing worse than clicking what you think is an internal page link
and finding a PDF downloading!
2017-02-15 09:42:46 +11:00
Angus Gratton
7c7edab328 flash encryption/secure boot: Restructure documentation
Also add steps to disable flash encryption, as some people seem to
accidentally enable it.

Explicitly mark the flash encryption and secure boot as "READ DOCS
FIRST" in menuconfig.
2017-02-15 09:42:46 +11:00
me-no-dev
0eeda99a8c pick better name for unregister function and update docs 2017-02-02 12:24:38 +02:00
Alexey Gerenkov
e6f8837152 esp32: Fixed and updated core dump docs 2017-01-26 18:47:10 +03:00
Angus Gratton
d4462664b7 spi_flash: Move FLASH_PAGE_SIZE constant into esp_spi_flash.h 2017-01-20 19:50:01 +08:00