040228 Any way to " CORRECT " the HP48GX Time module internal clock ?


Although its internal quartz clock was not " supreme " in itself , the HP 41 CX could be a quite reliable Time Keeper thanks to its time management functions , essentially the CORRECT function . I could consistently fine-tune its " drift " to better than - i.e " under " - 1 second every other month . This turned out to be really great to shoot sights for Celestial Navigation .

The HP48G unfortunately has a very poor/average quartz clock - not even matching the quality of the HP 41CX Time Module - which can easily drift above five to ten seconds per 24 hours , and ... it does not even have a built-in correction system .

Would some of you be aware of any available HP48GX function(s) or published software to adequately " correct" the HP48GX internal clock in a way similar to what was nicely built-in within the HP41 Time-Module thanks to its magic CORRECT function ?

Best Regards from

Antoine M. " Kermit " Couëtte



hpcalc.org is a great place to find things like this. Here's one that includes the following description:

"Keeps the system clock as accurate as possible by synchronizing the clock with a time standard, and using the accumulated adjustments with the elapsed time to compute the necessary correction amount/rate."

You might also be interested in this astronomical library which has this description:

"Astronomical library. Computes: ephemeris of Sun, Moon, planets, comets and asteroids mean, apparent, geocentric and topocentric coordinates accurate precession and nutation mean elements of major bodies four systems of celestial coordinates for data input conversion between coordinates eclipses of Sun and Moon - Moon phases rise and set of celestial bodies - twilights Jupiter's satellites - equinoxes and solstices elongations, oppositions and conjunctions catalog of 1158 stars and 110 Messier objects ephemeris of variable stars (with TDB) interactive celestial
maps - angular separation chronological cycles and date of Easter sideral time and clock two time scale (TT or UTC and similar) values of deltaT=TT-UT1 (updated 08/2002) various input modes for dates - time zones auto-adjust of internal clock geodetic and UTM coordinates 30 pre-built and 10 user's coordinates nautical point determination with two stars."


Feb 28 , 2004

Dear Wayne ,

Thank you very much for both informations , first one on how to finely set the HP48GX clock , and the second one on what seems to be an impressive Astronomical Package for the HP48 GX .

Best Regards ,

Antoine M. " Kermit" Couëtte , or shorter :

Kermit :-))


Also consider 'TIMEKEEP', available in the UTILS directory of Joe Horn's Goodies Disk 9. See http://www.hpcalc.org/hp48/compilations/horn/.

This is a UserRPL directory, but it allows more flexibility as to when to apply the clock correction. With a little bit of rewriting, you can have it apply the corrections on whatever schedule you prefer. Also you can have it overcorrect, so that the clock will be off in one direction just after the correction, and off in the other direction just before the next scheduled correction. And you can have it apply the correction whenever you call for it.




Since 'TIMEKEEP' is in UserRPL source code, it should work on any 48 or 49 series calculator. But I don't think that I've verified that on the 49 series; there is a possibility that a global name could match a built-in command name, and would need to be changed.

By the way, what's the "040228" in the subject line about?


Feb 29 , 2004 ( issuing date is what 040229 stands for . I have taken this (?) habit , so that in all my files all documents are chronologically stored )


Hi James ,

Thank you for your information .

After having tried the HP's "clk" Program Wayne Brown had nicely pointed to my attention , I also loaded "timekeep" into my HP48 GX . As it takes up less room than "clk" , I will live with "timekeep" for the time being .

I understand that clock adjustment on the HP41 Time module is fully automatic , continuous and totally transparent to alarms management .

Apparently - in either " clk " or " timekeep " - clock adjustment is made only at some ( regular or not ) intervals through a specific alarm devoted to adding/removing a number of ticks . For example in the " timekeep " program clock adjustment is performed by default everyday at 4.00 am , or anytime the " kick " function is pressed .

Than you again for your most kind help



Regarding the 040228 and 040229, now I see. I often use a year-month-day
format. It makes sorting by date much simpler, and, in my opinion, makes
more sense given our usual most significant digit at the left notation.
But I always use the full 4-digit year when doing this; 2004-03-01 or
20040301 for today for example. If I wrote 04-03-01, most people around
here (quite possibly including myself) would think that I meant "April
3rd, 2001", and I suppose that Europeans might think that I meant "the
4th of March, 2001". But if 040301 works for you, that's fine with me.

Regarding the 41C series accuracy factor, first off, I've never had a
41C series, so I'm just going by what's in the manual. My understanding
is that using it causes the calculator to periodically adjust the clock
by its smallest increment. And yes, I gather without using an alarm or
in any way bothering the user, save to set/adjust the accuracy factor.

The 48 and 49 series evidently weren't designed to be precision
timepieces; I have weight-driven and spring-driven mechanical clocks
that (as adjusted) are more accurate.

Using a control alarm to adjust the time on the 48 and 49 series is
certainly less than ideal, especially if a control alarm comes due while
you're trying to use the calculator. For example, if the command line
editor is active, then the control alarm will abort it. To be sure, the
command line will be saved (assuming that last command lines saves
aren't disabled), so you can use the last command lines operation to get
back to what you were trying to do, but it's still rather disruptive.

I wonder whether it's possible to periodically adjust the time without
using control alarms on the 48/49 series. Perhaps for someone skilled in
assembler language programming?

What would really be ideal would be a way to adjust the oscillator
frequency. But these calculators weren't designed to be opened, and I
don't know that the electronics design is available to the general

Of course, additional niceties such as a temperature compensated
oscillator would be even better, but perhaps not appropriate for a
calculator. After all, a calculator isn't (so far, at least) intended to
be a chronometer. An oscillator is essential for the digital logic, and
a display is needed for the calculator, and having them available as the
basis of the time and date capabilities is a nice bonus.

If I recall correctly, for the HP CLK application, the user sets the
amount of the correction, and the application calculates how often to
make this fixed correction, with the option to suspend the corrections
and have any accumulated "past-due" corrections made after they're

With the TIMEKEEP application, the user can easily modify the schedule
(if any) of when to make the correction, and/or tell it to make the
correction now, and the application calculates how much of a correction
is needed as part of the correction process.

It's been a while since I've used either of these, but I prefer
TIMEKEEP's method.

I suppose that CLK could be set up to make very small adjustments, but
that would increase the frequency of the control alarms, so I don't
think that I'd be happy with that.

It occurs to me that Wolfgang (see
http://page.mi.fu-berlin.de/~raut/) has some nice time and date
applications, but I don't think that any of his 48 series applications
include an automatic clock correction feature, although I know that at
least one of his 49 series applications does.




If I remember correctly the correct function works by modify the number of pulses for one second. That way the correction is basically continous rather than by a certain interval.


If I remember correctly the correct function works by modify the number
of pulses for one second. That way the correction is basically continous
rather than by a certain interval.

That could be; as I wrote, I don't actually have a 41C series to
experiment with. I suppose that it could even possibly depend on the
module or calculator model.

What I was going by is on the Museum DVD 41CX manual
(drive:\CD6\manuals\41cxvol2.pdf) in Appendix F: Time Specifications (Page 375). Quoting a couple of paragraphs from the manual:

The accuracy factor is the time interval (in seconds) at which one pulse
(of approximately 9.8 X 10-5 seconds duration) is added to or
subtracted from the clock's 10240 Hz time base. The table at the right
shows the accuracy factors limits and format.

An accuracy factor of -10.5 would cause one pulse to be subtracted every
10.5 seconds. An accuracy factor of 0.1 would cause one pulse to be
added every 0.1 second.

The table referred to shows accuracy factors of n (seconds) of 0.0
through +/-99.9 and the effect is to add/subtract one pulse every n
seconds with lower values increasing the frequency of correction, except
that n=0.0 results in no correction and is the default. It isn't clear
to me whether or not using accuracy factors with more than one decimal
place would make any difference (or would even be accepted).

It's still, for practical purposes, basically just as continuous; with
each correction being by +/-1/10240 second, the user wouldn't even
notice the individual corrections.

And yes, this is certainly a lot better than the programs that I've seen
for doing a time correction on the 48 and 49 series, where a certain
number of ticks (1 tick=1/8192 second, about 1.2*10^-4 second) is added
or subtracted, usually by a (quite possibly somewhat disruptive) control
alarm. It's kind of a shame that they didn't build in a time correction
system similar to the 41C series'. Perhaps it was a matter of cost; I
expect that the developers were aware of the 41C series' time correction
system. Keep in mind that the 28 series' time system isn't even (easily)
accessible to the user, and I expect that the 48 and 49 series' time
system is based on that.

Since the time system in the 48 and 49 series is based on a 32768 Hz
oscillator, it just *might* be possible for some genius to come up with
a time correction system similar to and maybe even better than the
41C's, but I'm not at all sure that even assembler language programming
allows modifying the time system that way.



You're right James. I reread the time module manual. Yes it's a shame that the newer calculators don't have a better correction system. The time function is very useful and more so in a faster and more advanced calculator.

Possibly Related Threads...
Thread Author Replies Views Last Post
  Reasonable price for a 41C, Quad Mem, Time, Navigation and Card reader module? Eelco Rouw 10 1,089 12-12-2013, 01:52 AM
Last Post: Eelco Rouw
  [HP Prime]How to get Discrete-Time Fourier Transform uklo 0 376 11-18-2013, 08:02 PM
Last Post: uklo
  HP Prime - Revision Suggestion - Setting the Clock Bill Triplett 5 580 11-15-2013, 12:36 AM
Last Post: Joe Horn
  Date/time formats R. Pienne 4 546 11-01-2013, 12:43 PM
Last Post: Marcus von Cube, Germany
  How to set the Date.Time etc on a WP34S Harold A Climer 4 553 10-29-2013, 09:32 PM
Last Post: FORTIN Pascal
  Prime: Exam mode (possible duplicate after funny response first time) Paul Townsend (UK) 1 308 10-24-2013, 03:09 PM
Last Post: Tim Wessman
  Prime incase anybody missed the clock Dougggg 5 516 10-19-2013, 04:05 PM
Last Post: Geoff Quickfall
  Using your HP-65 as a clock! Don Shepherd 24 1,544 10-08-2013, 11:53 AM
Last Post: Don Shepherd
  HP48GX screen replacement Francisco Quiles 9 830 10-03-2013, 09:17 PM
Last Post: Francisco Quiles
  Date/time programs for the HP 35s R. Pienne 0 261 10-03-2013, 02:37 PM
Last Post: R. Pienne

Forum Jump: