Your new topic does not fit any of the above??? Check first. Then post here. Thanks.

Moderator: igrr

User avatar
By mrburnette
#63137
Mai Mariarti wrote:I think there is a problem with timing.
Try inserting a 8-9 us delay between each byte transmitted or written to EEPROM. I remember reading about it somewhere.



I do not think "timing" is the right term. My experience with the ESP8266 under ArduinoIDE using the default NON-OS task switcher is that the programmer really needs to understand & profile the main() code and any latencies, loops, calls, etc. Various online references suggest that 30mS to 50mS is the maximum time that can be spent in user-code before the loop() needs to be repeated ... that is, the watchdog is "feed" and the RF stack and SDK code receives use of the uC. Go too long without repeating the loop or using delay(0), delay(n), or yield() and bad things happen.

For example, the loop() in my code here does not repeat in under 30mS (no guarantee) and therefore I need to relinquish control to the task switcher which manages the RF stack so it does not get stale and also feeds the WDT.

Ray