So you're a Noob? Post your questions here until you graduate! Don't be shy.

User avatar
By Michael8266
#67555 Hi guys,

I found this great forum and was reading through it the last days. I do not know the right terms to describe my issue and hope you can get me some hints.
We are building an IoT device which measures and sends the data to the cloud via WiFi. We made a few hundreds devices so far. It is simply a ESP8266 + Sensor + LEDs + Battery, coding is done with Arduino.
So here comes my issue:
90% of the devices work while about for 10% of the devices at some point freeze. "Freeze" means some LEDs are on and thats it. Removing battery and put it in again does not help. It always stays in the "freeze" mode until we reflash it. We cannot reproduce this "freeze" state on purpose, we get the broken devices back from trial customers and three times I made it in the office by sending the "Connect to Wifi" command - then they froze and needed to be reflashed.
So it is a statistical problem for me right now.

I found a lot posts about issues that the ESP8266 resets randomly, but I think that is not our problem. At the moment with think that the ESP8266 adresses some wrong memory range and overwrites crucial program parts. Could be completely wrong direction...

Can you give me a hint in which direction to search, which words describe this "freeze" for better google results or perhaps you even know this problem?

Thanks and best wishes
Peter
User avatar
By Michael8266
#67602 @atexit8 We are a bootstrapping startup in a early stage. If we do not fix this 10% loss issue it will not become commercial. Is "commercial" an issue?

@schufti
Michael is my surname, it is actually not so rare. However, almost everybody gets confused by that. I should have chosen another username - my bad.

We use the arduino ESP8266 package.
http://esp8266.github.io/Arduino/versions/2.3.0/
We build with Arduino 1.8.2 and upload the firmware with JTAG from Segger.

I googled "corrupted init_data esp8266", that looks promising. I will read the memory of a frozen device to see if it is corrupted - that was our plan for next week anyways. From my first google attempts I did not see a clear way to avoid this corrupted init_data. Any idea?

Thanks
Peter Michael ;-)