Over on YouTube the TechMinds channel has uploaded a new video about decoding Differential GPS (DGPS) using an SDRplay RSPdx SDR. DGPS is a terrestrially transmitted long wave signal that is used to help correct and improve GPS position data calculations which may have timing errors due to atmospheric propagation delays. It works by broadcasting correction data calculated by the difference in received GPS location and the known location of the DGPS transmission site. DGPS is typically transmitted on longwave between 285 kHz and 315 kHz, but in Argentina there are two stations at 2570 and 2950 kHz.
In the video TechMinds explains how DGPS works, and some location around the world from where it is transmitted from. Later in the video he shows a DGPS signal being received by a SDRplay RSPdx SDR, and then show a demo of how it can be decoded with MultiPSK.
We note that there also various other DGPS decoders available including decoders for Android and iOS. A list of decoders can be found on the DGPS sigidwiki page.
DGPS Differential GPS Decoding With RSPdx And MultiPSK
Differential GPS (DGPS) are signals that exist between 285 – 325 kHz and are used to enhance the accuracy of GPS receivers. The system can improve GPS accuracy from 15m down to 10cm in some cases. It works using a network of ground stations at a very accurate known location that continuously measure the GPS error they receive. They then broadcast this error to DGPS capable receivers. The receiver can then use this error knowledge to correct their own readings.
Following on from our last post where dewdude showed how to decode DGPS signals, Frank K2NCC has uploaded a video on YouTube showing DGPS decoding in action. In his video Frank uses an Airspy plus ham-it-up upconverter, a Sirio discone antenna and for software he uses SDR# with audio piped into MultiPSK for decoding.
In the video you can clearly see the decoded DGPS messages showing the pseudorange corrections and station numbers. To decode DGPS with MultiPSK you will need to use the paid version which costs approximately $50 USD, however in the free version the DGPS will run for 5 minutes each time MultiPSK is opened before expiring.
Below is an example of a decoded message.
Message type : 9 (GPS partial correction set)
Station number : 172 (Appleton WA USA 300.0 Khz TXID 871 100bps)
Z-count : 4215 ( 42 mn 9.0 s )
Sequence count : 2le factor=0.3)
Sat. ID|SF|UDRE|Pseudorange corr. |Range rate corr.|IOD|CRC
25 |0 |1-4m| -7.68 m | 0.000 m/s |62 |OK
31 |0 |1-4m| 1.54 m | 0.000 m/s |27 |OK
32 |0 |1-4m| 0.70 m | 0.000 m/s |99 |Error
Over on his blog “RTL-SDR DX” dewdude has been exploring the reception and decoding of Differential GPS (DGPS) signals. DGPS signals are transmitted by government authorities in the long wave band at around 300 kHz. These beacons are used to dramatically improve the accuracy of GPS (Global Positioning System) devices from their default accuracy of about 15 m down to about 10 cm. Unlike GPS signals which originate from satellites, the DGPS signal is terrestrial based and is broadcast from multiple known fixed positions. The signal itself contains information about the difference between the DGPS stations received GPS position and it’s known exact position. These differences can be used to correct other GPS receivers that receive DGPS signal.
By using his RTL-SDR (with upconverter or HF modification) dewdude was able to receive the DGPS beacon in SDR#. Then by piping the output audio into SpectrumLab’s DGPS decoder he was able to decode the data contained within the DGPS signal. His post contains a tutorial showing how to set up SpectrumLab to decode DGPS. If you’re interested in hearing what a DGPS signal sounds like, dewdude has uploaded a sound sample at the bottom of another post of his.