Skip to content

Error to connect Wemos D1 R2 to Mysql #8250

@ChinaBurn

Description

@ChinaBurn

Exception 28: LoadProhibited: A load referenced a page mapped with an attribute that does not permit loads
PC: 0x40202574
EXCVADDR: 0x00000049

Decoding stack results
0x40220450: UpdaterClass::end(bool) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\Updater.cpp line 540
0x402025c7: lfs_dir_alloc at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 1466
0x402025b4: lfs_dir_alloc at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 1459
0x402041c4: lfs_fs_forceconsistency at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 4172
0x4020674c: esp8266webserver::ESP8266WebServerTemplate ::collectHeaders() at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\ESP8266WebServer\src/ESP8266WebServer-impl.h line 621
0x40227739: classify_object_over_fdes at /workdir/repo/gcc-gnu/libgcc/unwind-dw2-fde.h line 157
0x40206718: esp8266webserver::ESP8266WebServerTemplate ::RequestArgument::~RequestArgument() at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266/WString.h line 79
0x40202f04: lfs_file_rawwrite at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 2990
0x40202f28: lfs_file_rawwrite at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 2311
0x40203084: lfs_file_rawwrite at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs_util.h line 102
0x4020297b: lfs_bd_flush at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 147
0x402151b2: WiFiClient::available() at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\ESP8266WiFi\src\WiFiClient.cpp line 252
0x401006bf: Twi::onTwipEvent(unsigned char) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\core_esp8266_si2c.cpp line 580
0x4010089e: __digitalWrite(uint8_t, uint8_t) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\core_esp8266_wiring_digital.cpp line 92
0x40100294: schedule_recurrent_function_us(std::function  const&, unsigned int, std::function  const&) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\Schedule.cpp line 118
0x40215c18: WiFiServer::begin(unsigned short) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\ESP8266WiFi\src\WiFiServer.cpp line 61
0x401006bf: Twi::onTwipEvent(unsigned char) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\core_esp8266_si2c.cpp line 580
0x40202abe: lfs_bd_prog at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 213
0x40202832: lfs_init at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 3503
0x40202216: lfs_ctz_traverse at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 2407
0x40206bc8: esp8266webserver::ESP8266WebServerTemplate ::_parseForm(WiFiClient&, String const&, unsigned int) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266/WString.h line 79
0x40202c94: lfs_file_flush at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 2731
0x40201f70: lfs_dir_getread at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 678
0x40202f28: lfs_file_rawwrite at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 2311
0x40201101: lfs_dir_commit_size at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 1542
0x40206bc8: esp8266webserver::ESP8266WebServerTemplate ::_parseForm(WiFiClient&, String const&, unsigned int) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266/WString.h line 79
0x40203c28: lfs_dir_commit at c:\users\administrator\appdata\local\arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\littlefs\lib\littlefs/lfs.c line 1878
0x40100b51: umm_assimilate_up(umm_heap_context_t*, uint16_t) at C:\Users\Administrator\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\umm_malloc\umm_malloc.cpp line 353

Settings in IDE

  • Module: [Generic ESP8266 Module|Wemos D1 mini r2|Nodemcu|other]
  • Flash Mode: [qio|dio|other]
  • Flash Size: [4MB/1MB]
  • lwip Variant: [v1.4|v2 Lower Memory|Higher Bandwidth]
  • Reset Method: [ck|nodemcu]
  • Flash Frequency: [40Mhz]
  • CPU Frequency: [80Mhz|160MHz]
  • Upload Using: [OTA|SERIAL]
  • Upload Speed: [115200|other] (serial upload only)
#include <ESP8266WiFi.h>           // Use this for WiFi instead of Ethernet.h
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

IPAddress server_addr(10,0,1,35);  // IP of the MySQL *server* here
char user[] = "root";              // MySQL user login username
char password[] = "secret";        // MySQL user login password

// Sample query
char INSERT_SQL[] = "INSERT INTO test_arduino.hello_arduino (message) VALUES ('Hello, Arduino!')";

// WiFi card example
char ssid[] = "your-ssid";         // your SSID
char pass[] = "ssid-password";     // your SSID Password

WiFiClient client;                 // Use this for WiFi instead of EthernetClient
MySQL_Connection conn(&client);
MySQL_Cursor* cursor;

void setup()
{
  Serial.begin(115200);
  while (!Serial); // wait for serial port to connect. Needed for Leonardo only

  // Begin WiFi section
  Serial.printf("\nConnecting to %s", ssid);
  WiFi.begin(ssid, pass);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  // print out info about the connection:
  Serial.println("\nConnected to network");
  Serial.print("My IP address is: ");
  Serial.println(WiFi.localIP());

  Serial.print("Connecting to SQL...  ");
  if (conn.connect(server_addr, 3306, user, password))
    Serial.println("OK.");
  else
    Serial.println("FAILED.");
  
  // create MySQL cursor object
  cursor = new MySQL_Cursor(&conn);
}

void loop()
{
  if (conn.connected())
    cursor->execute(INSERT_SQL);

  delay(5000);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions