Previous post went out B4 I'd finished ;-( grrrr Your punctuation led me (incorrectly) to read that you were aiming for a target of 32 point 768 seconds. Now that I look closer, I see that you wrote 32 768, not 32.768, an error of 0.0153% or 15,260ppm > If variable X is set to 32 768 seconds, I would actually > expect slightly more (given a few GOTO routines etc. X > 32768), but I am actually seeing about 5 seconds less" A TMR0 IRQ, by its very nature, does not rely on anything except its own counting. Unless you turn the IRQ off while you're performing some other task, it will, like dat Ole Man Ribber, jus' keep rollin' along. You have plenty of time between IRQs to perform a few asks like incrementing other counters etc Have you measured the actual crystal frequency ? 32768 seconds is over 9 hours, and a 5 second deviance is not totally surprising. Unacceptable, but without verifying that the crystal is true (and temperature compensated if possible), you can't point the finger at the s/w. What caps have you got ? Possibly the crystal is not being correctly driven, but 15,260ppm is way out of spec -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads