From db2f7bae3182b7bd561dce4bda3ef2129626dd49 Mon Sep 17 00:00:00 2001 From: alanbjohnston Date: Sat, 20 Mar 2021 11:00:10 -0400 Subject: [PATCH] added sensor payload parsing --- afsk/main.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/afsk/main.c b/afsk/main.c index 567c76e3..a790248f 100644 --- a/afsk/main.c +++ b/afsk/main.c @@ -916,6 +916,28 @@ void get_tlm(void) { printf("Payload string: %s", sensor_payload); strcat(str, sensor_payload); // append to telemetry string for transmission + +// parse sensor payload + if ((sensor_payload[0] == 'O') && (sensor_payload[1] == 'K')) // only process if valid payload response + { + int count1; + char * token; + const char space[2] = " "; + token = strtok(sensor_payload, space); + for (count1 = 0; count1 < 17; count1++) { + if (token != NULL) { + sensor[count1] = (float) atof(token); + #ifdef DEBUG_LOGGING + printf("sensor: %f ", sensor[count1]); + #endif + token = strtok(NULL, space); + } + } + printf("\n"); + if (sensor[XS1] != 0) + latitude = toAprsFormat(sensor[XS1]; + if (sensor[XS2] != 0) + longitude = toAprsFormat(sensor[XS2]; } digitalWrite(txLed, txLedOn);