Using the Arduino IDE the F() macro or equivalent is essential to store text strings otherwise you will run out of RAM fast.
The SD-Card Library that is part of the IDE is a memory hog too. It does not work well on the smaller ATMEGA parts with only 2K of memory especially if you want to add lots of other code around it. <snip> So, I guess it still can't be really working fully with 2318 bytes used out of 2048! even though at least it gets through setup(), and loop() loops, and Serial works again. Aside from reducing ram usage by just removing stuff, I guess I now care about tricks like the F() macro which compiles static data into flash rather than ram. <snip> bkw