Your cart is currently empty!
HamClock for Your Shack

Many hams salivate over the Geochron, a mechanical world clock which shows light and dark areas of the world map based on the time of day in that part of the world.
That type of Geochron is very expensive (I configured a Boardroom at 4,050 USD!), but the Geochron company also sell a dongle that plugs into a TV for a paltry 500 USD, which can not only tell time, but will also track sattelites, display FT8 and WSPR contacts and more.
As cool as that sounds, I (and many other hams) can’t drop half a thousand before even buying the TV for it. Enter HamClock and — you guessed it — the Raspberry Pi.
Let’s talk about Pis for a bit, since you will likely be trying to choose one to run HamClock on. I run HamClock on a Raspberry Pi 1 Model B+. Being the third-oldest Pi ever, it’s probably also the third-slowest. Although booting and updating (yes, you should keep your Pi up-to-date!) are painfully slow, it does run HamClock just fine! If I were to spec out a HamClock system today, I’d probably choose a Pi Zero 2 W. If I had money to burn, I’d use a Pi 5, but really, for just running HamClock, a Pi 5 is overkill.
To build your own HamClock, you will need the following:
- A Pi. See discussion above.
- An SD card for said Pi.
- A case for said Pi. Remember, there are some very nice 3D printed options out there, and some public libraries will loan you a printer, making this a very economical and educational option!
- A computer monitor or TV. Goodwill or St. Vinny’s are not bad sources for this.
- A short video cable. Depending on whether you choose a TV or monitor, it may be an HDMI, HDMI to DisplayPort, miniHDMI to DVI…you’ll have to find what works with your setup. If you can’t find a short cable, you can always buy a standard 6-footer, coil it up, and secure it with zip-ties.
- A USB power supply for the Pi
- A creative way to connect the Pi case to the TV/monitor. I used 3M Command strips. You could print a VESA mount case and mount it that way. Your creativity will be the limit.
- A wireless keyboard/mouse combo can be a nice extra. I used a comically small one because I knew I’d be using a software KVM switch later. The venerable Logitech K400 is another good option.
Build the Pi
In my remote SDR article, I covered installing Pi OS. The only caveat I’ll throw in here is to choose your Pi image carefully. Don’t try to install the latest full Pi OS on a B+! Choose a light and/or legacy OS for a low-powered and/or legacy Pi.
I mentioned configuring WiFi and enabling SSH in my other article. You WILL need WiFi (or some form of Internet connection) to run HamClock, but you don’t need it now. Configuring WiFi and SSH now will likely make your life easier later, but you don’t have to do it right now.
Boot up / Update
Once the Pi OS image is written to the SD card, plug everything together, stick the SD in the Pi, and apply power! After following a few on-screen prompts, you should eventually end up at the Desktop.
Before doing anything else, I’d suggest you open a terminal and run the following commands:
sudo apt update && sudo apt upgrade -y && sudo apt install unattended-upgrades
sudo allows you, a mere user, to perform privileged tasks (after entering your password). && executes the next command only after the first one (apt update) exits successfully. apt update fetches the list of available updates for your Pi. apt upgrade -y applies those updates, without asking you whether you want to use up disk space. apt install unattended-upgrades installs a software package that will install future updates without your interaction. While there’s always a small risk that an update will turn your Pi into a brick, to my mind, the benefit of a system that doesn’t need me to (remember to) install security updates manually far outweighs the risks.
HamClock will require a few other pieces of software to be able to run be able to be installed. Let’s install them now:
sudo apt update && sudo apt install -y curl make g++ libx11-dev libgpiod-dev xdg-utils
If you just updated, you can probably skip apt update above. After that, we’re installing curl (a small program that can get things…like HamClock!…from the web), make and g++ (programs that help to compile software from source) and a few software libraries which HamClock will need.
Install HamClock
Now, enter
cd
curl -O https://www.clearskyinstitute.com/ham/HamClock/install-hc-rpi
chmod u+x install-hc-rpi
./install-hc-rpi
cd stands for change directory. Alone, it means change directory (to your home folder, usually /home/rpi) The next two lines are actually one wrapped line. We’re just using curl to download a copy of a HamClock install script which was written specifically for Raspberry Pi. The chmod command adds execute privileges for you, the user (u+x) in the install-hc-rpi script you just downloaded. ./install-hc-rpi then runs the script.
Run HamClock
You’re probably getting itchy to actually see the HamClock. There’s plenty more configuring that can be done yet, but OK. Type
hamclock &
in the terminal and hit Enter. hamclock will run HamClock and & will make it run in the background of the terminal window, so you could still use the terminal for other things.
Wait a bit and the HamClock window should pop up. There’s a BUNCH of setup options to go through. My best advice is to google “Hamclock x.x.xxx manual” (where x.x.xxx is your version number) and choose options from there. The HamClock developers are constantly adding new features, so I’d suggest getting a new manual every time you update HamClock!
When you’re done playing with it, exit HamClock (either hit X on the window, or if you made it full-screen, click and hold the lock button for about 5 seconds. A menu will pop up with an option to exit.
Barrier
This next step is not required, but if you plan to be interacting with HamClock at all, I’d highly recommend setting up a software KVM (keyboard video and mouse) switch called Barrier. Barrier is open-source and cross-platform, meaning that you can share the keyboard and mouse on your Windows computer to the HamClock, and to a Linux computer…and to a Mac….etc.
I would highly recommend giving both your ‘main’ computer and the HamClock static IP addresses, or else Barrier may randomly stop working when the network assigns one or the other device a new IP address.
Set the computer whose keyboard and mouse you’d like to share as the server, and the HamClock as a (the?) client.
IMPORTANT: at this writing, while encrypting the connection between your computer and the HamClock sounds like a good idea, for some reason, it doesn’t really work. Keep SSL fingerprint disabled.
Final Notes
In case you’re curious, or want to set your HamClock up like I do, here are a few highlights:
- I try to keep everything dark. I feel no need to get blinded by the information on the HamClock
- I’ve set the colors on the ham bands to reflect frequency – dark reds are 160m/80m, 12/10/6m are purple and 2m/70cm tend toward blue.
- I don’t really DX but dangit, I NEED to make voice contact with a South African station for…reasons. my DX grid square is set to JF96 (Cape Town) and most of my VOACAP, etc. data are geared toward contacting ZS.
- The Aurora map is the coolest thing ever, and it helped me know to stay up for a huge storm where I got to see them for the first time ever.
- You can get DX spots on HamClock. It takes a bit of configuring but I have it set up. Still looking for ZS…!
While there is no denying the beauty and elegance of Geochron’s offerings, HamClock is a very powerful tool that can be built for dirt-cheap on a Saturday. Mine takes pride of place in my shack. I’d highly recommend building one for yourself!