I've been working a project for several months now, and as with all projects it's been slowing evolving and growing as I seek to improve it. (I'm using an Mega 2560 with version 1.0 software)
Recently, the project has stopped working, it still compiles and uploads, but when I run it I get a seemingly random string of numerals, and nothing else.....
Various posts on this forum have suggested it may be to do with either the amount of PROGMEM being used, or location within memory that the PROGMEM is being written to. I've tried moving my PROGMEM to upper memory by swapping all my declarations from this....
const prog_char ERR_INT_14 PROGMEM = "*** Checking incoming SMSs ***";
const char ERR_INT_14 __attribute__((secTion(".fini7"))) = "*** Checking incoming SMSs ***";
But this made no difference.
I've recently noticed that my code has recently started compiling to greater than 128k...
Binary sketch size: 128414 bytes (of a 258048 byte maximum)
I've noticed a couple of posts mentioning a '64k limit' on some microprocessors (not sure what this actually means), I'm wondering if there is maybe a related 128k limit on the Mega?
I'm in the process of trying to shoe-horn my project to below this value to test my theory, but in the meantime any suggestions would be appreciated, even if only to tell me I'm barking up the wrong tree!
Also, if you have successfully worked with projects on the Mega that are greater than 128k please let me know - this will at least let me know if it's possible!
(not sure if this is relevant, but I have a total of about 800 PROGMEM declarations, each about 30-40 characters which total about 28k of PROGMEM)