I am trying to implement an OTA in my application and I am using the ESP8266_RTOS_SDK_v3.1 example. I am using the "Factory app, two OTA definitions" partition table. When I run the example, it connects to the local Python HTTP server, and then it calls

, and within this function, it fails when it comes to deleting the flash partition, even though it announces the right partition in memory that it is going to delete (0x110000). What happens is that it starts deleting and then the microcontroller freezes and all of a sudden I receive lots of random characters through UART and when I reboot the chip it says that there is no firmware on none of my partitions...Please, anyone knows what I am doing wrong and how I could try to fix this?

Hi FMuller, Sadly I'm a NONOS SDK guy so I don't have any insight on this one. But if things don't get moving for you or you don't resolve it in a week, I'll come check back here and we can do a remote session to get another set of eyes on it for you.-Agent

Thanks for your reply AgentSmithers!I was actually just able to figure out what was going on. Turned out that the OTA example provided by ESP works just fine. The issue was coming from the fact that the flash we were using wasn't 4MBytes but 4Mbits... The chip had been selected before I started working on this project and I was told it was a 4MBytes, but I guess I should have double checked sooner...In any case, now I have replaced it with a 2MBytes and it is working just fine with the example!

fmuller-pi wrote:Thanks for your reply AgentSmithers!I was actually just able to figure out what was going on. Turned out that the OTA example provided by ESP works just fine. The issue was coming from the fact that the flash we were using wasn't 4MBytes but 4Mbits... The chip had been selected before I started working on this project and I was told it was a 4MBytes, but I guess I should have double checked sooner...In any case, now I have replaced it with a 2MBytes and it is working just fine with the example!

Thanks!

Thank you for the feedback, Just as an additional thing to watch for. Different manufacturers of the same product like Wemos will physically use different SPI chips on boards that look IDENTICAL! So during this whole finding both seem to work in DIO mode but NOT QIO mode, Only one of the chips supported QIO so as a standard I use DIO. Nice job!

Documentation

About Us

Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. We are the manufacturer of ESP8266EX.