66411fdd38
esp_ping_new_session can fail, particularly if ping is called quickly many times in succession. This is because `esp_ping_new_session` has to do a bunch of stuff including creating a task and a socket. Calling `esp_ping_delete_session` doesn't clean up these resources immediately. Instead, it signals the task to clean up resources and exit 'soon', but 'soon' is defined as 1 second. When the calls are frequent, the in-use sockets and tasks fill up available slots—I didn't actually check which resource gets used up first. With this change, the ping call will raise an exception instead of continuing with a call to esp_ping_start that crashes. Closes #5980 based on my testing on an ESP32S3-N8R2. |
||
---|---|---|
.codespell | ||
.devcontainer | ||
.github | ||
data | ||
devices/ble_hci | ||
docs | ||
examples | ||
extmod | ||
frozen | ||
lib | ||
LICENSES | ||
locale | ||
logo | ||
mpy-cross | ||
ports | ||
py | ||
shared | ||
shared-bindings | ||
shared-module | ||
supervisor | ||
tests | ||
tools | ||
.codespellrc | ||
.git-blame-ignore-revs | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.mailmap | ||
.pre-commit-config.yaml | ||
.readthedocs.yml | ||
.rosie.yml | ||
ACKNOWLEDGEMENTS | ||
ACKNOWLEDGEMENTS.license | ||
BUILDING.md | ||
CODE_OF_CONDUCT.md | ||
conf.py | ||
CONTRIBUTING.md | ||
LICENSE | ||
LICENSE_MicroPython | ||
main.c | ||
Makefile | ||
MANIFEST.in-stubs | ||
README.rst | ||
README.rst-stubs | ||
requirements-ci.txt | ||
requirements-dev.txt | ||
requirements-doc.txt | ||
runtime.py | ||
setup.py-stubs | ||
WEBUSB_README.md |
CircuitPython ============= .. image:: https://s3.amazonaws.com/adafruit-circuit-python/CircuitPython_Repo_header_logo.png |Build Status| |Doc Status| |License| |Discord| |Weblate| `circuitpython.org <https://circuitpython.org>`__ \| `Get CircuitPython <#get-circuitpython>`__ \| `Documentation <#documentation>`__ \| `Contributing <#contributing>`__ \| `Branding <#branding>`__ \| `Differences from Micropython <#differences-from-micropython>`__ \| `Project Structure <#project-structure>`__ **CircuitPython** is a *beginner friendly*, open source version of Python for tiny, inexpensive computers called microcontrollers. This package contains the "stubs", or type definitions for CircuitPython. With some advanced editors and other tools, this information can be identify TypeErrors, AttributeErrors, and other problems before you deploy your code to a device and can even help autocomplete your code. .. |Build Status| image:: https://github.com/adafruit/circuitpython/workflows/Build%20CI/badge.svg :target: https://github.com/adafruit/circuitpython/actions?query=branch%3Amain .. |Doc Status| image:: https://readthedocs.org/projects/circuitpython/badge/?version=latest :target: http://circuitpython.readthedocs.io/ .. |Discord| image:: https://img.shields.io/discord/327254708534116352.svg :target: https://adafru.it/discord .. |License| image:: https://img.shields.io/badge/License-MIT-brightgreen.svg :target: https://choosealicense.com/licenses/mit/ .. |Weblate| image:: https://hosted.weblate.org/widgets/circuitpython/-/svg-badge.svg :target: https://hosted.weblate.org/engage/circuitpython/?utm_source=widget