I'm losing much more than that.. about 120 seconds in 4000+ seconds.
ok someone just told me that the interrupt priority goes...External interrupts, USB, WDT, Timer 1, Timer 0, SPI, USART...So am I right in assuming that it's actually Serial.print() which is screwing with my timekeeping?millis() / micros() uses Timer 0 right?So if I hook up an external clock generator, I can get ticks that don't get masked by Serial.print() ?
No, I have not... but if the millis() or other ISR is getting masked, an external source would also lose ticks. I don't have a precise external time base anyway so the RTC seems the way to go. Looks like the PCF8583 is the way to go, 8-pin DIP, through-hole, 10ms accuracy.
2) Everything I read is that millis() shouldn't lose so much time. But I see what I see. My laptop clock could be wrong (even though its actively NTP-syncing). But the telescope tracking is off, and this is detectable by watching a star (the ultimate reference). So I know the Arduino is forcing the tracking off, which can only be explained by its losing time.