Closed ArturNadolski closed 5 years ago
please decode the stack - this output is not really useful - only decoded stack could give some clue
what settings do you use in config.h and what pins for the screen ?
`
Decoding stack results 0x4022053f: String::changeBuffer(unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 156 0x40221219: yield() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_main.cpp line 105 0x4021ddc9: OLEDDisplay::drawStringInternal(short, short, char, unsigned short, unsigned short) at C:\Users\Artur\Documents\Arduino\libraries\ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display\src\OLEDDisplay.cpp line 855 0x402204fc: String::invalidate() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 141 0x4021e0c0: OLEDDisplay::drawString(short, short, String) at C:\Users\Artur\Documents\Arduino\libraries\ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display\src\OLEDDisplay.cpp line 469 0x402205d4: String::copy(char const, unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 182 0x4022060a: String::String(char const) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 36 0x4020d6e6: OLED_DISPLAY::display_text(char const, int, int, int) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\esp_oled.cpp line 222 0x4020d720: OLED_DISPLAY::print(char const) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\esp_oled.cpp line 106 0x40234c6c: mem_malloc at core/mem.c line 210 0x4020dd00: ESPCOM::print(char const, tpipe, ESPResponseStream) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 288 0x40101409: realloc at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1504 0x4022053f: String::changeBuffer(unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 156 0x4020dd39: ESPCOM::print(char const, tpipe, ESPResponseStream*) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 300 0x40220648: String::copy(FlashStringHelper const, unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 192 0x40220868: String::operator=(__FlashStringHelper const) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 252 0x4020ddc3: ESPCOM::print(__FlashStringHelper const, tpipe, ESPResponseStream) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 208 0x4022b6fc: dhcp_start at glue-esp/lwip-esp.c line 421 0x4020ddfa: ESPCOM::println(FlashStringHelper const, tpipe, ESPResponseStream) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 314 0x4021106e: onWiFiEvent(WiFiEvent) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\wificonf.cpp line 180 0x40222222: std::_Function_handler ::_M_invoke(const std::_Any_data &, _esp_event ) at c:\users\artur\appdata\local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-3-20ed2b9\xtensa-lx106-elf\include\c++\4.8.2/functional line 2073 0x40212377: ESP8266WiFiGenericClass::_eventCallback(void) at c:\users\artur\appdata\local\arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-3-20ed2b9\xtensa-lx106-elf\include\c++\4.8.2\bits/stl_list.h line 157 0x40229946: ssputs_r at ../../../../../../dl/newlib-xtensa/newlib/libc/stdio/nano-vfprintf.c line 233 0x402253b4: _printf_i at ../../../../../../dl/newlib-xtensa/newlib/libc/stdio/nano-vfprintf_i.c line 194 0x40229946: ssputs_r at ../../../../../../dl/newlib-xtensa/newlib/libc/stdio/nano-vfprintf.c line 233 0x4022112c: esp_yield() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_main.cpp line 91 0x4022053f: String::changeBuffer(unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 156 0x4022120a: yield() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_main.cpp line 100 0x4021ddc9: OLEDDisplay::drawStringInternal(short, short, char, unsigned short, unsigned short) at C:\Users\Artur\Documents\Arduino\libraries\ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display\src\OLEDDisplay.cpp line 855 0x40101128: _umm_free at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1300 0x402018f5: twi_write_byte at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_si2c.c line 240 0x40201ad1: twi_writeTo at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_si2c.c line 260 0x4021d810: TwoWire::endTransmission(unsigned char) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\libraries\Wire\Wire.cpp line 153 0x4022053f: String::changeBuffer(unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\WString.cpp line 156 0x4021f58c: HardwareSerial::write(unsigned char const, unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/HardwareSerial.h line 174 0x4021c9e5: Print::write(char const) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/Print.h line 60 0x4021fb04: Print::print(char const) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\Print.cpp line 122 0x4021fb04: Print::print(char const) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\Print.cpp line 122 0x4020dbed: ESPCOM::print(char const, tpipe, ESPResponseStream) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 230 0x4010156c: free at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1760 0x40101128: _umm_free at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1300 0x4020dd74: ESPCOM::print(char const, tpipe, ESPResponseStream) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\espcom.cpp line 302 0x4020d469: OLED_DISPLAY::display_signal(int, int, int) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\esp_oled.cpp line 150 0x4022112c: esp_yield() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_main.cpp line 91 0x40201cc7: delay at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_wiring.c line 51 0x40211745: WIFI_CONFIG::Setup(bool) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\wificonf.cpp line 472 0x4020486c: spiffs_obj_lu_find_entry_visitor at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs\spiffs_nucleus.c line 166 0x402043d4: spiffs_obj_lu_scan_v at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs\spiffs_nucleus.c line 330 0x40101128: _umm_free at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1300 0x40100119: __wrap_spi_flash_read at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_phy.c line 267 0x40203564: SPIFFS_mount at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs\spiffs_hydrogen.c line 136 0x40221c4d: SPIFFSImpl::_tryMount() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/spiffs_api.h line 260 0x402231bc: SPIFFSImpl::_check_cb(spiffs_check_type, spiffs_check_report, unsigned int, unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/spiffs_api.h line 262 0x4010156c: free at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\umm_malloc\umm_malloc.c line 1760 0x40221e0c: spiffs_hal_read(unsigned int, unsigned int, unsigned char) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs_hal.cpp line 45 0x40221ec8: spiffs_hal_write(unsigned int, unsigned int, unsigned char*) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs_hal.cpp line 102 0x40222004: spiffs_hal_erase(unsigned int, unsigned int) at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\spiffs_hal.cpp line 168 0x4020cdea: Esp3D::begin(unsigned short, unsigned short) at C:\Users\Artur\AppData\Local\Temp\arduino_build_853032\sketch\esp3d.cpp line 191 0x4020d054: setup() at C:\Users\Artur\Documents\Arduino\ESP3D-2.1\esp3d/esp3d.ino line 30 0x402211d0: loop_wrapper() at C:\Users\Artur\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266\core_esp8266_main.cpp line 122 `
I cannot reproduce your issue What others settings did you changed in config.h ? What is the version of the FW ?
Do you use Git version of ESP8266 core ? If not please use it - there was some update just on location of the stack mention
ESP core is "gited"
You just point me on something...
esp_display.drawXbm(33, 10, ESP3D_Logo_width, ESP3D_Logo_height, ESP3D_Logo); invalid conversion from 'const char' to 'const uint8_t {aka const unsigned char*}' [-fpermissive]
I forgot that I change const char ESP3D_Logo[] to const uint8_t ESP3D_Logo[] as an workaround of this error
After reclonning ESP8266 core from git now invalid conversion from 'const char' to 'const uint8_t {aka const unsigned char*}' [-fpermissive] error disappear. There is still a lot of warnings but compilation ends with success. Oled display still not working but there is no panic error.
Ok I think issue come from PROGMEM but I do not get
const char ESP3D_Logo[]
and
// Draw a XBM
void drawXbm(int16_t x, int16_t y, int16_t width, int16_t height, const char *xbm);
both use const char why do you have a const uint8_t ?
Ok I see you do not use the one I provide (v3.2.7 ) - you use another one, V4 may be ?
Ok I see you do not use the one I provide (v3.2.7 ) - you use another one, V4 may be ? Sorry but I don't get it. Version of what? Provided where?
the version of Oled library - I provide the libraries to be used in library directory : https://github.com/luc-github/ESP3D/tree/2.1/libraries
Now I'm using provided lib. Only first compilation with enabled Oled was using external lib. Currently project is compiling with success but display doesn't work. I will try to check signal on SDA SCL pins.
just do [ESP444]RESET to be sure OLED output is enabled and [ESP444]RESTART to reboot after
OK, I will try at home. BTW when You plan release v3.0?
When done ^_^ - sorry no clear date, it is a lot of work to rewrite all - I am now on pure FW part - webUI is not yet ready, but will be this year, I hope before summer come just started with oled and today working on tft + touch
Finally I get Oled working. The root of a problem was Arduino environment. My fault - too much libs and too much modifications.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
When Oled support is disabled, everything working fine. Tested on LoLin NodeMcu v3 (ESP-12E)