From 51c66fe6f954bbb68b6cb2f5415078f13cc84657 Mon Sep 17 00:00:00 2001 From: hp3icc <49044505+hp3icc@users.noreply.github.com> Date: Thu, 17 Jun 2021 20:24:24 -0500 Subject: [PATCH] Delete emq-TE1Rev8ws.sh --- emq-TE1Rev8ws.sh | 2036 ---------------------------------------------- 1 file changed, 2036 deletions(-) delete mode 100644 emq-TE1Rev8ws.sh diff --git a/emq-TE1Rev8ws.sh b/emq-TE1Rev8ws.sh deleted file mode 100644 index 0141429..0000000 --- a/emq-TE1Rev8ws.sh +++ /dev/null @@ -1,2036 +0,0 @@ -#!/bin/sh -echo Actualizando sistema -sudo apt-get update -y -sudo apt-get upgrade -y -sudo apt-get dist-upgrade -y -############################################ -echo instalando pre-requisitos -###################################################################################################### -#!/bin/sh -sudo apt-get install git -y -sudo apt-get install screen -y -sudo apt-get install gcc -y -sudo apt-get install g++ -y -sudo apt-get install make -y -sudo apt-get install cmake -y -sudo apt-get install libasound2-dev -y -sudo apt-get install libudev-dev -y -sudo apt-get install libusb-1.0-0-dev -y -sudo apt-get install libgps-dev -y -sudo apt-get install libx11-dev -y -sudo apt-get install libfftw3-dev -y -sudo apt-get install libpulse-dev -y -sudo apt-get install build-essential -y -sudo apt-get install alsa-utils -y -sudo apt-get install rsyslog -y -sudo apt-get install logrotate -y -sudo apt-get install gpsd -y -sudo apt-get install qt4-qmake -y -sudo apt-get install libtool -y -sudo apt-get install autoconf -y -sudo apt-get install automake -y -sudo apt-get install python-pkg-resources -y -sudo apt-get install sox -y -sudo apt-get install git-core -y -sudo apt-get install libi2c-dev -y -sudo apt-get install i2c-tools -y -sudo apt-get install lm-sensors -y -sudo apt-get install wiringpi -y -sudo apt-get install chkconfig -y -sudo apt-get install wavemon -y -sudo apt install python3-pip -y -sudo apt install python3 -sudo apt install python3-websockets -sudo apt install python3-psutil -sudo apt-get install python3-serial -sudo apt install python3-gpiozero -y -sudo apt-get install gpsd gpsd-clients python-gps -y -sudo apt install socket -sudo apt install threading -sudo apt install queue -sudo apt install sys -sudo apt install os -sudo apt install time -sudo apt install re -sudo apt install configparser -sudo apt install datetime -sudo apt install signal -sudo apt install datetime -sudo apt install bisect -sudo apt install struct -sudo apt install ansi2html -sudo apt install logrotate -sudo pip3 install ansi2html - -################## -cat > /etc/default/gpsd <<- "EOF" -USBAUTO="False" -DEVICES="/dev/ttyACM0" -START_DAEMON="true" -GPSD_OPTIONS="-n" -GPSD_SOCKET="/var/run/gpsd.sock" - -EOF - -sudo gpsd /dev/ttyACM0 -F /var/run/gpsd.sock - -################# -echo iniciando instalacion - -cd /opt -git clone https://github.com/iu5jae/pYSFReflector.git -cd pYSFReflector/ -#cp YSFReflector /usr/local/sbin/ -#cp YSFReflector.ini /usr/local/etc/ - -cp YSFReflector /usr/local/bin/ -chmod +x /usr/local/bin/YSFReflector -mkdir /etc/YSFReflector - -cp YSFReflector.ini /etc/YSFReflector/ -cd /etc/YSFReflector/ -sudo sed -i 's/FilePath=\/var\/log/FilePath=\/var\/log\/YSFReflector/' YSFReflector.ini -sudo sed -i 's/42395/42000/' YSFReflector.ini -sudo sed -i 's/FileRotate=1/FileRotate=0/' YSFReflector.ini -cd /opt/pYSFReflector/ -cp deny.db /usr/local/etc/ -chmod +x /usr/local/bin/YSFReflector -cd systemd/ -cp YSFReflector.service /lib/systemd/system - -sudo groupadd mmdvm -sudo useradd mmdvm -g mmdvm -s /sbin/nologin -mkdir /var/log/YSFReflector -sudo chown -R mmdvm:mmdvm /var/log/YSFReflector - -############################### - -mkdir /opt/YSF2DMR - -cd /opt -git clone https://github.com/juribeparada/MMDVM_CM.git -sudo cp -r /opt/MMDVM_CM/YSF2DMR /opt/ -cd YSF2DMR -sudo make -sudo make install - -cd /opt -git clone https://github.com/osmocom/rtl-sdr.git -cd rtl-sdr/ -mkdir build -cd build -cmake ../ -DINSTALL_UDEV_RULES=ON -sudo make -sudo make install -sudo ldconfig - -cd /opt -git clone https://github.com/asdil12/kalibrate-rtl.git -cd kalibrate-rtl/ -./bootstrap -./configure -sudo make -sudo make install -################################################ -#Direwolf - -#pulse audio - -sudo apt-get remove --purge pulseaudio -sudo apt-get autoremove -rm -rf /home/pi/.pulse -cd /opt - -git clone https://www.github.com/wb2osz/direwolf -cd direwolf -git checkout dev -mkdir build -cd build -cmake .. -make -j4 -sudo make install -make install-conf - -################################################################## -#multimon-ng -cd /opt -git clone https://github.com/EliasOenal/multimon-ng.git -cd multimon-ng/ -mkdir build -cd build -cmake .. -make -sudo make install - -cd /opt -git clone https://github.com/asdil12/pymultimonaprs.git -cd pymultimonaprs -sudo python2 setup.py install - -############################################################################################ -#web -cd /opt/ -git clone --recurse-submodules -j8 https://github.com/dg9vh/MMDVMHost-Websocketboard -sudo chown -R mmdvm:mmdvm /opt/MMDVMHost-Websocketboard -# -cat > /opt/MMDVMHost-Websocketboard/logtailer.ini <<- "EOF" -[DEFAULT] -# No need to touch this. If you want to bind it to a specific IP-address (if there are more than one interface to the -# network you can set your ip here - but default it listens on every interface -Host=0.0.0.0 - -# If changeing the port please change it also in the index.html-file at the parts where you find: -# new WebSocket("ws://" + window.location.hostname ... -Port=5678 - -# set to True if SSL will be used -Ssl=False -SslCert=/path/to/cert -SslKey=/path/to/keyfile - -# This defines the maximum amount of loglines to be sent on initial opening of the dashboard -MaxLines=500 - -# Keep this parameter synchrone to Filerotate in MMDVM.ini/DMRHost.ini - if 0 then False, if 1 then True -Filerotate=False -#True - -[MMDVMHost] -# Don't throw away the trailing slash! It is important but check logfile-location and Prefix twice :-) -Logdir=/var/log/mmdvm/ - -# Change this to DMRHost, if you are using DMRHost and configured this as log-prefix in the host-ini. -Prefix=MMDVMHost -# if you want to have the operator-names as popup with the callsigns, set this parts = 1 and the LookupFile to -# the right position. On MMDVMHost comment out the DMRIDs.dat-line to have the DMRIds and not the callsigns in the -# logfile to have the callsigns with names transported to the dashboard. -DMR_ID_Lookup=1 -DMR_ID_LookupFile=/opt/MMDVMHost/DMRIds.dat - -# Location of your MMDVM.ini/DMRHost.ini or similar -MMDVM_ini=/opt/MMDVMHost/MMDVM.ini - -# Localtion of your MMDVMHost/DMRHost-binary -MMDVM_bin=/opt/MMDVMHost/MMDVMHost -#/usr/local/bin/MMDVMHost - -[DAPNETGateway] -# Don't throw away the trailing slash! It is important but check logfile-location and Prefix twice :-) -Logdir=/var/log/mmdvm -#/mnt/ramdisk/ -Prefix=MMDVMHost -#DAPNETGateway - -[ServiceMonitoring] -# Here you list your Services to be monitored. Just add additional lines if needed but be sure to count them up -BinaryName1=MMDVMHost -BinaryName2=DMRGateway -BinaryName3=DGIdGateway -BinaryName4=YSF2DMR - - - -EOF -# -cat > /lib/systemd/system/http.server-mmdvmh.service <<- "EOF" -[Unit] -Description=Python3 http.server.mmdvmhost -After=network.target - -[Service] -User=root -Type=simple -#User=mmdvm -#Group=mmdvm -Restart=always -ExecStartPre=/bin/sleep 30 -# Modify for different location of Python3 or other port -ExecStart=/usr/bin/python3 -m http.server 80 --directory /opt/MMDVMHost-Websocketboard/html - -[Install] -WantedBy=multi-user.target - - -EOF -# -cat > /lib/systemd/system/logtailer-mmdvmh.service <<- "EOF" -[Unit] -Description=Python3 logtailer for MMDVMDash -After=network.target - -[Service] -Type=simple -User=mmdvm -Group=mmdvm -Restart=always -ExecStartPre=/bin/sleep 30 -# Modify for different location of Python3 or other port -WorkingDirectory=/opt/MMDVMHost-Websocketboard/ -ExecStart=/usr/bin/python3 /opt/MMDVMHost-Websocketboard/logtailer.py - -[Install] -WantedBy=multi-user.target - - -EOF -# -git clone --recurse-submodules -j8 https://github.com/dg9vh/WSYSFDash -cd /opt/WSYSFDash/ -sudo chown -R mmdvm /opt/WSYSFDash -# -cat > /opt/WSYSFDash/logtailer.ini <<- "EOF" -[DEFAULT] -# No need to change this line below -Host=0.0.0.0 -Port=5678 -# set to True if SSL will be used -Ssl=False -SslCert=/path/to/fullchain.pem -SslKey=/path/to/privkey.pem - -# This defines the maximum amount of loglines to be sent on initial opening of the dashboard -MaxLines=500 - -# Keep this parameter synchrone to Filerotate in YSFReflector.ini - if 0 then False, if 1 then True -Filerotate=False -#True - -# You can use the logtailer-Service for more than one reflector running on your system. -# To do this, just copy the [YSFReflectorN]-Section into a new one, renumber it and modify the Logdir and Prefix. -# To use this on systems with more than one reflector, it is recommended to use a real webserver to host the html-files. - -[YSFReflector] -# Localtion of your YSFReflector-binary -YSFReflector_bin=/usr/local/bin/YSFReflector - -Logdir=/var/log/YSFReflector/ -Prefix=YSFReflector - -#[YSFReflector2] -#Logdir=/var/log/YSFReflector2/ -#Prefix=YSFReflector - - - -EOF -# -cat > /lib/systemd/system/http.server-ysf.service <<- "EOF" -[Unit] -Description=Python3 http.server-ysf -After=network.target - -[Service] -User=root -ExecStartPre=/bin/sleep 10 -Type=simple -#User=mmdvm -#Group=mmdvm -Restart=always -# Modify for different location of Python3 or other port -ExecStart=/usr/bin/python3 -m http.server 80 --directory /opt/WSYSFDash/html - -[Install] -WantedBy=multi-user.target - -EOF -# -cat > /lib/systemd/system/logtailer-ysf.service <<- "EOF" -[Unit] -Description=Python3 logtailer for WSYSFDash -After=network.target - -[Service] -ExecStartPre=/bin/sleep 10 -Type=simple -User=mmdvm -Group=mmdvm -Restart=always -# Modify for different location of Python3 or location of files -WorkingDirectory=/opt/WSYSFDash/ -ExecStart=/usr/bin/python3 /opt/WSYSFDash/logtailer.py - -[Install] -WantedBy=multi-user.target - - -EOF -# - -sudo chmod +777 /var/log -sudo mkdir /var/log/ysf2dmr -sudo mkdir /var/log/mmdvm -sudo chmod +777 /var/log/* - -cd /opt/MMDVMHost-Websocketboard/html/data/ -rm TG_List.csv -wget https://raw.githubusercontent.com/hp3icc/emq-TE1ws/main/TG_List.csv - -#################################### - -cd /boot -sudo sed -i 's/console=serial0,115200 //' cmdline.txt - -sudo systemctl stop serial-getty@ttyAMA0.service -sudo systemctl stop bluetooth.service -sudo systemctl disable serial-getty@ttyAMA0.service -sudo systemctl disable bluetooth.service - -sudo sed -i 's/#dtparam=i2c_arm=on/dtparam=i2c_arm=on/' config.txt -sudo sed -i 's/dtparam=audio=on/#dtparam=audio=on/' config.txt - -echo "enable_uart=1" >> config.txt -echo "dtoverlay=pi3-disable-bt" >> config.txt -echo "dtparam=spi=on" >> config.txt - -################## -cat > /lib/systemd/system/monp.service <<- "EOF" -[Unit] -Description=sudo modprobe i2c-dev -#Wants=network-online.target -#After=syslog.target network-online.target -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=sudo modprobe i2c-dev -[Install] -WantedBy=multi-user.target -EOF - -########## -cd /opt -git clone https://github.com/g4klx/MMDVMHost.git -cd MMDVMHost/ -make -make install -git clone https://github.com/hallard/ArduiPi_OLED -cd ArduiPi_OLED -sudo make -cd /opt/MMDVMHost/ -make clean -sudo make -f Makefile.Pi.OLED - -groupadd mmdvm -useradd mmdvm -g mmdvm -s /sbin/nologin -chown mmdvm /var/log/ - -############################################################################################################################################################# -###### -cat > /bin/menu-mm-rtl <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Multimon-ng APRS " \ -2 " Iniciar APRS " \ -3 " Detener APRS " \ -4 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /etc/pymultimonaprs.json;; -2) -sudo systemctl restart multimon-rtl.service && sudo systemctl enable multimon-rtl.service;; -3) -sudo systemctl stop multimon-rtl.service && sudo systemctl disable multimon-rtl.service;; -4) -break; -esac -done -exit 0 -EOF -###menu -cat > /bin/menu <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 22 50 12 \ -1 " APRS Direwolf Analogo" \ -2 " APRS Direwolf RTL-SDR " \ -3 " APRS Multimon-ng " \ -4 " APRS Ionosphere " \ -5 " MMDVMHost " \ -6 " Dvswitch " \ -7 " pYSFReflector " \ -8 " YSF2DMR " \ -9 " Editar WiFi " \ -10 " Reiniciar Raspberry " \ -11 " APAGAR Raspberry " \ -12 " Salir del menu " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -menu-dw-analogo;; -2) -menu-dw-rtl;; -3) -menu-mm-rtl;; -4) -menu-ionos;; -5) -menu-mmdvm;; -6) -menu-dvs;; -7) -menu-ysf;; -8) -menu-ysf2dmr;; -9) -menu-wifi;; -10) -sudo reboot ;; -11) -menu-apagar;; -12) -break; -esac -done -exit 0 -EOF -######menu-wifi -cat > /bin/menu-wifi <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar redes WiFi " \ -2 " Reiniciar dispositivo WiFi " \ -3 " Buscar redes wifi cercanas " \ -4 " Ver intensidad de WIFI " \ -5 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /etc/wpa_supplicant/wpa_supplicant.conf ;; -2) -sudo ifconfig wlan0 down && sudo ifconfig wlan0 up ;; -3) -sudo iwlist wlan0 scanning | grep ESSID ;; -4) -sudo wavemon ;; -5) -break; -esac -done -exit 0 -EOF - - -####menu-mmdvm -cat > /bin/menu-mmdvm <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar MMDVMHost " \ -2 " Iniciar MMDVMHost " \ -3 " Detener MMDVMHost " \ -4 " Dashboard ON " \ -5 " Dashboard Off " \ -6 " Editar Puerto WebServer " \ -7 " Editar HTML " \ -8 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/MMDVMHost/MMDVM.ini;; -2) -sudo sh /opt/MMDVMHost/DMRIDUpdate.sh && sudo systemctl enable dmrid-mmdvm.service ;; -3) -sudo systemctl stop mmdvmh.service && sudo systemctl stop dmrid-mmdvm.service && sudo systemctl disable dmrid-mmdvm.service;; -4) -sudo systemctl restart logtailer-mmdvmh.service && sudo systemctl enable logtailer-mmdvmh.service && sudo systemctl restart http.server-mmdvmh.service && sudo systemctl enable http.server-mmdvmh.service ;; -5) -sudo systemctl stop logtailer-mmdvmh.service && sudo systemctl disable logtailer-mmdvmh.service && sudo systemctl stop http.server-mmdvmh.service && sudo systemctl disable http.server-mmdvmh.service ;; -6) -sudo nano /lib/systemd/system/http.server-mmdvmh.service && sudo systemctl daemon-reload && sudo systemctl restart http.server-mmdvmh.service ;; -7) -sudo nano /opt/MMDVMHost-Websocketboard/html/index.html ;; -8) -break; -esac -done -exit 0 -EOF -########menu-ysf -cat > /bin/menu-ysf <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar pYSFReflector Server " \ -2 " Iniciar Reflector " \ -3 " Detener Reflector " \ -4 " Dashbord on " \ -5 " Dashbord off " \ -6 " Editar Puerto WebServer " \ -7 " Editar HTML " \ -8 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /etc/YSFReflector/YSFReflector.ini ;; -2) -sudo systemctl stop YSFReflector.service && sudo systemctl start YSFReflector.service && sudo systemctl enable YSFReflector.service ;; -3) -sudo systemctl stop YSFReflector.service && sudo systemctl disable YSFReflector.service ;; -4) -sudo systemctl restart logtailer-ysf.service && sudo systemctl enable logtailer-ysf.service && sudo systemctl restart http.server-ysf.service && sudo systemctl enable http.server-ysf.service ;; -5) -sudo systemctl stop logtailer-ysf.service && sudo systemctl disable logtailer-ysf.service && sudo systemctl stop http.server-ysf.service && sudo systemctl disable http.server-ysf.service ;; -6) -sudo nano /lib/systemd/system/http.server-ysf.service && sudo systemctl daemon-reload && sudo systemctl restart http.server-ysf.service ;; -7) -sudo nano /opt/WSYSFDash/html/index.html ;; -8) -break; -esac -done -exit 0 -EOF -##########menu-dvs -cat > /bin/menu-dvs <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Dvswitch Server " \ -2 " Iniciar Dvswitch " \ -3 " Detener Dvswitch " \ -4 " Dashbord on " \ -5 " Dashbord off " \ -6 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo /usr/local/dvs/dvs ;; -2) -sudo systemctl restart dmrid-dvs.service && sudo systemctl restart analog_bridge.service && sudo systemctl enable analog_bridge.service && sudo systemctl enable dmrid-dvs.service ;; -3) -sudo systemctl stop mmdvm_bridge.service && sudo systemctl stop dmrid-dvs.service && sudo systemctl stop analog_bridge.service && sudo systemctl disable analog_bridge.service && sudo systemctl disable mmdvm_bridge.service && sudo systemctl disable dmrid-dvs.service ;; -4) -sudo cp -r /var/www/web-dvs/* /var/www/html/ && sudo systemctl restart lighttpd.service && sudo systemctl enable lighttpd.service && sudo chown -R www-data:www-data /var/www/html && sudo chmod +777 /var/www/html/* ;; -5) -sudo systemctl disable lighttpd.service && sudo systemctl stop lighttpd.service && sudo rm -r /var/www/html/* ;; -6) -break; -esac -done -exit 0 -EOF -###menu-apagar -cat > /bin/menu-apagar <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 11 100 3 \ -1 " Iniciar apagado seguro" \ -2 " Retornar menu " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo shutdown -h now -;; -2) break; -esac -done -exit 0 -EOF -###menu-cp-rtl -cat > /bin/menu-cp-rtl <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Direwolf " \ -2 " Iniciar APRS " \ -3 " Detener APRS " \ -4 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/direwolf/dw.conf;; -2) -sudo systemctl restart direwolf.service && sudo systemctl enable direwolf.service;; -3) -sudo systemctl stop direwolf.service && sudo systemctl disable direwolf.service;; -4) - break; -esac -done -exit 0 -EOF -#####menu-dw-analogo -cat > /bin/menu-dw-analogo <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Direwolf Analogo " \ -2 " Iniciar APRS " \ -3 " Detener APRS " \ -4 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/direwolf/dw.conf;; -2) -sudo systemctl restart direwolf.service && sudo systemctl enable direwolf.service;; -3) -sudo systemctl stop direwolf.service && sudo systemctl disable direwolf.service;; -4) -break; -esac -done -exit 0 -EOF -######menu-dw-rtl -cat > /bin/menu-dw-rtl <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Direwolf RTL " \ -2 " Editar RTL-SDR " \ -3 " Iniciar APRS RX-IGate " \ -4 " Detener APRS RX-IGate " \ -5 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/direwolf/sdr.conf ;; -2) -sudo nano /opt/direwolf/rtl.sh ;; -3) -sudo systemctl restart direwolf-rtl.service && sudo systemctl enable direwolf-rtl.service;; -4) -sudo systemctl stop direwolf-rtl.service && sudo systemctl disable direwolf-rtl.service;; -5) -break; -esac -done -exit 0 -EOF - -##### -cat > /opt/direwolf/sdr.conf <<- "EOF" -############################################################# -# # -# Configuration file for Dire Wolf # -# # -# Linux version setting by hp3icc # -# configuration for SDR read-only IGate. # -############################################################# -ADEVICE null null -CHANNEL 0 -MYCALL HP3ICC-10 -PBEACON sendto=IG delay=0:40 every=30 symbol="/r" lat=08^30.01N long=080^20.83W comment="APRS RX-IGATE / Raspbian Proyect by hp3icc" -# First you need to specify the name of a Tier 2 server. -# The current preferred way is to use one of these regional rotate addresses: -# noam.aprs2.net - for North America -# soam.aprs2.net - for South America -# euro.aprs2.net - for Europe and Africa -# asia.aprs2.net - for Asia -# aunz.aprs2.net - for Oceania -IGSERVER igates.aprs.fi:14580 -#noam.aprs2.net -# You also need to specify your login name and passcode. -# Contact the author if you can't figure out how to generate the passcode. -IGLOGIN HP3ICC-10 12345 -# That's all you need for a receive only IGate which relays -# messages from the local radio channel to the global servers. -AGWPORT 9000 -KISSPORT 9001 -EOF -### -######menu-ysf2dmr -cat > /bin/menu-ysf2dmr <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar YSF2DMR " \ -2 " Iniciar YSF2DMR " \ -3 " Detener YSF2DMR " \ -4 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/YSF2DMR/YSF2DMR.ini;; -2) -sudo sh /opt/YSF2DMR/DMRIDUpdate.sh && sudo systemctl enable dmrid-ysf2dmr.service;; -3) -sudo systemctl stop ysf2dmr.service && sudo systemctl stop dmrid-ysf2dmr.service && sudo systemctl disable dmrid-ysf2dmr.service;; -4) -break; -esac -done -exit 0 -EOF -########ionosphere -mkdir /opt/ionsphere -cd /opt/ionsphere -wget https://github.com/cceremuga/ionosphere/releases/download/v1.0.0-beta1/ionosphere-raspberry-pi.tar.gz -tar vzxf ionosphere-raspberry-pi.tar.gz - -cd /opt/ionsphere/ionosphere-raspberry-pi - -cat > /opt/ionsphere/ionosphere-raspberry-pi/ionos.sh <<- "EOF" -#!/bin/sh -PATH=/bin:/usr/bin:/usr/local/bin -unset LANG -/opt/ionsphere/ionosphere-raspberry-pi/ionosphere -EOF - -chmod +x /opt/ionsphere/ionosphere-raspberry-pi/ionosphere -chmod +x /opt/ionsphere/ionosphere-raspberry-pi/ionos.sh -chmod +777 /opt/ionsphere/ionosphere-raspberry-pi/ionos.sh -###nano /opt/ionsphere/ionosphere-raspberry-pi/config/config.yml - -#####menu-ionos -cat > /bin/menu-ionos <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu "Suba o Baje con las flechas del teclado y seleccione el numero de opcion" 20 50 11 \ -1 " Editar Ionosphere APRS " \ -2 " Iniciar APRS " \ -3 " Detener APRS " \ -4 " Menu Principal " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo nano /opt/ionsphere/ionosphere-raspberry-pi/config/config.yml ;; -2) -systemctl enable ionos.service && sudo systemctl restart ionos.service ;; -3) -sudo systemctl stop ionos.service && sudo systemctl disable ionos.service ;; -4) -break; -esac -done -exit 0 -EOF -################################ -cat > /lib/systemd/system/ionos.service <<- "EOF" -[Unit] -Description=Ionphere-RTL Service -Wants=network-online.target -After=syslog.target network-online.target -[Service] -User=root -Type=simple -Restart=always -RestartSec=3 -StandardOutput=null -WorkingDirectory=/opt/ionsphere/ionosphere-raspberry-pi -#ExecStartPre=/bin/sleep 30 -ExecStart=sh /opt/ionsphere/ionosphere-raspberry-pi/ionos.sh -ExecReload=/bin/kill -HUP $MAINPID -KillMode=process -[Install] -# To make the network-online.target available -# systemctl enable systemd-networkd-wait-online.service -WantedBy=network-online.target -EOF -########################################## -################### -cat > /opt/direwolf/dw.conf <<- "EOF" -############################################################# -# # -# Configuration file for Dire Wolf # -# # -# Linux version setting by hp3icc # -# # -############################################################# -############################################################# -# # -# FIRST AUDIO DEVICE PROPERTIES # -# (Channel 0 + 1 if in stereo) # -# # -############################################################# -ADEVICE plughw:1,0 -#ADEVICE null null -# ADEVICE - plughw:1,0 -# ADEVICE UDP:7355 default -# Number of audio channels for this souncard: 1 or 2. -# -ACHANNELS 1 -############################################################# -# # -# CHANNEL 0 PROPERTIES # -# # -############################################################# -CHANNEL 0 -MYCALL HP3ICC-10 -MODEM 1200 -#MODEM 1200 1200:2200 -#MODEM 300 1600:1800 -#MODEM 9600 0:0 -# -#MODEM 1200 E+ /3 -# -# -# If not using a VOX circuit, the transmitter Push to Talk (PTT) -# DON'T connect it directly! -# -# For the PTT command, specify the device and either RTS or DTR. -# RTS or DTR may be preceded by "-" to invert the signal. -# Both can be used for interfaces that want them driven with opposite polarity. -# -# COM1 can be used instead of /dev/ttyS0, COM2 for /dev/ttyS1, and so on. -# -#PTT CM108 -#PTT COM1 RTS -#PTT COM1 RTS -DTR -#PTT /dev/ttyUSB0 RTS -#PTT /dev/ttyUSB0 DTR -#PTT GPIO 25 -#PTT GPIO 26 -# The Data Carrier Detect (DCD) signal can be sent to the same places -# as the PTT signal. This could be used to light up an LED like a normal TNC. -#DCD COM1 -DTR -#DCD GPIO 24 -#pin18 (GPIO 24) - (cathode) LED (anode) - 270ohm resistor - 3.3v -#DCD GPIO 13 -############################################################# -# # -# VIRTUAL TNC SERVER PROPERTIES # -# # -############################################################# -# -# Dire Wolf acts as a virtual TNC and can communicate with -# client applications by different protocols: -# -# - the "AGW TCPIP Socket Interface" - default port 8000 -# - KISS protocol over TCP socket - default port 8001 -# - KISS TNC via pseudo terminal (-p command line option) -# -#Setting to 0 disables UI-proto only AGW and TCP-KISS ports -AGWPORT 8000 -KISSPORT 8001 -#KISSPORT 0 -# -# It is sometimes possible to recover frames with a bad FCS. -# This applies to all channels. -# 0 [NONE] - Don't try to repair. -# 1 [SINGLE] - Attempt to fix single bit error. (default) -# 2 [DOUBLE] - Also attempt to fix two adjacent bits. -# ... see User Guide for more values and in-depth discussion. -# -#FIX_BITS 0 -#Enable fixing of 1 bits and use generic AX25 heuristics data (not APRS heuristi$ -#FIX_BITS 1 AX25 -# -############################################################# -# # -# BEACONING PROPERTIES # -# # -############################################################# -#GPSD -#TBEACON every=0:30 symbol="/v" comment="APRS TRACKER / Raspbian Proyect by hp3icc" via=WIDE2-2 -#PBEACON delay=0:01 every=30 symbol="/r" lat=08^30.01N long=080^20.83W comment="APRS DIGI-IGATE / Raspbian Proyect by hp3icc" via=WIDE2-2 -#PBEACON sendto=IG delay=0:40 every=30 symbol="/r" lat=08^30.01N long=080^20.83W comment="APRS DIGI-IGATE / Raspbian Proyect by hp3icc" -############################################################# -# # -# DIGIPEATER PROPERTIES # -# # -############################################################# -DIGIPEAT 0 0 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE -FILTER 0 0 t/poimqstunw -############################################################# -# # -# INTERNET GATEWAY # -# # -############################################################# -# First you need to specify the name of a Tier 2 server. -# The current preferred way is to use one of these regional rotate addresses: -# noam.aprs2.net - for North America -# soam.aprs2.net - for South America -# euro.aprs2.net - for Europe and Africa -# brazil.d2g.com -# -#IGSERVER igates.aprs.fi:14580 -#IGSERVER noam.aprs2.net:14580 -#IGSERVER cx2sa.net:14580 - -#IGLOGIN HP3ICC-10 12345 -IGTXVIA 0 WIDE2-2 -# -# -#IGFILTER f/HP3ICC-5/600 -#IGFILTER p/HP -#m/600 -# -FILTER IG 0 t/poimqstunw -IGTXLIMIT 6 10 -# -EOF -######################## -cat > /lib/systemd/system/dmrid-mmdvm.service <<- "EOF" -[Unit] -Description=DMRIDupdate MMDVMHost -Wants=network-online.target -After=syslog.target network-online.target - -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=/opt/MMDVMHost/DMRIDUpdate.sh - -[Install] -WantedBy=multi-user.target - -EOF -################### -cat > /lib/systemd/system/mmdvmh.service <<- "EOF" -[Unit] -Description=MMDVM Host Service -After=syslog.target network.target - -[Service] -User=root -WorkingDirectory=/opt/MMDVMHost -#ExecStartPre=/bin/sleep 10 -ExecStart=/opt/MMDVMHost/MMDVMHost /opt/MMDVMHost/MMDVM.ini -#ExecStart=/usr/bin/screen -S MMDVMHost -D -m /home/MMDVMHost/MMDVMHost /home/M$ -ExecStop=/usr/bin/screen -S MMDVMHost -X quit - -[Install] -WantedBy=multi-user.target - -EOF -################ -cat > /lib/systemd/system/direwolf.service <<- "EOF" -[Unit] -Description=DireWolf is a software "soundcard" modem/TNC and APRS decoder -Documentation=man:direwolf -AssertPathExists=/opt/direwolf/dw.conf - -[Unit] -Description=Direwolf Service -#Wants=network-online.target -After=sound.target syslog.target -#network-online.target - -[Service] -User=root -ExecStart=sudo direwolf -c /opt/direwolf/dw.conf -#ExecStart=/usr/bin/direwolf -t 0 -c /opt/direwolf/dw.conf -StandardOutput=syslog -StandardError=syslog -SyslogIdentifier=direwolf - -[Install] -WantedBy=multi-user.target - -EOF -##### -cat > /lib/systemd/system/dmrid-ysf2dmr.service <<- "EOF" -[Unit] -Description=DMRIDupdate YSF2DMR -Wants=network-online.target -After=syslog.target network-online.target - -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=/opt/YSF2DMR/DMRIDUpdate.sh - -[Install] -WantedBy=multi-user.target - -EOF -######### -cat > /lib/systemd/system/direwolf-rtl.service <<- "EOF" -[Unit] -Description=Direwolf-RTL Service -Wants=network-online.target -After=syslog.target network-online.target - -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=/opt/direwolf/rtl.sh -# | direwolf -c /home/pi/direwolf/sdr.conf - -[Install] -WantedBy=multi-user.target -#ExecStart= /usr/local/bin/rtl_fm -M fm -f 144.39M -p 0 -s 24000 -g 42 - | /usr/local/bin/direwolf-rtl -c /home/pi/direwolf/sdr.conf -r 24000 -D 1 -B 1200 - -EOF -############# - -cat > /lib/systemd/system/multimon-rtl.service <<- "EOF" -[Unit] -Description=Direwolf-RTL Service -Wants=network-online.target -After=syslog.target network-online.target - -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=sudo pymultimonaprs - -[Install] -WantedBy=multi-user.target -EOF -##################### -cat > /lib/systemd/system/ysf2dmr.service <<- "EOF" -[Unit] -Description=YSF2DMR Service -After=syslog.target network.target - -[Service] -User=root -WorkingDirectory=/opt/YSF2DMR -ExecStartPre=/bin/sleep 30 -ExecStart=/opt/YSF2DMR/YSF2DMR /opt/YSF2DMR/YSF2DMR.ini - -[Install] -WantedBy=multi-user.target - -EOF -############ - -############### -cat > /opt/MMDVMHost/MMDVM.ini <<- "EOF" -[General] -Callsign=HP3ICC -Id=714000000 -Timeout=180 -Duplex=0 -ModeHang=3 -#RFModeHang=10 -#NetModeHang=3 -Display=None -#Display=OLED -Daemon=0 - -[Info] -RXFrequency=438800000 -TXFrequency=438800000 -Power=1 -# The following lines are only needed if a direct connection to a DMR master is being used -Latitude=0.0 -Longitude=0.0 -Height=0 -Location=Panama -Description=Multi-Mode-MMDVM -URL=www.google.co.uk - -[Log] -# Logging levels, 0=No logging -DisplayLevel=1 -FileLevel=1 -FilePath=/var/log/mmdvm -FileRoot=MMDVMHost -FileRotate=0 - -[CW Id] -Enable=0 -Time=10 -# Callsign= - -[DMR Id Lookup] -File=/opt/MMDVMHost/DMRIds.dat -Time=24 - -[NXDN Id Lookup] -File=NXDN.csv -Time=24 - -[Modem] -# Port=/dev/ttyACM0 -Port=/dev/ttyAMA0 -#Port=\\.\COM4 -#Protocol=uart -# Address=0x22 -TXInvert=1 -RXInvert=0 -PTTInvert=0 -TXDelay=100 -RXOffset=0 -TXOffset=0 -DMRDelay=0 -RXLevel=50 -TXLevel=50 -RXDCOffset=0 -TXDCOffset=0 -RFLevel=50 -# CWIdTXLevel=50 -# D-StarTXLevel=50 -DMRTXLevel=50 -YSFTXLevel=50 -# P25TXLevel=50 -# NXDNTXLevel=50 -# POCSAGTXLevel=50 -FMTXLevel=50 -RSSIMappingFile=RSSI.dat -UseCOSAsLockout=0 -Trace=0 -Debug=0 - -[Transparent Data] -Enable=0 -RemoteAddress=127.0.0.1 -RemotePort=40094 -LocalPort=40095 -# SendFrameType=0 - -[UMP] -Enable=0 -# Port=\\.\COM4 -Port=/dev/ttyACM1 - -[D-Star] -Enable=0 -Module=C -SelfOnly=0 -AckReply=1 -AckTime=750 -AckMessage=0 -ErrorReply=1 -RemoteGateway=0 -# ModeHang=10 -WhiteList= - -[DMR] -Enable=1 -Beacons=0 -BeaconInterval=60 -BeaconDuration=3 -ColorCode=1 -SelfOnly=0 -EmbeddedLCOnly=1 -DumpTAData=0 -# Prefixes=234,235 -# Slot1TGWhiteList= -# Slot2TGWhiteList= -CallHang=3 -TXHang=4 -# ModeHang=10 -# OVCM Values, 0=off, 1=rx_on, 2=tx_on, 3=both_on, 4=force off -# OVCM=0 - -[System Fusion] -Enable=1 -LowDeviation=0 -SelfOnly=0 -TXHang=4 -RemoteGateway=1 -# ModeHang=10 - -[P25] -Enable=0 -NAC=293 -SelfOnly=0 -OverrideUIDCheck=0 -RemoteGateway=0 -TXHang=5 -# ModeHang=10 - -[NXDN] -Enable=0 -RAN=1 -SelfOnly=0 -RemoteGateway=0 -TXHang=5 -# ModeHang=10 - -[POCSAG] -Enable=0 -Frequency=439987500 - -[FM] -Enable=0 -# Callsign=HP3ICC -CallsignSpeed=20 -CallsignFrequency=1000 -CallsignTime=10 -CallsignHoldoff=0 -CallsignHighLevel=50 -CallsignLowLevel=20 -CallsignAtStart=1 -CallsignAtEnd=1 -CallsignAtLatch=0 -RFAck=K -ExtAck=N -AckSpeed=20 -AckFrequency=1750 -AckMinTime=4 -AckDelay=1000 -AckLevel=50 -# Timeout=180 -TimeoutLevel=80 -CTCSSFrequency=88.4 -CTCSSThreshold=30 -# CTCSSHighThreshold=30 -# CTCSSLowThreshold=20 -CTCSSLevel=20 -KerchunkTime=0 -HangTime=7 -AccessMode=1 -COSInvert=0 -RFAudioBoost=1 -MaxDevLevel=90 -ExtAudioBoost=1 - -[D-Star Network] -Enable=0 -GatewayAddress=127.0.0.1 -GatewayPort=20010 -LocalPort=20011 -# ModeHang=3 -Debug=0 - -[DMR Network] -Enable=1 -# Type may be either 'Direct' or 'Gateway'. When Direct you must provide the Master's -# address as well as the Password, and for DMR+, Options also. -Type=Direct -Address=3021.master.brandmeister.network -Port=62031 -#Local=62032 -Password=********* -Jitter=360 -Slot1=1 -Slot2=1 -# Options= -# ModeHang=3 -Debug=0 - -[System Fusion Network] -Enable=1 -LocalAddress=127.0.0.1 -#LocalPort=3200 -GatewayAddress=europelink.pa7lim.nl -GatewayPort=42000 -# ModeHang=3 -Debug=0 - -[P25 Network] -Enable=0 -GatewayAddress=127.0.0.1 -GatewayPort=42020 -LocalPort=32010 -# ModeHang=3 -Debug=0 - -[NXDN Network] -Enable=0 -Protocol=Icom -LocalAddress=127.0.0.1 -LocalPort=14021 -GatewayAddress=127.0.0.1 -GatewayPort=14020 -# ModeHang=3 -Debug=0 - -[POCSAG Network] -Enable=0 -LocalAddress=127.0.0.1 -LocalPort=3800 -GatewayAddress=127.0.0.1 -GatewayPort=4800 -# ModeHang=3 -Debug=0 - -[TFT Serial] -# Port=modem -Port=/dev/ttyAMA0 -Brightness=50 - -[HD44780] -Rows=2 -Columns=16 -# For basic HD44780 displays (4-bit connection) -# rs, strb, d0, d1, d2, d3 -Pins=11,10,0,1,2,3 -# Device address for I2C -I2CAddress=0x20 -# PWM backlight -PWM=0 -PWMPin=21 -PWMBright=100 -PWMDim=16 -DisplayClock=1 -UTC=0 - -[Nextion] -# Port=modem -Port=/dev/ttyAMA0 -Brightness=50 -DisplayClock=1 -UTC=0 -#Screen Layout: 0=G4KLX 2=ON7LDS -ScreenLayout=2 -IdleBrightness=20 - -[OLED] -Type=3 -Brightness=1 -Invert=0 -Scroll=0 -Rotate=1 -Cast=0 -LogoScreensaver=0 - -[LCDproc] -Address=localhost -Port=13666 -#LocalPort=13667 -DimOnIdle=0 -DisplayClock=1 -UTC=0 - -[Lock File] -Enable=0 -File=/tmp/MMDVM_Active.lck - -[Remote Control] -Enable=0 -Address=127.0.0.1 -Port=7642 - - -EOF -######## -cat > /opt/YSF2DMR/YSF2DMR.ini <<- "EOF" -[Info] -RXFrequency=438800000 -TXFrequency=438800000 -Power=1 -Latitude=0.0 -Longitude=0.0 -Height=0 -Location=Panama -Description=Multi-Mode -URL=www.google.co.uk - -[YSF Network] -Callsign=HP3ICC -Suffix=ND -#Suffix=RPT -DstAddress=127.0.0.1 -DstPort=42000 -LocalAddress=127.0.0.1 -#LocalPort=42013 -EnableWiresX=0 -RemoteGateway=0 -HangTime=1000 -WiresXMakeUpper=0 -# RadioID=***** -# FICHCallsign=2 -# FICHCallMode=0 -# FICHBlockTotal=0 -# FICHFrameTotal=6 -# FICHMessageRoute=0 -# FICHVOIP=0 -# FICHDataType=2 -# FICHSQLType=0 -# FICHSQLCode=0 -DT1=1,34,97,95,43,3,17,0,0,0 -DT2=0,0,0,0,108,32,28,32,3,8 -Daemon=0 - -[DMR Network] -Id=714000000 -#XLXFile=XLXHosts.txt -#XLXReflector=950 -#XLXModule=D -StartupDstId=714 -# For TG call: StartupPC=0 -StartupPC=0 -Address=3021.master.brandmeister.network -Port=62031 -Jitter=500 -EnableUnlink=0 -TGUnlink=4000 -PCUnlink=0 -# Local=62032 -Password=**************** -# Options= -TGListFile=TGList-DMR.txt -Debug=0 - -[DMR Id Lookup] -File=/opt/YSF2DMR/DMRIds.dat -Time=24 -DropUnknown=0 - -[Log] -# Logging levels, 0=No logging -DisplayLevel=1 -FileLevel=1 -FilePath=/var/log/ysf2dmr/ -FileRoot=YSF2DMR - -[aprs.fi] -Enable=0 -AprsCallsign=HP3ICC -Server=noam.aprs2.net -#Server=euro.aprs2.net -Port=14580 -Password=12345 -APIKey=APIKey -Refresh=240 -Description=APRS Description - - -EOF -################### - -cat > /etc/pymultimonaprs.json <<- "EOF" -{ - "callsign": "HP3ICC-10", - "passcode": "12345", - "gateway": ["igates.aprs.fi:14580","noam.aprs2.net:14580"], - "preferred_protocol": "any", - "append_callsign": true, - "source": "rtl", - "rtl": { - "freq": 144.390, - "ppm": 0, - "gain": 24, - "offset_tuning": false, - "device_index": 0 - }, - "alsa": { - "device": "default" - }, - "beacon": { - "lat": 8.5211, - "lng": -80.3599, - "table": "/", - "symbol": "r", - "comment": "APRS RX-IGATE / Raspbian Proyect by hp3icc", - "status": { - "text": "", - "file": false - }, - "weather": false, - "send_every": 300, - "ambiguity": 0 - } -} -EOF -####### -cat > /opt/ionsphere/ionosphere-raspberry-pi/config/config.yml <<- "EOF" -rtl: - path: "rtl_fm" - frequency: "144.390M" - gain: "49.6" - ppm-error: "0" - squelch-level: "0" - sample-rate: "22050" - additional-flags: "" -multimon: - path: "multimon-ng" - additional-flags: "" -beacon: - enabled: false - call-sign: "" - interval: 30m - comment: "" -handlers: -- id: "4967ade5-7a97-416f-86bf-6e2ae8a5e581" - name: "stdout" -- id: "b67ac5d5-3612-4618-88a9-a63d36a1777c" - name: "aprsis" - options: - enabled: true - server: "igates.aprs.fi:14580" - call-sign: "HP3ICC-10" - passcode: "12345" - filter: "" -EOF -############# -cat > /opt/direwolf/rtl.sh <<- "EOF" -#!/bin/sh -PATH=/bin:/usr/bin:/usr/local/bin -unset LANG -rtl_fm -M fm -f 144.39M -p 0 -s 24000 -g 42 - | /usr/local/bin/direwolf -c /opt/direwolf/sdr.conf -r 24000 -D 1 -B 1200 - -EOF -sudo chmod +x /opt/direwolf/rtl.sh -############################################### -############################## -#dvswitch - -cd /opt - -wget http://dvswitch.org/buster - -chmod +x buster - -./buster - -apt-get update -y - -apt-get install dvswitch-server -y - -cd /opt/YSFGateway/ -sudo sed -i 's/42000/42500/' YSFGateway.ini -#/opt/YSFGateway/YSFGateway.ini -systemctl restart ysfgateway.service - -#### -cat > /opt/MMDVM_Bridge/MMDVM_Bridge.ini <<- "EOF" -[General] -Callsign=N0CALL -Id=1234567 -Timeout=180 -Duplex=0 - -[Info] -RXFrequency=147000000 -TXFrequency=147000000 -Power=1 -Latitude=8.5211 -Longitude=-80.3598 -Height=0 -Location=Panama -Description=MMDVM_Bridge -URL=https://groups.io/g/DVSwitch - -[Log] -# Logging levels, 0=No logging, 1=Debug, 2=Message, 3=Info, 4=Warning, 5=Error, 6=Fatal -DisplayLevel=1 -FileLevel=2 -FilePath=/var/log/mmdvm -FileRoot=MMDVM_Bridge - -[DMR Id Lookup] -File=/var/lib/mmdvm/DMRIds.dat -Time=24 - -[NXDN Id Lookup] -File=/var/lib/mmdvm/NXDN.csv -Time=24 - -[Modem] -Port=/dev/null -RSSIMappingFile=/dev/null -Trace=0 -Debug=0 - -[D-Star] -Enable=0 -Module=B - -[DMR] -Enable=0 -ColorCode=1 -EmbeddedLCOnly=1 -DumpTAData=0 - -[System Fusion] -Enable=0 - -[P25] -Enable=0 -NAC=293 - -[NXDN] -Enable=0 -RAN=1 -Id=12345 - -[D-Star Network] -Enable=0 -GatewayAddress=127.0.0.1 -GatewayPort=20010 -LocalPort=20011 -Debug=0 - -[DMR Network] -Enable=0 -Address=hblink.dvswitch.org -Port=62031 -Jitter=360 -Local=62032 -Password=passw0rd -# for DMR+ see https://github.com/DVSwitch/MMDVM_Bridge/blob/master/DOC/DMRplus_startup_options.md -# for XLX the syntax is: Options=XLX:4009 -# Options= -Slot1=0 -Slot2=1 -Debug=0 - -[System Fusion Network] -Enable=0 -LocalAddress=0 -LocalPort=3200 -GatewayAddress=127.0.0.1 -GatewayPort=4200 -Debug=0 - -[P25 Network] -Enable=0 -GatewayAddress=127.0.0.1 -GatewayPort=42020 -LocalPort=32010 -Debug=0 - -[NXDN Network] -Enable=0 -#LocalAddress=127.0.0.1 -Debug=0 -LocalPort=14021 -GatewayAddress=127.0.0.1 -GatewayPort=14020 -EOF -#### -################## -##DMRI DVS service -cat > /lib/systemd/system/dmrid-dvs.service <<- "EOF" -[Unit] -Description=DMRIDupdate DVS -Wants=network-online.target -After=syslog.target network-online.target - -[Service] -User=root -#ExecStartPre=/bin/sleep 1800 -ExecStart=/opt/MMDVM_Bridge/DMRIDUpdate.sh - -[Install] -WantedBy=multi-user.target -EOF -########## -#web - -sudo groupadd www-data - -sudo usermod -G www-data -a pi - -sudo chown -R www-data:www-data /var/www/html - -sudo chmod -R 775 /var/www/html -############################# - - -mkdir /var/www/web-dvs -chmod +777 /var/www/web-dvs -chmod +777 /var/www/html/* -sudo cp -r /var/www/html/* /var/www/web-dvs/ -sudo rm -r /var/www/html/* -## - -cat > /opt/DMRIDUpdate.sh <<- "EOF" -#! /bin/bash -############################################################################### -# -# CONFIGURATION -# -# Full path to DMR ID file, without final slash -DMRIDPATH=/opt -DMRIDFILE=${DMRIDPATH}/DMRIds.dat -# DMR IDs now served by RadioID.net -#DATABASEURL='https://ham-digital.org/status/users.csv' -DATABASEURL='https://www.radioid.net/static/user.csv' -# -# How many DMR ID files do you want backed up (0 = do not keep backups) -DMRFILEBACKUP=1 -# -# Command line to restart MMDVMHost -RESTARTCOMMAND="systemctl restart mmdvmhost.service" -# RESTARTCOMMAND="killall MMDVMHost ; /path/to/MMDVMHost/executable/MMDVMHost /path/to/MMDVM/ini/file/MMDVM.ini" -############################################################################### -# -# Do not edit below here -# -############################################################################### -# Check we are root -if [ "$(id -u)" != "0" ] -then - echo "This script must be run as root" 1>&2 - exit 1 -fi -# Create backup of old file -if [ ${DMRFILEBACKUP} -ne 0 ] -then - cp ${DMRIDFILE} ${DMRIDFILE}.$(date +%d%m%y) -fi -# Prune backups -BACKUPCOUNT=$(ls ${DMRIDFILE}.* | wc -l) -BACKUPSTODELETE=$(expr ${BACKUPCOUNT} - ${DMRFILEBACKUP}) -if [ ${BACKUPCOUNT} -gt ${DMRFILEBACKUP} ] -then - for f in $(ls -tr ${DMRIDFILE}.* | head -${BACKUPSTODELETE}) - do - rm $f - done -fi -# Generate new file -curl ${DATABASEURL} 2>/dev/null | sed -e 's/\t//g' | awk -F"," '/,/{gsub(/ /, "", $2); printf "%s\t%s\t%s\n", $1, $2, $3}' | sed -e 's/\(.\) .*/\1/g' > ${DMRIDPATH}/DMRIds.tmp -NUMOFLINES=$(wc -l ${DMRIDPATH}/DMRIds.tmp | awk '{print $1}') -if [ $NUMOFLINES -gt 1 ] -then - mv ${DMRIDPATH}/DMRIds.tmp ${DMRIDFILE} -else - echo " ERROR during file update " - rm ${DMRIDPATH}/DMRIds.tmp -fi -# Restart ysf2dmr -eval ${RESTARTCOMMAND} -EOF -####### - -cp /opt/DMRIDUpdate.sh /opt/MMDVMHost/ -cd /opt/MMDVMHost/ -sudo sed -i 's/\/opt/\/opt\/MMDVMHost/' DMRIDUpdate.sh -sudo sed -i 's/systemctl restart mmdvmhost.service/systemctl restart mmdvmh.service/' DMRIDUpdate.sh - - -cp /opt/DMRIDUpdate.sh /opt/YSF2DMR/ -cd /opt/YSF2DMR/ -sudo sed -i 's/\/opt/\/opt\/YSF2DMR/' DMRIDUpdate.sh -sudo sed -i 's/systemctl restart mmdvmhost.service/systemctl restart ysf2dmr.service/' DMRIDUpdate.sh - - - -cp /opt/DMRIDUpdate.sh /opt/MMDVM_Bridge/ -cd /opt/MMDVM_Bridge/ -sudo sed -i 's/\/opt/\/opt\/MMDVM_Bridge/' DMRIDUpdate.sh -sudo sed -i 's/systemctl restart mmdvmhost.service/systemctl restart mmdvm_bridge.service/' DMRIDUpdate.sh - -rm /opt/DMRIDUpdate.sh - -########################### -sudo systemctl stop mmdvm_bridge.service -sudo systemctl stop dmrid-dvs.service -sudo systemctl stop analog_bridge.service -sudo systemctl disable analog_bridge.service -sudo systemctl disable mmdvm_bridge.service -sudo systemctl disable dmrid-dvs.service -sudo systemctl disable lighttpd.service -sudo systemctl stop lighttpd.service -sudo rm -r /var/www/html/* -########################### -cat > /etc/modprobe.d/raspi-blacklist.conf <<- "EOF" -blacklist snd_bcm2835 -# blacklist spi and i2c by default (many users don't need them) -#blacklist spi-bcm2708 -#blacklist i2c-bcm2708 -blacklist snd-soc-pcm512x -blacklist snd-soc-wm8804 -# dont load default drivers for the RTL dongle -blacklist dvb_usb_rtl28xxu -blacklist rtl_2832 -blacklist rtl_2830 -EOF -######## - - -################################ -cd /usr/share/alsa/ -sudo sed -i 's/defaults.ctl.card 0/defaults.ctl.card 1/' alsa.conf -sudo sed -i 's/defaults.pcm.card 0/defaults.pcm.card 1/' alsa.conf -################################### -echo finalizando instalacion -sudo chown -R mmdvm:mmdvm /opt/MMDVMHost/MMDVMHost -sudo chmod +777 /opt/* -sudo chmod +777 /opt/MMDVMHost-Websocketboard/* -sudo chmod +777 /opt/WSYSFDash/* -sudo chmod +777 /opt/direwolf/* -sudo chmod +777 /opt/direwolf/dw.conf -sudo chmod +777 /opt/direwolf/sdr.conf -sudo chmod +777 /opt/direwolf/src/* -sudo chmod +777 /opt/MMDVMHost/* -sudo chmod +777 /opt/MMDVMHost/MMDVM.ini -sudo chmod +777 /opt/YSF2DMR/* -sudo chmod +777 /opt/YSF2DMR/YSF2DMR.ini -sudo chmod +777 /opt/ionsphere/* -sudo chmod +777 /opt/ionsphere/ionosphere-raspberry-pi/config/config.yml -sudo chmod +777 /opt/pymultimonaprs/* -sudo chmod +777 /opt/multimon-ng/* -sudo chmod +777 /opt/kalibrate-rtl/* -sudo chmod +777 /opt/YSFClients/* -sudo chmod +777 /opt/MMDVM_CM/* -sudo chmod +777 /opt/MMDVM_Bridge/* -sudo chmod +777 /opt/MMDVM_Bridge/MMDVM_Bridge.ini -sudo chmod +777 /etc/pymultimonaprs.json - -sudo chmod +x /usr/bin/python3 -sudo chmod +x /opt/MMDVM_Bridge/DMRIDUpdate.sh -sudo chmod +x /opt/YSF2DMR/DMRIDUpdate.sh -sudo chmod +x /opt/MMDVMHost/DMRIDUpdate.sh - -sudo chmod 755 /lib/systemd/system/YSFReflector.service -sudo chmod 755 /lib/systemd/system/monp.service -sudo chmod 755 /lib/systemd/system/dmrid-ysf2dmr.service -sudo chmod 755 /lib/systemd/system/dmrid-dvs.service -sudo chmod 755 /lib/systemd/system/dmrid-mmdvm.service -sudo chmod 755 /lib/systemd/system/mmdvmh.service -sudo chmod 755 /lib/systemd/system/direwolf.service -sudo chmod 755 /lib/systemd/system/direwolf-rtl.service -sudo chmod 755 /lib/systemd/system/multimon-rtl.service -sudo chmod 755 /lib/systemd/system/ionos.service -sudo chmod 755 /lib/systemd/system/ysf2dmr.service -sudo chmod 755 /lib/systemd/system/http.server-mmdvmh.service -sudo chmod 755 /lib/systemd/system/logtailer-mmdvmh.service -sudo chmod 755 /lib/systemd/system/http.server-ysf.service -sudo chmod 755 /lib/systemd/system/logtailer-ysf.service -sudo systemctl daemon-reload - -sudo systemctl enable monp.service -################### - -cp /bin/menu /bin/MENU -chmod +x /bin/MENU -chmod +x /bin/menu* - - - -########################## - -sudo timedatectl set-timezone America/Panama - -##### -sudo cat > /boot/wpa_supplicant.conf <<- "EOF" -ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev -update_config=1 -country=PA -################################################################## -# # -# Favor tomar como referencia, las dos redes wifi que aparecen # -# abajo, puede editar con los datos de su red wifi o agregar un # -# network nuevo, por cada red wifi nueva que quiera almacenar. # -# # -# Raspbian proyect by HP3ICC, 73. # -# # -################################################################## -network={ - ssid="Coloque_aqui_nombre_de_red_wifi" - psk="Coloque_aqui_la_clave_wifi" -} -network={ - ssid="WiFi-Net" - psk="Panama310" -} -EOF -####### -# -cd /tmp - -sudo rm /usr/local/bin/direwolf - -wget https://github.com/hp3icc/TE1Rev5b/raw/main/direwolf - -sudo cp /tmp/direwolf /usr/local/bin/ - -sudo chmod +x /usr/local/bin/direwolf -# -sudo rm -r /opt/direwolf/build/* -cd /opt/direwolf/build -cmake .. -make -j4 -sudo make install -##### -cat > /tmp/completado.sh <<- "EOF" -#!/bin/bash -while : ; do -choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu " Precione enter (return o intro) para finalizar la instalacion y reiniciar su equipo " 11 100 3 \ -1 " Iniciar Reinicio de Raspberry " 3>&1 1>&2 2>&3) -exitstatus=$? -#on recupere ce choix -#exitstatus=$? -if [ $exitstatus = 0 ]; then - echo "Your chosen option:" $choix -else - echo "You chose cancel."; break; -fi -# case : action en fonction du choix -case $choix in -1) -sudo reboot -;; -esac -done -exit 0 -EOF -sudo chmod +x /tmp/completado.sh -sh /tmp/completado.sh