Go to file
Jonathan Naylor bc43db1e02 Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Images Restore the branch 2020-12-15 16:21:07 +00:00
Nextion_DB2OE
Nextion_G4KLX Restore the branch 2020-12-15 16:21:07 +00:00
Nextion_ON7LDS Changes To Agree With Code In Nextion.cpp 2021-11-25 16:06:17 -05:00
RSSI
Tools Restore the branch 2020-12-15 16:21:07 +00:00
linux Merge branch 'master' into M17_AX25_FM 2021-01-01 13:20:25 +00:00
.gitignore Revert "Merge pull request #648 from xfxian/logrotate" 2020-10-30 13:34:13 +00:00
AMBEFEC.cpp Refactor the Golay 24,12,8 code and its uses. 2021-04-07 19:56:28 +01:00
AMBEFEC.h
AX25Control.cpp Restore the branch 2020-12-15 16:21:07 +00:00
AX25Control.h Restore the branch 2020-12-15 16:21:07 +00:00
AX25Defines.h Restore the branch 2020-12-15 16:21:07 +00:00
AX25Network.cpp Restore the branch 2020-12-15 16:21:07 +00:00
AX25Network.h Refactored some class names. 2021-02-16 20:05:03 +00:00
BCH.cpp
BCH.h
BPTC19696.cpp
BPTC19696.h
CASTInfo.cpp Refresh the display handlers. 2023-10-03 16:20:29 +01:00
CASTInfo.h Refresh the display handlers. 2023-10-03 16:20:29 +01:00
CRC.cpp
CRC.h
Conf.cpp Insert a back channel to Nextion displays running via the modem. 2024-02-23 15:44:54 +00:00
Conf.h Insert a back channel to Nextion displays running via the modem. 2024-02-23 15:44:54 +00:00
DMRAccessControl.cpp
DMRAccessControl.h
DMRCSBK.cpp Emergency call CSBK support. 2022-12-15 14:11:40 +03:00
DMRCSBK.h Emergency call CSBK support. 2022-12-15 14:11:40 +03:00
DMRControl.cpp Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
DMRControl.h Final modem refactoring. 2021-02-17 21:36:47 +00:00
DMRData.cpp
DMRData.h
DMRDataHeader.cpp
DMRDataHeader.h
DMRDefines.h Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
DMRDirectNetwork.cpp Regularise the UDP socket handling for DMR, POCSAG and the Remote Control port. 2024-02-01 14:31:03 +00:00
DMRDirectNetwork.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
DMREMB.cpp
DMREMB.h
DMREmbeddedData.cpp
DMREmbeddedData.h
DMRFullLC.cpp
DMRFullLC.h
DMRGatewayNetwork.cpp Regularise the UDP socket handling for DMR, POCSAG and the Remote Control port. 2024-02-01 14:31:03 +00:00
DMRGatewayNetwork.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
DMRIds.dat
DMRLC.cpp Rewrite the OVCM handling. 2022-05-23 22:35:14 +01:00
DMRLC.h Rewrite the OVCM handling. 2022-05-23 22:35:14 +01: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 Fix formatting. 2023-09-27 14:29:34 +01:00
DMRSlot.h Clean up the DMR Talker Alias code and logging. 2023-06-06 20:33:25 +01:00
DMRSlotType.cpp
DMRSlotType.h
DMRTA.cpp Fix memcpy overflow, as src and dest are 32 bytes long, only 31 bytes has to be copied, not 32, since an offset is applied to src. 2023-08-10 08:08:06 +02:00
DMRTA.h Clean up the DMR Talker Alias code and logging. 2023-06-06 20:33:25 +01:00
DMRTrellis.cpp Fix trellis enocder/decoder bit order: invert bit order 2023-09-17 22:17:23 +02:00
DMRTrellis.h
DMRplus_startup_options.md
DStarControl.cpp Add interpretation of D-Star slow data text. 2023-06-16 11:35:16 +01:00
DStarControl.h Add interpretation of D-Star slow data text. 2023-06-16 11:35:16 +01:00
DStarDefines.h Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
DStarHeader.cpp
DStarHeader.h
DStarNetwork.cpp Make the FM resampler optional. 2024-04-29 15:09:20 +01:00
DStarNetwork.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
DStarSlowData.cpp Add interpretation of D-Star slow data text. 2023-06-16 11:35:16 +01:00
DStarSlowData.h Add interpretation of D-Star slow data text. 2023-06-16 11:35:16 +01:00
Defines.h Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
Display.cpp Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
Display.h Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
Dockerfile Update Dockerfile add dependency libsamplerate-dev 2023-12-24 00:19:28 +08:00
FMControl.cpp Add RAW data in and out of the FM repeater for SVXLink. 2023-10-17 12:56:54 +01:00
FMControl.h Add FM network audio gain and optional pre- and de-emphasis. 2021-03-14 14:59:34 +00:00
FMNetwork.cpp Fix FM RAW mode resampler bug. 2024-07-15 13:50:58 +01:00
FMNetwork.h Make the FM resampler optional. 2024-04-29 15:09:20 +01:00
Golay2087.cpp
Golay2087.h
Golay24128.cpp Refactor the Golay 24,12,8 code and its uses. 2021-04-07 19:56:28 +01:00
Golay24128.h Refactor the Golay 24,12,8 code and its uses. 2021-04-07 19:56:28 +01:00
HD44780.cpp Fix method name. 2021-10-22 09:16:44 +01:00
HD44780.h Add M17 to the HD44780 display. 2021-10-21 20:53:00 +01:00
HD44780.layouts
Hamming.cpp
Hamming.h
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 Restore the branch 2020-12-15 16:21:07 +00:00
IIRDirectForm1Filter.h Restore the branch 2020-12-15 16:21:07 +00:00
LCDproc.cpp Begin getting it to compile on Windows again. 2024-04-22 12:48:44 +01:00
LCDproc.h Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
LICENCE
Log.cpp Fix compiler warning 2021-10-25 17:57:41 +01:00
Log.h Add optional log file rotation and UDP socket reopening. 2020-10-31 21:35:09 +00:00
M17CRC.cpp Remove the CRC4 processing. 2021-03-28 15:29:26 +01:00
M17CRC.h Remove the CRC4 processing. 2021-03-28 15:29:26 +01:00
M17Control.cpp Remove the debugging statements. 2023-12-06 17:30:03 +00:00
M17Control.h Add M17 LSF Text data interpretation. 2023-06-16 12:14:35 +01:00
M17Convolution.cpp Fix the calculation of the Link Setup BER. 2021-09-05 16:19:05 +01:00
M17Convolution.h Get the convolution BER directly from the decoder. 2021-06-27 17:29:55 +01:00
M17Defines.h Substitute the source with the repeaters callsign and add the extended callsign information on RF. 2021-09-21 20:56:11 +01:00
M17LSF.cpp Initialise the M17 LSF correctly when not initialised. 2023-12-06 15:36:50 +00:00
M17LSF.h Simplify the LSF processing to allow changed META field data changed 2021-08-26 21:49:46 +01:00
M17Network.cpp Remove the debugging statements. 2023-12-06 17:30:03 +00:00
M17Network.h Add M17 network status to Remote command "status" output. 2022-01-07 11:47:19 +00:00
M17Utils.cpp Update the M17 callsign parsing rules. 2024-09-23 17:04:18 +01:00
M17Utils.h Restore the branch 2020-12-15 16:21:07 +00:00
MMDVM.ini Insert a back channel to Nextion displays running via the modem. 2024-02-23 15:44:54 +00:00
MMDVMHost.cpp Small cleanups. 2024-08-31 20:12:10 +01:00
MMDVMHost.h Add new remote command: 2022-01-21 10:51:41 +00:00
MMDVMHost.sln
MMDVMHost.vcxproj Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
MMDVMHost.vcxproj.filters Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile.Pi.Adafruit Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile.Pi.HD44780 Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile.Pi.I2C Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile.Pi.OLED Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Makefile.Pi.PCF8574 Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
Modem.cpp Fixed a bug that FM modem is not setup properly under simplex mode. This also suggests no one maybe ever tried the simplex mode with a FM reflector. Yes I did a FM reflector for that test ;) 2022-09-16 22:55:28 +08:00
Modem.h Rename SimpleMode to LinkMode. 2021-09-06 21:47:23 +01: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
ModemSerialPort.cpp Final modem refactoring. 2021-02-17 21:36:47 +00:00
ModemSerialPort.h Final modem refactoring. 2021-02-17 21:36:47 +00:00
Mutex.cpp
Mutex.h
NXDN.csv
NXDNAudio.cpp
NXDNAudio.h
NXDNCRC.cpp
NXDNCRC.h
NXDNControl.cpp Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
NXDNControl.h
NXDNConvolution.cpp Get the convolution BER directly from the decoder. 2021-06-27 17:29:55 +01:00
NXDNConvolution.h Get the convolution BER directly from the decoder. 2021-06-27 17:29:55 +01:00
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
NXDNNetwork.h Add RemoteCommand 'status' command. 2021-03-22 20:32:43 +01:00
NXDNSACCH.cpp
NXDNSACCH.h
NXDNUDCH.cpp
NXDNUDCH.h
NetworkInfo.cpp Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
NetworkInfo.h Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
Nextion.cpp Insert a back channel to Nextion displays running via the modem. 2024-02-23 15:44:54 +00:00
Nextion.h Insert a back channel to Nextion displays running via the modem. 2024-02-23 15:44:54 +00: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
NullDisplay.cpp Restore the branch 2020-12-15 16:21:07 +00:00
NullDisplay.h Refresh the display handlers. 2023-10-03 16:20:29 +01:00
OLED.cpp Fix the OLED driver. 2023-10-09 17:21:09 +01:00
OLED.h Fix the OLED driver. 2023-10-09 17:21:09 +01:00
OLED.md
P25Audio.cpp
P25Audio.h
P25Control.cpp Hopefully fix the unreceivable P25 transmissions. 2024-02-07 19:38:54 +00:00
P25Control.h Remove P25 LDU validation. 2024-01-26 16:12:58 +00:00
P25Data.cpp Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
P25Data.h Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
P25Defines.h
P25LowSpeedData.cpp
P25LowSpeedData.h
P25NID.cpp
P25NID.h
P25Network.cpp Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
P25Network.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
P25Trellis.cpp Fix bug in P25 rate 1/2 data FEC. 2024-09-30 17:13:22 +01:00
P25Trellis.h
P25Utils.cpp
P25Utils.h
POCSAGControl.cpp This PR/commit fixes #785, where POCSAG messages are now properly 2024-01-09 10:00:04 -06:00
POCSAGControl.h Page alert commands 2022-11-26 11:04:01 +01:00
POCSAGDefines.h
POCSAGNetwork.cpp Regularise the UDP socket handling for DMR, POCSAG and the Remote Control port. 2024-02-01 14:31:03 +00:00
POCSAGNetwork.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
PseudoTTYController.cpp <pty.h>: linux only 2021-10-24 13:17:47 +09:00
PseudoTTYController.h Refactored some class names. 2021-02-16 20:05:03 +00:00
QR1676.cpp
QR1676.h
README.HD44780
README.daemon
README.md Update the README. 2021-12-13 10:32:28 +00:00
RS.h Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
RS129.cpp
RS129.h
RS634717.cpp Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
RS634717.h Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
RSSI.dat
RSSIInterpolator.cpp
RSSIInterpolator.h
RemoteCommand.cpp Merge pull request #736 from f1rmb/hosts_remote_command 2022-01-24 07:12:44 +00:00
RemoteCommand.h
RemoteCommand.vcxproj
RemoteCommand.vcxproj.filters
RemoteControl.cpp Fix FM RAW mode resampler bug. 2024-07-15 13:50:58 +01:00
RemoteControl.h Regularise the UDP socket handling for DMR, POCSAG and the Remote Control port. 2024-02-01 14:31:03 +00: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 Clean up the D-Star Control class a little. 2021-05-18 19:44:41 +01:00
SMeter.h Clean up the D-Star Control class a little. 2021-05-18 19:44:41 +01:00
SerialPort.cpp
SerialPort.h
StopWatch.cpp
StopWatch.h
Sync.cpp Change to the new method of M17 EOT transmission. 2021-09-19 15:15:37 +01:00
Sync.h Change to the new method of M17 EOT transmission. 2021-09-19 15:15:37 +01:00
TFTSurenoo.cpp TFTSurenoo: add 240x320 panel support 2023-12-28 22:45:40 +09:00
TFTSurenoo.h TFTSurenoo: add 240x320 panel support 2023-12-28 22:45:40 +09:00
Thread.cpp NetBSD and other changes. 2020-10-05 12:46:54 +01:00
Thread.h
Timer.cpp
Timer.h
UARTController.cpp Remove some serial port oddities. 2024-02-14 13:26:29 +00:00
UARTController.h Final modem refactoring. 2021-02-17 21:36:47 +00:00
UDPController.cpp Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
UDPController.h OSX build error fixes 2021-08-13 15:00:17 -04:00
UDPSocket.cpp Fix a small bug. 2024-07-08 17:08:01 +01:00
UDPSocket.h Fix the Winsock compilation errors. 2024-04-22 19:12:33 +01:00
UserDB.cpp Add extra logging to the ID lookup processing. 2021-06-27 22:16:26 +01:00
UserDB.h
UserDBentry.cpp
UserDBentry.h
Utils.cpp Merge branch 'master' into M17_AX25_FM 2021-05-18 20:05:40 +01:00
Utils.h Merge branch 'master' into M17_AX25_FM 2021-05-18 20:05:40 +01:00
Version.h Update the P25 Reed-Solomon FEC to be the same as the DVMM project. 2024-09-30 18:27:00 +01:00
YSFControl.cpp Add M17 Codec 1600 mode on RX and remove the remains of M17 packet mode 2021-08-10 19:54:14 +01:00
YSFControl.h Restore the branch 2020-12-15 16:21:07 +00:00
YSFConvolution.cpp Get the convolution BER directly from the decoder. 2021-06-27 17:29:55 +01:00
YSFConvolution.h Get the convolution BER directly from the decoder. 2021-06-27 17:29:55 +01:00
YSFDefines.h Restore the branch 2020-12-15 16:21:07 +00:00
YSFFICH.cpp Refactor the Golay 24,12,8 code and its uses. 2021-04-07 19:56:28 +01:00
YSFFICH.h Restore the branch 2020-12-15 16:21:07 +00:00
YSFNetwork.cpp Add M17 network status to Remote command "status" output. 2022-01-07 11:47:19 +00:00
YSFNetwork.h Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
YSFPayload.cpp Restore the branch 2020-12-15 16:21:07 +00:00
YSFPayload.h Restore the branch 2020-12-15 16:21:07 +00: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, M17, POCSAG, FM, and AX.25 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, or a single network directly. 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. On M17 it uses the M17 Gateway to access the M17 reflector system. 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).

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 primarily intended for amateur and educational use.