D-PRS was developed to convert Icom GPS information generated by Icom D-STAR radios in GPS mode into TNC2 fomatted APRS strings. It is important to note that D-PRS is not a protocol but a conversion specification. D-STAR digital voice mode (DV mode) is a 4800 bps digital data stream with no error detection or correction. Each transmission consists of a RF header followed by a 4800 bps stream of bits. 3600 bps of this stream is dedicated to the AMBE encoded voice. The remaining 1200 bps is used for synchronization and user-defined capabilities. Icom made use of this user-defined space to pass radio messages (simple display messages) and to pass serial data.

There is about 900 bps available for the serial data. Icom saw an opportunity to incorporate GPS information into this serial data. The intent was to maintain the primary purpose of DV mode, sending voice, while providing a potentially valuable adjunct data stream, GPS information. We designed D-PRS to take this GPS information and make it presentable to the APRS world. D-PRS removes the need for designing special-purpose mapping software just for the unique Icom GPS data stream. Note that Icom's use of the data portion of the DV signal for GPS is an Icom implementation, not a D-STAR specification (now appears in the D-STAR 5.0 specification). The D-STAR specification designates the data "sub-channel" but does not dictate what is done with it.

Icom introduced a new GPS mode called GPS-A mode which is shorter in format (single line APRS posit) and includes a CRC (same CRC-CCITT used by AX.25). I recommend using GPS-A mode on GPS-A capable radios as a CRC is more reliable than an XOR checksum and the likelihood of an error disrupting a single GPS-A line is less than the likelihood of interrupting 3 lines in GPS mode. A full description of D-PRS was delivered to the DCC conference in 2007 and can be found in the D-PRS white paper. The D-PRS parser used with DStarMonitor, D-PRS Interface, and javAPRSSrvr can be found here.

Kenwood introduced DPRS to the TH-D74 with GPS strings similar to the Icom GPS/NMEA mode. Similar to the Icom IC-80 and ID-880 unfortunately, Kenwood made the message 20 spaces with no ability to alter it. IGate authors should see the Kenwood note below.
The TH-D75 introduces GPS-A/DPRS mode to the Kenwood radio sending D-STAR compliant position packets instead of GPS strings if APRS sentence is selected under the D-STAR GPS settings. Kenwood takes care of the packet formatting and uses the APRS callsign-SSID for the from station and appends the APRS status message if enabled under APRS. This has been reported to Kenwood since the callsign-SSID should be the D-STAR callsign-SSID, not the APRS callsign-SSID. The TH-D75 still exhibits the same inability to modify the GPS message when using GPS strings instead of APRS (see above).

Notes to D-PRS IGate authors:
D-PRS parsing and gating is only to be done for directly received packets and GPS data; do NOT gate packets to APRS-IS when packets are received from other gateways.
D-PRS is a specification for D-STAR/APRS interaction! Do NOT hijack TOCALLS or symbols for non-D-STAR applications!
Do NOT deviate from the specification! To do so will result in mangled packets and interfering duplicates being generated! D-PRS IGates MUST be good citizens on APRS-IS!
Kenwood never fixed the TH-D74 to be D-PRS compliant (setable message). D-PRS parsers may consider a callsign ID with a 20 space message a Kenwood radio and translate the GPS to a posit using the \K (Kenwood) APRS symbol. The Icom IC-80 and ID-880 also had this issue so be judicious in its use.
Packets gated to APRS-IS must use qAR for GPS-A/D-PRS mode packets and qAO for GPS mode translated packets. All gated packets may use qAO if IGate is receive-only.

D-PRS Interface is a Java GUI application that lets you run a mapping program locally and watch what is happening on your local frequency and gate APRS to APRS-IS if desired. Click here for more information on D-PRS Interface.

javAPRSSrvrIGate is an Android application that lets you run a mapping program locally and watch what is happening on your local frequency and gate APRS to APRS-IS if desired. Click here for more information on javAPRSSrvrIGate.

Radio Configuration - GPS Mode

Because there is no error detection or correction on the data sub-channel, D-PRS mandates a specific message format for radios running in GPS mode. This message must be the same as calculated on the D-PRS Calculator page.

Only the RMC and GGA GPS strings are used in GPS mode. Set your radio to only use those two GPS strings.

The Kenwood TH-D74 does not allow modification of the message (always 20 spaces) so IGates may translate this to a posit with a Kenwood (\K) APRS symbol.

Radio Configuration - GPS-A Mode

Radios in GPS-A mode do not need to set their GPS message per the D-PRS Calculator page. Instead, they should set their UNPROTO to APInnn,DSTAR* Note that the first part which is commonly called the "unproto" or "destination" field is comprised of the APRS standard for Icom, API, followed by the first 3 digits of the radio model number. In the case of the handhelds (only 2 digits), you may optionally use the first character following the model number (92AD would be API92,DSTAR* or API92A,DSTAR*).
NOTE: It is very important that the UNPROTO does not contain any spaces and that it only contains the ",DSTAR*" as the only "digipeater" in the path. The asterisk (*) following "DSTAR" is mandatory, as well.

GPS-A Mode
UNPROTO Settings

CAUTION: Some browsers will append a space to the UNPROTO when selecting the text for copying into your software.
Do NOT include that trailing space (delete it) when copying into your software.

If you want to copy directly from a page, go here to "calculate" the UNPROTO

Radio Configuration - All Modes

Radios should beacon no more often than every 5 minutes. If you are active on voice, turn beaconing off since everytime you transmit, GPS information is transmitted if GPS or GPS-A mode is on.

If you are within range a repeater, set your URCALL to CQCQCQ, RPT1 to the repeater call, and RPT2 to the gateway call (repeater call with "G" in the eighth position). This will allow your data stream to reach the gateway but prevent it from going any further. Most D-STAR repeaters now have D-PRS implemented on the gateway. You do not have to be registered with the gateway for this to work.