I have a Spark Core, which has been chugging along fine until recently. Now even if I create a new empty app and compile it, it shows 92.9% Flash used, 53.4% RAM used! What the heck? How do I fix this? I ran particle device doctor
and cleared everything (except device keys), and I cleared cache in the Web IDE. Neither helped. Targeting older firmware reduces the footprint somewhat but for example 0.6.2 still shows 91560 text size (83.7% Flash used, 52.3% RAM used).
Steps to repro:
- In the Web IDE, under Devices > Target: Default (1.4.3).
- Settings > Clear Cache.
- Code > Create New App. Name it “Test” and save.
- Click Verify.
Output of arm-none-eabi-size:
text data bss dec hex
101724 972 9964 112660 1
In a nutshell:
Flash used 102696 / 110592 92.9 %
RAM used 10936 / 20480 53.4 %
The code literally looks like this:
void setup() {
}
void loop() {
}
And yes, the numbers seem to be real because I hit errors when I try to compile any substantial app:
/usr/local/gcc-arm-embedded/bin/../lib/gcc/arm-none-eabi/5.3.1/../../../../arm-none-eabi/bin/ld: region `APP_FLASH' overflowed by 3012 bytes