Hello Citric,
No problems for long time waiting !
i have made my own application to display some information on screen from my home sensors.
This app run with FreeRTOS which is already used by eRPCWifi/unified
This is the tasks list of my app:
Num Task Prio Stack
8 Supervisi 3 81
3 IDLE 0 129
1 runServer 8 1738
2 runClient 7 2147
6 Connexion 3 886
7 NTP 3 819
4 Tmr Svc 2 29
5 UI 8 610
You can recognize the 2 tasks from eRPC (runServer and runClient)
- i use the runClient task (arduino loop function) to make 3 consecutives httpclient requests (GET/POST)
- the NTP task is run once a hour to sync the RTC time with NTP server (code comes from seeedstudio example)
- the UI task is used to manage LVGL library to refresh the screen
- Connexion task is used to manage the wifi connexion (check if connected, and reconnect if necessary)
- Supervision, task is used to check if something is stuck, display tasklist, some running stats and do device reset if something wrong.
so, in my case, 3 tasks accesses the RTL chip through eRPCWifi/HTTPClient/UDPClient.
Without mutex it works some times…some hours,
With mutex (to avoid concurrent usage of the RTL chip), it seems it works more time…
when it stops working, the RTL chip seems to stop to answer… (see my other post here : https://forum.seeedstudio.com/t/rpcwifi-problem-when-wifi-is-lost/262273 )
but it seems, adding mutexes seems to be not sufficient… i got 1 reset this night (maybe a wifi connexion loose…)
So, my original question is still "is the differents libs (eRPCWifi, eRPCUnified, etc…) are thread safe ? (can be called by multiple tasks concurrently)