After becoming a full-fledged time-nut (I’m compiling a new Linux kernel on my second NTP server as we speak), I have started to use the statistics that I usually install on a server just to keep a check on it. Sure, when installing something like MRTG, it’s great to see if something is clogging the system, but mostly, it’s unused. But when working with an NTP server a lot of factors start to make a difference. The temperature of the processor (the whole computer actually, mostly due to crystal drift), the load of the CPU’s, etc.
Warning: as of yet, there is no official support for overclocking the Raspberry Pi 3, so you could damage your small computer. Just a reminder.
The new version of Raspberry Pi 3 was released yesterday, so I naturally had to get two. I’m using two as Stratum-1 NTP servers, and with the old Raspberry Pi 2, I had hit the roof when it came down to getting better time resolution. So when I read that a new 50% faster version had been released, I raced to the nearest store and got a couple. I have one experimental NTP server that isn’t handing out time on the internet and another one that is the primary server, connected to the NTP Pool Project.
I installed the experimental Raspberry Pi 3 first, so I could test performance and try to overclock it. And it went very well.
Update: You can download the Eagle PCB files for the PPS Pulse Width Extender here.
The PCB is made to fit the Hammond 1455C802BK enclosure.
I have two Stratum-1 NTP servers using Raspberry Pi 2’s as servers. But the two setups are entirely different.
My primary NTP Stratum-1 server is available at ntp.jacken.se, but it is also in the .se pool of ntp.org.
It’s a Raspberry Pi 2 I use a Raspberry Pi 3 that I have connected a U-Blox Neo-7 GPS receiver. But I’m not using the 1 PPS signal coming out of the U-Blox. I have a Trimble GPSDO that I bought from eBay. The unit has two 10 MHz lab reference outputs and one 1 PPS output. But after measuring the signal coming out from the GPSDO, I realized that the timing speed for the seconds “Tick” was only 10 µsec which is way to fast for the Raspberry Pi to pick up as an interrupt on one of the GPIO pins. So I built a pulse extender, making the pulse around 250 milliseconds instead. And now the Raspberry Pi picks up the pulse without problems. Some GPSDO units can set the pulse width by programming the unit via a serial port, but I can’t find that feature on this unit (which is poorly documented and was OEM made for some other manufacturer), so I had to do it with hardware. So how does it look when crunching the numbers on it?
The last couple of weeks I’ve been busy building a
Raspberry Pi 2 Raspberry Pi 3 connected to my Trimble GPSDO using the 1 PPS output. The Trimble unit synchronizes with the atomic clocks onboard the GPS satellites, and the precision is fantastic! I bought the GPSDO to get a 10 MHz lab reference for my measure equipment, but after reading an article about Time-Nuts, people obsessed with measuring time as accurately as possible, and one of my friends showed me pictures of their new Stratum-1 NTP server rack he helped design, I was hooked.
My Raspberry Pi Car Audio Player
A lot of people are using the excellent Linux microcomputer Raspberry Pi and install it in their cars. Usually, they use a color screen that is touch sensitive, being able to play back video and music. But I’m only interested in high-quality audio playback, being able to have all my CDs in lossless FLAC format for optimal sound quality. So a 16×2 LCD with some buttons is plenty. I now have a working system (but not yet installed in my car.) here’s a description of how I’ve built it. Most of the installations I’ve seen the use of the audio out from the Raspberry Pi, but it’s only 11-bit and sounds like crap. I want to use an external DAC, and you can get that to work in XBMC, but only menu and music output, not films. There are some HDMI to audio converters, but I’ll instead use a quality USB DAC.