Rolled over to month Zero

For RTC breakouts, etc., use the Other Products from Adafruit forum

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
brian4120
 
Posts: 10
Joined: Sat Nov 28, 2009 5:56 pm

Rolled over to month Zero

Post by brian4120 »

Just a interesting note here, last night I noticed the date displayed by my clock was off. I checked the date setting and the date was 0 15 10. Setting it manually to January fixed it, but I figured I should mention this bug.

Anywhoo, bought the kit in December 2009 and have not updated the stock firmware yet.

Other than that, the clock has been running like a champ!

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm

Re: Rolled over to month Zero

Post by adafruit »

yeek! ok well check this out :(

brian4120
 
Posts: 10
Joined: Sat Nov 28, 2009 5:56 pm

Re: Rolled over to month Zero

Post by brian4120 »

I just hope that someone can reproduce this. I don't want to sound like the crazy guy at the bus stop :oops:

User avatar
septillion
 
Posts: 2
Joined: Sun Jan 17, 2010 12:36 pm

Re: Rolled over to month Zero

Post by septillion »

I don't own a Ice Tube clock but i used and modified parts of it to build my own tube clock with a PIC uC. I think it is possible to let the clock over to 0. This is because the day, month and year are stored in eeprom before the next check. Example, when the year has to roll over, the first check is if the month has passed. If so, the day is set to 1 and the month is increased and directly stored in eeprom. After that it checks it the year has passed. If so, the year is increased and stored in eeprom and the month is set to 1, but NOT stored in eeprom. So eeprom month = 13. When loading eeprom month its don like month = eeprom_month % 13. This will give month = 0! This will happen for date and time vars. But its only a problem for month and day, the don't start @ 0, but @ 1.

To solve the problem, for example, cascade the roll over checks and move the eeprom stores to the end. Or store the month in eeprom again after the year has passed. Or, load the eeprom like month = (eeprom_month % 13) + 1 * (eeprom_month / 13) (same for day). The last option is the easiest one.

User avatar
joerg_daehn
 
Posts: 30
Joined: Tue Oct 13, 2009 6:39 pm

Re: Rolled over to month Zero

Post by joerg_daehn »

brian4120 wrote:I just hope that someone can reproduce this. I don't want to sound like the crazy guy at the bus stop :oops:
Hey Brian!

http://forums.adafruit.com/viewtopic.ph ... 144#p75144

You are not alone thought that makes the situation not any better :-((

J.

Locked
Please be positive and constructive with your questions and comments.

Return to “Clock Kits (discontinued)”