I run into strange problem with DS1307 as mentioned by many others.
My setup uses SD-shield, DS18B20 sensors, LCD from Nokia3310, DS1307. All blocks worked fine separately and might going very badly in combinations. Then I foung that http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1222946089
thread, where it was suggested possible out of memory error. Then very helpful article http://itp.nyu.edu/~gpv206/2008/04/making_the_most_of_arduino_mem.html
Suggestions from this article helped me to get all modules to work together.. except DS1307
It was last in the chain though..
Then I found function FreeRam() from fat16lib which I use for SD operations and started to play with it.
Some results are that:
- bare sketch (it just outputs FreeRam value in setup and loop) gives 836 bytes of free RAM (with ATmega168);
- + #include <Wire.h> leaves 814 bytes;
- + #include <DS1307.h> leaves 622 bytes.
So if with my current sketch which shows 170 bytes of free RAM I add include for DS1307.h it dies for sure.
Is not it too high price for one i2c device to take 200 bytes of RAM?
Especially in situation where I just want to get timestamp from it and store it on SD with other datas..