parent
89daa20476
commit
956ee1a81c
@ -0,0 +1,116 @@
|
||||
/*
|
||||
* Copyright (C) 2017,2018,2019,2020 by Andy Uribe CA6JAU
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
#if !defined(CONFIG_H)
|
||||
#define CONFIG_H
|
||||
|
||||
// Select one board (STM32F103 based boards)
|
||||
// 1) ZUMspot RPi or ZUMspot USB:
|
||||
// #define ZUMSPOT_ADF7021
|
||||
// 2) Libre Kit board or any homebrew hotspot with modified RF7021SE and Blue Pill STM32F103:
|
||||
// #define LIBRE_KIT_ADF7021
|
||||
// 3) MMDVM_HS_Hat revisions 1.1, 1.2 and 1.4 (DB9MAT & DF2ET)
|
||||
// #define MMDVM_HS_HAT_REV12
|
||||
// 4) MMDVM_HS_Dual_Hat revisions 1.0 (DB9MAT & DF2ET & DO7EN)
|
||||
// #define MMDVM_HS_DUAL_HAT_REV10
|
||||
// 5) Nano hotSPOT (BI7JTA)
|
||||
// #define NANO_HOTSPOT
|
||||
// 6) NanoDV NPi or USB revisions 1.0 (BG4TGO & BG5HHP)
|
||||
// #define NANO_DV_REV10
|
||||
// 7) D2RG MMDVM_HS RPi (BG3MDO, VE2GZI, CA6JAU)
|
||||
// #define D2RG_MMDVM_HS
|
||||
// 8) BridgeCom SkyBridge HotSpot
|
||||
#define SKYBRIDGE_HS
|
||||
|
||||
// Enable ADF7021 support:
|
||||
#define ENABLE_ADF7021
|
||||
|
||||
// Enable full duplex support with dual ADF7021 (valid for homebrew hotspots only):
|
||||
// #define DUPLEX
|
||||
|
||||
// TCXO of the ADF7021
|
||||
// For 14.7456 MHz:
|
||||
#define ADF7021_14_7456
|
||||
// For 12.2880 MHz:
|
||||
// #define ADF7021_12_2880
|
||||
|
||||
// Configure receiver gain for ADF7021
|
||||
// AGC automatic, default settings:
|
||||
#define AD7021_GAIN_AUTO
|
||||
// AGC automatic with high LNA linearity:
|
||||
// #define AD7021_GAIN_AUTO_LIN
|
||||
// AGC OFF, lowest gain:
|
||||
// #define AD7021_GAIN_LOW
|
||||
// AGC OFF, highest gain:
|
||||
// #define AD7021_GAIN_HIGH
|
||||
|
||||
// Host communication selection:
|
||||
#define STM32_USART1_HOST
|
||||
// #define STM32_USB_HOST
|
||||
// #define STM32_I2C_HOST
|
||||
|
||||
// I2C host address:
|
||||
#define I2C_ADDR 0x22
|
||||
|
||||
// Enable mode detection:
|
||||
#define ENABLE_SCAN_MODE
|
||||
|
||||
// Send RSSI value:
|
||||
#define SEND_RSSI_DATA
|
||||
|
||||
// Enable Nextion LCD serial port repeater on USART2 (ZUMspot Libre Kit and ZUMspot RPi):
|
||||
#define SERIAL_REPEATER
|
||||
#define SERIAL_REPEATER_BAUD 9600
|
||||
|
||||
// Enable Nextion LCD serial port repeater on USART1 (Do not use with STM32_USART1_HOST enabled):
|
||||
// #define SERIAL_REPEATER_USART1
|
||||
|
||||
// Enable P25 Wide modulation:
|
||||
// #define ENABLE_P25_WIDE
|
||||
|
||||
// Disable mode LEDs blink during scan mode:
|
||||
// #define QUIET_MODE_LEDS
|
||||
|
||||
// Engage a constant or descreet Service LED mode once repeater is running
|
||||
// #define CONSTANT_SRV_LED
|
||||
// #define CONSTANT_SRV_LED_INVERTED
|
||||
// #define DISCREET_SRV_LED
|
||||
// #define DISCREET_SRV_LED_INVERTED
|
||||
|
||||
// Use the YSF and P25 LEDs for NXDN
|
||||
// #define USE_ALTERNATE_NXDN_LEDS
|
||||
|
||||
// Use the D-Star and DMR LEDs for POCSAG
|
||||
// #define USE_ALTERNATE_POCSAG_LEDS
|
||||
|
||||
// Enable for RPi 3B+, USB mode
|
||||
// #define LONG_USB_RESET
|
||||
|
||||
// Enable modem debug messages
|
||||
#define ENABLE_DEBUG
|
||||
|
||||
// Disable frequency bands check
|
||||
// #define DISABLE_FREQ_CHECK
|
||||
|
||||
// Disable frequency restrictions (satellite, ISS, etc)
|
||||
// #define DISABLE_FREQ_BAN
|
||||
|
||||
// Enable UDID feature
|
||||
#define ENABLE_UDID
|
||||
|
||||
#endif
|
||||
@ -0,0 +1,84 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Copyright (C) 2017,2018,2019,2020 by Andy Uribe CA6JAU
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
# Configure latest version
|
||||
FW_VERSION="v1.5.2"
|
||||
|
||||
# Configure beta version
|
||||
FW_VERSION_BETA="v1.5.1b"
|
||||
|
||||
# Firmware filename
|
||||
FW_FILENAME="skybridge_rpi_fw.bin"
|
||||
|
||||
# Download latest firmware
|
||||
if [ $1 = "beta" ]; then
|
||||
echo "Downloading beta firmware..."
|
||||
curl -OL https://github.com/juribeparada/MMDVM_HS/releases/download/$FW_VERSION_BETA/$FW_FILENAME
|
||||
else
|
||||
echo "Downloading latest firmware (stable)..."
|
||||
curl -OL https://github.com/juribeparada/MMDVM_HS/releases/download/$FW_VERSION/$FW_FILENAME
|
||||
fi
|
||||
|
||||
# Download STM32F10X_Lib (only for binary tools)
|
||||
if [ ! -d "./STM32F10X_Lib/utils" ]; then
|
||||
git clone https://github.com/juribeparada/STM32F10X_Lib
|
||||
fi
|
||||
|
||||
# Configure vars depending on OS
|
||||
if [ $(uname -s) == "Linux" ]; then
|
||||
if [ $(uname -m) == "x86_64" ]; then
|
||||
echo "Linux 64-bit detected"
|
||||
DFU_RST="./STM32F10X_Lib/utils/linux64/upload-reset"
|
||||
DFU_UTIL="./STM32F10X_Lib/utils/linux64/dfu-util"
|
||||
ST_FLASH="./STM32F10X_Lib/utils/linux64/st-flash"
|
||||
STM32FLASH="./STM32F10X_Lib/utils/linux64/stm32flash"
|
||||
elif [ $(uname -m) == "armv7l" ]; then
|
||||
echo "Raspberry Pi 3 detected"
|
||||
DFU_RST="./STM32F10X_Lib/utils/rpi32/upload-reset"
|
||||
DFU_UTIL="./STM32F10X_Lib/utils/rpi32/dfu-util"
|
||||
ST_FLASH="./STM32F10X_Lib/utils/rpi32/st-flash"
|
||||
STM32FLASH="./STM32F10X_Lib/utils/rpi32/stm32flash"
|
||||
elif [ $(uname -m) == "armv6l" ]; then
|
||||
echo "Raspberry Pi 2 or Pi Zero W detected"
|
||||
DFU_RST="./STM32F10X_Lib/utils/rpi32/upload-reset"
|
||||
DFU_UTIL="./STM32F10X_Lib/utils/rpi32/dfu-util"
|
||||
ST_FLASH="./STM32F10X_Lib/utils/rpi32/st-flash"
|
||||
STM32FLASH="./STM32F10X_Lib/utils/rpi32/stm32flash"
|
||||
else
|
||||
echo "Linux 32-bit detected"
|
||||
DFU_RST="./STM32F10X_Lib/utils/linux/upload-reset"
|
||||
DFU_UTIL="./STM32F10X_Lib/utils/linux/dfu-util"
|
||||
ST_FLASH="./STM32F10X_Lib/utils/linux/st-flash"
|
||||
STM32FLASH="./STM32F10X_Lib/utils/linux/stm32flash"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $(uname -s) == "Darwin" ]; then
|
||||
echo "macOS detected"
|
||||
DFU_RST="./STM32F10X_Lib/utils/macosx/upload-reset"
|
||||
DFU_UTIL="./STM32F10X_Lib/utils/macosx/dfu-util"
|
||||
ST_FLASH="./STM32F10X_Lib/utils/macosx/st-flash"
|
||||
STM32FLASH="./STM32F10X_Lib/utils/macosx/stm32flash"
|
||||
fi
|
||||
|
||||
# Stop MMDVMHost process to free serial port
|
||||
sudo killall MMDVMHost >/dev/null 2>&1
|
||||
|
||||
# Upload the firmware
|
||||
eval sudo $STM32FLASH -v -w $FW_FILENAME -g 0x0 -R -i 20,-21,21:-20,21 /dev/ttyAMA0
|
||||
|
||||
Loading…
Reference in new issue