RSSAmplifier

Blog

SatPulse

SatPulse makes it easy to use a GPS receiver as a source of time for a PTP and NTP server

satpulse.netRSS feed ↗10 posts

Latest posts

Radxa ZERO 3E with a Waveshare GNSS HAT

I have been wondering whether there are any SBCs out there that might have advantages over Raspberry Pis for connection to GNSS receivers. I am happy to report that the Radxa ZERO 3E does pretty well: Gigabit Ethernet in a Pi Zero form factor is a nice combo.

SatPulse 0.2 released

I have released SatPulse 0.2. This is a major new release with a lot of new functionality (more than 60% of the code is new since 0.1).

Evolving a new PHC synchronization architecture for SatPulse 0.2

One of the major changes in SatPulse 0.2 is a new architecture for the PHC synchronization subsystem. The PHC synchronization subsystem has two inputs: a stream of timestamps from the PHC and a stream of messages from the GPS receiver. Its primary function is to synchronize the time of the PHC with the GPS receiver’s time. This involves generating a stream of samples from the two streams of…

SatPulse 0.2 hardware test matrix

I have set up 12 different machines for automated testing of SatPulse. I have chosen the hardware to provide coverage along multiple dimensions: CPU architecture, OS, PHC, GPS protocol and serial connection type.

Desktop GUI preview

I have been working on a desktop GUI for SatPulse. Here are a couple of demo videos.

Design of SatPulse compared with GPSd

In version 0.1 SatPulse focused on a specialized use case: transferring time from a GPS to a PTP hardware clock (PHC). In version 0.2, SatPulse’s scope is much broader. It now includes a rich, general-purpose GPS subsystem, which supports a wide range of vendor protocols. I believe 0.2 already has everything needed to provide full support for timing-oriented use of a GPS receiver on Linux. It also…

Building an NTP server on a Raspberry Pi with chrony or ntpd-rs

In an earlier post, I described how SatPulse can now work without the specialised PHC hardware it previously required. This means, in particular, that it is possible to use SatPulse to build an NTP server on a regular Raspberry Pi, rather than requiring a Raspberry Pi CM4 or CM5.

First pre-release of SatPulse 0.2

I just made the first pre-release of SatPulse 0.2.

A tour of the GPS modules supported by SatPulse 0.2

For the last 8 months, I have been working on broadening the range of GNSS hardware supported by SatPulse. In 0.1, there was support only for u-blox modules. In 0.2, I have added support for a broad range of modules from other vendors, all of which are Chinese.

Using SatPulse for timing without a PHC

Up to now, using SatPulse for timing has required some very specialized hardware. Over the last couple of days, I have implemented a feature that removes this requirement. It works very simply. SatPulse already has the ability to talk to an NTP server using chrony’s refclock SOCK protocol; this is configured by the [ntp] section of satpulse.toml. SatPulse also has the ability to work without a PTP…