Go to file
Jonathan Naylor 4378a2b938 Add network debugging for DMR headers. 2017-05-12 09:26:34 +01:00
Images A better quality P25 logo. 2016-09-10 17:52:03 +01:00
Nextion Add layouts for 4.3" Nextion displays 2017-02-13 21:43:09 +01:00
RSSI Rename TB7100 RSSI sample file 2017-04-08 20:42:30 +02:00
TFTSerial Move TFTSerial images to their own directory. 2016-03-19 19:11:28 +00:00
UMP Move LOCKOUT to pin 12 to accommodate the AltSoftSerial Library 2016-11-22 23:36:23 +02:00
linux Added missing quotes in test cmd. 2016-08-21 12:05:36 +02:00
.gitignore corrected case 2017-03-10 04:21:40 +00:00
AMBEFEC.cpp A semi-working P25 repeater without much FEC. 2016-09-12 23:26:05 +01:00
AMBEFEC.h A semi-working P25 repeater without much FEC. 2016-09-12 23:26:05 +01:00
BCH.cpp Change the semantics of the NID processor. 2016-09-19 22:26:42 +01:00
BCH.h Add the P25 NID BCH encoder. 2016-09-19 21:41:34 +01:00
BPTC19696.cpp Add new Hamming for YSF. 2016-04-19 06:50:51 +01:00
BPTC19696.h
CRC.cpp
CRC.h
Conf.cpp Move modem tracing to Trace and add a new modem Debug function. 2017-04-14 14:05:30 +01:00
Conf.h Move modem tracing to Trace and add a new modem Debug function. 2017-04-14 14:05:30 +01:00
DMRAccessControl.cpp Don't allow any TG0 data through. 2017-01-23 09:57:45 +00:00
DMRAccessControl.h Add RSSI display for all modes. 2017-01-05 19:15:10 +00:00
DMRCSBK.cpp Increase CSBK debugging data level. 2016-12-12 09:35:53 +00:00
DMRCSBK.h Add extra Preamble CSBK data dumping. 2016-12-11 16:01:30 +00:00
DMRControl.cpp Change of DMR timeout behaviour. 2017-03-12 19:06:47 +00:00
DMRControl.h Change of DMR timeout behaviour. 2017-03-12 19:06:47 +00:00
DMRData.cpp Alter the format of the returned RSSI data. 2016-08-11 17:28:47 +01:00
DMRData.h Alter the format of the returned RSSI data. 2016-08-11 17:28:47 +01:00
DMRDataHeader.cpp Increase number of data blocks for MD-390 GPS data. 2016-11-21 23:37:05 +00:00
DMRDataHeader.h
DMRDefines.h Display DMR embedded data. 2016-12-31 16:01:26 +00:00
DMREMB.cpp
DMREMB.h
DMREmbeddedData.cpp Fixing last byte of Embedded Data 2017-04-04 23:02:19 -03:00
DMREmbeddedData.h Upgrade the Embedded Data regeneration. 2017-01-10 19:27:12 +00:00
DMRFullLC.cpp
DMRFullLC.h
DMRIDUpdate.sh Update the URL for DMR-MARC 2017-04-02 13:42:24 +01:00
DMRIDUpdateBM.sh Small code optimization by CT2JAY 2017-03-16 15:41:46 +03:00
DMRIds.dat Update the DMR Ids file. 2017-05-01 14:42:27 +01:00
DMRLC.cpp Add more asserts to catch bugs. 2016-03-07 20:21:55 +00:00
DMRLC.h
DMRLookup.cpp Load the DMR Id lookup table periodically. 2016-10-10 19:15:30 +01:00
DMRLookup.h Load the DMR Id lookup table periodically. 2016-10-10 19:15:30 +01:00
DMRNetwork.cpp Add RSSI display for all modes. 2017-01-05 19:15:10 +00:00
DMRNetwork.h Add RSSI display for all modes. 2017-01-05 19:15:10 +00:00
DMRShortLC.cpp Add more asserts to catch bugs. 2016-03-07 20:21:55 +00:00
DMRShortLC.h
DMRSlot.cpp Add network debugging for DMR headers. 2017-05-12 09:26:34 +01:00
DMRSlot.h Change of DMR timeout behaviour. 2017-03-12 19:06:47 +00:00
DMRSlotType.cpp
DMRSlotType.h
DMRTrellis.cpp Improve the FEC reconstruction a little. 2016-07-19 17:24:11 +01:00
DMRTrellis.h Improve the FEC reconstruction a little. 2016-07-19 17:24:11 +01:00
DMRplus_startup_options.md how to work with the Options-settings 2016-11-11 22:05:26 +01:00
DStarControl.cpp Add an optional error reply for D-Star. 2017-02-16 19:49:58 +00:00
DStarControl.h Add an optional error reply for D-Star. 2017-02-16 19:49:58 +00:00
DStarDefines.h Improve silence insertion. 2016-07-11 20:08:14 +01:00
DStarHeader.cpp Remobe AMBE regeneration on data packets. 2016-10-05 07:42:41 +01:00
DStarHeader.h Remobe AMBE regeneration on data packets. 2016-10-05 07:42:41 +01:00
DStarNetwork.cpp Changes for DVMega via the host. 2016-03-08 17:26:51 +00:00
DStarNetwork.h Changes for DVMega via the host. 2016-03-08 17:26:51 +00:00
DStarSlowData.cpp
DStarSlowData.h
Defines.h Add an optional error reply for D-Star. 2017-02-16 19:49:58 +00:00
Display.cpp Fix formatting. 2017-02-13 08:54:25 +00:00
Display.h Add BER display to the Nextion and reduce Talker Id logging. 2017-02-12 18:37:00 +00:00
Golay2087.cpp
Golay2087.h
Golay24128.cpp
Golay24128.h
HD44780.cpp Still more LCD RSSI display fettling 2017-01-08 09:37:17 +00:00
HD44780.h Add RSSI to (4-line) HD44780 displays 2017-01-06 21:24:07 +00:00
HD44780.layouts D-Star: Redesign HD44780 layouts 2016-09-29 19:47:41 +01:00
Hamming.cpp More work with decoding and regenerating P25. 2016-09-13 18:27:50 +01:00
Hamming.h More work with decoding and regenerating P25. 2016-09-13 18:27:50 +01:00
ISSUES.txt Update ISSUES.txt 2017-04-02 19:42:18 +01:00
LCDproc.cpp Fix compile error 2017-01-08 16:02:43 +00:00
LCDproc.h Add RSSI to LCDproc displays 2017-01-06 20:07:57 +00:00
LICENCE
Log.cpp Increase log file path variable. 2016-10-13 18:12:27 +01:00
Log.h Modify the logging system greatly. 2016-03-07 18:42:05 +00:00
MMDVM.ini Move modem tracing to Trace and add a new modem Debug function. 2017-04-14 14:05:30 +01:00
MMDVMHost.cpp Re-add log notification about root privileges 2017-05-04 10:37:45 +02:00
MMDVMHost.h Allow for optional seperate (and longer) CW Ids. 2017-04-10 17:55:53 +01:00
MMDVMHost.sln
MMDVMHost.vcxproj Added Git Version number (Windows MSVS with prebuild script) 2017-03-10 03:06:04 +00:00
MMDVMHost.vcxproj.filters Upgrade the Embedded Data regeneration. 2017-01-10 19:27:12 +00:00
Makefile Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Pi Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Pi.Adafruit Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Pi.HD44780 Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Pi.OLED Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Pi.PCF8574 Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Makefile.Solaris Fix case errors with GitVersion.h 2017-03-10 11:00:31 +01:00
Modem.cpp Move modem tracing to Trace and add a new modem Debug function. 2017-04-14 14:05:30 +01:00
Modem.h Move modem tracing to Trace and add a new modem Debug function. 2017-04-14 14:05:30 +01:00
ModemSerialPort.cpp Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
ModemSerialPort.h Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
Mutex.cpp Add the Mutex class. 2016-10-06 20:06:57 +01:00
Mutex.h Add the Mutex class. 2016-10-06 20:06:57 +01:00
Nextion.cpp Make RSSI and BER display immediately on Nextion screens. 2017-02-13 08:20:40 +00:00
Nextion.h Add BER display to the Nextion and reduce Talker Id logging. 2017-02-12 18:37:00 +00:00
NullDisplay.cpp Add a status LED on the RPi to the Null display driver. 2016-10-18 18:25:33 +01:00
NullDisplay.h Merge branch 'master' into P25 2016-09-27 19:47:07 +01:00
OLED.cpp Add D-Star Logo 2016-11-11 21:26:07 +00:00
OLED.h Fix OLED header file (ref. b69336d) 2016-11-04 08:56:39 +01:00
OLED.md Added manual for oled driver installation 2016-05-10 16:06:26 +00:00
P25Audio.cpp Fix obvious mistake in P25 network audio. 2016-10-03 19:28:01 +01:00
P25Audio.h Add the IMBE packing/unpacking code. 2016-09-21 07:04:12 +01:00
P25Control.cpp Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
P25Control.h Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
P25Data.cpp Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
P25Data.h Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
P25Defines.h Simple P25 silence insertion. 2016-09-27 19:26:24 +01:00
P25LowSpeedData.cpp Finish off the basics of the P25 network handling. 2016-09-22 19:39:19 +01:00
P25LowSpeedData.h Finish off the basics of the P25 network handling. 2016-09-22 19:39:19 +01:00
P25NID.cpp Handle the P25 low speed data. 2016-09-20 06:53:30 +01:00
P25NID.h Handle the P25 low speed data. 2016-09-20 06:53:30 +01:00
P25Network.cpp Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
P25Network.h Simplify the P25 protocol. 2016-11-01 07:42:34 +00:00
P25Utils.cpp Handle the P25 low speed data. 2016-09-20 06:53:30 +01:00
P25Utils.h Handle the P25 low speed data. 2016-09-20 06:53:30 +01:00
QR1676.cpp
QR1676.h
README.HD44780 Fix README.HD44780 Backlight Power Supply 2016-12-26 00:51:30 +01:00
README.daemon Added reference to full path for DMRIds.dat 2016-05-05 10:52:58 +01:00
README.md Update README.md 2017-01-06 10:30:48 +00:00
RS129.cpp
RS129.h
RS241213.cpp Fixing occasional MMDVMHost crash when receiving P25 RF data with high BER (RS decoder fix) 2017-03-20 21:38:52 -03:00
RS241213.h Fixing occasional MMDVMHost crash when receiving P25 RF data with high BER (RS decoder fix) 2017-03-20 21:38:52 -03:00
RSSI.dat Use a linear interpolator for the reported RSSI values. 2016-12-21 19:58:46 +00:00
RSSIInterpolator.cpp Type correction. 2016-12-22 10:29:39 +00:00
RSSIInterpolator.h Use a linear interpolator for the reported RSSI values. 2016-12-21 19:58:46 +00:00
RingBuffer.h Attempt to recover from ring buffer overflows (#141) 2016-09-23 14:48:44 +01:00
SHA256.cpp
SHA256.h
SerialController.cpp Remove sensitivity to the state of DSR (DTR on the modem). 2017-03-16 11:02:05 +00:00
SerialController.h Use normal blocking file functions for Windows serial I/O. 2017-03-13 19:35:29 +00: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
StopWatch.h
Sync.cpp Start full host support got P25. 2016-09-08 18:38:59 +01:00
Sync.h Start full host support got P25. 2016-09-08 18:38:59 +01:00
TFTSerial.cpp Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
TFTSerial.h Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
Thread.cpp Fix Linux threading compile issues. 2016-06-06 19:26:47 +01:00
Thread.h Fix Linux threading compile issues. 2016-06-06 19:26:47 +01:00
Timer.cpp
Timer.h
UDPSocket.cpp Fix assert error. 2016-04-04 17:00:59 +01:00
UDPSocket.h Fix assert error. 2016-04-04 17:00:59 +01:00
UMP.cpp Add CD LED functionality to MMDVMHost 2016-11-17 11:48:42 +01:00
UMP.h Add CD LED functionality to MMDVMHost 2016-11-17 11:48:42 +01:00
Utils.cpp Add more asserts to catch bugs. 2016-03-07 20:21:55 +00:00
Utils.h
Version.h Bump the version date. 2017-05-01 09:24:46 +01:00
YSFControl.cpp Add YSF low deviation mode. 2017-03-23 20:26:17 +00:00
YSFControl.h Add YSF low deviation mode. 2017-03-23 20:26:17 +00:00
YSFConvolution.cpp Change M to improve the decoding. 2016-04-21 11:17:20 +01:00
YSFConvolution.h Beginnings of System Fusion payload regeneration. 2016-02-28 20:34:37 +00:00
YSFDefines.h Add silence infill for missing packets. 2016-07-12 18:20:48 +01:00
YSFFICH.cpp Add YSF low deviation mode. 2017-03-23 20:26:17 +00:00
YSFFICH.h Add YSF low deviation mode. 2017-03-23 20:26:17 +00:00
YSFNetwork.cpp Fix sequence number bugs. 2016-06-13 21:29:19 +01:00
YSFNetwork.h Fix sequence number bugs. 2016-06-13 21:29:19 +01:00
YSFPayload.cpp Simplify YSF V/D mode 2 audio FEC regeneration. 2017-01-10 15:06:31 +00:00
YSFPayload.h Revert "Rework YSF AMBE repetition FEC." 2016-11-22 21:51:40 +00:00
prebuild.cmd Fixed typo in generated header file and tested more 2017-03-10 03:32:00 +00:00

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, and System Fusion.

On the D-Star side the MMDVMHost interfaces with the ircDDB Gateway, on DMR it can connect to BrandMeister, DMR+, or HB Link, on System Fusion it connects to the YSF Gateway. On P25 it connects to the P25 Gateway.

It builds on 32-bit and 64-bit Linux as well as on Windows using VS2015 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 (sizes 2.4", 2.8", 3.2" and 3.5")
  • TFT display sold by Hobbytronics in UK
  • OLED 128x64 (SSD1306)

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 Hobbytronics TFT Display, which is a Pi-Hat, connects to the UART on the Raspbery Pi.

The OLED display needs a extra library see OLED.md

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.