Closed woeperbe closed 1 year ago
Hi. I see one thing which may be contributing. We cannot use floating point conversions in Arduino. You have to use dtostrf(). See the examples on the Wiki for how to do this. Other than that, I would make sure you're not running out of memory.
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
On a ESP32 there is floating point conversion. The conversion works fine i tested it
Greetings, Marc Buffet
On 22 Feb 2023, at 16:58, Dr. Charles Bell @.***> wrote:
Hi. I see one thing which may be contributing. We cannot use floating point conversions in Arduino. You have to use dtostrf(). See the examples on the Wiki for how to do this. Other than that, I would make sure you're not running out of memory.
— Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440305226, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGJ6NWMN3HQAP5HDZGLWYYZSBANCNFSM6AAAAAAVEDMUF4. You are receiving this because you authored the thread.Message ID: @.***>
This function will be called one time every 24 hours
Greetings, Marc Buffet
On 22 Feb 2023, at 17:13, Dr. Charles Bell @.***> wrote:
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
— Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440330556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGO3CC24FBWGOOFO5DTWYY3JRANCNFSM6AAAAAAVEDMUF4. You are receiving this because you authored the thread.Message ID: @.***>
Ok. Cool! Then I’d check out the memory to see if you are running low. Sent from my iPadOn Feb 22, 2023, at 11:19, Marc Buffet @.***> wrote: This function will be called one time every 24 hours
Greetings,
Marc Buffet
On 22 Feb 2023, at 17:13, Dr. Charles Bell @.***> wrote:
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
—
Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440330556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGO3CC24FBWGOOFO5DTWYY3JRANCNFSM6AAAAAAVEDMUF4.
You are receiving this because you authored the thread.Message ID: @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>
I am using a esp32 (NodeMcu 32S)
And it is crashing on the line that opens the connection …. The same code on Nodemcu esp8266 is working fine ???
Greetings, Marc Buffet
On 22 Feb 2023, at 17:25, Dr. Charles Bell @.***> wrote:
Ok. Cool! Then I’d check out the memory to see if you are running low. Sent from my iPadOn Feb 22, 2023, at 11:19, Marc Buffet @.***> wrote: This function will be called one time every 24 hours
Greetings,
Marc Buffet
On 22 Feb 2023, at 17:13, Dr. Charles Bell @.***> wrote:
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
—
Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440330556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGO3CC24FBWGOOFO5DTWYY3JRANCNFSM6AAAAAAVEDMUF4.
You are receiving this because you authored the thread.Message ID: @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>
— Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440352138, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGODKR5MZWVTSFMDWH3WYY4V5ANCNFSM6AAAAAAVEDMUF4. You are receiving this because you authored the thread.Message ID: @.***>
[image0.png]
Greetings, Marc Buffet
On 22 Feb 2023, at 17:25, Dr. Charles Bell @.***> wrote:
Ok. Cool! Then I’d check out the memory to see if you are running low. Sent from my iPadOn Feb 22, 2023, at 11:19, Marc Buffet @.***> wrote: This function will be called one time every 24 hours
Greetings,
Marc Buffet
On 22 Feb 2023, at 17:13, Dr. Charles Bell @.***> wrote:
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
—
Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440330556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGO3CC24FBWGOOFO5DTWYY3JRANCNFSM6AAAAAAVEDMUF4.
You are receiving this because you authored the thread.Message ID: @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>
— Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440352138, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGODKR5MZWVTSFMDWH3WYY4V5ANCNFSM6AAAAAAVEDMUF4. You are receiving this because you authored the thread.Message ID: @.***>
I can give you the complete source if you like …. The sql database is accessible on the internet Also the needed solaredge api is included to test
Greetings, Marc Buffet
On 22 Feb 2023, at 17:25, Dr. Charles Bell @.***> wrote:
Ok. Cool! Then I’d check out the memory to see if you are running low. Sent from my iPadOn Feb 22, 2023, at 11:19, Marc Buffet @.***> wrote: This function will be called one time every 24 hours
Greetings,
Marc Buffet
On 22 Feb 2023, at 17:13, Dr. Charles Bell @.***> wrote:
Another possibility: are you calling this method too frequently? In my experience, the Arduino platform(s) cannot handle frequent calls to MySQL (networking isn't all that fast). I recommending calling inserts no more than once per minute and the longer delay the better. Just a suggestion there. ;)
—
Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440330556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGO3CC24FBWGOOFO5DTWYY3JRANCNFSM6AAAAAAVEDMUF4.
You are receiving this because you authored the thread.Message ID: @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>
— Reply to this email directly, view it on GitHubhttps://github.com/ChuckBell/MySQL_Connector_Arduino/issues/205#issuecomment-1440352138, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKXOBGODKR5MZWVTSFMDWH3WYY4V5ANCNFSM6AAAAAAVEDMUF4. You are receiving this because you authored the thread.Message ID: @.***>
I found the problem ;-)
i used HTTPClient in place of WiFiClient
char INSERT[] = "INSERT INTO %s (time, daypower) VALUES ('%s',%.1f)"; char query[128]; IPAddress sql_server; WiFiClient sqlclient; MySQL_Connection conn((Client*)&sqlclient);
WiFi.hostByName(EEP.sqlserver, sql_server);
if (debug) SERIAL.print("WriteToSQL: Host found.\r\n");
if (debug) SERIAL.print("WriteToSQL: IP ->");
if (debug) SERIAL.print(sql_server.toString());
if (conn.connect(sql_server, 3306, EEP.sqluser, EEP.sqlpswd)) {
if (debug) SERIAL.print("WriteToSQL: Host is connected.\r\n");
delay(500);
MySQL_Cursor* cur_mem = new MySQL_Cursor(&conn);
sprintf(query, INSERT, EEP.sqltable, rtc.getDateTime().c_str(), lastdaypower);
if (debug) SERIAL.printf("WriteToSQL: %s\n\r", query);
You can close the case
void writeToSQL(void) { char INSERT[] = "INSERT INTO esolaredge.power (time, daypower) VALUES ('%s',%.1f)"; char query[128]; IPAddress sql_server; HTTPClient sqlclient; MySQL_Connection conn((Client*)&sqlclient);
}
i use ESP32 device
this crashes every time on the connect line with:
WriteToSQL: Host found. WriteToSQL: IP ->192.168.1.15...trying... Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.
Core 1 register dump: PC : 0x400f6c38 PS : 0x00060330 A0 : 0x800d6695 A1 : 0x3ffb25d0
A2 : 0x3ffb2634 A3 : 0x3ffb261c A4 : 0x00000003 A5 : 0x3ffc5d64
A6 : 0x3ffc51fb A7 : 0x00000000 A8 : 0x00000cea A9 : 0x0f01a8c0
A10 : 0x3ffb271c A11 : 0x0000000c A12 : 0x3ffb26a8 A13 : 0x3ffc4cb8
A14 : 0x00000001 A15 : 0x0000000f SAR : 0x00000004 EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000030 LBEG : 0x4008b221 LEND : 0x4008b231 LCOUNT : 0xffffffff