The firmware for the MMDVM (Multi-Mode Digital Voice Modem)
 
 
 
 
 
 
Go to file
Jonathan Naylor 20a4cf0378 Merge pull request #63 from juribeparada/master
Adding conditional compilation
2017-01-28 13:57:57 +00:00
.gitignore Add gitignore to irgnore object files and STM lib 2017-01-20 16:34:25 +01:00
BUILD.txt More info on Linux & newer libraries OK 2016-09-14 22:57:34 +01:00
CWIdTX.cpp Allow for adjustable CW Id levels. 2016-10-10 17:35:33 +01:00
CWIdTX.h Small CW Id cleanups. 2016-05-10 06:35:53 +01:00
CalDMR.cpp Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalDMR.h Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalDStarRX.cpp Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalDStarRX.h Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalDStarTX.cpp Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalDStarTX.h Add DMR calibration. 2016-04-14 17:42:38 +01:00
CalRSSI.cpp Small tweaks. 2016-12-30 11:34:31 +00:00
CalRSSI.h Add the RSSI calibration mode. 2016-12-28 18:07:31 +00:00
Config.h Add support for external mode pins on F0DEI board 2017-01-20 17:34:32 +01:00
DMRDMORX.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
DMRDMORX.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
DMRDMOTX.cpp Remove DMR DMO sync mapping. 2016-09-06 08:14:54 +01:00
DMRDMOTX.h Fix crash in DMR DMO Mode 2017-01-01 14:22:49 +00:00
DMRDefines.h EMB correlation, work in progress. 2016-08-31 08:15:06 +01:00
DMRIdleRX.cpp Restore DMR level reporting. 2016-07-21 17:08:00 +01:00
DMRIdleRX.h Remove the level tweaking functionality. 2016-07-07 17:37:06 +01:00
DMRRX.cpp Add dummy RSSI sampling code. 2016-10-31 19:39:32 +00:00
DMRRX.h Add dummy RSSI sampling code. 2016-10-31 19:39:32 +00:00
DMRSlotRX.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
DMRSlotRX.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
DMRSlotType.cpp Initial commit 2016-01-14 18:57:21 +00:00
DMRSlotType.h Initial commit 2016-01-14 18:57:21 +00:00
DMRTX.cpp Add independent transmit levels. 2016-08-09 07:11:10 +01:00
DMRTX.h Remove small gap when data comes in while sending terminators. 2016-07-19 17:34:55 +01:00
DStarDefines.h Initial commit 2016-01-14 18:57:21 +00:00
DStarRX.cpp Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
DStarRX.h Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
DStarTX.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
DStarTX.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
Debug.h Rationalisation of debugging messages. 2016-03-17 22:45:26 +00:00
Globals.h Add the RSSI calibration mode. 2016-12-28 18:07:31 +00:00
IO.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
IO.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
IODue.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
IOSTM.cpp Adding conditional compilation 2017-01-28 10:18:10 -03:00
IOTeensy.cpp Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
LICENCE Initial commit 2016-01-14 18:57:21 +00:00
MMDVM.cpp Add the RSSI calibration mode. 2016-12-28 18:07:31 +00:00
MMDVM.ino Add the RSSI calibration mode. 2016-12-28 18:07:31 +00:00
MMDVM_STM32F4xx.coproj Small tweaks. 2016-12-30 11:34:31 +00:00
Makefile External TCXO support for STM32F4 and Nucleo 446 board support 2016-12-02 00:13:47 -03:00
P25Defines.h Tweaks to the P25 TX and RX. 2016-09-12 17:37:11 +01:00
P25RX.cpp Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
P25RX.h Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
P25TX.cpp Increase P25 transmit levels by 25%. 2016-11-16 14:06:51 +00:00
P25TX.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
README.md Update README.md 2017-01-03 16:36:34 +00:00
RSSIRB.cpp Add dummy RSSI sampling code. 2016-10-31 19:39:32 +00:00
RSSIRB.h Add the STM32F CPU support. 2016-11-07 20:09:35 +00:00
SampleRB.cpp Sanity check the ring buffers. 2016-06-13 19:47:45 +01:00
SampleRB.h Add the STM32F CPU support. 2016-11-07 20:09:35 +00:00
SerialArduino.cpp Abstract the serial port handling. 2016-11-01 18:01:22 +00:00
SerialPort.cpp Bump the version date. 2016-12-30 11:35:39 +00:00
SerialPort.h Add the RSSI calibration mode. 2016-12-28 18:07:31 +00:00
SerialRB.cpp Sanity check the ring buffers. 2016-06-13 19:47:45 +01:00
SerialRB.h Add the STM32F CPU support. 2016-11-07 20:09:35 +00:00
SerialSTM.cpp Refactor SerialSTM.cpp 2017-01-19 21:50:06 +01:00
Utils.cpp Initial commit 2016-01-14 18:57:21 +00:00
Utils.h Add the STM32F CPU support. 2016-11-07 20:09:35 +00:00
YSFDefines.h Initial commit 2016-01-14 18:57:21 +00:00
YSFRX.cpp Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
YSFRX.h Average the RSSI value for all modes. 2017-01-10 19:20:16 +00:00
YSFTX.cpp Add independent transmit levels. 2016-08-09 07:11:10 +01:00
YSFTX.h Add RSSI reporting for all modes. 2017-01-05 18:59:15 +00:00
mmdvmmenu.sh Add 12.288MHz TCXO to mmdvmmenu.sh 2016-11-10 16:48:52 +01:00
stm32f4xx_link.ld New linker script file for SMT32F4XX, some minor changes on Makefile 2016-11-13 17:52:01 -03:00

README.md

This is the source code of the MMDVM firmware that supports D-Star, DMR, System Fusion and P25 modes.

It runs on the Arduino Due, the ST-Micro STM32F407-DISCO and STM32F446-NUCLEO, as well as the Teensy 3.1/3.2/3.5/3.6. What these platforms have in common is the use of an ARM Cortex-M3 or M4 processor with a clock speed greater than 70 MHz, and access to at least one analogue to digital converter and one digital to analogue converter. A Cortex-M7 processor is also probably adequate.

In order to build this software for the Arduino Due, you will need to edit a file within the Arduino GUI and that is detailed in the BUILD.txt file. The STM32 support is being supplied via the Coocox IDE with ARM GCC. The Teensy support is via the latest beta of Teensyduino.

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.