The host program for the MMDVM
  • C++ 96.8%
  • C 1.6%
  • Shell 1.2%
  • Python 0.2%
  • Makefile 0.1%
Find a file
2026-04-17 12:44:32 +01:00
linux Improve the build options and remove libsamplerate, it's not needed. 2026-03-11 13:15:00 +00:00
RSSI Create RSSI_FC-302_RptrBldrV2.dat 2018-02-04 14:30:23 +01:00
Tools Restore the branch 2020-12-15 16:21:07 +00:00
.gitignore Improve the build options and remove libsamplerate, it's not needed. 2026-03-11 13:15:00 +00:00
AMBEFEC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
AMBEFEC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
BCH.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
BCH.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
BPTC19696.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
BPTC19696.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
Conf.cpp Fix a bad merge. 2026-02-27 16:43:04 +00:00
Conf.h Mostly fixes for D-Star logging. 2026-04-16 13:48:18 +01:00
CRC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
CRC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
Defines.h M17 and AX.25 removal cleanups. 2025-08-27 17:51:15 +01:00
DMRAccessControl.cpp Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRAccessControl.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRControl.cpp Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
DMRControl.h Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
DMRCSBK.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRCSBK.h Merge branch 'master' into mqtt 2025-03-14 16:43:46 +00:00
DMRData.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRData.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRDataHeader.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRDataHeader.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRDefines.h Fix some search & replace mistakes. 2025-03-14 16:31:29 +00:00
DMREMB.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMREMB.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMREmbeddedData.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMREmbeddedData.h Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
DMRFullLC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRFullLC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRIds.dat Update the DMR Ids. 2019-11-07 13:53:57 +00:00
DMRLC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRLC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRLookup.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRLookup.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRNetwork.cpp Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
DMRNetwork.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRplus_startup_options.md Rename MMDVM.ini to MMDVMHost.ini 2026-03-10 14:52:12 +00:00
DMRShortLC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRShortLC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRSlot.cpp Superficial code change to match a recent PR. 2026-04-06 20:06:40 +01:00
DMRSlot.h Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
DMRSlotType.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DMRSlotType.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRTA.cpp Fix 7-bit Talker Alias decode bit extraction 2026-04-05 17:48:27 -07:00
DMRTA.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
DMRTrellis.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
DMRTrellis.h Revert "Amalgamate the two Trellis implementations and small cleanups." 2024-10-04 17:14:36 +01:00
Dockerfile Improve the build options and remove libsamplerate, it's not needed. 2026-03-11 13:15:00 +00:00
DStarControl.cpp Fix the D-Star slow data processing. 2026-04-17 12:44:32 +01:00
DStarControl.h Cleanup after the merge. 2026-02-26 14:31:04 +00:00
DStarDefines.h Add lookback in fast data handling to prevent first voice frame to get killed by FEC 2026-01-26 20:19:40 +01:00
DStarHeader.cpp Merge branch 'master' into mqtt 2026-02-18 13:54:01 +00:00
DStarHeader.h Merge branch 'master' into mqtt 2026-02-18 13:54:01 +00:00
DStarNetwork.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
DStarNetwork.h Make compiling D-Star conditional. 2023-06-29 17:13:00 +01:00
DStarSlowData.cpp Fix the D-Star slow data processing. 2026-04-17 12:44:32 +01:00
DStarSlowData.h Merge branch 'master' into fix/FastData 2026-02-26 14:13:51 +00:00
FMControl.cpp Fix FM RSSI reading tag byte instead of RSSI data 2026-04-05 17:48:32 -07:00
FMControl.h Add RSSI reporting to FM and AX.25. 2023-08-04 16:12:38 +01:00
FMNetwork.cpp Fix FM network audio scaling mismatch 2026-04-05 17:48:34 -07:00
FMNetwork.h Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
Golay2087.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
Golay2087.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
Golay24128.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
Golay24128.h Refactor the Golay 24,12,8 code and its uses. 2021-04-07 19:56:28 +01:00
Hamming.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
Hamming.h More work with decoding and regenerating P25. 2016-09-13 18:27:50 +01:00
I2CController.cpp Restore the branch 2020-12-15 16:21:07 +00:00
I2CController.h Final modem refactoring. 2021-02-17 21:36:47 +00:00
IIRDirectForm1Filter.cpp Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
IIRDirectForm1Filter.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
LICENCE Initial commit 2016-01-14 18:45:04 +00:00
Log.cpp Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
Log.h Remove the file based logging, only go via MQTT from now on. 2023-06-29 11:03:06 +01:00
Makefile Update to use C++17 2026-03-28 20:04:26 +00:00
MMDVMHost.cpp Add bounds check in writeSerial to prevent buffer overflow 2026-04-05 17:59:42 -07:00
MMDVMHost.h M17 and AX.25 removal cleanups. 2025-08-27 17:51:15 +01:00
MMDVMHost.ini Rename MMDVM.ini to MMDVMHost.ini 2026-03-10 14:52:12 +00:00
MMDVMHost.sln Use MQTT for the remote command handling. 2023-06-20 15:27:56 +01:00
MMDVMHost.vcxproj Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
MMDVMHost.vcxproj.filters Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
Modem.cpp Merge pull request #874 from BeigeBox/fix/writeipinfo-overflow 2026-04-06 19:48:05 +01:00
Modem.h Merge branch 'master' into mqtt 2026-02-18 13:54:01 +00:00
ModemPort.cpp Final modem refactoring. 2021-02-17 21:36:47 +00:00
ModemPort.h OSX build error fixes 2021-08-13 15:00:17 -04:00
MQTTConnection.cpp Add mosquitto_loop_stop before mosquitto_destroy in close() 2026-03-08 14:16:34 +00:00
MQTTConnection.h Give a type to the MQTT QOS enumeration. 2025-03-15 17:43:00 +00:00
Mutex.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
Mutex.h Add the Mutex class. 2016-10-06 20:06:57 +01:00
NullController.cpp add missing header file cstdint for using uint64_t and uint8_t 2023-10-10 18:53:57 +08:00
NullController.h OSX build error fixes 2021-08-13 15:00:17 -04:00
NXDN.csv Update the NXDN IDs file from radioid.net. 2019-11-07 14:02:40 +00:00
NXDNAudio.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNAudio.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNControl.cpp Always emit source_info and reflector fields in JSON output 2026-03-17 15:04:54 +00:00
NXDNControl.h Clean up the RSSI code to work with negative values correctly. 2023-08-05 16:51:55 +01:00
NXDNConvolution.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNConvolution.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNCRC.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNCRC.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNDefines.h Change all of the enums to the modern format. 2025-03-13 18:16:33 +00:00
NXDNFACCH1.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNFACCH1.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNIcomNetwork.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNIcomNetwork.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNKenwoodNetwork.cpp Fix some search & replace mistakes. 2025-03-14 16:31:29 +00:00
NXDNKenwoodNetwork.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNLayer3.cpp Fix heap buffer overflow in NXDN Layer3 data handling 2026-04-05 17:48:24 -07:00
NXDNLayer3.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNLICH.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNLICH.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNLookup.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNLookup.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNNetwork.cpp Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNNetwork.h Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNSACCH.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNSACCH.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
NXDNUDCH.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
NXDNUDCH.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
P25Audio.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25Audio.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
P25Control.cpp Fix P25 bug introduced by PR #853 with following changes - Fix CP25Data::encodeTSDU() with P25_LCF_GROUP/P25_LCF_GRP_VCH_GRANT 2026-04-07 19:11:09 +08:00
P25Control.h Merge branch 'mqtt' into mqtt_plus 2024-01-29 17:21:38 +00:00
P25Data.cpp Fix P25 bug introduced by PR #853 with following changes - Fix CP25Data::encodeTSDU() with P25_LCF_GROUP/P25_LCF_GRP_VCH_GRANT 2026-04-07 19:11:09 +08:00
P25Data.h Merge branch 'master' into mqtt 2024-10-04 17:37:55 +01:00
P25Defines.h Fix P25 bug introduced by PR #853 with following changes - Fix CP25Data::encodeTSDU() with P25_LCF_GROUP/P25_LCF_GRP_VCH_GRANT 2026-04-07 19:11:09 +08:00
P25LowSpeedData.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25LowSpeedData.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
P25Network.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25Network.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
P25NID.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25NID.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
P25Trellis.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25Trellis.h Merge branch 'master' into mqtt 2024-10-04 17:37:55 +01:00
P25Utils.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
P25Utils.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
POCSAGControl.cpp Clean ups from merging from master. 2025-03-14 16:11:04 +00:00
POCSAGControl.h Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
POCSAGDefines.h Add POCSAG processing and display code. 2018-06-11 21:30:49 +01:00
POCSAGNetwork.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
POCSAGNetwork.h Make the compilation of POCSAG conditional. 2023-06-29 12:46:03 +01:00
prebuild.cmd Fixed typo in generated header file and tested more 2017-03-10 03:32:00 +00:00
QR1676.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
QR1676.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
README.daemon Update the documentation to reflect the current state of the software. 2026-04-07 12:57:38 +01:00
README.md Update the documentation to reflect the current state of the software. 2026-04-07 12:57:38 +01:00
RemoteControl.cpp Fix format string vulnerability in remote command logging 2026-04-05 17:59:43 -07:00
RemoteControl.h M17 and AX.25 removal cleanups. 2025-08-27 17:51:15 +01:00
RingBuffer.h Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
RS.h Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
RS129.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
RS129.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
RS634717.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
RS634717.h Merge branch 'master' into mqtt 2024-09-30 18:53:33 +01:00
RSSI.dat Use a linear interpolator for the reported RSSI values. 2016-12-21 19:58:46 +00:00
RSSIInterpolator.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
RSSIInterpolator.h Use a linear interpolator for the reported RSSI values. 2016-12-21 19:58:46 +00:00
schema.json Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
SerialPort.cpp Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
SerialPort.h Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
StopWatch.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
StopWatch.h Simplify the new stopwatch code. 2018-07-15 20:33:14 +01:00
Sync.cpp Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
Sync.h Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
Thread.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
Thread.h Fix Linux threading compile issues. 2016-06-06 19:26:47 +01:00
Timer.cpp Initial commit 2016-01-14 18:45:04 +00:00
Timer.h Initial commit 2016-01-14 18:45:04 +00:00
UARTController.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
UARTController.h Final modem refactoring. 2021-02-17 21:36:47 +00:00
UDPController.cpp Convert to C++ nullptr from NULL. 2025-03-14 12:13:11 +00:00
UDPController.h OSX build error fixes 2021-08-13 15:00:17 -04:00
UDPSocket.cpp Merge branch 'master' into mqtt 2025-08-27 17:02:37 +01:00
UDPSocket.h Fix some search & replace mistakes. 2025-03-14 16:31:29 +00:00
UserDB.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
UserDB.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
UserDBentry.cpp Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
UserDBentry.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
Utils.cpp create timestamps in rfc3339 format 2026-03-22 15:17:21 -04:00
Utils.h Add basic JSON status logging. 2023-07-23 14:32:53 +01:00
Version.h Fix the D-Star slow data processing. 2026-04-17 12:44:32 +01:00
YSFControl.cpp Fix division by zero on network watchdog expiry 2026-04-05 17:48:35 -07:00
YSFControl.h Clean up the RSSI code to work with negative values correctly. 2023-08-05 16:51:55 +01:00
YSFConvolution.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
YSFConvolution.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
YSFDefines.h Restore the branch 2020-12-15 16:21:07 +00:00
YSFFICH.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
YSFFICH.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
YSFNetwork.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
YSFNetwork.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00
YSFPayload.cpp Merge branch 'master' into mqtt 2025-03-14 13:39:49 +00:00
YSFPayload.h Make all of the rest of the code base be conditionally compiled. 2023-07-03 16:21:35 +01:00

These are the source files for building the MMDVM Host, the program that interfaces to the MMDVM or DVMega on the one side, and a suitable network (via a gateway) on the other. It supports D-Star, DMR, P25 Phase 1, NXDN, System Fusion, POCSAG, and FM on the MMDVM, and D-Star, DMR, and System Fusion on the DVMega.

On the D-Star side the MMDVM Host interfaces with the D-Star Gateway, on DMR it connects to the DMR Gateway to allow for connection to multiple DMR networks. On System Fusion it connects to the DG-Id or YSF Gateway to allow access to the FCS and YSF networks. On P25 it connects to the P25 Gateway. On NXDN it connects to the NXDN Gateway which provides access to the NXDN and NXCore talk groups. It uses the DAPNET Gateway to access DAPNET to receive paging messages for transmission using POCSAG.

It builds on 32-bit and 64-bit Linux as well as on Windows using Visual Studio 2022 on x86 and x64.

This software is licenced under the GPL v2 and is primarily intended for amateur and educational use.