ESP32-S2 + TCP/IP stack


We’re investigating ESP32-S2 MCU if it’d suit to our needs in terms of an MCU with fair wifi capabilities. After downloading the SDK (IDF?) I’ve come to the conclusion that it supports lwIP only.

Tried googling for ESP32-S2 + FreeRTOS TCP support with not too much success.

I believe ESP’s wifi could also be integrated into +TCP (had a quick glance at esp_wifi.h). I’d like to ask you about your experiences in this field. Have you ever seen/been able to make ESP32-S2 + wifi + FreeRTOS+TCP running, or just lwIP? Are there any obstacles that make +TCP inappropriate for ESP32-S2 wifi? Etc. So every opinion matters :wink:

Thanks a lot.

Hello Tamás!

At some point in history, the ESP32 developers have decided to make lwIP their default IP-stack, because lwIP supports some protocol that +TCP doesn’t. I forget which protocol that was. Was it PPP?

EDIT: I think it was the ability to store ans supply the credentials for WiFi.

But yes, FreeRTOS+TCP also supports the ESP32 platform. I don’t know about the “S2” extension, is that much different?

I have only seen ESP32 and +TCP running on WiFi, not on a LAN.

In case you decide to use ESP32-S2 and +TCP, we will be here to answer all of your questions.

Thanks for the link!

I’m rather beginner to ESP32 world and it’s not yet certain that we’ll use ESP32-S2 for wifi. But we’re investigating. Therefore I don’t know the important differences between ESP32 and the S2 variant…

The ESP32 SDK seems to contain some functions that make it possible to be used with +TCP (after some work, of course). This seems to be a task similar to adding ATWINC1500 support to +TCP, which I’ve managed to do and works quite seamlessly. ESP32 wifi API also offers some basic functions that I’d need (mode selection, connect/disconnect, security, event callbacks, AP scan etc), but for some reason I think it doesn’t implement e.g. wifi beacon sending etc. by itself, this task is also left to the programmer. And I don’t want to begin implementing wifi from a medium level. It’d nice if the ESP32 wifi SDK would do this and similars without my intervention. Integrating the rest into +TCP is also challenging enough, not mentioning ESP32 build system… (I’d take out ESP32 wifi components from that build system and add to our own)