I’am using esp8266 Http server project based on freertos sdk. I created one task with higher priority than any other, but when it runs it gets suspended by scheduler. Even from code surrounded by vTaskEnterCritical and xTaskExitCritical or vTaskSuspendAll or vTaskEndScheduler or OS_INTR_LOCK. Is there any other way, how to prevent context switching?
The provided SDK is version 1.3.0 is it possible to update it to the latest version 1.5.0 by myself? I don’t think it can resolve issue with context switching, but you never know 😉
You should be able to replace the contents of the <SysGCC>\esp8266\esp8266-bsp\RTOS-SDK folder with the new RTOS SDK in order to update it.
As for the context switching, preventing it may interfere with some internal logic of the ESP8266 drivers, so we would not recommend doing that. To be 100% sure, we would recommend asking he Espressif support, as they have developed the SDK and should know the exact answer.
thank you for the hint to how to update their SDK.
The problem with context switching was not entirely in context switching, but in interrupt handling and now it seems to be resolved. Of and vTaskEnterCritical works like a charm.