Updated telemetry data formats

main-solar-only
Richard Meadows 2015-12-13 13:04:03 +00:00
rodzic 3965d9c69d
commit 65ef82d3ee
3 zmienionych plików z 16 dodań i 10 usunięć

Wyświetl plik

@ -98,9 +98,11 @@ void encode_altitude(char* str, uint32_t altitude_meters) {
void encode_telemetry(char* str, tracker_datapoint* dp)
{
base91_encode(str+0, 2, (dp->battery * 1000)); /* Battery never > 8V */
base91_encode(str+2, 2, (dp->solar * 1000)); /* Solar never > 8V */
base91_encode(str+4, 2, ((dp->radio_die_temperature+273.2)*10)); /* Temp never > 526º! */
/* base91_encode(str+2, 2, (dp->solar * 1000)); /\* Solar never > 8V *\/ */
base91_encode(str+2, 2, ((dp->thermistor_temperature+273.2)*10)); /* Temp never > 526º! */
base91_encode(str+4, 2, ((dp->bmp180_temperature+273.2)*10)); /* Temp never > 526º! */
base91_encode(str+6, 2, dp->satillite_count); /* Small! */
base91_encode(str+8, 2, dp->time_to_first_fix); /* Small! */
}
/**

Wyświetl plik

@ -43,7 +43,7 @@
#include "xosc.h"
#include "sequencer.h"
#define CALLSIGN "UBSEDSX"
#define CALLSIGN "UBSEDSXX"
#define APRS_COMMENT ""
/**
@ -69,15 +69,15 @@ uint16_t format_telemetry_string(char* string, struct tracker_datapoint* dp,
/* sprintf - full string (approx 90 chars) */
len += sprintf(telemetry_string + len,
"%s,%02u:%02u:%02u,%02u%02u%02u,%02.5f,%03.5f,%ld,%u,%.2f,%ld,%.1f,%.1f,%.1f,%ld",
"%s,%02u:%02u:%02u,%02u%02u%02u,%02.5f,%03.5f,%ld,%u,%u,%ld,%.1f,%.1f,%.1f",
CALLSIGN, /* 2+6+2+1=11 */
dp->time.hour, dp->time.minute, dp->time.second, /* 2+1+2+1+2+1=9 */
dp->time.year%100, dp->time.month, dp->time.day, /* 2+2+2+1=7 */
lat_fmt, lon_fmt, altitude, dp->satillite_count, /* 3+1+5+1 + 4+1+5+1 + 5+1 + 2+1 = 30 */
dp->solar, dp->main_pressure, /* 1+1+2+1 + 5+1 = 11 */
dp->time_to_first_fix, dp->main_pressure, /* 2+1 + 5+1 = 9 */
dp->thermistor_temperature, dp->bmp180_temperature, /* 3+1+1+1 + 3+1+1+1 = 12 */
dp->radio_die_temperature, dp->xosc_error); /* 3+1+1+1 + 4 = 10 */
/* sum = 90 (must be less than or equal to 114) */
dp->radio_die_temperature); /* 3+1+1+1 = 6 */
/* sum = 84 (must be less than or equal to 114) */
if (reduce_char_set) {
/* Reduce character set */

Wyświetl plik

@ -58,9 +58,13 @@ def attempt_read_aprs_id():
#
# Define packets
#
eqn_packets = ["PARM.Battery,Solar,Internal Temperature,GPS Satellites",
"UNIT.Volts,Volts,Celsius",
"EQNS.0,.001,0,0,.001,0,0,.1,-273.2"]
# eqn_packets = ["PARM.Battery,Solar,Internal Temperature,GPS Satellites",
# "UNIT.Volts,Volts,Celsius",
# "EQNS.0,.001,0,0,.001,0,0,.1,-273.2"]
eqn_packets = ["PARM.Battery,External Temperature,Internal Temperature,GPS Satellites,GPS TTF",
"UNIT.Volts,Celsius,Celcius",
"EQNS.0,.001,0,0,.1,-273.2,0,.1,-273.2"]
#
# Read callsign / password defaults?