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!
Now I can set the time in my Psion Series 3a via an attached GPS ๐
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.


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 ๐
The GPS receiver I used was connected via breadboard and a TTL/RS232 UART module + null modem/gender-changer to the Psion 3Link cable.








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