* change(ESP_NOW_Serial): No teardown on retry limit
After max retries is met once the ESP_NOW_Serial_Class performs "end()".
This removes the peer from ESP_NOW.
Further messages to and from ESP_NOW_Serial are not received or sent.
Peer should stay in ESP_NOW to re-establish connection even with data loss.
This change will "retry and drop" the data piece by piece instead of aborting the connection.
* feat(espnow): Add remove on fail parameter
* feat(espnow): By default keep the peer when sending fails
---------
Co-authored-by: Jan Prochazka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* Fix(NetworkEvents): Don't skip event callbacks in NetworkEvents::removeEvent
Fixes Issue 10318
Includes pull request 10321 that fixes 10316
This change:
* Adds code to find the event callbacks
* Issues error when duplicate callbacks insertion attempts are made
* Issues error when callbacks are not found during removal
* Fix(NetworkEvents): Don't skip event callbacks in NetworkEvents::removeEvent
Fixes Issue 10318
Includes pull request 10321 that fixes 10316
This change:
* Adds code to find the event callbacks
* Issues warning when duplicate callbacks insertion attempts are made
* Issues warning when callbacks are not found during removal
---------
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* [WiFiScan] Allow allocation to fail and prevent memory leak
When there are many AP's seen during a scan, the allocation of `_scanResult` may fail.
Thus add `(std::nothrow)` to the `new` call.
Also it is possible the array was still present before allocating a new one.
* [WiFiScan] Use nullptr instead of 0
As suggested by @me-no-dev
As it was written, it was possible to leak the scan result array if esp_wifi_scan_get_ap_records() failed. Change will ensure that the array is deleted in that case.
* feat(openthread): add extended example
Creates a new example that mixes different APIs
* feat(openthread): create cj.json file
Adds neessary CI file
* feat(openthread): improve the example
Update ExtendedRoterNode.ino with more use of API
* feat(openthread): improve the example
Adds OpenThread Native calls to the example
* feat(openthread): improve the example
Update LeaderNode.ino example to add OpenThread Native calls.
* fix(openthread): bad formatting using space
Update keywords.txt to use TAB instead of SPACE in order to recognize correctly the keywords.
* fix(openthread): bad example file name - typo
Changed ExtendedRoterNode to ExtendedRouterNode - Typo error.
* feat(openthread): add extended example ci.json file
Added CI file to the example.
* fix(openthread): deleted bad file names in the example
Delete libraries/OpenThread/examples/SimpleThreadNetwork/ExtendedRoterNode directory
* fix(openthread): typo in commentaries
* fix(openthread): typo in commentaries
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* fix(littlefs): Use VFSImpl::exists() to avoid false error log
* fix(ffat): Use VFSImpl::exists() to avoid false error log
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update WebServer.ino
* Enable FAT and LittleFS filesystems as configured.
* use new versions of RequestHandler::canHandle and RequestHandler::canUpload
* Update Documentation
* Documentation changed accoring review comments.
* README.md changed accoring to review comments.
* feat(net): Add NAPT examples for STA and ETH
* feat(net): Add NAPT example for PPP
* feat(net): Add CI configs to skip H2
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* fix(lwip): Add early out in `NetworkUDP::parsePacket()` when socket has no data
Previously, `NetworkUDP::parsePacket()` would take the time to allocate a 1460 byte buffer
to call `recvfrom()` with, immediately freeing it if there was no data read.
This change has it check if there is available data via `ioctl()` with `FIONREAD` first,
saving the allocation and thus significantly increasing performance in no data situations.
* fix(lwip): Initialize `len` to ensure it's set before check
* add "getBattery" functions + #define simplicity
replaced all function protections with a #define to simplify code functionality. Also added "getBattery" functions to leverage "esp_modem_get_battery_status" call in ESP-MODEM.
* add "getBattery" function defs to PPP.h
* fix(ppp): uncomment error logging, change new function naming
* fix(ppp): rename new functions for naming conformity
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* IDF release/v5.1 dc859c1e67
* fix(lwip): Filter out V6 packets if V6 is not enabled
the ESP might accept and act on some IPv6 packets, even though IPv6 is not enabled for the interface in Arduino. This change makes the ESP ignore all IPv6 packets if IPv6 address is not available.
* fix(lwip): DNS header is not required
* fix(ot): Add LWIP_HOOK_IP6_INPUT_CUSTOM support
* feat(ledc): Allow attaching multiple pins to 1 channel
* feat(ledc): Add ledcWriteChannel function
* feat(ledc): Print info about already set channel
* docs(ledc): Add ledcWriteChannel function and attach update
* feat(ledc): Add example and fixes
* feat(ledc): Remove commented code
* feat(ledc): Fix missing new line at end of file
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
The setPins() function obviously comes from the SD_MMC lib. Not prepending
that lib, this code won't compile.
Signed-off-by: Martin Hübner <martin.hubner@web.de>
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* fix(example): Add better WPS logging
Provides a better log of what went wrong when using WPS
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* feat(eth): Allow setting the RX task stack size
Default stack size of 2K might not be enough in some cases. Increase the default to safer 4K and allow setting it to custom value.
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
* Fix timeout in WebServer::_uploadReadByte and set timeout handleClient()
Fixes: #9990
* Set HTTP_MAX_CLOSE_WAIT equal to other HTTP_xxx_WAIT values
* ci(pre-commit): Apply automatic fixes
---------
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>