I experience exactly the same problem as described in this thread: https://industruino.com/forum/help-1/question/what-are-the-software-limits-on-industruino-159, but on a D21G top board. I have re-written and restructured my code several times but I'm always getting to a point where also the slightest change causes the board to freeze. As an example I added a global int that I just set to a value in a function, no other use. If I set the value to 1 when I declare the variabel and to 0 in the function my code is running. But if I instead set the initial value to 0 and change to a 1 in the function the board will freeze on upload.
I use sloeber and build output is:
section size addr
.text 29528 16384
.data 336 536870912
.bss 4492 536871248
As far I have understood this equals to 29528 + 336 = 29864 bytes of Flash, and 336 + 4492 = 4828 bytes of RAM for globals.
I have also used the MemoryFree (https://github.com/mpflaga/Arduino-MemoryFree) library to check free RAM, and at one test point in my main loop the result is 27283 byte of free RAM.
I also moved my projekt to the Arduino IDE 1.8.1 and compiled from there, same result when uploading.
This leads me to think there is nothing wrong with my code, and I have plenty of free memory.
Urgently need advice for what could be done to resolve this issue.
Problem most likely resolved. After advice from the Industruino team I have scrutinized my code again focusing on memory leaks and out of bound memory access, and finally I found the error. By mistake an array index could be incremented outside the boundary. Obvious when you see it and it has been there in front of my eyes all the time, but when you get stuck it helps a lot to get a push in the right direction from someone else.
Big thanks to the Industruino team
Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!