-
|
I used to be able to run a esp-wifi project on bare metal ESP32-S3. Now I see that esp-wifi is deprecated in favor of esp-radio and when I switch to esp-radio I get linker errors: It seems like an OS is required now to use the crate:
But what if I don't have an OS? Is the only option to stick to the never-to-be-updated esp-wifi? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 8 replies
-
|
The esp-radio binaries have been written with FreeRTOS in mind, they require certain OS features, or emulation of those. esp-wifi has been lying to you, and provided a very bad task scheduler that intrusively switched task context at a fixed rate. This integrated scheduler also prevented any sort of progress toward better low power mode support. esp-rtos is a massive improvement over that, and it costs you only a bit of memory, a software interrupt, and not much more. If you don't want to run an RTOS, you can still use FoA which is an open-source reimplementation, although for embassy support you will need to provide your own executor and time driver. |
Beta Was this translation helpful? Give feedback.
The esp-radio binaries have been written with FreeRTOS in mind, they require certain OS features, or emulation of those. esp-wifi has been lying to you, and provided a very bad task scheduler that intrusively switched task context at a fixed rate. This integrated scheduler also prevented any sort of progress toward better low power mode support. esp-rtos is a massive improvement over that, and it costs you only a bit of memory, a software interrupt, and not much more.
If you don't want to run an RTOS, you can still use FoA which is an open-source reimplementation, although for embassy support you will need to provide your own executor and time driver.