Setting a 1990s PDA clock via GPS

I’ve been thinking about doing this for a looooooooong time and finally got round to it… synchronising the system time on my old PDA with GNSS!

Setting Psion Series 3a time from attached GPS

Now I can set the time in my Psion Series 3a via an attached GPS ๐Ÿ˜‰

Time shown on M5Stick sync’d via NTP/WiFi for comparison

I wrote some simple OPL to:

  • Open the serial port at 9600 Baud, 8N1
  • Grab 255 bytes of NMEA output from the attached GPS
  • Find the location of the $GPRMC sentence that has the (UTC) time in it
  • Call an OS function to set the time (adding any UTC offset if needed e.g. if “Summer Time” is set on the Psion)

The OPL code is on github but beware – it’s not polished (and only the time is set, not the date) – use at your own risk. Psion time is sync’d to UTC/GPSTime within a second or less.

NMEA sentences from the Adafruit Ultimate GPS breakout – showing UTC time in the $GPRMC sentence
Connections: GPS module powered by USB/Serial adapter. TTL/RS232 adapter and null modem/gender changer connect GPS serial output to Psion’s 3Link serial interface lead

I even hacked (butchered?) the OPL to run on both the Series 3 and MC400 (both pre-date the Series 3a). Obviously the Series 3a to 3 transition was fairly minor but the MC400 has no concept of “Home City” (e.g. timezone) hence UTC offset or even “Summer Time” so I just manually set some of the values to get it working ๐Ÿ˜‰

Even the old MC400 gets satellite time synchronisation ๐Ÿ˜†

The GPS receiver I used was connected via breadboard and a TTL/RS232 UART module + null modem/gender-changer to the Psion 3Link cable.


Checking time on the Psion against UTC via NTP on iPhone
Series 3 gets sync’d too ๐Ÿ™‚

Another “setting the clock” video ๐Ÿ˜‰

Published by zedstarr

Chilled out human being, doing techy stuff.

One thought on “Setting a 1990s PDA clock via GPS

Leave a comment