FreeRTOS and ESP32

To while away the hours in lock down I ordered a dual core ESP32 with WiFi and Bluetooth thinking it would be fun to code some multi-threading of tasks. A quick Google search pointed me at FreeTROS which offered all the interfaces I would need. To run in the Auduino IDE I downloaded the Espressif systems ESP32 board. A quick test program to create multiple task (and nominate the core they were to run on) worked OK. That is once I found you have to hold down the 'boot' button the download the App.

Am I right in assuming the Espressif package includes all the functionality of FreeRTOS? And does it use the latest version? If not , how can I update the Arduino package from the latest FreeRTOS download?

Thanks in anticipation,

Dicky.

The Arduino IDE is one version below the ESSPRIFF IDE. THe latest version difference is that the Arduino IDE has to use the Legacy GNU API for some of the API calls, ULP processor.

You will find that the ESP32 freeRTOS has a few features added to freeRTOS then the latest shipping version from Amazon. For instance malloc and the like are NOT multi-thread aware, the ESP32 has a wrapper function, pmalloc, that makes a thread and multiasking safe malloc function.

The ESP32 API, API Reference - ESP32 - — ESP-IDF Programming Guide latest documentation

Oh, another difference is the Arduino IDE ESP#@ core does not use more then 4MB of PSRAM, the memory page switching does not work in the Arduino IDE; something I can live with, for now.

Many thanks for the reply. I had noticed the 4MB limit and wondered why.

I will install the freeRTOS IDE for the ESP 32 and keep using Arduino for my Wemos projects.
Regards,
Dicky.