RTKLIB on Raspberry Pi

High accuracy GNSS positioning has always been associated with expensive commercial solutions. So I was pretty thrilled when I first heard about RTKLIB. Developed for the past seven years by Tomoji Takasu, RTKLIB is a free open source software for GNSS data processing. It has an impressive list of features, decoding of multiple formats (including the latest RTCM 3.2), NTRIP support, multiple constellations support, post processing and real-time processing ranging from single point positioning to RTK to PPP.

A great thing about RTKLIB is that it is highly portable. It is written in standard C and can be compiled on many different operating systems and platforms, including the hugely popular Raspberry Pi. Run the free RTKLIB on a fifty bucks Raspberry Pi connected to a low cost GNSS board (such as the u-blox LEA-xT series), now you have access to centimetre level positioning without the thousands of dollars price tag. Read More

Trimble CMRx bandwidth test

CMRx is the latest version of Trimble’s proprietary format for distribution of GNSS correction data to their rover hardware. A while back I did a quick test to measure the average bandwidth used by CMRx. Here’s a plot of bytes transferred per second for a two constellations (GPS and GLONASS), two frequencies (L1 and L2) stream over 10 day average.

CMRx bandwidth in bytes/sec
CMRx bandwidth in bytes/sec

The average figure is 171 bytes/sec. That is about thirty percent less compared to RTCM 3.0.

RTCM 3.2 support in Trimble Pivot 3.1

Since RTCM released Version 3.2 of their DGNSS Services Standard in February 2013, I have been wondering when GNSS hardware and software makers will add support for it in their products.

Trimble recently released Version 3.1 of their Trimble Pivot software and first on the list of new features is support for Multiple Signal Messages (MSM) as specified in RTCM 3.2. The MSM is intended to convey GNSS observations in a universal manner as more constellations and signals become available. It is a replacement for the older RTCM 3 messages (Message Type 1001-1004 and 1009-1012). Currently there are seven types of MSM, ranging from MSM1 for delivering compact GNSS pseudoranges to MSM7 which provides full GNSS pseudoranges, phaseranges, phaserange rate and CNR at high resolution.

Pivot supports MSM3-7 as its output format and its new RTCM3 decoder is capable of decoding MSM4-7. The next thing to look forward to is, of course, support for these new messages in GNSS receivers to make the end-to-end connection happens!