Go to file
Jonathan Naylor 09e8563336 Add a status LED on the RPi to the Null display driver. 2016-10-18 18:25:33 +01:00
Images A better quality P25 logo. 2016-09-10 17:52:03 +01:00
Nextion Change font size for 2.4" Nextion displays 2016-09-29 22:16:42 +02:00
TFTSerial
linux Added missing quotes in test cmd. 2016-08-21 12:05:36 +02:00
.gitignore Correct the order of the YSF display argumemts. 2016-05-20 06:15:42 +01: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
BPTC19696.h
CRC.cpp
CRC.h
Conf.cpp Load the DMR Id lookup table periodically. 2016-10-10 19:15:30 +01:00
Conf.h Load the DMR Id lookup table periodically. 2016-10-10 19:15:30 +01:00
DMRAccessControl.cpp Signed/Unsigned cleanup 2016-10-17 21:25:22 +01:00
DMRAccessControl.h Signed/Unsigned cleanup 2016-10-17 21:25:22 +01:00
DMRCSBK.cpp Reject unknown CSBKs. 2016-08-09 17:22:02 +01:00
DMRCSBK.h
DMRControl.cpp Merge branch 'master' into P25 2016-09-27 19:47:07 +01:00
DMRControl.h Merge branch 'master' into P25 2016-09-27 19:47:07 +01: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 Handle zero block length. 2016-09-19 17:55:28 +01:00
DMRDataHeader.h
DMRDefines.h
DMREMB.cpp
DMREMB.h
DMREmbeddedLC.cpp Remove irritating log messages. 2016-07-14 18:23:17 +01:00
DMREmbeddedLC.h
DMRFullLC.cpp
DMRFullLC.h
DMRIDUpdate.sh Auto maintenance of DMR ID file from crontab 2016-06-10 13:18:15 +01:00
DMRIds.dat Update DMRIds.dat 2016-10-06 20:46:34 +10:00
DMRLC.cpp
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 mode clarification to DMRNetwork.cpp log output 2016-09-29 21:40:37 +01:00
DMRNetwork.h Add P25 networking, and rename DMR network files. 2016-09-14 07:41:37 +01:00
DMRShortLC.cpp
DMRShortLC.h
DMRSlot.cpp DMRAccessControl: add per-slot dstid, src id and time 2016-10-17 13:59:52 +01:00
DMRSlot.h Merge branch 'master' into P25 2016-09-27 19:47:07 +01: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
DStarControl.cpp Remobe AMBE regeneration on data packets. 2016-10-05 07:42:41 +01:00
DStarControl.h Remove unneeded RSSI code for non DMR protocols. 2016-09-27 19:55:36 +01: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
DStarNetwork.h
DStarSlowData.cpp
DStarSlowData.h
Defines.h Merge branch 'master' into P25 2016-09-27 19:47:07 +01:00
Display.cpp Merge branch 'master' into P25 2016-09-27 19:47:07 +01:00
Display.h Merge branch 'master' into P25 2016-09-27 19:47:07 +01:00
Golay2087.cpp
Golay2087.h
Golay24128.cpp
Golay24128.h
HD44780.cpp HD44780: Completely disable scrolling and optimise DMR layouts for non-scrolling 2016-10-02 11:38:54 +01:00
HD44780.h HD44780: Completely disable scrolling and optimise DMR layouts for non-scrolling 2016-10-02 11:38:54 +01:00
HD44780.layouts D-Star: Redesign HD44780 layouts 2016-09-29 19:47:41 +01:00
HD44780.md Update README.md to include HD44780 variations and HD44780 todo list 2016-06-27 20:21:22 +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
LICENCE
Log.cpp Increase log file path variable. 2016-10-13 18:12:27 +01:00
Log.h
MMDVM.ini Changed default P25 Network ports to match P25Gateway 2016-10-18 06:48:25 +01:00
MMDVMHost.cpp Alter CW Id timing behaviour. 2016-10-17 18:01:38 +01:00
MMDVMHost.h Alter CW Id timing behaviour. 2016-10-17 18:01:38 +01:00
MMDVMHost.sln
MMDVMHost.vcxproj Add the Mutex class. 2016-10-06 20:06:57 +01:00
MMDVMHost.vcxproj.filters Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile.Pi Add a status LED on the RPi to the Null display driver. 2016-10-18 18:25:33 +01:00
Makefile.Pi.Adafruit Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile.Pi.HD44780 Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile.Pi.OLED Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile.Pi.PCF8574 Add the Mutex class. 2016-10-06 20:06:57 +01:00
Makefile.Solaris Add the Mutex class. 2016-10-06 20:06:57 +01:00
Modem.cpp Add controls for the CW Id level. 2016-10-10 17:46:37 +01:00
Modem.h Add controls for the CW Id level. 2016-10-10 17:46:37 +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 Allow the modem to host a serial display. 2016-10-06 18:38:16 +01:00
Nextion.h Allow the modem to host a serial display. 2016-10-06 18:38:16 +01: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 The P25 destination is an integer. 2016-09-12 20:23:50 +01:00
OLED.h The P25 destination is an integer. 2016-09-12 20:23:50 +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 Fix detection of P25 end of network transmission. 2016-10-13 22:54:45 +01:00
P25Control.h Handle missing P25 network frames better. 2016-10-04 18:37:08 +01:00
P25Data.cpp Simple source id validation for P25. 2016-10-18 17:08:52 +01:00
P25Data.h Validate P25 RF late entry. 2016-09-27 18:59:17 +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 Bring debug logging into line with the other modes. 2016-10-14 09:30:10 +01:00
P25Network.h Try and make the network protocol closer to that of a Quantar. 2016-09-29 18:47:36 +01: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.DMR_ACL Additions to support separate network/rf access control 2016-07-10 21:39:58 +01:00
README.HD44780 Make I2C address configurable for HD44780 LCD variations 2016-06-30 20:10:30 +01:00
README.TGRewrite TG Rewrite readme update 2016-10-07 16:36:57 +01:00
README.daemon Added reference to full path for DMRIds.dat 2016-05-05 10:52:58 +01:00
README.md Add 2.8" Nextion to README.md 2016-09-29 21:46:30 +01:00
RS129.cpp
RS129.h
RS241213.cpp Correct range of loop for size of input data. 2016-09-28 09:26:23 +01:00
RS241213.h Add LDU1 Reed-Solomon encoding and decoding. 2016-09-27 18:36:08 +01: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 Add cstring for Solaris compilation. 2016-08-08 17:53:35 +01:00
SerialController.h Allow the modem to host a serial display. 2016-10-06 18:38:16 +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
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
UDPSocket.h
Utils.cpp
Utils.h
Version.h Bump the version date. 2016-09-06 17:22:51 +01:00
YSFControl.cpp Remove unneeded RSSI code for non DMR protocols. 2016-09-27 19:55:36 +01:00
YSFControl.h Remove unneeded RSSI code for non DMR protocols. 2016-09-27 19:55:36 +01:00
YSFConvolution.cpp
YSFConvolution.h
YSFDefines.h Add silence infill for missing packets. 2016-07-12 18:20:48 +01:00
YSFFICH.cpp Allow for remote System Fusion gateway operation. 2016-09-26 18:07:06 +01:00
YSFFICH.h Allow for remote System Fusion gateway operation. 2016-09-26 18:07:06 +01: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 A semi-working P25 repeater without much FEC. 2016-09-12 23:26:05 +01:00
YSFPayload.h Move FEC display to the main code. 2016-06-16 17:33:53 +01: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. On the D-Star side the MMDVMHost interfaces with the ircDDB Gateway, on DMR it connects to Brand Meister, DMR+, and HB Link, on System Fusion it connects to the YSF Gateway. On P25 it connects to the P25NX network.

It supports D-Star, DMR, P25 Phase 1, and System Fusion.

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 displays sold by Hobbytronics in UK
  • OLED 128x64 (SSD1306)

The HD44780 displays are integrated with wiringPi for Raspberry Pi based platforms. The other displays can be directly connected to the UART on Raspberry Pis or with FT-232RL modules to any USB port.

The OLED display needs a extra lib 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.