Ship DSC Reception and Reporting

Digital Selective Calling (DSC) is a standard for transmitting predefined digital messages via the medium-frequency (MF), high-frequency (HF) and very-high-frequency (VHF) maritime radio systems. It is a core part of the Global Maritime Distress Safety System (GMDSS).

DSC was developed to replace a voice call in older procedures. Because a DSC signal uses a stable signal with a narrow bandwidth and the receiver has no squelch, it has a slightly longer range than analogue signals, with up to twenty-five percent longer range and significantly faster. DSC senders are programmed with the ship’s Maritime Mobile Service Identity (MMSI) and may be connected to the ship’s Global Positioning System (GPS), which allows the apparatus to know who it is, what time it is and where it is. This allows a distress signal to be sent very quickly. I will not go into the full workings of DSC here as there are descriptions of the system elsewhere online. This page will only explain my receiving and reporting system.

DSC is allocated to the following frequencies for GMDSS purposes:

2,187.5 kHz, 4,207.5 kHz, 6,312 kHz, 8,414.5 kHz, 12,577 kHz, 16,804.5 kHz, VHF-CH70 156.525 MHz

My system receives and decodes all seven DSC frequencies simultaneously. It uses an Airspy Youloop HF antenna feeding an RX-888 wideband SDR. A discone HF/VHF antenna feeding an SDR Play RSP1a. The RX-888 is feeding to one instance of SDR Console, the RSP1a is feeding to another.

Each DSC frequency is being received in USB mode with a very narrow I.F. filter and fed out to YaDD using separate channels of VB Audio Cable. I run seven copies of YaDD from separate folders on the computer, one for each frequency. Each instance of YaDD decodes the messages for that frequency and outputs a UDP data stream to YaDD2MAP. YaDD2MAP then sends the compiled stream to as well as attempting to plot stations on a map.