Commit graph

411 commits

Author SHA1 Message Date
Darian Leung
616baa239d esp32: New Task Watchdog API
Legacy API of task watchdog used the same function esp_task_wdt_feed() to add
and feed a task. This caused issues of implicitly adding a task to the wdt list
if the function was used in shared code.

The new API introduces init, adding, feeding, deleting, deinit functions. Tasks
must now be explicitly added to the task watchdog using their handles. Deletion
must also be explicit using task handles. This resolves the issue of implicit
task additions to the task watchdog due to shared code calling
esp_task_wdt_feed().

Task watchdog is now fully configurable at runtime by calling the init and
deinit functions.

Also added functions to get the handles of idle tasks of the other core. This
helps when adding idle tasks to the watchdog at run time.

Configuring the task watchdog using menu config is still available, however
menu config will only result in calling the init and add functions for idle
tasks shortly after the scheduler starts.

Menu config also allows for using legacy behavior, however the legacy behavior
willcall the new API functions but with slight variations to make them legacy
compatible.

Documentation and example have also been updated

gcov_rtio.c headers updated to prevent error of freertos header files being
included in the wrong order.

Resolves issue TW#13265
2017-09-29 23:10:55 +08:00
Jeroen Domburg
740f8a79f0 Add logic to make external RAM usable with malloc() 2017-09-28 17:17:50 +08:00
Ivan Grokhotkov
bbab9ecf23 Merge branch 'feature/docs_update_sigmadelta_api' into 'master'
Updated sigma delta API documenation and example

See merge request !1319
2017-09-26 16:05:18 +08:00
Angus Gratton
01aad8f386 Merge branch 'feature/docs_updating_idf' into 'master'
Added a section how to update existing local esp-idf repository and load specifi…

See merge request !1273
2017-09-26 10:34:38 +08:00
krzychb
b5e4c76bfe Updated sigma delta API documenation and example 2017-09-25 21:31:09 +02:00
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
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