ESP2866-dev always crash's in the function ETS_VSPRINTF
Posted: Thu Feb 25, 2016 8:41 am
So, this is my second post regarding this topic. I've made one but no one answered, probably because I wrote too much so I will try to summarise it.
I've recently acquired a ESP8266-EVB-BAT from Olimex that comes with the MOD-WIFI-ESP8266-DEV.
I'm testing this example: https://github.com/OLIMEX/ESP8266/tree/master/IoT%20Firmware/olimex
Everything goes well and I can connect to the ap through my computer and getting the answer from the web server. Though, when I access to the end point http://192.168.4.1/wifi-scan the esp2866 reset's. After checking the serial port log's I figured out that it crashes in the file user_json.c inside the function json_sprint when the code try to call the function ets_vsprintf.
Full code of the function json_sprintf:
The reset message is the Watchdog reason code that not always shows the same codes inside the boot mode. Last time it showed rst cause:4, boot mode:(1,7)
For what I've read, people says that I need to do some pull up or down to change the boot mode, but I cannot understand exactly why I need to change mine, as I can in fact do an update through uart. I read that the wifi-esp2866-dev comes by default in flash mode (whatever that means) but I'm using the (ESP8266-EVB-BAT) that I guess somehow that it changes the boot mode because I can update it through uart. Probably my understand about the modes is not correct.
Thanks for your help.
Best,
I've recently acquired a ESP8266-EVB-BAT from Olimex that comes with the MOD-WIFI-ESP8266-DEV.
I'm testing this example: https://github.com/OLIMEX/ESP8266/tree/master/IoT%20Firmware/olimex
Everything goes well and I can connect to the ap through my computer and getting the answer from the web server. Though, when I access to the end point http://192.168.4.1/wifi-scan the esp2866 reset's. After checking the serial port log's I figured out that it crashes in the file user_json.c inside the function json_sprint when the code try to call the function ets_vsprintf.
Full code of the function json_sprintf:
Code: Select all
char ICACHE_FLASH_ATTR *json_sprintf(char *buffer, const char *fmt, ...) {
va_list args;
va_start(args, fmt);
debug("It shows this message\n");
ets_vsprintf(buffer, fmt, args);
debug("Doesn't show this message\n");
va_end(args);
return buffer;
}
The reset message is the Watchdog reason code that not always shows the same codes inside the boot mode. Last time it showed rst cause:4, boot mode:(1,7)
For what I've read, people says that I need to do some pull up or down to change the boot mode, but I cannot understand exactly why I need to change mine, as I can in fact do an update through uart. I read that the wifi-esp2866-dev comes by default in flash mode (whatever that means) but I'm using the (ESP8266-EVB-BAT) that I guess somehow that it changes the boot mode because I can update it through uart. Probably my understand about the modes is not correct.
Thanks for your help.
Best,