2017-05-30 22:58:20 +00:00
|
|
|
#include "config.h"
|
|
|
|
#include "debug.h"
|
|
|
|
|
|
|
|
module_conf_t config[9];
|
2017-06-12 14:46:03 +00:00
|
|
|
uint8_t ssdv_buffer[1024*50];
|
|
|
|
uint8_t ssdv_buffer2[1024*100];
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Put your configuration settings here
|
2017-06-12 14:46:03 +00:00
|
|
|
void start_user_modules(void)
|
2017-05-30 22:58:20 +00:00
|
|
|
{
|
|
|
|
// Module POSITION, APRS 2m AFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[0].power = 20; // Power 20 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[0].protocol = PROT_APRS_AFSK; // Protocol APRS, modulation AFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[0].frequency.type = FREQ_APRS_REGION; // Dynamic frequency allocation
|
2017-05-30 22:58:20 +00:00
|
|
|
config[0].frequency.hz = 144800000; // Default frequency 144.800 MHz
|
|
|
|
config[0].init_delay = 0; // Module startup delay in msec
|
|
|
|
config[0].trigger.type = TRIG_EVENT; // Trigger transmission on event
|
|
|
|
config[0].trigger.event = EVENT_NEW_POINT; // Trigger when new track point released
|
2017-06-15 06:08:48 +00:00
|
|
|
chsnprintf(config[0].aprs_conf.callsign, 6, "DL7AD"); // APRS Callsign
|
|
|
|
config[0].aprs_conf.ssid = 12; // APRS SSID
|
|
|
|
config[0].aprs_conf.symbol = SYM_BALLOON; // APRS Symbol
|
|
|
|
chsnprintf(config[0].aprs_conf.path, 16, "WIDE1-1"); // APRS Path
|
|
|
|
config[0].aprs_conf.preamble = 300; // APRS Preamble
|
|
|
|
config[0].aprs_conf.tel[0] = TEL_VBAT; // APRS Telemetry parameter 1
|
|
|
|
config[0].aprs_conf.tel[1] = TEL_VSOL; // APRS Telemetry parameter 2
|
|
|
|
config[0].aprs_conf.tel[2] = TEL_TEMP; // APRS Telemetry parameter 3
|
|
|
|
config[0].aprs_conf.tel[3] = TEL_PBAT; // APRS Telemetry parameter 4
|
|
|
|
config[0].aprs_conf.tel[4] = TEL_ISOL; // APRS Telemetry parameter 5
|
|
|
|
config[0].aprs_conf.tel_encoding = TRUE; // Transmit Telemetry encoding information activated
|
|
|
|
config[0].aprs_conf.tel_encoding_cycle = 3600; // Transmit Telemetry encoding information every 3600sec
|
|
|
|
chsnprintf(config[0].aprs_conf.tel_comment, 18, "http://tkrahn.org");// Telemetry comment
|
|
|
|
start_position_thread(&config[0]);
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module POSITION, APRS 2m 2GFSK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[1].power = 20; // Power 10 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[1].protocol = PROT_APRS_2GFSK; // Protocol APRS, modulation 2GFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[1].gfsk_conf.speed = 9600; // 2GFSK Speed
|
|
|
|
config[1].frequency.type = FREQ_STATIC; // Static frequency allocation
|
2017-06-12 14:46:03 +00:00
|
|
|
config[1].frequency.hz = 144860000; // Default frequency 144.860 MHz
|
2017-05-30 22:58:20 +00:00
|
|
|
config[1].init_delay = 0; // Module startup delay in msec
|
|
|
|
config[1].trigger.type = TRIG_EVENT; // Trigger transmission on event
|
|
|
|
config[1].trigger.event = EVENT_NEW_POINT; // Trigger when new track point released
|
2017-06-15 06:08:48 +00:00
|
|
|
chsnprintf(config[1].aprs_conf.callsign, 7, "DL4MDW"); // APRS Callsign
|
|
|
|
config[1].aprs_conf.ssid = 11; // APRS SSID
|
|
|
|
config[1].aprs_conf.symbol = SYM_BALLOON; // APRS Symbol
|
|
|
|
chsnprintf(config[1].aprs_conf.path, 16, "WIDE1-1"); // APRS Path
|
|
|
|
config[1].aprs_conf.preamble = 40; // APRS Preamble
|
|
|
|
config[0].aprs_conf.tel[0] = TEL_VBAT; // APRS Telemetry parameter 1
|
|
|
|
config[0].aprs_conf.tel[1] = TEL_VSOL; // APRS Telemetry parameter 2
|
|
|
|
config[0].aprs_conf.tel[2] = TEL_PRESS; // APRS Telemetry parameter 3
|
|
|
|
config[0].aprs_conf.tel[3] = TEL_TEMP; // APRS Telemetry parameter 4
|
|
|
|
config[0].aprs_conf.tel[4] = TEL_PBAT; // APRS Telemetry parameter 5
|
|
|
|
config[1].aprs_conf.tel_encoding = TRUE; // Transmit Telemetry encoding information enabled
|
|
|
|
config[1].aprs_conf.tel_encoding_cycle = 3600; // Transmit Telemetry encoding information every 3600sec
|
|
|
|
chsnprintf(config[1].aprs_conf.tel_comment, 18, "http://tkrahn.net");// Telemetry comment
|
2017-06-12 14:46:03 +00:00
|
|
|
start_position_thread(&config[1]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module POSITION, UKHAS 2m 2FSK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[2].power = 20; // Power 10 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[2].protocol = PROT_UKHAS_2FSK; // Protocol UKHAS, modulation 2FSK
|
|
|
|
config[2].frequency.type = FREQ_STATIC; // Static frequency allocation
|
|
|
|
config[2].frequency.hz = 144860000; // Transmission frequency 144.860 MHz
|
|
|
|
config[2].init_delay = 2000; // Module startup delay in msec
|
|
|
|
config[2].trigger.type = TRIG_EVENT; // Trigger transmission on event
|
|
|
|
config[2].trigger.event = EVENT_NEW_POINT; // Trigger when new track point released
|
2017-06-15 06:08:48 +00:00
|
|
|
config[2].fsk_conf.bits = 8; // 8bit
|
|
|
|
config[2].fsk_conf.stopbits = 2; // 2 Stopbits
|
|
|
|
config[2].fsk_conf.predelay = 1000; // Predelay in ms (continuos carrier before actual transmission)
|
|
|
|
config[2].fsk_conf.baud = 600; // Baudrate
|
|
|
|
config[2].fsk_conf.shift = 1000; // Frequency shift in Hz
|
|
|
|
chsnprintf(config[2].ukhas_conf.callsign, 6, "DK0TU"); // UKHAS Callsign
|
|
|
|
chsnprintf(config[2].ukhas_conf.format, 94, "<CALL>,<ID>,<TIME>,<LAT>,<LON>,<ALT>,<SATS>,<TTFF>,<VBAT>,<PBAT>,<PRESS>,<TEMP>,<HUM>"); // UKHAS Format
|
2017-06-12 14:46:03 +00:00
|
|
|
start_position_thread(&config[2]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module IMAGE, APRS 2m AFSK low-duty cycle
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[3].power = 20; // Power 20 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[3].protocol = PROT_APRS_AFSK; // Protocol APRS SSDV, modulation AFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[3].frequency.type = FREQ_APRS_REGION; // Dynamic frequency allocation
|
2017-05-30 22:58:20 +00:00
|
|
|
config[3].frequency.hz = 144800000; // Transmission frequency 144.800 MHz
|
2017-06-12 14:46:03 +00:00
|
|
|
config[3].init_delay = 2000; // Module startup delay in msec
|
|
|
|
config[3].packet_spacing = 15000; // Packet spacing in ms
|
2017-05-30 22:58:20 +00:00
|
|
|
config[3].trigger.type = TRIG_TIMEOUT; // Trigger transmission on timeout (Periodic cycling)
|
|
|
|
config[3].trigger.timeout = 10; // Timeout 10 sec
|
2017-06-15 06:08:48 +00:00
|
|
|
chsnprintf(config[3].aprs_conf.callsign, 6, "DL7AD"); // APRS Callsign
|
|
|
|
config[3].aprs_conf.ssid = 12; // APRS SSID
|
|
|
|
config[3].aprs_conf.preamble = 500; // APRS Preamble
|
|
|
|
chsnprintf(config[3].ssdv_conf.callsign, 6, "DL7AD"); // SSDV Callsign
|
|
|
|
config[3].ssdv_conf.ram_buffer = ssdv_buffer; // Camera buffer
|
|
|
|
config[3].ssdv_conf.ram_size = sizeof(ssdv_buffer); // Buffer size
|
|
|
|
config[3].ssdv_conf.res = RES_QVGA; // Resolution VGA
|
2017-06-12 14:46:03 +00:00
|
|
|
start_image_thread(&config[3]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module POSITION, Morse 2m OOK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[4].power = 10; // Power 10 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[4].protocol = PROT_MORSE; // Protocol Morse, modulation OOK
|
|
|
|
config[4].frequency.type = FREQ_STATIC; // Static frequency allocation
|
|
|
|
config[4].frequency.hz = 144857400; // Transmission frequency 144.8574 MHz
|
|
|
|
config[4].init_delay = 20000; // Module startup delay in msec
|
|
|
|
config[4].trigger.type = TRIG_TIMEOUT; // Trigger transmission on timeout (Periodic cycling)
|
|
|
|
config[4].trigger.timeout = 1200; // Timeout 1200 sec
|
2017-06-15 06:08:48 +00:00
|
|
|
config[4].ook_conf.speed = 20; // Speed 20wpm
|
|
|
|
chsnprintf(config[4].morse_conf.callsign, 6, "DK0TU"); // Morse Callsign
|
|
|
|
chsnprintf(config[4].morse_conf.format, 43, "BALLOON <CALL> <LOC> <ALT>M WWW.TKRAHN.NET"); // Morse Format
|
2017-06-12 14:46:03 +00:00
|
|
|
start_position_thread(&config[4]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module IMAGE, APRS 2m 2GFSK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[5].power = 20; // Power 20 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[5].protocol = PROT_APRS_2GFSK; // Protocol APRS SSDV, modulation 2GFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[5].gfsk_conf.speed = 9600; // 2GFSK Speed
|
2017-05-30 22:58:20 +00:00
|
|
|
config[5].frequency.type = FREQ_STATIC; // Static frequency allocation
|
|
|
|
config[5].frequency.hz = 144860000; // Transmission frequency 144.860 MHz
|
2017-06-12 14:46:03 +00:00
|
|
|
config[5].init_delay = 4000; // Module startup delay in msec
|
2017-05-30 22:58:20 +00:00
|
|
|
config[5].trigger.type = TRIG_TIMEOUT; // Trigger transmission on timeout (Periodic cycling)
|
2017-06-15 06:08:48 +00:00
|
|
|
config[5].trigger.timeout = 2; // Timeout 10 sec
|
|
|
|
chsnprintf(config[5].aprs_conf.callsign, 6, "DL7AD"); // APRS Callsign
|
|
|
|
config[5].aprs_conf.ssid = 12; // APRS SSID
|
|
|
|
config[5].aprs_conf.preamble = 50; // APRS Preamble
|
|
|
|
chsnprintf(config[5].ssdv_conf.callsign, 6, "DL7AD"); // SSDV Callsign
|
|
|
|
config[5].ssdv_conf.ram_buffer = ssdv_buffer2; // Camera buffer
|
|
|
|
config[5].ssdv_conf.ram_size = sizeof(ssdv_buffer2); // Buffer size
|
|
|
|
config[5].ssdv_conf.res = RES_QVGA; // Resolution XGA
|
2017-06-12 14:46:03 +00:00
|
|
|
start_image_thread(&config[5]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module IMAGE, SSDV 2m 2FSK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[6].power = 20; // Power 20 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[6].protocol = PROT_SSDV_2FSK; // Protocol SSDV, modulation 2FSK
|
|
|
|
config[6].frequency.type = FREQ_STATIC; // Static frequency allocation
|
|
|
|
config[6].frequency.hz = 144860000; // Transmission frequency 144.860 MHz
|
|
|
|
config[6].init_delay = 30000; // Module startup delay in msec
|
|
|
|
config[6].packet_spacing = 6500; // Packet spacing in ms
|
|
|
|
config[6].trigger.type = TRIG_TIMEOUT; // Trigger transmission on timeout (Periodic cycling)
|
|
|
|
config[6].trigger.timeout = 1200; // Transmit every 900 sec
|
2017-06-15 06:08:48 +00:00
|
|
|
config[6].fsk_conf.bits = 8; // 8bit
|
|
|
|
config[6].fsk_conf.stopbits = 2; // 2 Stopbits
|
|
|
|
config[6].fsk_conf.predelay = 100; // Predelay in ms (continuos carrier before actual transmission)
|
|
|
|
config[6].fsk_conf.baud = 600; // Baudrate
|
|
|
|
config[6].fsk_conf.shift = 1000; // Frequency shift in Hz
|
|
|
|
chsnprintf(config[6].ssdv_conf.callsign, 6, "DK0TU"); // SSDV Callsign
|
|
|
|
config[6].ssdv_conf.ram_buffer = ssdv_buffer; // Camera buffer
|
|
|
|
config[6].ssdv_conf.ram_size = sizeof(ssdv_buffer); // Buffer size
|
|
|
|
config[6].ssdv_conf.res = RES_VGA; // Resolution VGA
|
2017-06-12 14:46:03 +00:00
|
|
|
start_image_thread(&config[6]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
|
|
|
|
// Module LOG, APRS 2m AFSK
|
2017-06-12 14:46:03 +00:00
|
|
|
/*config[8].power = 20; // Power 20 dBm
|
2017-05-30 22:58:20 +00:00
|
|
|
config[8].protocol = PROT_APRS_AFSK; // Protocol APRS, modulation AFSK
|
2017-06-15 06:08:48 +00:00
|
|
|
config[8].frequency.type = FREQ_APRS_REGION; // Dynamic frequency allocation
|
2017-05-30 22:58:20 +00:00
|
|
|
config[8].frequency.hz = 144800000; // Default frequency 144.800 MHz
|
2017-06-12 14:46:03 +00:00
|
|
|
config[8].init_delay = 10000; // Module startup delay in msec
|
2017-05-30 22:58:20 +00:00
|
|
|
config[8].trigger.type = TRIG_TIMEOUT; // Trigger transmission on timeout (Periodic cycling)
|
|
|
|
config[8].trigger.timeout = 600; // Timeout 600 sec
|
2017-06-15 06:08:48 +00:00
|
|
|
chsnprintf(config[8].aprs_conf.callsign, 6, "DL7AD"); // APRS Callsign
|
|
|
|
config[8].aprs_conf.ssid = 12; // APRS SSID
|
|
|
|
chsnprintf(config[8].aprs_conf.path, 16, "WIDE1-1"); // APRS Path
|
|
|
|
config[8].aprs_conf.preamble = 500; // APRS Preamble
|
2017-06-12 14:46:03 +00:00
|
|
|
start_logging_thread(&config[8]);*/
|
2017-05-30 22:58:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|