The Museum of HP Calculators

HP Forum Archive 14

[ Return to Index | Top of Index ]

040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #1 Posted by Antoine M. Couëtte on 28 Feb 2004, 7:55 a.m.

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

antoine.m.couette@club-internet.fr

      
Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #2 Posted by Wayne Brown on 28 Feb 2004, 9:34 a.m.,
in response to message #1 by Antoine M. 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."

            
040228 Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #3 Posted by Antoine M. Couëtte on 28 Feb 2004, 10:39 a.m.,
in response to message #2 by Wayne Brown

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 :-))

                  
Re: 040228 Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #4 Posted by James M. Prange on 28 Feb 2004, 6:22 p.m.,
in response to message #3 by Antoine M. Couëtte

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.

Regards,
James

                        
Re: 040228 Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #5 Posted by James M. Prange on 29 Feb 2004, 6:43 a.m.,
in response to message #4 by James M. Prange

PS:

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?

                              
040229 Re: 040228 Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #6 Posted by Antoine M. Couëtte on 29 Feb 2004, 3:41 p.m.,
in response to message #5 by James M. Prange

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

Kermit

                                    
Re: 040229 Re: 040228 Re: 040228 Any way to " CORRECT " the HP48GX Time module internal clock ?
Message #7 Posted by James M. Prange on 1 Mar 2004, 9:03 a.m.,
in response to message #6 by Antoine M. Couëtte

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 public.

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 re-enabled.

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.

Regards,
James

                                          
HP41 Time Module
Message #8 Posted by Chan Tran on 2 Mar 2004, 12:15 p.m.,
in response to message #7 by James M. Prange

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.

                                                
Re: HP41 Time Module
Message #9 Posted by James M. Prange on 3 Mar 2004, 3:51 a.m.,
in response to message #8 by Chan Tran

Quote:
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:

Quote:
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.

Regards,
James

                                                      
Re: HP41 Time Module
Message #10 Posted by Chan Tran on 5 Mar 2004, 2:52 p.m.,
in response to message #9 by James M. Prange

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.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall