|
| 1 | +# CS7000-M17 |
| 2 | + |
| 3 | +## Device Models |
| 4 | +- Connect Systems CS7000-M17 |
| 5 | +- Connect Systems CS7000-M17 Plus |
| 6 | + |
| 7 | +The CS7000-M17 series represents the first amateur digital radios specifically designed for M17 protocol support while maintaining compatibility with traditional DMR and analog modes. |
| 8 | + |
| 9 | +## Model Variants |
| 10 | + |
| 11 | +### CS7000-M17 (Standard) |
| 12 | +- Basic M17/DMR/Analog radio |
| 13 | +- Optional GPS module |
| 14 | +- Standard processing capabilities |
| 15 | + |
| 16 | +### CS7000-M17 Plus |
| 17 | +- Built-in GPS |
| 18 | +- Built-in Bluetooth |
| 19 | +- Man Down Sensor |
| 20 | +- Vibrator |
| 21 | +- Enhanced processing (3x faster processor) |
| 22 | +- Expanded memory configuration |
| 23 | +- Advanced protocol development capabilities |
| 24 | + |
| 25 | +## Specifications |
| 26 | + |
| 27 | +### Common Specifications (Both Models) |
| 28 | +* **Display**: 1.8" color TFT, 160x128 resolution |
| 29 | +* **Frequency Range**: 400-512 MHz (UHF) |
| 30 | +* **Receiver Type**: Dual Conversion Superhetrodyne |
| 31 | +* **Front-end**: Varactor tuning |
| 32 | +* **Battery**: 2400 mAh with belt clip |
| 33 | +* **Waterproof Rating**: IP67 |
| 34 | +* **Programming Port**: Compatible with Motorola |
| 35 | +* **Accessories Included**: Programming cable, power supply, and charger |
| 36 | + |
| 37 | +### Memory Configuration |
| 38 | + |
| 39 | +| Component | CS7000-M17 | CS7000-M17 Plus | |
| 40 | +|-----------|-------------|------------------| |
| 41 | +| Flash Memory | 128MB | 256MB | |
| 42 | +| Code Memory | 1MB | 2MB | |
| 43 | +| RAM | 384KB | 1MB | |
| 44 | + |
| 45 | +## Hardware Configuration |
| 46 | + |
| 47 | +### MCU and Baseband |
| 48 | +* **MCU**: STM32F405VG (CS7000-M17), STM32H743VI (CS7000-M17 Plus) |
| 49 | +* **DMR Baseband**: HR-C6000 |
| 50 | +* **RF Chip**: SKY72310 |
| 51 | +* **Display Controller**: HX8302A |
| 52 | +* **Non-volatile Memory**: 25Q128FV SPI flash |
| 53 | +* **GPS**: MC-1010-2RE (Plus model built-in, standard model optional) |
| 54 | + |
| 55 | +### Additional Hardware (Plus Model Only) |
| 56 | +* Built-in Bluetooth module |
| 57 | +* Man Down Sensor |
| 58 | +* Vibrator motor |
| 59 | +* Enhanced processing unit (3x faster than standard DMR radios) |
| 60 | + |
| 61 | +## Firmware Features |
| 62 | + |
| 63 | +### Multi-Protocol Support |
| 64 | +The CS7000-M17 series supports multiple digital protocols: |
| 65 | +- **M17 Protocol**: Native support for the open-source M17 digital mode |
| 66 | +- **DMR**: Full DMR digital mode compatibility |
| 67 | +- **Analog**: Traditional FM analog operation |
| 68 | + |
| 69 | +### DMR Mode Features |
| 70 | +* Digital encryption |
| 71 | +* Voice auto record |
| 72 | +* Channel voice announcement |
| 73 | +* CTCSS/DCS encode and decode |
| 74 | +* DTMF/MDC1200/2 Tone/5 Tone encode and decode |
| 75 | +* Dual priority scan |
| 76 | +* VOX (Voice Operated eXchange) |
| 77 | +* Kill/Revive functionality |
| 78 | +* DMR slot, color code, and contact support |
| 79 | + |
| 80 | +## Development Features |
| 81 | + |
| 82 | +### Enhanced Development Capabilities (Plus Model) |
| 83 | +- Increased program memory for complex protocol stacks |
| 84 | +- Expanded Flash and RAM |
| 85 | + |
| 86 | +## Build Instructions |
| 87 | +The CS7000 plus adopts a relatively complex procedure for storage of firmware. First, it stores two different applications, and must be rebooted between use of DMR and M17. |
| 88 | + |
| 89 | +If you need to flash the radio, the instructions are here: |
| 90 | +[CS7000 M17 Plus Software](https://www.connectsystems.com/amateur-software/CS7000_m17_plus_software.html) |
| 91 | + |
| 92 | +Flashing the radio in the factory manner requires windows and the use of the factory flash tool. |
| 93 | + |
| 94 | +If you all you want on the radio is openRTX for FM/M17 use, there is an alternate procedure that involves rebuilding/linking OpenRTX. That procedure can be done on Linux/Mac. |
| 95 | + |
| 96 | +Again, be aware, you will *NOT* have DMR capability if you flash the radio this way. |
| 97 | + |
| 98 | +Procedure follows: |
| 99 | + |
| 100 | +Make the following modifications: |
| 101 | + |
| 102 | +[meson.build](https://github.com/OpenRTX/OpenRTX/blob/master/meson.build) (currently on line 892) |
| 103 | +The code section looks like this: |
| 104 | + |
| 105 | +``` |
| 106 | +{ |
| 107 | + 'name' : 'cs7000p', |
| 108 | + 'opts' : cs7000p_opts, |
| 109 | + 'flashable': true, |
| 110 | + 'wrap' : ' ', |
| 111 | + 'load_addr': '0x08100000' |
| 112 | +}, |
| 113 | +``` |
| 114 | + |
| 115 | +You need to replace the `load_addr` with `0x08000000` |
| 116 | + |
| 117 | +And the second file: |
| 118 | +[linker_script_cs7000p.ld](https://github.com/OpenRTX/OpenRTX/blob/master/platform/mcu/STM32H7xx/linker_script_cs7000p.ld) (currently line 52) |
| 119 | + |
| 120 | +The code section looks like this: |
| 121 | + |
| 122 | +``` |
| 123 | +MEMORY |
| 124 | +{ |
| 125 | + flash(rx) : ORIGIN = 0x08100000, LENGTH = 1M |
| 126 | +
|
| 127 | + /* NOTE: for now wer support only the AXI SRAM */ |
| 128 | + ram(wx) : ORIGIN = 0x24000200, LENGTH = 512K-0x200 |
| 129 | +} |
| 130 | +``` |
| 131 | + |
| 132 | +Again, you need to replace the "origin" variable with `0x08000000` |
| 133 | + |
| 134 | +When this is complete, build the firmware using the commands from the developer's guide: |
| 135 | + |
| 136 | +```bash |
| 137 | +meson setup --cross-file cross_cm7.txt build_arm |
| 138 | +``` |
| 139 | + |
| 140 | +Then put the radio into dfu mode (press TK1 and hold while turning the radio on -- you should see a grey screen) |
| 141 | + |
| 142 | +Then run: |
| 143 | +```bash |
| 144 | +meson compile -C build_arm openrtx_cs7000p_flash |
| 145 | +``` |
| 146 | +This will take a while without a lot of output, and there won't be any indication on the radio. Just wait. |
| 147 | + |
| 148 | +Eventually you'll get some output and then it should finish up with this: |
| 149 | + |
| 150 | +``` |
| 151 | +DfuSe interface name: "Internal Flash " |
| 152 | +Downloading element to address = 0x08000000, size = 200496 |
| 153 | +Erase [=========================] 100% 200496 bytes |
| 154 | +Erase done. |
| 155 | +Download [=========================] 100% 200496 bytes |
| 156 | +Download done. |
| 157 | +File downloaded successfully |
| 158 | +``` |
| 159 | + |
| 160 | +The size could be slightly different if you're not building the same version as this was taken from, but the start address is what's important. |
| 161 | + |
| 162 | +Reboot the radio and it will boot into OpenRTX. You will *NOT* have DMR capability if you flash the radio this way. |
| 163 | + |
| 164 | + |
| 165 | + |
| 166 | +## Technical Notes |
| 167 | + |
| 168 | +### Unique Characteristics |
| 169 | +- First amateur digital radio designed specifically for M17 protocol |
| 170 | +- Hardware optimized for multi-protocol operation |
| 171 | +- Enhanced memory architecture supporting protocol flexibility |
| 172 | +- Professional-grade build quality with IP67 rating |
| 173 | + |
| 174 | +### Development Considerations |
| 175 | + |
| 176 | +--- |
| 177 | + |
| 178 | +*Information gathered from Connect Systems product specifications at:* |
| 179 | +- *https://www.connectsystems.com/products/top/radios/CS7000_M17.htm* |
| 180 | +- *https://www.connectsystems.com/products/top/radios/CS7000_M17_PLUS.htm* |
| 181 | +- *https://www.connectsystems.com/amateur-products/CS7000-M17-plus.html* |
0 commit comments