Codeplug OpengGD77 Version R20250119

Description

This document describes the codeplug format of the OpenGD77 firmware running on a GD77.

AddressElementDescription
80hSettings
1470hDTMF Settings
1588hAPRS Systems
2f88hDTMF Contacts
3780hChannel Bank 0
7518hBoot Settings
7590hVFO Settings
8010hZone Bank
1000000hAdditional SettingsThis section of flash memory is always of size 11a0h. It may contain several setting elements. E.g., satellite orbital elements, theme settings etc.
1030000hCallsign DB Segment 0
107b1b0hChannel Banks 1-7
1087620hContacts
108d620hGroup List Bank
10b8000hCallsign DB Segment 1

1191 Settings vR20240908done

Element at address 80h of size 90h.

76543210765432107654321076543210000000040008005c006000640068006c008cUHF min frequencyUHF max frequencyVHF min frequencyVHF max frequencyUnknown data...Callsign...DMR IDUnknown data...
UHF min frequency UHFmin

At address 0h: 16-bit bcd little-endian integer value (bcd4le). Default value 0h.

in MHz.

UHF max frequency UHFmax

At address 2h: 16-bit bcd little-endian integer value (bcd4le). Default value 0h.

in MHz.

VHF min frequency VHFmin

At address 4h: 16-bit bcd little-endian integer value (bcd4le). Default value 137h.

in MHz.

VHF max frequency VHFmax

At address 6h: 16-bit bcd little-endian integer value (bcd4le). Default value 170h.

Maximum frequency for VHF band in MHz.

Unknown data

At address 8h: Unknown data of size 58h.

Callsign Call

At address 60h: ASCII string of length (up to) 8 chars, 255h-padded.

DMR ID

At address 68h: 32-bit bcd big-endian integer value (bcd8be). Default value 0h.

Unknown data

At address 6ch: Unknown data of size 24h.

1192 DTMF Settings vR202409080done

Element at address 1470h of size 8h.

Description

Collects all setting fields for encoding/decoding of DTMF tones.

7654321076543210765432107654321000000004Unknown dataFirst digit delayFirst digit durationAst/Hash duration.DTMF RateTail durationUnused data
Unknown data

At address 0h: Unknown data of size 2h.

First digit delay

At address 2h: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the transmission delay of the first DTMF digit in 100ms. Valid values are 100-1000ms

First digit duration

At address 3h: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the duration of the first digit it 100ms. Valid values are 0-1000ms.

Ast/Hash duration.

At address 4h: 8-bit unsigned integer value (uint8). Default value 1h.

Specifies the duration for the asterisk (*) and hash (#) symbols in 100ms. Valid values are 0-1000ms.

DTMF Rate

At address 5h: 8-bit unsigned integer value (uint8). Default value 0h.

Whatever that is. Valid values between 1-10.

Tail duration

At address 6h: 8-bit unsigned integer value (uint8). Default value 5h.

Delay in 100ms after end of last symbol befor transmission ends. Valid values are 0-1000ms

Unused data

At address 7h: Unused data of size 1h: 00

1193 APRS Systems vR202409080

Exactly 8 repetitions of APRS System.

1194 APRS System vR202409080

Element of size 40h.

76543210765432107654321076543210000000040008000c00140018001c00340038003cName...Source SSIDLatitudeLongitudeVia-1 Call...Via-1 SSIDVia-2 Call...Via-2 SSIDAPRS Icon TableAPRS Icon indexComment...Pad byteTransmit frequency...Unused data...MaskUnused dataTransmit QSYPOSBRTUnknown data
Name

At address 0h: ASCII string of length (up to) 8 chars, 255h-padded.

Source SSID S-SSID

At address 8h: 8-bit unsigned integer value (uint8).

SSID of the transmitter.

Latitude

At address 9h: 24-bit unsigned little-endian integer value (uint24le).

Complex encoded latitude in sign, degree and decimals.

The most significant bit is the sign bit. The next 8 bits are the degrees and the lest significant 15 bits encode 4 decimals.

Longitude

At address ch: 24-bit unsigned little-endian integer value (uint24le).

Complex encoded longitude in sign, degree and decimals.

Most significant bit of the uint24le holds the sign bit, the next 8 bit are the degrees and the remaining 15 least significiant bits hold 4 decimals.

Via-1 Call Via1

At address fh: ASCII string of length (up to) 6 chars, 00h-padded.

Via-1 SSID

At address 15h: 8-bit unsigned integer value (uint8). Default value 0h.

Via-2 Call

At address 16h: ASCII string of length (up to) 6 chars, 00h-padded.

Via-2 SSID

At address 1ch: 8-bit unsigned integer value (uint8). Default value 0h.

APRS Icon Table IcnTab

At address 1dh: Enumeration of size 1h, with 2 options. Specifies the APRS icon table.

ValueNameDescription
0Primary
1Alternate
APRS Icon index

At address 1eh: 8-bit unsigned integer value (uint8).

Specifies the icon index within the icon table.

Comment

At address 1fh: ASCII string of length (up to) 23 chars, 00h-padded.

Pad byte

At address 36h: Unused data of size 1h: 00

Transmit frequency

At address 37h: 32-bit unsigned little-endian integer value (uint32le). Default value 0h.

Specifies the transmit frequency in multiples of 10Hz.

If 0, disabled.

Unused data

At address 3bh: Unused data of size 2h: 00

Position Masking Mask

At address 3dh:7: Enumeration of size 0h:4, with 8 options.

ValueNameDescription
0None
10.0005°
20.001°
30.005°
40.01°
50.05°
60.1°
70.5°
Unused data

At address 3dh:3: Unused data of size 0h:1:

Transmit QSY

At address 3dh:2: boolean value. Default value 0h.

Use position POS

At address 3dh:1: boolean value.

Baud rate BRT

At address 3dh:0: Enumeration of size 0h:1, with 2 options.

ValueNameDescription
01200 Baud
1300 Baud
Unknown data

At address 3eh: Unknown data of size 2h.

1195 DTMF Contacts vR202409080done

Exactly 32 repetitions of DTMF Contact.

Description

Bank of 64 DTMF contacts.

1196 DTMF Contact vR202409080done

Element of size 20h.

Description

A DTMF contact. Invalid entries have empty names.

765432107654321076543210765432100000000c0010001cName...Number...
Name

At address 0h: ASCII string of length (up to) 16 chars, 255h-padded.

1196.1 Number vR202409080done

Exactly 16 repetitions of Digit.

Digit

8-bit unsigned integer value (uint8).

0h-fh Corresponding to 0-9, A, B, C, D, *, #.

1197 Channel Bank 0 vR202409080done

Element at address 3780h of size 1c10h.

Description

The first channel bank.

765432107654321076543210765432100000000c00101c0cChannel bit map...Channels...

1197.1 Channel bit map vR202409080done

Exactly 128 repetitions of Channel bit.

Description

Marks, which channels are valid.

Channel bit

boolean value. Default value 0h.

Enables a single channel.

1197.2 Channels vR202409080done

Exactly 128 repetitions of Channel.

Description

Encodes all valid channels.

1197.3 Channel vR202409080done

Element of size 38h.

Encodes a single channel.

765432107654321076543210765432100000000c001000140018001c002000240028002c00300034Name...Pad byteRX FrequencyTX FrequencyChannel ModePowerLatitude LSBUnused dataLatitude MSBLongitude LSBRX ToneTX ToneLongitude MSBUnused dataOIDNOBNOEUnused dataLOCDCOUnused dataChannel DMR ID...Unused dataGroup List IndexColor codeAPRS System IndexTX ContactUnused dataTAL2TAL1Unknown dataTS2Unused dataUnused dataUnused bitVOXSZSSASUnknown dataRXOBWUnused dataUnused dataSquelch Level
Name

At address 0h: ASCII string of length (up to) 15 chars, 255h-padded.

Specifies the channel name.

Pad byte

At address fh: Unused data of size 1h: 02 55

RX Frequency

At address 10h: 32-bit bcd little-endian integer value (bcd8le).

RX Frequency in 10Hz as 8-digit BCD in little endian.

TX Frequency

At address 14h: 32-bit bcd little-endian integer value (bcd8le).

TX Frequency in 10Hz in 8-digit BCD little endian.

Channel Mode

At address 18h: Enumeration of size 1h, with 2 options. Specifies the mode of the channel.

ValueNameDescription
0FM
1DMR
Power

At address 19h: Enumeration of size 1h, with 11 options. Specifies the transmit power.

ValueNameDescription
0Master
150mW
2250mW
3500mW
4750mW
51W
62W
73W
84W
95W
10Maximum
Latitude LSB

At address 1ah: 8-bit unsigned integer value (uint8).

LSB of the uint24le complex encoding of the latitude.

The LSB of the 24bit latitude value.

Unused data

At address 1bh: Unused data of size 1h: 00

Latitude MSB

At address 1ch: 16-bit unsigned little-endian integer value (uint16le).

MSB of the uint24le encoding the latitude.

Encodes the latitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Longitude LSB

At address 1eh: 16-bit unsigned little-endian integer value (uint16le).

Least significant part of the uin24le encoding the longitude.

RX Tone

At address 20h: 16-bit signed little-endian integer value (int16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

TX Tone

At address 22h: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

Longitude MSB

At address 24h: 8-bit unsigned integer value (uint8).

Most significant byte of the uint24le encoding the longitude.

Encodes the longitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Unused data

At address 25h: Unused data of size 1h: 00

Override DMR ID OID

At address 26h:7: boolean value. Default value 0h.

If enabled, the DMR ID is overridden.

Disable beep NOB

At address 26h:6: boolean value. Default value 0h.

Disable Power Save NOE

At address 26h:5: boolean value. Default value 0h.

Unused data

At address 26h:4: Unused data of size 0h:1: 00

Use Location LOC

At address 26h:3: boolean value.

Whatever that means.

Force DCO DCO

At address 26h:2: boolean value. Default value 0h.

Unused data

At address 26h:1: Unused data of size 0h:2: 00

Channel DMR ID

At address 27h: 24-bit unsigned big-endian integer value (uint24be). Default value 1600h.

If enabled, holds the DMR ID used for this channel. Somewhat weird in uint24be.

Unused data

At address 2ah: Unused data of size 1h: 00

Group List Index

At address 2bh: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the group list index +1. Default 0: none.

Color code

At address 2ch: 8-bit unsigned integer value (uint8). Default value 1h.

Simply stores the color code as is.

APRS System Index

At address 2dh: 8-bit unsigned integer value (uint8). Default value 0h.

Index of the APRS system associated with the channes +1. Default 0: none.

TX Contact

At address 2eh: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Index (+1) of the transmit contact.

Specifies the index of the transmit contact. The index is 1-based. An index of 0 means no contact.

Unused data

At address 30h:7: Unused data of size 0h:4: 00

TX Alias TS1 TAL2

At address 30h:3: Enumeration of size 0h:2, with 4 options. How to transmit talker alias on time slot 2

ValueNameDescription
0None
1APRS
2Text
3Both
TX Alias TS1 TAL1

At address 30h:1: Enumeration of size 0h:2, with 4 options. How to transmit the talker alias on time-slot 1.

ValueNameDescription
0None
1APRS
2Text
3Both
Unknown data

At address 31h: Unknown data of size 0h:1.

Time slot 2 TS2

At address 31h:6: boolean value. Default value 0h.

If enabled, time slot 2 is used. Otherwise TS 1.

Unused data

At address 31h:5: Unused data of size 0h:6: 00

Unused data

At address 32h: Unused data of size 1h: 00

Unused bit

At address 33h:7: Unused data of size 0h:1: 00

VOX enable VOX

At address 33h:6: boolean value.

Enabled VOX for this channel.

Skip in Zone Scan SZS

At address 33h:5: boolean value. Default value 0h.

If enabled, the channel is skipped during a zone scan.

Skip Scan SAS

At address 33h:4: boolean value. Default value 0h.

If enabled, the cannel is skipped in all scans.

Unknown data

At address 33h:3: Unknown data of size 0h:1.

TX disable RXO

At address 33h:2: boolean value. Default value 0h.

If enabled, the TX is disabled. That is, the channel is RX only.

Bandwidth BW

At address 33h:1: Enumeration of size 0h:1, with 2 options. Specifies the FM bandwidth.

ValueNameDescription
0Narrow (12.5kHz)
1Wide (25kHz)
Unused data

At address 33h:0: Unused data of size 0h:1:

Unused data

At address 34h: Unused data of size 3h: 00 00 00

Squelch Level

At address 37h: 8-bit unsigned integer value (uint8). Default value 0h.

0: Global setting, 1: open, 2-14: 5%(n-1), 15: closed.

1198 Boot Settings vR202409080

Element at address 7518h of size 48h.

7654321076543210765432107654321000000008000c00240028003400380044Boot displayBoot password enableUnknown data...Boot passwordUnknown data...Boot Text Line 1...Boot Text Line 2...
Boot display

At address 0h: Enumeration of size 1h, with 2 options.

ValueNameDescription
0Picture
1Text
Boot password enable PWD

At address 1h: 8-bit unsigned integer value (uint8). Default value 0h.

Unknown data

At address 2h: Unknown data of size ah.

Boot password PWD

At address ch: 24-bit bcd big-endian integer value (bcd6be). Default value 0h.

Unknown data

At address fh: Unknown data of size 19h.

Boot Text Line 1

At address 28h: ASCII string of length (up to) 16 chars, 255h-padded.

Boot Text Line 2

At address 38h: ASCII string of length (up to) 16 chars, 255h-padded.

1199 VFO Settings

Element at address 7590h of size 70h.

76543210765432107654321076543210000000340038006cVFO Channel A...VFO Channel B...

1199.1 VFO Channel A vR202409080done

Element at address 0h of size 38h.

Encodes the settings for VFO A.

765432107654321076543210765432100000000c001000140018001c002000240028002c00300034Name...Pad byteRX FrequencyTX FrequencyChannel ModePowerLatitude LSBUnused dataLatitude MSBLongitude LSBRX ToneTX ToneLongitude MSBUnused dataOIDNOBNOEUnused dataLOCDCOUnused dataChannel DMR ID...Unused dataGroup List IndexColor codeAPRS System IndexUnused dataUnused dataTAL2TAL1Unknown dataTS2Unused dataUnused dataUnused bitVOXSZSSASUnknown dataRXOBWUnused dataUnused dataSquelch Level
Name

At address 0h: ASCII string of length (up to) 15 chars, 255h-padded.

Specifies the channel name.

Pad byte

At address fh: Unused data of size 1h: 02 55

RX Frequency

At address 10h: 32-bit bcd little-endian integer value (bcd8le).

RX Frequency in 10Hz as 8-digit BCD in little endian.

TX Frequency

At address 14h: 32-bit bcd little-endian integer value (bcd8le).

TX Frequency in 10Hz in 8-digit BCD little endian.

Channel Mode

At address 18h: Enumeration of size 1h, with 2 options. Specifies the mode of the channel.

ValueNameDescription
0FM
1DMR
Power

At address 19h: Enumeration of size 1h, with 11 options. Specifies the transmit power.

ValueNameDescription
0Master
150mW
2250mW
3500mW
4750mW
51W
62W
73W
84W
95W
10Maximum
Latitude LSB

At address 1ah: 8-bit unsigned integer value (uint8).

LSB of the uint24le complex encoding of the latitude.

The LSB of the 24bit latitude value.

Unused data

At address 1bh: Unused data of size 1h: 00

Latitude MSB

At address 1ch: 16-bit unsigned little-endian integer value (uint16le).

MSB of the uint24le encoding the latitude.

Encodes the latitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Longitude LSB

At address 1eh: 16-bit unsigned little-endian integer value (uint16le).

Least significant part of the uin24le encoding the longitude.

RX Tone

At address 20h: 16-bit signed little-endian integer value (int16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

TX Tone

At address 22h: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

Longitude MSB

At address 24h: 8-bit unsigned integer value (uint8).

Most significant byte of the uint24le encoding the longitude.

Encodes the longitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Unused data

At address 25h: Unused data of size 1h: 00

Override DMR ID OID

At address 26h:7: boolean value. Default value 0h.

If enabled, the DMR ID is overridden.

Disable beep NOB

At address 26h:6: boolean value. Default value 0h.

Disable Power Save NOE

At address 26h:5: boolean value. Default value 0h.

Unused data

At address 26h:4: Unused data of size 0h:1: 00

Use Location LOC

At address 26h:3: boolean value.

Whatever that means.

Force DCO DCO

At address 26h:2: boolean value. Default value 0h.

Unused data

At address 26h:1: Unused data of size 0h:2: 00

Channel DMR ID

At address 27h: 24-bit unsigned big-endian integer value (uint24be). Default value 1600h.

If enabled, holds the DMR ID used for this channel. Somewhat weird in uint24be.

Unused data

At address 2ah: Unused data of size 1h: 00

Group List Index

At address 2bh: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the group list index +1. Default 0: none.

Color code

At address 2ch: 8-bit unsigned integer value (uint8). Default value 1h.

Simply stores the color code as is.

APRS System Index

At address 2dh: 8-bit unsigned integer value (uint8). Default value 0h.

Index of the APRS system associated with the channes +1. Default 0: none.

Unused data

At address 2eh: Unused data of size 2h: 00 00

Unused data

At address 30h:7: Unused data of size 0h:4: 00

TX Alias TS1 TAL2

At address 30h:3: Enumeration of size 0h:2, with 4 options. How to transmit talker alias on time slot 2

ValueNameDescription
0None
1APRS
2Text
3Both
TX Alias TS1 TAL1

At address 30h:1: Enumeration of size 0h:2, with 4 options. How to transmit the talker alias on time-slot 1.

ValueNameDescription
0None
1APRS
2Text
3Both
Unknown data

At address 31h: Unknown data of size 0h:1.

Time slot 2 TS2

At address 31h:6: boolean value. Default value 0h.

If enabled, time slot 2 is used. Otherwise TS 1.

Unused data

At address 31h:5: Unused data of size 0h:6: 00

Unused data

At address 32h: Unused data of size 1h: 00

Unused bit

At address 33h:7: Unused data of size 0h:1: 00

VOX enable VOX

At address 33h:6: boolean value.

Enabled VOX for this channel.

Skip in Zone Scan SZS

At address 33h:5: boolean value. Default value 0h.

If enabled, the channel is skipped during a zone scan.

Skip Scan SAS

At address 33h:4: boolean value. Default value 0h.

If enabled, the cannel is skipped in all scans.

Unknown data

At address 33h:3: Unknown data of size 0h:1.

TX disable RXO

At address 33h:2: boolean value. Default value 0h.

If enabled, the TX is disabled. That is, the channel is RX only.

Bandwidth BW

At address 33h:1: Enumeration of size 0h:1, with 2 options. Specifies the FM bandwidth.

ValueNameDescription
0Narrow (12.5kHz)
1Wide (25kHz)
Unused data

At address 33h:0: Unused data of size 0h:1:

Unused data

At address 34h: Unused data of size 3h: 00 00 00

Squelch Level

At address 37h: 8-bit unsigned integer value (uint8). Default value 0h.

0: Global setting, 1: open, 2-14: 5%(n-1), 15: closed.

1199.2 VFO Channel B vR202409080done

Element at address 38h of size 38h.

Encodes the settings for VFO B.

765432107654321076543210765432100000000c001000140018001c002000240028002c00300034Name...Pad byteRX FrequencyTX FrequencyChannel ModePowerLatitude LSBUnused dataLatitude MSBLongitude LSBRX ToneTX ToneLongitude MSBUnused dataOIDNOBNOEUnused dataLOCDCOUnused dataChannel DMR ID...Unused dataGroup List IndexColor codeAPRS System IndexUnused dataUnused dataTAL2TAL1Unknown dataTS2Unused dataUnused dataUnused bitVOXSZSSASUnknown dataRXOBWUnused dataUnused dataSquelch Level
Name

At address 0h: ASCII string of length (up to) 15 chars, 255h-padded.

Specifies the channel name.

Pad byte

At address fh: Unused data of size 1h: 02 55

RX Frequency

At address 10h: 32-bit bcd little-endian integer value (bcd8le).

RX Frequency in 10Hz as 8-digit BCD in little endian.

TX Frequency

At address 14h: 32-bit bcd little-endian integer value (bcd8le).

TX Frequency in 10Hz in 8-digit BCD little endian.

Channel Mode

At address 18h: Enumeration of size 1h, with 2 options. Specifies the mode of the channel.

ValueNameDescription
0FM
1DMR
Power

At address 19h: Enumeration of size 1h, with 11 options. Specifies the transmit power.

ValueNameDescription
0Master
150mW
2250mW
3500mW
4750mW
51W
62W
73W
84W
95W
10Maximum
Latitude LSB

At address 1ah: 8-bit unsigned integer value (uint8).

LSB of the uint24le complex encoding of the latitude.

The LSB of the 24bit latitude value.

Unused data

At address 1bh: Unused data of size 1h: 00

Latitude MSB

At address 1ch: 16-bit unsigned little-endian integer value (uint16le).

MSB of the uint24le encoding the latitude.

Encodes the latitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Longitude LSB

At address 1eh: 16-bit unsigned little-endian integer value (uint16le).

Least significant part of the uin24le encoding the longitude.

RX Tone

At address 20h: 16-bit signed little-endian integer value (int16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

TX Tone

At address 22h: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

Longitude MSB

At address 24h: 8-bit unsigned integer value (uint8).

Most significant byte of the uint24le encoding the longitude.

Encodes the longitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Unused data

At address 25h: Unused data of size 1h: 00

Override DMR ID OID

At address 26h:7: boolean value. Default value 0h.

If enabled, the DMR ID is overridden.

Disable beep NOB

At address 26h:6: boolean value. Default value 0h.

Disable Power Save NOE

At address 26h:5: boolean value. Default value 0h.

Unused data

At address 26h:4: Unused data of size 0h:1: 00

Use Location LOC

At address 26h:3: boolean value.

Whatever that means.

Force DCO DCO

At address 26h:2: boolean value. Default value 0h.

Unused data

At address 26h:1: Unused data of size 0h:2: 00

Channel DMR ID

At address 27h: 24-bit unsigned big-endian integer value (uint24be). Default value 1600h.

If enabled, holds the DMR ID used for this channel. Somewhat weird in uint24be.

Unused data

At address 2ah: Unused data of size 1h: 00

Group List Index

At address 2bh: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the group list index +1. Default 0: none.

Color code

At address 2ch: 8-bit unsigned integer value (uint8). Default value 1h.

Simply stores the color code as is.

APRS System Index

At address 2dh: 8-bit unsigned integer value (uint8). Default value 0h.

Index of the APRS system associated with the channes +1. Default 0: none.

Unused data

At address 2eh: Unused data of size 2h: 00 00

Unused data

At address 30h:7: Unused data of size 0h:4: 00

TX Alias TS1 TAL2

At address 30h:3: Enumeration of size 0h:2, with 4 options. How to transmit talker alias on time slot 2

ValueNameDescription
0None
1APRS
2Text
3Both
TX Alias TS1 TAL1

At address 30h:1: Enumeration of size 0h:2, with 4 options. How to transmit the talker alias on time-slot 1.

ValueNameDescription
0None
1APRS
2Text
3Both
Unknown data

At address 31h: Unknown data of size 0h:1.

Time slot 2 TS2

At address 31h:6: boolean value. Default value 0h.

If enabled, time slot 2 is used. Otherwise TS 1.

Unused data

At address 31h:5: Unused data of size 0h:6: 00

Unused data

At address 32h: Unused data of size 1h: 00

Unused bit

At address 33h:7: Unused data of size 0h:1: 00

VOX enable VOX

At address 33h:6: boolean value.

Enabled VOX for this channel.

Skip in Zone Scan SZS

At address 33h:5: boolean value. Default value 0h.

If enabled, the channel is skipped during a zone scan.

Skip Scan SAS

At address 33h:4: boolean value. Default value 0h.

If enabled, the cannel is skipped in all scans.

Unknown data

At address 33h:3: Unknown data of size 0h:1.

TX disable RXO

At address 33h:2: boolean value. Default value 0h.

If enabled, the TX is disabled. That is, the channel is RX only.

Bandwidth BW

At address 33h:1: Enumeration of size 0h:1, with 2 options. Specifies the FM bandwidth.

ValueNameDescription
0Narrow (12.5kHz)
1Wide (25kHz)
Unused data

At address 33h:0: Unused data of size 0h:1:

Unused data

At address 34h: Unused data of size 3h: 00 00 00

Squelch Level

At address 37h: 8-bit unsigned integer value (uint8). Default value 0h.

0: Global setting, 1: open, 2-14: 5%(n-1), 15: closed.

1200 Zone Bank vR202409080done

Element at address 8010h of size 2ee0h.

Description

Hold the zone bitmap as well as the actual zones.

7654321076543210765432107654321000000008001c00202edcZone bitmap...Unused data...Zones...

1200.1 Zone bitmap vR202409080done

Exactly 72 repetitions of Zone enable bit.

Description

Encodes which zone is valid. Encodes only 68 bits.

Zone enable bit

boolean value. Default value 0h.

Enables a particular zone.

Unused data

At address 9h: Unused data of size 17h: 00

1200.2 Zones vR202409080done

Exactly 68 repetitions of Zone.

1200.3 Zone vR202409080done

Element of size b0h.

765432107654321076543210765432100000000c001000acName...Pad byteChannel Indieces...
Name

At address 0h: ASCII string of length (up to) 15 chars, 255h-padded.

Specifies the zone name.

Pad byte

At address fh: Unused data of size 1h: ff

1200.3.1 Channel Indieces vR202409080done

Exactly 80 repetitions of Channel Index.

Channel Index

16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Index of the channel +1. 0=unused.

1201 Additional Settings vR20250119done

Element at address 1000000h of size 11a0h.

This section of flash memory is always of size 11a0h. It may contain several setting elements. E.g., satellite orbital elements, theme settings etc.

Description

Each setting is stored in a block starting with a magic number and followed by its size. The size field only covers the content. The position of each block may vary. The blocks, hoever, are packed densely.

76543210765432107654321076543210000000040008000c041004140618061c0ff80ffc119cFixed string...Version numberBoot Image...Boot Melody...Orbital Elements Bank...Unused data...
Fixed string

At address 0h: ASCII string of length (up to) 8 chars, 00h-padded. .

Version number

At address 8h: 32-bit unsigned little-endian integer value (uint32le). Default value 0h.

Some unknown integer. Seen value 1.

Possibly a version number/revision of the structure.

1201.1 Boot Image vR20250119done

Element at address ch of size 408h.

765432107654321076543210765432100000000400080404Block Type IDSizeImage data...
Block Type ID

At address 0h: 32-bit unsigned little-endian integer value (uint32le).

The magic number identifying the block type, alwas set to 1h.

Size

At address 4h: 32-bit unsigned little-endian integer value (uint32le).

Size of the block content, fixed to 400h

1201.1.1 Image data

Element at address 8h of size 400h.

76543210765432107654321076543210000003fcUnknown data...
Unknown data

At address 0h: Unknown data of size 400h.

1201.2 Boot Melody vR20250119done

Element at address 414h of size 208h.

765432107654321076543210765432100000000400080204Block Type IDSizeMelody...
Block Type ID

At address 0h: 32-bit unsigned little-endian integer value (uint32le).

The magic number identifying the block type. This one is unknown, seen 2h.

Size

At address 4h: 32-bit unsigned little-endian integer value (uint32le).

Size of the block content, fixed to 200h

1201.2.1 Melody vR20250119done

Exactly 256 repetitions of Tone.

1201.2.2 Tone vR20250119done

Element of size 2h.

Specifies a tone in terms of pitch and duration.

765432107654321076543210765432100000PitchDuration
Pitch

At address 0h: Enumeration of size 1h, with 46 options.

ValueNameDescription
0Off/Silence
1A2110Hz
2A#2
3B2
4C3
5C#3
6D3
7D#3
8E3
9F3
10F#3
11G3
12G#3
13A3220 Hz
14A#3
15B3
16C4
17C#4
18D4
19D#4
20E4
21F4
22F#4
23G4
24G#4
25A4440 Hz
26A#4
27B4
28C5
29C#5
30D5
31D#5
32E5
33F5
34F#5
35G5
36G#5
37A5
38A#5
39B5
40C6
41C#6
42D6
43D#6
44E6
45F6
Duration

At address 1h: 8-bit unsigned integer value (uint8). Valid values between 0h and ffh, with default value 0h.

Specifies the tone duration in 100ms?!?

1201.3 Orbital Elements Bank vR20250119done

Element at address 61ch of size 9e0h.

7654321076543210765432107654321000000004000809c809cc09dcBlock Type IDSizeOrbital Elements...Unused data...
Block Type ID

At address 0h: 32-bit unsigned little-endian integer value (uint32le). Default value 0h.

Specifies, that his block is a set of orbital elements. The value is fixed to 3.

Either also a revision number or a field count.

Size

At address 4h: 32-bit unsigned little-endian integer value (uint32le).

Contains the size of the entire bank, incluing the header. That is 9d8h.

1201.3.1 Orbital Elements vR20250119done

Exactly 25 repetitions of Orbital Element.

1201.3.2 Orbital Element vR20250119done

Element of size 64h.

76543210765432107654321076543210000000040008000c001000140018001c00200024002c003000340038003c004000440048004c0060Name...Epoch YearEpoch julien day...First derivative of mean motion...InclinationRight ascension of the ascending nodeEccentricityArgument of perigee...Mean anomaly...Mean motion...Revolution number at epochUnusedFM Downlink FrequencyFM UplinkrequencyCTCSS tone frequencyAPRS Downlink FrequencyAPRS Uplink FrequencyBeacon FrequencyUnused dataAPRS path...
Name

At address 0h: ASCII string of length (up to) 8 chars, 00h-padded.

Epoch Year

At address 8h: 8-bit bcd integer value (bcd2).

Epoch julien day

At address 9h: 48-bit bcd big-endian integer value (bcd12be).

First derivative of mean motion

At address fh: 40-bit bcd big-endian integer value (bcd10be).

Inclination

At address 14h: 32-bit bcd big-endian integer value (bcd8be).

Right ascension of the ascending node

At address 18h: 32-bit bcd big-endian integer value (bcd8be).

Eccentricity

At address 1ch:7: 28-bit bcd big-endian integer value (bcd7be).

Argument of perigee

At address 1fh:3: 32-bit bcd big-endian integer value (bcd8be).

Mean anomaly

At address 23h:3: 32-bit bcd big-endian integer value (bcd8be).

Mean motion

At address 27h:3: 44-bit bcd big-endian integer value (bcd11be).

Revolution number at epoch

At address 2dh:7: 20-bit bcd big-endian integer value (bcd5be).

Unused

At address 2fh:3: 4-bit bcd integer value (bcd1).

set to blank bh.

FM Downlink Frequency

At address 30h: 32-bit unsigned little-endian integer value (uint32le).

FM Uplinkrequency

At address 34h: 32-bit unsigned little-endian integer value (uint32le).

CTCSS tone frequency

At address 38h: 32-bit unsigned little-endian integer value (uint32le).

Encoded frequency in 0.1Hz.

APRS Downlink Frequency

At address 3ch: 32-bit unsigned little-endian integer value (uint32le).

APRS Uplink Frequency

At address 40h: 32-bit unsigned little-endian integer value (uint32le).

Beacon Frequency

At address 44h: 32-bit unsigned little-endian integer value (uint32le).

Unused data

At address 48h: Unused data of size 4h: 00

APRS path

At address 4ch: ASCII string of length (up to) 24 chars, 00h-padded.

Unused data

At address 9cch: Unused data of size 14h:

Unused data

At address ffch: Unused data of size 1a4h: ff

1202 Callsign DB Segment 0

Element at address 1030000h of size 40000h.

7654321076543210765432107654321000003fffcUnknown data...
Unknown data

At address 0h: Unknown data of size 40000h.

1203 Channel Banks 1-7

Exactly 7 repetitions of Channel Bank.

1204 Channel Bank vR202409080done

Element of size 1c10h.

Description

The first channel bank.

765432107654321076543210765432100000000c00101c0cChannel bit map...Channels...

1204.1 Channel bit map vR202409080done

Exactly 128 repetitions of Channel bit.

Description

Marks, which channels are valid.

Channel bit

boolean value. Default value 0h.

Enables a single channel.

1204.2 Channels vR202409080done

Exactly 128 repetitions of Channel.

Description

Encodes all valid channels.

1204.3 Channel vR202409080done

Element of size 38h.

Encodes a single channel.

765432107654321076543210765432100000000c001000140018001c002000240028002c00300034Name...Pad byteRX FrequencyTX FrequencyChannel ModePowerLatitude LSBUnused dataLatitude MSBLongitude LSBRX ToneTX ToneLongitude MSBUnused dataOIDNOBNOEUnused dataLOCDCOUnused dataChannel DMR ID...Unused dataGroup List IndexColor codeAPRS System IndexTX ContactUnused dataTAL2TAL1Unknown dataTS2Unused dataUnused dataUnused bitVOXSZSSASUnknown dataRXOBWUnused dataUnused dataSquelch Level
Name

At address 0h: ASCII string of length (up to) 15 chars, 255h-padded.

Specifies the channel name.

Pad byte

At address fh: Unused data of size 1h: 02 55

RX Frequency

At address 10h: 32-bit bcd little-endian integer value (bcd8le).

RX Frequency in 10Hz as 8-digit BCD in little endian.

TX Frequency

At address 14h: 32-bit bcd little-endian integer value (bcd8le).

TX Frequency in 10Hz in 8-digit BCD little endian.

Channel Mode

At address 18h: Enumeration of size 1h, with 2 options. Specifies the mode of the channel.

ValueNameDescription
0FM
1DMR
Power

At address 19h: Enumeration of size 1h, with 11 options. Specifies the transmit power.

ValueNameDescription
0Master
150mW
2250mW
3500mW
4750mW
51W
62W
73W
84W
95W
10Maximum
Latitude LSB

At address 1ah: 8-bit unsigned integer value (uint8).

LSB of the uint24le complex encoding of the latitude.

The LSB of the 24bit latitude value.

Unused data

At address 1bh: Unused data of size 1h: 00

Latitude MSB

At address 1ch: 16-bit unsigned little-endian integer value (uint16le).

MSB of the uint24le encoding the latitude.

Encodes the latitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Longitude LSB

At address 1eh: 16-bit unsigned little-endian integer value (uint16le).

Least significant part of the uin24le encoding the longitude.

RX Tone

At address 20h: 16-bit signed little-endian integer value (int16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

TX Tone

At address 22h: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Encoded as uint16le. MSB (15) is DCS/CTCSS flag and bit 14 flags inverted DCS codes. The rest is 3-digit BCD containing CTCSS frequency in 0.1Hz or octal DCS code. Boy, what a s**t. ffffh means disabled.

Longitude MSB

At address 24h: 8-bit unsigned integer value (uint8).

Most significant byte of the uint24le encoding the longitude.

Encodes the longitude in sign, degree and decimals. The MSB holds the sign bit, the next 8 bit encode the degrees and the least significant 15 bits encode 4 decimals.

Unused data

At address 25h: Unused data of size 1h: 00

Override DMR ID OID

At address 26h:7: boolean value. Default value 0h.

If enabled, the DMR ID is overridden.

Disable beep NOB

At address 26h:6: boolean value. Default value 0h.

Disable Power Save NOE

At address 26h:5: boolean value. Default value 0h.

Unused data

At address 26h:4: Unused data of size 0h:1: 00

Use Location LOC

At address 26h:3: boolean value.

Whatever that means.

Force DCO DCO

At address 26h:2: boolean value. Default value 0h.

Unused data

At address 26h:1: Unused data of size 0h:2: 00

Channel DMR ID

At address 27h: 24-bit unsigned big-endian integer value (uint24be). Default value 1600h.

If enabled, holds the DMR ID used for this channel. Somewhat weird in uint24be.

Unused data

At address 2ah: Unused data of size 1h: 00

Group List Index

At address 2bh: 8-bit unsigned integer value (uint8). Default value 0h.

Specifies the group list index +1. Default 0: none.

Color code

At address 2ch: 8-bit unsigned integer value (uint8). Default value 1h.

Simply stores the color code as is.

APRS System Index

At address 2dh: 8-bit unsigned integer value (uint8). Default value 0h.

Index of the APRS system associated with the channes +1. Default 0: none.

TX Contact

At address 2eh: 16-bit unsigned little-endian integer value (uint16le). Default value 0h.

Index (+1) of the transmit contact.

Specifies the index of the transmit contact. The index is 1-based. An index of 0 means no contact.

Unused data

At address 30h:7: Unused data of size 0h:4: 00

TX Alias TS1 TAL2

At address 30h:3: Enumeration of size 0h:2, with 4 options. How to transmit talker alias on time slot 2

ValueNameDescription
0None
1APRS
2Text
3Both
TX Alias TS1 TAL1

At address 30h:1: Enumeration of size 0h:2, with 4 options. How to transmit the talker alias on time-slot 1.

ValueNameDescription
0None
1APRS
2Text
3Both
Unknown data

At address 31h: Unknown data of size 0h:1.

Time slot 2 TS2

At address 31h:6: boolean value. Default value 0h.

If enabled, time slot 2 is used. Otherwise TS 1.

Unused data

At address 31h:5: Unused data of size 0h:6: 00

Unused data

At address 32h: Unused data of size 1h: 00

Unused bit

At address 33h:7: Unused data of size 0h:1: 00

VOX enable VOX

At address 33h:6: boolean value.

Enabled VOX for this channel.

Skip in Zone Scan SZS

At address 33h:5: boolean value. Default value 0h.

If enabled, the channel is skipped during a zone scan.

Skip Scan SAS

At address 33h:4: boolean value. Default value 0h.

If enabled, the cannel is skipped in all scans.

Unknown data

At address 33h:3: Unknown data of size 0h:1.

TX disable RXO

At address 33h:2: boolean value. Default value 0h.

If enabled, the TX is disabled. That is, the channel is RX only.

Bandwidth BW

At address 33h:1: Enumeration of size 0h:1, with 2 options. Specifies the FM bandwidth.

ValueNameDescription
0Narrow (12.5kHz)
1Wide (25kHz)
Unused data

At address 33h:0: Unused data of size 0h:1:

Unused data

At address 34h: Unused data of size 3h: 00 00 00

Squelch Level

At address 37h: 8-bit unsigned integer value (uint8). Default value 0h.

0: Global setting, 1: open, 2-14: 5%(n-1), 15: closed.

1205 Contacts vR202409080done

Exactly 1024 repetitions of Contact Element.

Description

A list of up to 1024 contact elements. Empty names indicate invalid entries. Probably dense. That is, the list ends with the first invalid entry.

1206 Contact Element vR202409080done

Element of size 18h.

Description

Encodes a DMR contact.

765432107654321076543210765432100000000c00100014Name...DMR IDCall TypeUnused dataTime Slot Override
Name

At address 0h: ASCII string of length (up to) 16 chars, 255h-padded.

Encodes the name of the contact. Up to ASCII 16 chars, filled with ffh.

DMR ID

At address 10h: 32-bit bcd big-endian integer value (bcd8be).

Specifies the DMR ID as a 8-digit BCD number in big endian.

Call Type

At address 14h: Enumeration of size 1h, with 3 options. Specifies the call type.

ValueNameDescription
0Private Call
1Group Call
2All CallAlso implies a certain DMR ID.
Unused data

At address 15h: Unused data of size 2h: 01 00

Time Slot Override

At address 17h: Enumeration of size 1h, with 3 options. Allows to override the time slot of the channel, if this contact is selected as the current transmit contact.

ValueNameDescription
0NoneDo not override the time slot of the channel.
1Time Slot 1Overrides the channel time slot with TS1.
2Time Slot 2Overrides the channel time slot with TS2.

1207 Group List Bank vR202409080done

Element at address 108d620h of size 1840h.

Description

Consists of a lenght array for each of the 64 group lists and the actual group lists.

7654321076543210765432107654321000000048004c007c0080183cLength Array...Unused data...Group Lists...

1207.1 Length Array vR202409080done

Exactly 76 repetitions of Length.

Description

Specifies the number of entries for each of the valid group lists.

Length

8-bit unsigned integer value (uint8). Default value 0h.

Specifies the number of elements +1 of the corresponding group list.

Unused data

At address 4ch: Unused data of size 34h: 00

1207.2 Group Lists vR202409080done

Exactly 76 repetitions of Group List.

Description

Up to 76 group lists.

1207.3 Group List vR202409080done

Element of size 50h.

Description

Encodes a group list.

765432107654321076543210765432100000000c0010004cName...Pad ByteContact Indices...
Name

At address 0h: ASCII string of length (up to) 15 chars, 00h-padded.

Specifies the name of the group list.

Pad Byte

At address fh: Unused data of size 1h: ff

1207.3.1 Contact Indices vR202409080done

Exactly 32 repetitions of Contact index +1. If 0, invalid index..

Contact index +1. If 0, invalid index.

16-bit unsigned little-endian integer value (uint16le). Default value 0h.

1208 Callsign DB Segment 1

Element at address 10b8000h of size 48000h.

76543210765432107654321076543210000047ffcUnknown data...
Unknown data

At address 0h: Unknown data of size 48000h.

Codeplug OpengGD77