MMDVM Hotspots

MMDVM Hotspots

This is probably the right article if you intend to compile your MMDVM tools by yourself.

This page shows my (more or less) actual configuration of my hotspots. I use currently one dual-hat for DMR and one dual-hat for YSF.

This page is currently under construction. There might be still some errors or incorrect information – I’ll update when I got more time.

Have a look at at github.com/juribeparada/MMDVM_HS/blob/master/README.md for your first visit before compiling your first dual-hat’s firmware.

YSF Hotspot

DMR Hotspot

Backup Configuration Files

/etc/crontab

# /etc/crontab: system-wide crontab
# [...] the default lines for daily/hourly... execution

# Collect statistics about system load, temperature
#59 * * * * rsync -ah /var/log/mmdvm/system-stats-fine.csv dominic@192.168.178.4:/volume1/NetBackup/Hambox/var/log/mmdvm/system-stats-fine.csv
#59 *   * * *   pi  cp -af /var/log/mmdvm/system-stats-fine.csv ~/
#*/10 *   * * *   pi  /home/pi/bin/stats.sh >> /var/log/mmdvm/system-stats-fine.csv

# Update Ham databases
#30 4   * * * root  /var/www/html/database/dbupdate.sh > /dev/null 2>&1
30 4  * * * root  curl --fail -o /usr/local/etc/DMRIds.dat -s http://www.pistar.uk/downloads/DMRIds.dat
32 4  * * * root /usr/local/sbin/YSFHostsupdate.sh 1> /dev/null 2>&1

# Regular shutdown of hotspot on regular work days
0   6  * * 1-5 root  /usr/local/sbin/hotspot off
50 17  * * 1-5 root  /usr/local/sbin/hotspot on
#0  12  * * 6   root  /usr/local/sbin/hotspot on

# Sometimes it happens, that you loose connection and you won't reconnect.
# Those lines check every five minutes, if you're still connected and restart the
# service if you don't show up on the master servers dashboard
#*/5 18-23,0-5  * * *   root  /usr/local/sbin/check_ysf
#*/5 18-23,0-5  * * *   root  /usr/local/sbin/check_dmr

# Restart hotspot at 5:00 am
##0   5  * * *   root  /bin/systemctl reboot

# Shrink /var/log
#7 */4  * * * root  /usr/local/sbin/shrinklog > /dev/null 2>&1

# COVID-19 Runde
#58 17  * * * root  /home/pi/bin/covidrunde start > /dev/null 2>&1
#5  19  * * * root  /home/pi/bin/covidrunde stop  > /dev/null 2>&1

For backup: DMRGateway.ini

I know, I don’t use DMRGateway any more but ffs, I need that configuration somewhere printed ;-)

[General]
RptAddress=127.0.0.1
RptPort=62032
LocalAddress=127.0.0.1
LocalPort=62031
RuleTrace=0
Daemon=0
Debug=0
RFTimeout=20
NetTimeout=20

[Log]
DisplayLevel=1
FileLevel=1
#FilePath=/var/log/MMDVM
#FilePath=/home/mmdvm/log
FilePath=/var/log/mmdvm
FileRoot=DMRGateway

[Voice]
Enabled=1
Language=en_GB
Directory=/usr/local/etc/DMR_Audio

[Info]
Enabled=0
RXFrequency=430425000
TXFrequency=438025000
Power=1
Latitude=47.073253
Longitude=10.974632
Height=0
Location="Laengenfeld"
Description="Austria"
URL=https://www.qrz.com/db/oe7drt

[XLX Network]
Startup=950
Enabled=0
File=/usr/local/etc/XLXHosts.txt
Port=62030
Password=passw0rd
ReloadTime=60
Slot=2
TG=6
Base=64000
Relink=60
Debug=0
Id=2327180
UserControl=1

[DMR Network 1]
Enabled=1
Address=94.199.173.125
Port=62031
TGRewrite0=2,8,2,8,1
PCRewrite0=2,84000,2,84000,1001
TypeRewrite0=2,9990,2,9990
SrcRewrite0=2,84000,2,8,1001
PassAllPC0=1
PassAllTG0=1
PassAllPC1=2
PassAllTG1=2
Password="********"
Debug=0
Id=232718003
Name=BM_Austria_2321

[DMR Network 2]
Enabled=1
Address=89.185.97.34
Port=55555
TGRewrite0=1,1,1,1,7
TGRewrite1=1,10,1,10,80
TGRewrite2=1,100,1,100,100
TGRewrite3=1,232,1,232,1
TGRewrite4=2,232,2,232,1
TGRewrite5=2,8181,2,8181,9
TGRewrite6=2,8191,2,8191,9
TGRewrite7=2,9,2,9,1
PCRewrite0=1,9055,1,9055,6
PCRewrite1=2,9055,2,9055,6
PCRewrite6=2,4000,2,4000,1001
Password="PASSWORD"
Debug=0
Id=232718004
Name=DMR+_IPSC2-OE-DMO
# last original line
#Options="StartRef=4197;RelinkTime=15;UserLink=1;TS1_1=110;TS2_1=232;"
Options="StartRef=4197;RelinkTime=15;UserLink=1;TS1_1=232;TS1_2=110;TS1_3=20;TS1_4=;TS1_5=;TS2_1=232;TS2_2=;TS2_3=;TS2_4=;TS2_5=;"
# COVID-19 Updated rules (adds TG6 and TG7)
#Options="StartRef=4197;RelinkTime=15;UserLink=1;TS1_1=232;TS1_2=110;TS1_3=20;TS1_4=6;TS1_5=7;TS2_1=232;TS2_2=;TS2_3=;TS2_4=;TS2_5=;"

[DMR Network 3]
Enabled=0
Name=DMR2YSF_Cross-over
Id=2327180
Address=127.0.0.1
Port=62033
Local=62034
TGRewrite0=2,7000001,2,1,999998
SrcRewrite0=2,1,2,7000001,999998
PCRewrite0=2,7000001,2,1,999998
Password=PASSWORD
Location=0
Debug=0

Software / Firmware

Config.h (older version; test version)

#if !defined(CONFIG_H)
#define  CONFIG_H
#define MMDVM_HS_DUAL_HAT_REV10
#define ENABLE_ADF7021
#define DUPLEX
#define ADF7021_12_2880
#define AD7021_GAIN_AUTO
#define STM32_USART1_HOST
#define I2C_ADDR 0x22
#define ENABLE_SCAN_MODE
#define SEND_RSSI_DATA
#define QUIET_MODE_LEDS
#define DISCREET_SRV_LED_INVERTED
#endif

Config.h (newer version, actual from today: 23rd August 2020)

#if !defined(CONFIG_H)
#define  CONFIG_H
#define MMDVM_HS_DUAL_HAT_REV10
#define ENABLE_ADF7021
#define DUPLEX
#define ADF7021_12_2880
#define AD7021_GAIN_AUTO
#define STM32_USART1_HOST
#define I2C_ADDR 0x22
#define ENABLE_SCAN_MODE
#define SEND_RSSI_DATA
#define QUIET_MODE_LEDS
#define DISCREET_SRV_LED_INVERTED
#define ENABLE_DEBUG
#define ENABLE_UDID
#endif