Skip to content

ESP32Async/AsyncTCP

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

https://avatars.githubusercontent.com/u/195753706?s=96&v=4

AsyncTCP

License: LGPL 3.0 Continuous Integration PlatformIO Registry

Discord Server: https://discord.gg/X7zpGdyUcY

Async TCP Library for ESP32 Arduino

This is a fully asynchronous TCP library, aimed at enabling trouble-free, multi-connection network environment for Espressif's ESP32 MCUs.

This library is the base for ESPAsyncWebServer

How to install

The library can be downloaded from the releases page at https://github.com/ESP32Async/AsyncTCP/releases.

It is also deployed in these registries:

AsyncClient and AsyncServer

The base classes on which everything else is built. They expose all possible scenarios, but are really raw and require more skills to use.

Important recommendations

Most of the crashes are caused by improper configuration of the library for the project. Here are some recommendations to avoid them.

I personally use the following configuration in my projects:

  -D CONFIG_ASYNC_TCP_MAX_ACK_TIME=5000 // (keep default)
  -D CONFIG_ASYNC_TCP_PRIORITY=10 // (keep default)
  -D CONFIG_ASYNC_TCP_QUEUE_SIZE=64 // (keep default)
  -D CONFIG_ASYNC_TCP_RUNNING_CORE=1 // force async_tcp task to be on same core as the app (default is core 0)
  -D CONFIG_ASYNC_TCP_STACK_SIZE=4096 // reduce the stack size (default is 16K)

Compatibility

  • ESP32
  • Arduino Core 2.x and 3.x

About

Async TCP Library for ESP32

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 96.7%
  • C 2.0%
  • CMake 1.2%
  • Makefile 0.1%