Robert L. Frazier ( )


Welcome to the area for all things having to do with computing.

GPS disciplined NTP server

I like having a computer which does reasonably accurate timekeeping. For example, I use it to calibrate another computer which is used to analyse watch escapements. So, I have a Raspberry PI set up as a NTP (Network Time Protocol) server for use on my LAN (Local Area Network). The server’s name is “Chronos”. Chronos has a Trimble GPS (Global Positioning System) timing receiver connected to it. The timing receiver is synchronised with GPS satellites, which have atomic clocks on board. The timing receiver then generates a pulse every second (PPS), which Chronos uses to adjust its clock. The timing receiver, with all adjustments made, is supposed to be accurate to about 15 nanoseconds. Chronos is sensitive to temperature, electrical noise, and the like, so it only keeps time on the order of +/- 1.5 microseconds, with the occasional larger spike.

Here’s a picture of Chronos and the Trimble timing receiver.

Here’s a graph of Chronos’ performance yesterday.

Here’s a graph of Chronos’ performance this year.


For mobile devices I use an opensource version of Android: Lineage OS. I build this version of Android locally from source. This allows me to sign it with my own security keys and to avoid having non-opensource apps on my phone or other devices. For example, Google apps are not opensource, so I don't have them on any of my devices. Using this opensource version of Android also means that all of my devices, including one from 2012, use the same up-to-date version of Android with recent security patches.

Not all the apps I want to use are part of Lineage OS. The others I get from F-droid, a repository of opensource apps for Android.

Information about this site.

From 1995 until November 2014, I hosted this site on a server in my office ( Because of changes to the college’s network, resulting in the demise of my segment section of the network, this is no longer possible. Consequently, I’ve moved it to a commercial hosting service ( ), and the address/URL has changed to

I create the site locally and just copy it to the hosting server. I test it by running a local only website using apache.

Software used for creating the site.

The Debian distribution of Linux is my operating system of choice. I've been using Linux since 1993 and Debian since 1994. The choice to stick with Debian is becoming more difficult as a result of the move from sysVinit to systemd. Perhaps more on that later.

Vim is the editor that I use.

For relatively simple documents and pages, like this page, I just mark them up in HTML. For more complicated documents, such as reading lists containing lots of references, I first mark them up in LaTeX, and convert them from that (one source, many formats).

For processing LaTeX documents, I use texlive. Texlive includings utilities to generate PDF and HTML files from LaTeX source files. To convert HTML documents to EPUB documents, I use ebook-convert, which is part of the Calibre suite of ebook management tools.

All of the conversions are automated, of course.

The gimp is used for most graphics manipulation.

Website generation.

For quite some time I used various Content Management Sysytems (CMS), but these were overly complicated and resource intensive. Over time, I've become much less interested in what is new and cool, rather than what is best for the job in hand. So, I've greatly simplified things by using webgen by Thomas Leitner, which generates static webpages using templates.

The display system for photographs is lightbox by Lokesh Dhakar

Most of the site is HTML5, but not all. I make heavy use of CSS for display related things, especially in my attempt to make the website fully usable on displays of various sizes, such as you find in desktops, laptops, tablets and smartphones. This is called "Responsive Web Design".