kopia lustrzana https://github.com/SP8EBC/ParaTNC
159 wiersze
6.7 KiB
Plaintext
159 wiersze
6.7 KiB
Plaintext
/*
|
|
* config.h
|
|
*
|
|
* Created on: 03.07.2017
|
|
* Author: mateusz
|
|
*/
|
|
|
|
#ifndef STATION_CONFIG_H_
|
|
#define STATION_CONFIG_H_
|
|
|
|
/* ------------------ */
|
|
/* MODES OF OPERATION */
|
|
|
|
#define _METEO // Enable meteo station
|
|
#define _DIGI // Enable WIDE1-1 digipeater
|
|
//#define _DIGI_ONLY_789 // Limit digipeater to handle only -7, -8 and -9 SSIDs
|
|
#define _VICTRON // Enable support for Victron VE.Direct protocol
|
|
//#define _UMB_MASTER
|
|
|
|
/* MODES OF OPERATION */
|
|
/* ------------------ */
|
|
|
|
//#define PARATNC_HWREV_A
|
|
//#define PARATNC_HWREV_B
|
|
#define PARATNC_HWREV_C
|
|
|
|
/* ---------------------------- */
|
|
/* WEATHER/METEO CONFIGURATION */
|
|
|
|
//#define _DALLAS_AS_TELEM // Use Dallas one-wire thermometer as a 5th telemetry channel
|
|
// May be used even if _METEO is not enabled
|
|
#define _DALLAS_SPLIT_PIN
|
|
//#define _ANEMOMETER_TX20
|
|
#define _ANEMOMETER_ANALOGUE
|
|
#define _ANEMOMETER_PULSES_IN_10SEC_PER_ONE_MS_OF_WINDSPEED 10
|
|
|
|
//#define _SENSOR_MS5611
|
|
#define _SENSOR_BME280
|
|
|
|
#define _UMB_SLAVE_ID 1
|
|
#define _UMB_SLAVE_CLASS 8
|
|
#define _UMB_CHANNEL_WINDSPEED 460
|
|
#define _UMB_CHANNEL_WINDGUSTS 440
|
|
#define _UMB_CHANNEL_WINDDIRECTION 580
|
|
#define _UMB_CHANNEL_TEMPERATURE 100
|
|
#define _UMB_CHANNEL_QFE 300
|
|
|
|
/* WEATHER/METEO CONFIGURATION */
|
|
/* ---------------------------- */
|
|
|
|
//#define _MUTE_RF // TODO: Not yet implemented - This will make station RXonly and disable all data transmission
|
|
//#define _MUTE_OWN // TODO: Not yet implemented - This will disable all self-generated packets (wx, telemetry, beacon)
|
|
// and switch device to "pure" kiss TNC operation. Packets from PC will be transmitted normally.
|
|
|
|
// Coordines should be in APRS decimal format DDDMM.SS for Longitude and DDMM.SS for latitude
|
|
#define _CALL "SR9WXG"
|
|
#define _SSID 1
|
|
#define _LAT 4935.92
|
|
#define _LATNS 'N'
|
|
#define _LON 02059.77
|
|
#define _LONWE 'E'
|
|
#define _COMMENT "DigiW1+WX - Gora Chelm kolo Grybowa - by Mateusz SP8EBC"
|
|
|
|
// You can use only one of these below defines to choose symbol. Meteo data are are always transmitted with blue WX symbol
|
|
//#define _SYMBOL_DIGI // uncomment if you want digi symbol(green star with D inside)
|
|
#define _SYMBOL_WIDE1_DIGI // uncomment if you want 'little' digi symbol (green star with digit 1 overlaid)
|
|
//#define _SYMBOL_HOUSE // uncomment if you want house symbol
|
|
//#define _SYMBOL_RXIGATE // uncomment if you want rxigate symbol (black diamond with R)
|
|
//#define _SYMBOL_IGATE // uncomment if you want igate symol (black diamond with I)
|
|
|
|
// Or you can keep commented all symbol defines and choose custom one based on data from APRS symbols table
|
|
//#define _SYMBOL_F '/'
|
|
//#define _SYMBOL_S '#'
|
|
|
|
// Uncomment one of these two defines to choose what path You want. If you uncommend both of them or
|
|
// if you keep both commended path will be completely disabled. CALL-S>AKLPRZ:data
|
|
//#define _WIDE1_PATH // CALL-S>AKLPRZ,WIDE1-1:data
|
|
#define _WIDE21_PATH // CALL-S>AKLPRZ,WIDE2-1:data
|
|
|
|
// Comment this to disable beacon auto sending during startup (this can be risky if RF feedback occur)
|
|
//#define _BCN_ON_STARTUP
|
|
|
|
#define _WX_INTERVAL 4 // WX packet interval in minutes
|
|
#define _BCN_INTERVAL 44 // Own beacon interval in minutes
|
|
|
|
#define _PTT_PUSHPULL // Uncomment this if you want PTT line to work as Push-pull instead of Open Drain
|
|
#define _SERIAL_BAUDRATE 9600
|
|
|
|
// Transmitting delay
|
|
#define _DELAY_BASE 14 // * 50ms. For example setting 10 gives 500msec delay. Maximum value is 20
|
|
//#define _RANDOM_DELAY // adds random delay TO fixed time set by _DELAY_BASE. This additional time can be
|
|
// from 100ms up to 1 sec in 100ms steps. Values are drawn from samples going from ADC
|
|
// so it is better to use Unsquelched output in radio to provide much more randomness
|
|
//After waiting time declared above ParaTNC will check DCD (Data Carrier Detect) flag, which works as some
|
|
//kind of semaphore. If radio channel is not occupied by any other transmission TX will be keyed up immediately,
|
|
//otherwise software will wait for clear conditions.
|
|
|
|
// Few IMPORTANT hints about setting transmit delay properly.
|
|
//
|
|
// Transmit delay is key parameter to maintain RF network free from packet losses and collisions. If your station will be
|
|
// installed on tall object, without any other digi's close to it, you can set _DELAY_BASE to very low value and disable
|
|
// _RANDOM_DELAY. If you wanna rather auxiliary station, witch should only fill gap in RF coverage in small area, then
|
|
// _DELAY_BASE parameter should be not less than 12 (600msec), the smallest range the higher _DELAY_BASE should be.
|
|
// Additionally for gapfillers (auxiliary stations) _RANDOM_DELAY schould be enabled.
|
|
//
|
|
// This delay will ensure that while other station will be transmitting repeated packets from mobile, Yours will keep
|
|
// always quiet and won't jam RF network. This greatly improve DCD based access to channel. Various controllers uses
|
|
// various lenght of preamble, some of them produce signal which might be impossible to decode by ParaTNC, so DCD
|
|
// is only one part of effective multiaccess to medium.
|
|
|
|
// Do not touch this
|
|
#if defined (_SYMBOL_DIGI) && !defined (_SYMBOL_WIDE1_DIGI) && !defined (_SYMBOL_HOUSE) && !defined (_SYMOL_RXIGATE) &&\
|
|
!defined (_SYMBOL_IGATE)
|
|
#define _SYMBOL_F '/'
|
|
#define _SYMBOL_S '#'
|
|
#elif !defined (_SYMBOL_DIGI) && defined (_SYMBOL_WIDE1_DIGI) && !defined (_SYMBOL_HOUSE) && !defined (_SYMOL_RXIGATE) &&\
|
|
!defined (_SYMBOL_IGATE)
|
|
#define _SYMBOL_F '1'
|
|
#define _SYMBOL_S '#'
|
|
#elif !defined (_SYMBOL_DIGI) && !defined (_SYMBOL_WIDE1_DIGI) && defined (_SYMBOL_HOUSE) && !defined (_SYMOL_RXIGATE) &&\
|
|
!defined (_SYMBOL_IGATE)
|
|
#define _SYMBOL_F '/'
|
|
#define _SYMBOL_S '-'
|
|
#elif !defined (_SYMBOL_DIGI) && !defined (_SYMBOL_WIDE1_DIGI) && !defined (_SYMBOL_HOUSE) && defined (_SYMOL_RXIGATE) &&\
|
|
!defined (_SYMBOL_IGATE)
|
|
#define _SYMBOL_F 'I'
|
|
#define _SYMBOL_S '&'
|
|
#elif !defined (_SYMBOL_DIGI) && !defined (_SYMBOL_WIDE1_DIGI) && !defined (_SYMBOL_HOUSE) && !defined (_SYMOL_RXIGATE) &&\
|
|
defined (_SYMBOL_IGATE)
|
|
#define _SYMBOL_F 'R'
|
|
#define _SYMBOL_S '&'
|
|
#elif !defined (_SYMBOL_F) && !defined (_SYMBOL_S)
|
|
#error "Missing symbol configuration in station_config.h"
|
|
#elif defined (_SYMBOL_F) && defined (_SYMBOL_S)
|
|
#else
|
|
#error "Wrong symbol configuration in station_config.h"
|
|
#endif
|
|
#if defined (_METEO) && !defined (_DIGI)
|
|
#define _DIGI
|
|
#endif
|
|
|
|
#if defined(PARATNC_HWREV_A) && (defined (_METEO) || defined (_DALLAS_AS_TELEM)) && !defined(_DALLAS_SPLIT_PIN)
|
|
#define _DALLAS_SPLIT_PIN
|
|
#endif
|
|
|
|
#if defined(PARATNC_HWREV_B) && (defined (_METEO) || defined (_DALLAS_AS_TELEM)) && !defined(_DALLAS_SPLIT_PIN)
|
|
#define _DALLAS_SPLIT_PIN
|
|
#endif
|
|
|
|
#if defined(_ANEMOMETER_TX20) && defined(_ANEMOMETER_ANALOGUE)
|
|
#error "You cannot use two anemometers at once!!!"
|
|
#endif
|
|
|
|
#if !defined(_ANEMOMETER_TX20) && !defined(_ANEMOMETER_ANALOGUE) && !defined(_UMB_MASTER) && defined(_METEO)
|
|
#define _ANEMOMETER_TX20
|
|
#endif
|
|
|
|
#endif /* STATION_CONFIG_H_ */
|