Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
dmr:dvmega:nutzung_mit_mmdvm_und_bluestack_micro [2016/03/23 17:58] – angelegt dg9vhdmr:dvmega:nutzung_mit_mmdvm_und_bluestack_micro [2016/04/28 22:47] dg9vh
Zeile 1: Zeile 1:
 ====== Nutzung mit MMDVM und BlueStack micro+ ====== ====== Nutzung mit MMDVM und BlueStack micro+ ======
 +===== Wichtiger Hinweis vorneweg =====
 +Diese Anleitung gilt für einen Raspberry Pi B, B+ bzw. Raspberry Pi 2, für einen Raspberry Pi 3 ist ggf. noch weiteres notwendig, was ich derzeit nicht weiß, weil ich keinen RPI3 mein Eigen nenne.
 +
 ===== Voraussetzungen ===== ===== Voraussetzungen =====
 Zur Nutzung des DVMEGA mit MMDVM und BlueStack micro+ benötigt man Zur Nutzung des DVMEGA mit MMDVM und BlueStack micro+ benötigt man
Zeile 28: Zeile 31:
 und stößt den Compiliervorgang an und stößt den Compiliervorgang an
   make   make
 +
 +Nach dem Kompilieren legt man sich mit 
 +  sudo mkdir /opt/mmdvm
 +ein entsprechendes Verzeichnis an, welches den MMDVMHost zukünftig beherbergt.
      
-Im Anschluss kopiert man die beiden Dateien "MMDVMHost" und "MMDVM.ini" z.B. nach "/opt/mmdvm/" und editiert die MMDVM.ini-Datei etwa nach folgendem Muster:+Im Anschluss kopiert man die beiden Dateien "MMDVMHost" und "MMDVM.ini" nach "/opt/mmdvm/" und editiert die MMDVM.ini-Datei etwa nach folgendem Muster:
  
   [General]   [General]
Zeile 42: Zeile 49:
   TXFrequency=433612500   TXFrequency=433612500
   Power=0.01   Power=0.01
-  Latitude=0.0 +  Latitude=49.231966 
-  Longitude=0.0 +  Longitude=6.834845 
-  Height=0+  Height=5
   Location=Voelklingen, JN39kf   Location=Voelklingen, JN39kf
   Description=Multi-Mode Repeater   Description=Multi-Mode Repeater
Zeile 62: Zeile 69:
   TXInvert=1   TXInvert=1
   RXInvert=0   RXInvert=0
-  PTTInvert=1+  PTTInvert=0
   TXDelay=100   TXDelay=100
   DMRDelay=0   DMRDelay=0
   RXLevel=50   RXLevel=50
   TXLevel=50   TXLevel=50
-  OscOffset=50+  OscOffset=0
   Debug=1   Debug=1
      
Zeile 115: Zeile 122:
      
 Anschließend kann man die Software mit Anschließend kann man die Software mit
-  sudo /opt/mmdvm/MMDVMHost /opt/mmdvm/MMDFM.ini +  sudo /opt/mmdvm/MMDVMHost /opt/mmdvm/MMDVM.ini 
 starten. starten.
  
 +===== Watchdogscript für automatischen Start beim Hochfahren des Raspberry Pi und Restart bei Problemen =====
 +An dieser Stelle wird es leider jetzt etwas unsauber, da man zunächst mittels
 +
 +  sudo chmod +s /opt/mmdvm/MMDVMHost
 +  
 +dem MMDVMHost ein "sticky bit" verpassen muss, damit es die Logs schreiben kann.
 +
 +Hier das Watchdogscript:
 +
 +  #!/bin/bash                                                                     
 +  
 +  ## Fill in name of program here.                                                
 +  PROG="MMDVMHost"                                                                
 +  PROG_PATH="/opt/mmdvm/"                                                         
 +  PROG_ARGS="/opt/mmdvm/MMDVM.ini"                                                
 +  PIDFILE="/var/run/mmdvm.pid"                                                    
 +  USER="pi"                                                                       
 +  IP_FOR_TEST="87.106.126.49"                                                     
 +  PING_COUNT=5                                                                    
 +  PING="/bin/ping"    
 +  WATCHDOGFILE="/mnt/ramdisk/watchdog.run"                                                            
 +  runwatchdog=0                                                                   
 +  
 +  start() {                                                                       
 +    if [ -e $PIDFILE ]; then                                                    
 +        ## Program is running, exit with error.                                 
 +        echo "Error! $PROG is currently running!" 1>&                         
 +        exit 1                                                                  
 +    else                                                                        
 +        ## Change from /dev/null to something like /var/log/$PROG if you want to save output.                                                                   
 +        cd $PROG_PATH                                                           
 +        sudo -u $USER /usr/bin/stdbuf -i0 -o0 -e0 ./$PROG $PROG_ARGS 2>&1 >> /dev/null &                                                                        
 +        echo "$PROG started"                                                    
 +        sudo touch $PIDFILE                                                     
 +    fi                                                                          
 +  }
 +  
 +  if [ -e $WATCHDOGFILE ]; then
 +        echo "Error! Watchdog is currently running!" 1>&2
 +        exit 1
 +  fi
 +  
 +  if [ ! "$(pidof $PROG)" ]
 +  then
 +        runwatchdog=1
 +        sudo touch $WATCHDOGFILE
 +        sudo rm $PIDFILE
 +        start
 +  fi
 +  
 +  sleep 10
 +  
 +  counter=`tail -n 4 /mnt/ramdisk/MMDVM-$(date --utc +%Y-%m-%d).log |grep 'Opening the MMDVM' |wc -c`
 +  
 +  if [ $counter -gt 0 ]
 +  then
 +        runwatchdog=1
 +        sudo touch $WATCHDOGFILE
 +        killall $PROG
 +        sudo rm $PIDFILE
 +        start
 +  fi
 +  
 +  if [ $runwatchdog -gt "0" ]
 +  then
 +        sudo rm $WATCHDOGFILE
 +  fi
 +  
 +  exit 0
 +  ### END
 +
 +Dieses Script als /home/pi/scripts/watchdog.sh abspeichern und als Nutzer "pi" mit ''crontab -e'' folgende Zeile eintragen:
 +
 +''* * * * * /home/pi/scripts/watchdog.sh''
 +
 +Damit wird im Minutentakt das Script aufgerufen.