Stalker V2 RTC random wrong date

Already built the data logger using Stalker V2.
Using one lipo batt 18650 2200mAh and 3 solar cell (each 2volt 50mA max)

It run well about 2 days, but today i got the stalker stop working.
The led keep on, and the logger stop writing to the card.
When checking the log data, i got 25/45/165 on the date.
I don’t see where the problem is.
The temp seem correct, so the lipo voltage

6/11/11,13:29:2,46.69,4.16 6/11/11,13:29:4,46.75,4.16 6/11/11,13:29:7,46.75,4.16 25/8/165,13:29:9,46.75,4.16 6/11/11,13:29:11,46.75,4.16 6/11/11,13:29:13,46.75,4.16 6/11/11,13:29:15,46.81,4.16 6/11/11,13:29:17,46.81,4.16 25/45/165,9:29:19,46.81,4.16 6/11/8,13:29:21,46.81,4.16 6/11/85,13:29:23,46.81,4.16 6/11/11,13:29:25,46.81,4.16 25/45/165,45:85:85,46.88,4.16 6/11/11,13:29:30,46.88,4.16 25/8/165,13:29:32,46.88,4.16 25/8/165,13:29:34,46.88,4.16 25/45/165,45:85:25,46.88,4.16 6/11/11,13:29:38,46.88,4.16 25/45/165,45:85:45,46.94,4.16 25/45/165,10:29:42,46.94,4.16 25/45/165,45:85:25,46.94,4.16 6/11/11,16:0:11,41.25,4.11 6/11/11,16:0:13,41.19,4.11

The stalker, lipo batt, and the solar cell sit inside tight container using some of tupperware stuff (it’s fun using them, and cheaper)
Maybe the heat that generate this problem ?
I thought the stalker will survive about 80 degree C.
Maybe the voltage regulator keep the voltage up-high in the high temp ?

Maybe i will toast them in the oven (like i did with duemilanove, and it fail) to test the high temp.

need more infos…
thanks for reading :slight_smile:

It seem not about TEMP, inside the room temp, it will hangs too.
Today will try to remove all the Serial.print stuff.

Nope, without Serial.print the stalker RTC keep randomly hangs.
But yesterday, it give 0/0/11 and time still ticking, and any other sensors.

Is there any ways to test the uC it self ? Or the RTC ?

Today will test without delay.

How to send config command to the RTC ?
I cant understand the datasheet :frowning:

I’d remove as many variables as possible. Power the Stalker directly from USB, keep the voltage constant. See if your code still hangs or gets bad date randomly. It might be software.

The RTC is accessed via i2c, so you’d just read from it or write to it like any other i2c device.

[code]#define DS1307_I2C_ADDRESS 0x68

int bcd_to_decimal( int bcd )
{
return ((bcd >> 4) * 10) + (bcd % 16);
}

void DS1307::update( void )
{
Wire.beginTransmission( DS1307_I2C_ADDRESS );
Wire.send( 0x00 );
Wire.endTransmission( );
Wire.requestFrom( DS1307_I2C_ADDRESS, 7 );
second = bcd_to_decimal( Wire.receive( ) & 0x7F );
minute = bcd_to_decimal( Wire.receive( ) );
hour = bcd_to_decimal( Wire.receive( ) & 0x3F );
day_of_week = bcd_to_decimal( Wire.receive( ) );
day_of_month = bcd_to_decimal( Wire.receive( ) );
month = bcd_to_decimal( Wire.receive( ) );
year = bcd_to_decimal( Wire.receive( ) );
hour_12 = ( hour > 12 ) ? (hour - 12) : hour;
}
[/code]