Changes from 19 to 21

Are there subtle differences between ver. 19 and 21 that would cause the problems I will describe?

A program compiles to about 23k and has lots of variables, most are const.

windows, Duemilanove and Uno boards. Of course the problem with the uno only occurs with 21

includes:

#include <SdFat.h>
#include <SdFatUtil.h>
#include <Wire.h>
#include <RTClib.h>
#include <EEPROM.h>

The program compiles and runs fine from 19, although I know there is very little variable space remaining.

The same program hangs when loaded from 21

I would post the code except that it hangs instantly if a logger shield with a lot of custom wiring is not attached. I do not believe it is a code or library problem.

I know from experimenting that all of the pieces of code work if other pieces are commented out. For instance, commenting out references to functions and removing the function allows it to run.

The SdFat utility freeRam() reports something like 32 when loaded from 19, and never executes when the program is loaded from 21. Reducing the allocation to a buffer lets the program run further, but causes other variable to get stompped on.

It seems like 21 may grab more space for its self or there are conditionals somewhere that are sensitive to the version pf Arduino. I would really like to see some of the files that used to be available after loading

Does this fit any known issues?

Thanks for any thoughts.

JC

Reducing the allocation to a buffer lets the program run further, but causes other variable to get stompped on.

Then you still have a memory problem. With 19, when that memory gets stomped on may not affect the application. With 21, there may not be as much memory available, so the impact of stepping on memory may be a lot more critical.

Still think you don't need to post your code?

Of course the problem with the uno only occurs with 21

As far as I know, the Uno is only supported on 20 and 21, and 20 was only available for a few days because it contained a serious bug.

I would really like to see some of the files that used to be available after loading

Which files would those be? If you are referring to the stuff that used to be created in the applet directory, those files are still created, but in a temporary folder that is delete when the IDE is closed. You can get the temporary folder's name by setting verbose to true in the preferences file or by holding down the shift key when pressing the upload button.