Skip to content

Commit edce4b3

Browse files
committed
Codeplug spec: minor changes to the text, explicited the bitfield values.
1 parent cd8ce55 commit edce4b3

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

binary_cps_format.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
# OpenRTX Binary CPS Format
1+
# OpenRTX Binary Codeplug Format
22

3-
Hannes Matuschek DM3MAT
4-
Niccolò Izzo IU2KIN
5-
Silvano Seva IU2KWO
3+
Hannes Matuschek DM3MAT
4+
Niccolò Izzo IU2KIN
5+
Silvano Seva IU2KWO
66

77
## Copyright notice
88

9-
Copyright (c) 2023 the persons and organizations identified as authors. All rights reserved.
9+
Copyright (c) 2023 the people and organizations identified as authors. All rights reserved.
1010

1111
## Introduction
1212

13-
The OpenRTX Binary CPS Format (OBCF) is a binary data format for storing radio configurations in an easy-to-use and platform-agnostic way while providing support for modern amateur-radio use cases like M17. This format is utilized in radio codeplugs constructed using a customer programming software (CPS) and loaded directly to radio transceivers.
13+
The OpenRTX Binary Codeplug Format (OBCF) is a binary data format for storing radio configurations in an easy-to-use and platform-agnostic way while providing support for modern amateur-radio use cases like M17. This format is utilized in radio codeplugs constructed using a customer programming software (CPS) and loaded directly to radio transceivers.
1414

1515
### Objectives
1616

@@ -47,7 +47,7 @@ The header contains metadata about the codeplug to ensure compatibility with int
4747
| magic | uint32_t | Number used to identify the start of a codeplug; this is always "RTXC", i.e. `0x43585452` |
4848
| version_number | uint32_t | Major, minor and bufgix version of the OBCF standard, constructed as the `(CPS_VERSION_MAJOR << 16) \| (CPS_VERSION_MINOR << 8) \| (CPS_VERSION_FIX)`. Refer to [Version control](#version-control). |
4949
| author | char[32] | User-provided author of the codeplug |
50-
| desc | char[32] | User-provided description of the codeplug, max 32 characters |
50+
| desc | char[32] | User-provided description of the codeplug |
5151
| timestamp | uint64_t | Unix timestamp of when the codeplug was last edited |
5252
| ct_count | uint16_t | Number of stored contacts, used for memory offsets |
5353
| ch_count | uint16_t | Number of stored channels, used for memory offsets |
@@ -107,7 +107,7 @@ This structure is the beginning of the file. The fields are laid out in the foll
107107
| Field | Data Type | Description |
108108
| ---------------- | --------- | ---------------------------------------------------------------------------------------------------- |
109109
| id | uint32_t | DMR ID |
110-
| contact_settings | uint8_t | Combination of the contact type (two bits), rx tone enable/disable (one bit), and five reserved bits |
110+
| contact_settings | uint8_t | Bit 0:1 contact type. Bit 2 rx tone enable/disable. Bit 3:7 reserved |
111111

112112
#### Layout
113113

@@ -168,18 +168,18 @@ For DMR contacts, this section is laid out in the following manner:
168168

169169
#### fmInfo_t type description
170170

171-
| Field | Data Type | Description |
172-
| ------ | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
173-
| rxTone | uint8_t | whether a ctcss tone should be used on to control squelch on receive and at which frequency, represented by its index from [CTCSS Code Frequencies Lookup Table](#ctcss-code-frequencies-lookup-table) with a bitwise OR applied on the highest-order bit indicating enabled/disabled (e.g. disabled 173.8 Hz tone value is `0b00011111`) |
174-
| txTone | uint8_t | whether a ctcss tone should be used on transmit and at which frequency, represented by its index from [CTCSS Code Frequencies Lookup Table](#ctcss-code-frequencies-lookup-table) with a bitwise OR applied on the highest-order bit indicating enabled/disabled (e.g. enabled 107.2 tone value is 0b10001110) |
171+
| Field | Data Type | Description |
172+
| -------|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
173+
| rxTone | uint8_t | Bit 0:6 index of the CTCSS tone for receive squelch as in the [CTCSS Code Frequencies Lookup Table](#ctcss-code-frequencies-lookup-table). Bit 7 enable/disable receive tone squelch. (e.g. disabled 173.8 Hz tone value is `0b00011111`) |
174+
| txTone | uint8_t | Bit 0:6 index of the CTCSS tone to be transmitted as in the [CTCSS Code Frequencies Lookup Table](#ctcss-code-frequencies-lookup-table). Bit 7 enable/disable tone transmission.(e.g. enabled 107.2 tone value is `0b10001110)` |
175175

176176
#### dmrInfo_t type description
177177

178-
| Field | Data Type | Description |
179-
| ------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
180-
| colorCode | uint8_t | RX and TX colour codes used, as defined by [ETSI TS 102 361-1 Table 9.18](https://www.etsi.org/deliver/etsi_ts/102300_102399/10236101/02.02.01_60/ts_10236101v020201p.pdf), with the RX value represented in the first half (e.g. RX colour code 0 and TX colour code 15 would be represented as `0b00001111`) |
181-
| dmr_timeslot | uint8_t | Timeslot being used, represented in integer form (e.g. timeslot 2 is `0b00000010`) |
182-
| contact_index | uint16_t | Index to retrieve contact from list for reverse lookups |
178+
| Field | Data Type | Description |
179+
| ------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
180+
| colorCode | uint8_t | RX and TX colour codes used, as defined by [ETSI TS 102 361-1 Table 9.18](https://www.etsi.org/deliver/etsi_ts/102300_102399/10236101/02.02.01_60/ts_10236101v020201p.pdf). <br> Bit 0:3 RX colour code. Bit 4:7 TX colour code. (e.g. RX colour code 0 and TX colour code 15 would be represented as `0b00001111`) |
181+
| dmr_timeslot | uint8_t | Timeslot being used, represented in integer form (e.g. timeslot 2 is `0b00000010`) |
182+
| contact_index | uint16_t | Index to retrieve contact from list for reverse lookups |
183183

184184
#### m17Info_t type description
185185

0 commit comments

Comments
 (0)