Go to file
Jonathan Naylor 21b66d5113
Merge pull request #697 from F4FXL/f4fxl/BERandRSSI
Add SMeter reports to DStar Ack and Error
2021-05-18 19:19:17 +01:00
Images Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Nextion_DB2OE
Nextion_G4KLX Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Nextion_ON7LDS Add more dynamic variables and fix command manging 2018-09-05 16:12:12 -04:00
RSSI
TFTSerial Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
UMP Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
linux New format of DMRIds.dat file 2020-12-29 12:41:06 +03:00
.gitignore Revert "Merge pull request #648 from xfxian/logrotate" 2020-10-30 13:34:13 +00:00
AMBEFEC.cpp
AMBEFEC.h
BCH.cpp
BCH.h
BPTC19696.cpp
BPTC19696.h
CASTInfo.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
CASTInfo.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
CRC.cpp
CRC.h
Conf.cpp Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Conf.h Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
DMRAccessControl.cpp
DMRAccessControl.h
DMRCSBK.cpp Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
DMRCSBK.h Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
DMRControl.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
DMRControl.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
DMRData.cpp
DMRData.h
DMRDataHeader.cpp
DMRDataHeader.h
DMRDefines.h
DMRDirectNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DMRDirectNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DMREMB.cpp change variable type to unsigned char 2019-12-07 23:25:57 +08:00
DMREMB.h
DMREmbeddedData.cpp
DMREmbeddedData.h
DMRFullLC.cpp
DMRFullLC.h
DMRGatewayNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DMRGatewayNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DMRIds.dat Update the DMR Ids. 2019-11-07 13:53:57 +00:00
DMRLC.cpp Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
DMRLC.h Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
DMRLookup.cpp Allow DMR/P25 and NXDN Id reload with a SIGUSR1 or via a remote command. 2021-01-01 13:54:03 +00:00
DMRLookup.h Allow DMR/P25 and NXDN Id reload with a SIGUSR1 or via a remote command. 2021-01-01 13:54:03 +00:00
DMRNetwork.cpp Allow optional direct connections to masters again. 2020-12-06 16:12:54 +00:00
DMRNetwork.h Don't send RPTCL on DMR under error conditions. 2021-04-08 18:36:27 +01:00
DMRShortLC.cpp
DMRShortLC.h
DMRSlot.cpp Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
DMRSlot.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
DMRSlotType.cpp
DMRSlotType.h
DMRTA.cpp Remove warning 2020-03-30 20:30:43 +02:00
DMRTA.h Fixed incorrect DMRTA header packet length from RF side 2018-12-09 23:49:15 +08:00
DMRTrellis.cpp
DMRTrellis.h
DMRplus_startup_options.md
DStarControl.cpp Add leading 0 to + 2021-05-17 07:14:26 +02:00
DStarControl.h Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
DStarDefines.h Avoid FEC regeneration and DTMF blanking for null AMBE data 2020-12-13 19:25:09 -05:00
DStarHeader.cpp
DStarHeader.h
DStarNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DStarNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
DStarSlowData.cpp
DStarSlowData.h
Defines.h Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Display.cpp revise UserDB display setting on OLED 2021-03-10 21:09:58 +09:00
Display.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Dockerfile
Golay2087.cpp
Golay2087.h
Golay24128.cpp
Golay24128.h
HD44780.cpp Change the displays to show the DG-ID instead of the TO field for YSF. 2020-08-09 19:23:18 +01:00
HD44780.h Display and log the DG-ID in the Fusion mode. 2020-08-09 15:09:08 +01:00
HD44780.layouts
Hamming.cpp
Hamming.h
I2CController.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
I2CController.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
ISSUES.txt Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
LCDproc.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
LCDproc.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
LICENCE
Log.cpp Add optional log file rotation and UDP socket reopening. 2020-10-31 21:35:09 +00:00
Log.h Add optional log file rotation and UDP socket reopening. 2020-10-31 21:35:09 +00:00
MMDVM.ini Add mode 4 (force off) for the DMR OVCM flag. 2021-03-07 17:42:55 +00:00
MMDVMHost.cpp Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
MMDVMHost.h Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
MMDVMHost.sln Add VS2017 files for Remote Command. 2019-01-19 17:27:41 +00:00
MMDVMHost.vcxproj Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
MMDVMHost.vcxproj.filters Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Makefile Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Makefile.Pi Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Makefile.Pi.Adafruit Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Makefile.Pi.HD44780 Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Makefile.Pi.OLED Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Makefile.Pi.PCF8574 Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
Modem.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Modem.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
ModemSerialPort.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
ModemSerialPort.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Mutex.cpp
Mutex.h
NXDN.csv Update the NXDN IDs file from radioid.net. 2019-11-07 14:02:40 +00:00
NXDNAudio.cpp
NXDNAudio.h
NXDNCRC.cpp
NXDNCRC.h
NXDNControl.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
NXDNControl.h More work on integrating the Kenwood NXDN protocol. 2020-05-27 12:07:21 +01:00
NXDNConvolution.cpp Fix file attributes for source files. 2018-06-13 18:55:03 +01:00
NXDNConvolution.h
NXDNDefines.h
NXDNFACCH1.cpp
NXDNFACCH1.h
NXDNIcomNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
NXDNIcomNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
NXDNKenwoodNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
NXDNKenwoodNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
NXDNLICH.cpp
NXDNLICH.h
NXDNLayer3.cpp
NXDNLayer3.h
NXDNLookup.cpp Allow DMR/P25 and NXDN Id reload with a SIGUSR1 or via a remote command. 2021-01-01 13:54:03 +00:00
NXDNLookup.h Allow DMR/P25 and NXDN Id reload with a SIGUSR1 or via a remote command. 2021-01-01 13:54:03 +00:00
NXDNNetwork.cpp Start adding the Kenwood protocol as an option. 2020-05-27 11:38:46 +01:00
NXDNNetwork.h Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
NXDNSACCH.cpp Fix file attributes for source files. 2018-06-13 18:55:03 +01:00
NXDNSACCH.h
NXDNUDCH.cpp
NXDNUDCH.h
NetworkInfo.cpp Fix osx compile error 2020-10-31 19:53:00 +08:00
NetworkInfo.h
Nextion.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Nextion.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
NullDisplay.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
NullDisplay.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
NullModem.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
NullModem.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
OLED.cpp revise UserDB display setting on OLED 2021-03-10 21:09:58 +09:00
OLED.h delete unused variable 2021-03-13 12:27:23 +09:00
OLED.md Update OLED.md 2019-12-04 15:07:54 +01:00
P25Audio.cpp
P25Audio.h
P25Control.cpp Add P25 end of transmission data. 2019-09-29 16:34:56 +01:00
P25Control.h Reset the mode's state machines when going to the disabled state. 2019-01-19 17:15:24 +00:00
P25Data.cpp Revert "Merge pull request #462 from gatekeep/master" 2018-11-12 09:48:00 +00:00
P25Data.h Revert "Merge pull request #462 from gatekeep/master" 2018-11-12 09:48:00 +00:00
P25Defines.h Revert "Merge pull request #462 from gatekeep/master" 2018-11-12 09:48:00 +00:00
P25LowSpeedData.cpp Adding missing P25 FEC table entry to avoid buffer overflow. 2019-09-03 15:22:35 -04:00
P25LowSpeedData.h
P25NID.cpp Fix other crashes 2018-08-20 00:47:45 -03:00
P25NID.h
P25Network.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
P25Network.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
P25Trellis.cpp
P25Trellis.h
P25Utils.cpp
P25Utils.h
POCSAGControl.cpp Display the rubric of the encrypted messages. 2020-12-15 14:27:47 +00:00
POCSAGControl.h Display the decrypted text on the external displays. 2020-12-14 12:48:56 +00:00
POCSAGDefines.h Add POCSAG processing and display code. 2018-06-11 21:30:49 +01:00
POCSAGNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
POCSAGNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
QR1676.cpp
QR1676.h
README.HD44780
README.daemon
README.md Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
RS129.cpp
RS129.h
RS241213.cpp Revert "Merge pull request #462 from gatekeep/master" 2018-11-12 09:48:00 +00:00
RS241213.h Revert "Merge pull request #462 from gatekeep/master" 2018-11-12 09:48:00 +00:00
RSSI.dat
RSSIInterpolator.cpp
RSSIInterpolator.h
RemoteCommand.cpp Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
RemoteCommand.h Add example remote command program. 2019-01-07 13:23:11 +00:00
RemoteCommand.vcxproj Update files to VS2019. 2020-02-14 20:53:21 +00:00
RemoteCommand.vcxproj.filters Add VS2017 files for Remote Command. 2019-01-19 17:27:41 +00:00
RemoteControl.cpp Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
RemoteControl.h Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
RingBuffer.h
SHA256.cpp Allow optional direct connections to masters again. 2020-12-06 16:12:54 +00:00
SHA256.h Allow optional direct connections to masters again. 2020-12-06 16:12:54 +00:00
SMeter.cpp fix reports between S9 and S9+10, always return "plus" 2021-05-15 12:34:59 +02:00
SMeter.h Add SMeter to DStar ack and error 2021-05-15 06:51:12 +02:00
SerialController.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
SerialController.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
SerialPort.cpp
SerialPort.h
StopWatch.cpp Simplify the new stopwatch code. 2018-07-15 20:33:14 +01:00
StopWatch.h Simplify the new stopwatch code. 2018-07-15 20:33:14 +01:00
Sync.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Sync.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
TFTSerial.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
TFTSerial.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
TFTSurenoo.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
TFTSurenoo.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
Thread.cpp NetBSD and other changes. 2020-10-05 12:46:54 +01:00
Thread.h
Timer.cpp
Timer.h
UDPSocket.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
UDPSocket.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
UMP.cpp Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
UMP.h Revert "Merge branch 'M17_AX25_FM'" 2020-12-15 15:52:27 +00:00
UserDB.cpp Beginnings of FM support. 2020-04-09 22:02:47 +01:00
UserDB.h add user database storage 2020-03-05 06:35:14 +09:00
UserDBentry.cpp get() goes const, add clear() 2020-03-08 07:55:08 +09:00
UserDBentry.h get() goes const, add clear() 2020-03-08 07:55:08 +09:00
Utils.cpp Make sure dBm is not truncated when RSSI < 99 2021-05-15 07:06:37 +02:00
Utils.h Make sure dBm is not truncated when RSSI < 99 2021-05-15 07:06:37 +02:00
Version.h Don't send RPTCL on DMR under error conditions. 2021-04-08 18:36:27 +01:00
YSFControl.cpp Fix bug added in FICH regeneration. 2020-10-13 10:11:13 +01:00
YSFControl.h Display and log the DG-ID in the Fusion mode. 2020-08-09 15:09:08 +01:00
YSFConvolution.cpp
YSFConvolution.h
YSFDefines.h Fix remote gateway for DR-1X 2018-10-23 21:59:10 -03:00
YSFFICH.cpp Regenerate the FICH correctly. 2020-10-13 10:07:31 +01:00
YSFFICH.h Regenerate the FICH correctly. 2020-10-13 10:07:31 +01:00
YSFNetwork.cpp Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
YSFNetwork.h Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
YSFPayload.cpp Reduce the amount of YSF debug logging. 2020-09-24 13:53:17 +01:00
YSFPayload.h Regenerate the odd VW mode message after the header. 2020-09-24 13:47:31 +01:00
prebuild.cmd

README.md

These are the source files for building the MMDVMHost, the program that interfaces to the MMDVM or DVMega on the one side, and a suitable network 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 MMDVMHost interfaces with the ircDDB Gateway, on DMR it connects to the DMR Gateway to allow for connection to multiple DMR networks, on System Fusion it connects to the 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. Finally it uses the FM Gateway to interface to existing FM networks.

It builds on 32-bit and 64-bit Linux as well as on Windows using Visual Studio 2019 on x86 and x64. It can optionally control various Displays. Currently these are:

  • HD44780 (sizes 2x16, 2x40, 4x16, 4x20)
    • Support for HD44780 via 4 bit GPIO connection (user selectable pins)
    • Adafruit 16x2 LCD+Keypad Kits (I2C)
    • Connection via PCF8574 GPIO Extender (I2C)
  • Nextion TFTs (all sizes, both Basic and Enhanced versions)
  • OLED 128x64 (SSD1306)
  • LCDproc

The Nextion displays can connect to the UART on the Raspberry Pi, or via a USB to TTL serial converter like the FT-232RL. It may also be connected to the UART output of the MMDVM modem (Arduino Due, STM32, Teensy), or to the UART output on the UMP.

The HD44780 displays are integrated with wiringPi for Raspberry Pi based platforms.

The OLED display needs an extra library see OLED.md

The LCDproc support enables the use of a multitude of other LCD screens. See the supported devices page on the LCDproc website for more info.

This software is licenced under the GPL v2 and is intended for amateur and educational use only. Use of this software for commercial purposes is strictly forbidden.