M17 (amateur radio)

Summary

M17 is a digital radio modulation mode developed by Wojciech Kaczmarski (amateur radio call sign SP5WWP) et al. [1][2][3][4][5][6] M17 is primarily designed for voice communications on the VHF amateur radio bands, and above. The project received a grant from the Amateur Radio Digital Communications in 2021[7] and 2022.[8] The protocol has been integrated into several hardware and software projects[citation needed]. In 2021, Kaczmarski received the ARRL Technical Innovation Award for developing an open-source digital radio communication protocol, leading to further advancements in amateur radio.[9]

RF spectrum of the M17 protocol

Technical characteristics edit

 
Spectrogram of the M17 protocol transmission. Time is on vertical axis, advancing from bottom to top. There's a 40-millisecond preamble visible at the beginning of the transmission.

M17 uses Frequency-Division Multiple Access (FDMA) technology in which different communication streams are separated by frequency and run concurrently. It utilizes 4,800 symbols per second, 4-level frequency-shift keying (4FSK) with a root Nyquist filter applied to the bitstream. Radio channels are 9 kHz wide, with channel spacing of 12.5 kHz. The gross data rate is 9,600 bits per second, with the actual data transfer at 3,200. The transmission, called stream, is divided into 40-millisecond long frames, each prepended with a 16-bit long synchronization word. A group of 6 frames form a superframe and is needed to decode the link information data. Protocol allows for low-speed data transfer (along with voice), e.g. GNSS position data. The mode has been successfully transmitted through EchoStar XXI[10] and QO-100[11] geostationary satellites. The protocol's specification is released under GNU General Public License.

Voice encoding edit

M17 uses Codec 2, a low bitrate voice codec developed by David Rowe VK5DGR et al. Codec 2 was designed to be used for amateur radio and other high compression voice applications. It is based on linear predictive coding with mixed-harmonic sinusoidal excitation. The protocol supports both 3200 (full-rate) and 1600 bits per second (half-rate) modes.

Error control edit

Three methods are used for error control: binary Golay code, punctured convolutional code and bit interleaving. Additionally, exclusive OR operation is performed between data bits and a predefined decorrelating pseudorandom stream before transmission. This ensures that there are as many symbol transitions in the baseband as possible.

Application functions edit

The M17 protocol was primarily designed for amateur radio use.

Hardware support edit

With a small hardware modification, TYT MD-380, MD-390 and MD-UV380 handheld transceivers can be flashed with a custom, free, open source firmware[12] to enable M17 support.

Bridging with other modes edit

Links between M17 and other digital voice modes and Internet linked networks exist, with several networks providing M17 access. Modes bridged include DMR, P25, System Fusion, D-STAR, NXDN, AllStarLink, EchoLink and IRLP.[13][14][15][16][17][18]

M17 over IP edit

Access nodes and repeaters[19] can be linked using reflectors. Over 180 M17 reflectors exist worldwide (January 2024).[20]

History edit

The project was started in 2019 by Wojciech Kaczmarski in Warsaw, Poland. A local amateur radio club he was a member of, was involved in digital voice communications. Kaczmarski, having experimented with TETRA and DMR, decided to create a completely non-proprietary protocol and named it after the club's street address - Mokotowska 17. As every part of the protocol was intended to be open source, Codec 2 released under the GNU GPL 2 license, has been chosen as the speech encoder.

Applications and projects with M17 support edit

  • OpenRTX - free and open-source firmware for ham radios
  • WPSD - digital voice software suite for amateur radio personal hotspots and repeaters
  • DroidStar - digital voice client for Android
  • SDR++ - multiplatform, open-source software defined radio receiver
  • SDRangel - multiplatform, open-source software defined radio receiver/transmitter
  • OpenWebRX - web-based software defined radio receiver
  • mrefd - M17 reflector[21]
  • rpitx - general radio frequency transmitter for Raspberry Pi[22]
  • dsd-fme - digital speech decoder[23]
  • mvoice - voice client and graphical repeater application (Raspberry and Linux)[24]

See also edit

References edit

  1. ^ Dan Romanchik's (KB6NU) blog entry on M17 Project (Nov 2019)
  2. ^ "Świat Radio" magazine, issue 11/2020, p. 50: "Transceiver TR-9", an article covering M17 (Polish)
  3. ^ Ham Radio 2.0 podcast, "M17 Project - New Ham Radio Digital Mode" episode (Sep 2021)
  4. ^ Linux in the Ham Shack podcast, episode 396: "M17 Deep Dive" (Mar 2021)
  5. ^ David Rowe's (VK5DGR) "M17 Open Source Radio" blog entry (Aug 2020)
  6. ^ "M17 Open Source Digital Radio System", Ham Radio Workbench podcast (Dec 2019)
  7. ^ Grant: M17 Open Protocol (Apr 2021)
  8. ^ Grant: M17 Project Popularization, Research and Development (Sep 2022)
  9. ^ ARRL Board of Directors Bestows Awards
  10. ^ Testing M17 on Echostar XXI at 10° East
  11. ^ AMSAT-DL Twitter entry on QO-100 wideband transponder M17 experiment (Apr 2021)
  12. ^ OpenRTX - free and open source firmware for ham radios
  13. ^ Douglas McLain's (AD8DP) GitHub page
  14. ^ Australian Multimode Network
  15. ^ Pride Radio Network
  16. ^ FreeSTAR Module-X
  17. ^ ANZEL Multimode VoIP/RoIP Network
  18. ^ USRP2M17 Bridge
  19. ^ RepeaterBook list of M17 repeaters
  20. ^ M17 reflectors list
  21. ^ Early, Tom (2023-09-09), MREFD, retrieved 2023-12-03
  22. ^ F5OEO (2023-12-02), About rpitx, retrieved 2023-12-03{{citation}}: CS1 maint: numeric names: authors list (link)
  23. ^ lwvmobile (2023-12-02), Digital Speech Decoder - Florida Man Edition, retrieved 2023-12-03
  24. ^ n7tae. "M17 Digital Voice, now using FLTK".{{cite web}}: CS1 maint: numeric names: authors list (link)

Related links edit

  • M17 Project's website
  • M17 Project on GitHub
  • Twitter feed
  • WPSD project page
  • Robert Riggs' (WX9O) M17 baseband encoder/decoder library (C++, GPL)
  • OpenWebRX - web based SDR by Jakob Ketterl (DD5JFK), includes M17 decoder
  • SDR++ - free, open source SDR software with M17 support
  • Program to connect to M17 reflectors
  • without RF