No commercial hardware at all, and the cleanest room selection of the six. Working notes, v1.2, 10 September 2026.
M17 is the one mode with no commercial repeater path at all. It has no trunking, no roaming and no talkgroup numbers, which makes it the shortest of the six pages. What it does have is the cleanest room selection of any of them, and that is worth the read.
The same four questions are asked of every mode, in the same order, so the seven parts stay comparable:
MMDVMHost plus a board, gateway is M17Gateway from G4KLX. It pulls
M17Hosts.txt from DVRef, the same registry pattern as the others. The reflector end is
mrefd, by Tom Early N7TAE.
M17 is the only one of the six modes with a second, independent software route. mspot is by N7TAE, the same author as mrefd, and it replaces MMDVMHost rather than running alongside it. Its own README calls it "an M17-only hot-spot for the M17 CC1200 Raspberry Pi hat" and, elsewhere in the same document, "the M17-only repeater/hot-spot". The M17 Foundation's hotspot page lists it as an option in its own right: "N7TAE has created MSPOT an M17-only hotspot (or repeater)."
What it needs: a Raspberry Pi running trixie and the M17 CC1200 Pi
hat. The README lists support for the SX1255 hat as future work. There is
support for MMDVM modems on firmware 1.6, but it lives in a separate mmdvm branch of the
repository rather than in the main line, which is the opposite of the usual arrangement: here MMDVM is
the side option and the dedicated M17 board is the main one.
An earlier version of this page said "MMDVM or nothing" and listed mspot inside the MMDVM section. Both were wrong and are corrected here. mspot is not MMDVM software, and it is not only a hotspot.
The only one of the six with no commercial repeater path at all. The M17 hardware that exists is subscriber or modem side: LinHT, Module17, the CC1200 RPi shield, the SX1255 RPi shield, and Micro17. Nobody makes an M17 repeater you can buy.
What that leaves is two homebrew software routes, neither of them commercial: MMDVMHost with an MMDVM board, or mspot with the CC1200 hat.
That single fact explains most of the rest of this page. Features like beacon roaming exist in the other modes because a manufacturer built them into a commercial product line. M17 has no commercial product line, so it has none of them.
M17 has no trunking. Not unused, not out of reach: the mode does not have it, and with no commercial gear there is nobody to add it. M17 is in the same group as D-STAR and C4FM here. Part 7 covers the trunking argument for DMR, NXDN and P25, which do have it.
| Mode | Channel bandwidth | Modulation | Bit rate |
|---|---|---|---|
| M17 | 9 kHz occupied, 12.5 kHz spacing | 4FSK | 9600 bps, 4800 symbols per second |
M17 sits between the two efficiency camps and publishes its occupied bandwidth separately from its channel spacing, as D-STAR does: 9 kHz of signal in a 12.5 kHz slot, with a deviation index of 0.33 giving symbol deviations of plus and minus 0.8 and 2.4 kHz. It does not narrow the RF to 6.25 kHz the way D-STAR and NXDN do, and it does not divide the time the way DMR and P25 Phase 2 do. It just uses less of a standard channel than it is entitled to.
Every mode has two different fields and they get confused constantly. An access field, which works like CTCSS and decides whether the repeater listens to you at all, and a routing field, which decides where your audio goes. M17 has both, but its routing field is a string rather than a number.
| Mode | Access field | Routing field | Range |
|---|---|---|---|
| M17 | CAN | Destination callsign | module letter in the last position |
M17 has no talkgroup number. The destination callsign carries the reflector name with the module letter in the last position, so the routing is a string rather than an integer. CAN, the Channel Access Number, is the access field.
What M17 has instead, and it is better than the others at this one thing: module selection is native and per transmission. The destination callsign carries the reflector name with the module letter in the last position. Change the letter, change the room. No link command, no talkgroup table, no host file entry per room. DMR needs a talkgroup number, P25 needs a host file line for every room, D-STAR needs a URCALL command. M17 puts it in the header.
M17 shares the letter-attached-to-a-reflector-name shape with D-STAR and with nothing else, but it does it without D-STAR's URCALL command syntax. Four of the six put routing in a number the user dials: DMR talkgroup, C4FM DG-ID, NXDN destination ID, P25 talkgroup.
Roaming needs two halves: a network half, several sites linked so that being on any of them puts you in the same conversation, and a radio half, something the radio can measure plus logic to move by itself. M17 has neither. No commercial gear to implement it, no beacon, nothing in the radios. Same position as P25, and for a different reason: P25's automatic roaming lives in its trunked systems, which amateurs do not run, while M17 simply has nobody who has built any of it.
This one is not a limitation of the mode. Nothing in M17's design prevents a repeater from beaconing or a radio from voting. It is an open protocol with an open codebase and the whole thing is reachable through MMDVM, which already implements a DMR roaming beacon. Of the four modes that answer no, M17 is the one where the answer could change without anybody's permission.
M17 is single channel, so an M17-locked repeater carries one user. The mode hang timers are in part 7.
No M17 TX hang figure is printed here. The timer table these notes were built from lists TXHang for DMR, System Fusion, P25 and NXDN. It does not follow that M17 has none, only that the figure was never read, and nothing is invented in its place.