Decoding the ALERT Protocol from a USGS Streamgage with an RTL-SDR
Over on his YouTube channel GusGorman402 has uploaded a video that shows how he was able to capture and decode data from a USGS (United States Geological Service) streamgage.
A streamgage is a sensor for streams and rivers that is used for measuring the amount of water flowing. In particular the ALERT (Automated Local Evaluation in Real-Time) streamgages are designed for the warning of flooding. The ALERT streamgages are wireless with some transmitting data upwards to the GOES-15 geosynchronous satellite with a cross Yagi and some transmitting locally via a standard Yagi. Gus shows if you’re close to a streamgage antenna then you can still receive the signal on the ground with an RTL-SDR. Gus also mentions that all streamgages in his area are slowly being converted to satellite uplink.
His first video simply shows the RTL-SDR receiving a Streamgage satellite uplink signal at 400 MHz. In his second video he moves to a streamgage with terrestrial link at 170 MHz and shows that the data can actually be decoded into a binary string using minimodem. Another program called udfc-node can then be used to turn the data into a human readable format. The binary packets consist of an address that identifies the particular streamgage, and some data that describes the current level of the stream and how much precipitation it has counted.