From c412eb194bc973cd4fa209203b912580d7f40a4b Mon Sep 17 00:00:00 2001 From: Alan Johnston Date: Sat, 25 Oct 2025 15:12:36 -0400 Subject: [PATCH] Update main.c fix {} --- main.c | 124 ++++++++++++++++++++------------------------------------- 1 file changed, 43 insertions(+), 81 deletions(-) diff --git a/main.c b/main.c index 089b6548..82e161b1 100644 --- a/main.c +++ b/main.c @@ -2273,91 +2273,53 @@ float toAprsFormat(float input) { int get_payload_serial(int debug_camera) { #ifdef OLD_STEM_PAYLOAD - if ((uart_fd = serialOpen("/dev/ttyAMA0", 115200)) >= 0) { // was 9600 - -// if (payload == ON) { // -55 - if (TRUE) { // -55 - STEMBoardFailure = 0; - - - char c; - unsigned int waitTime; - int i, end, trys = 0; - buffer2[0] = 0; - buffer2[1] = 0; - while (((buffer2[0] != 'O') || (buffer2[1] != 'K')) && (trys++ < 10)) { - i = 0; - serialPutchar(uart_fd, '?'); - sleep(0.05); // added delay after ? - printf("%d Querying payload with ?\n", trys); - waitTime = millis() + 500; - end = FALSE; - // int retry = FALSE; - while ((millis() < waitTime) && !end) { - int chars = (char) serialDataAvail(uart_fd); - while ((chars > 0) && !end) { -// printf("Chars: %d\ ", chars); - chars--; - c = (char) serialGetchar(uart_fd); - // printf ("%c", c); - // fflush(stdout); - if (c != '\n') { - buffer2[i++] = c; - } else { - end = TRUE; - } - } - } - - buffer2[i++] = ' '; - // buffer2[i++] = '\n'; - buffer2[i] = '\0'; - printf(" Response from STEM Payload board: %s\n", buffer2); - sleep(0.1); // added sleep between loops -//// } // removed this! - -/* - if ((buffer2[0] == 'O') && (buffer2[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 ((uart_fd = serialOpen("/dev/ttyAMA0", 115200)) >= 0) { // was 9600 + + STEMBoardFailure = 0; + char c; + unsigned int waitTime; + int i, end, trys = 0; + buffer2[0] = 0; + buffer2[1] = 0; + while (((buffer2[0] != 'O') || (buffer2[1] != 'K')) && (trys++ < 10)) { + i = 0; + serialPutchar(uart_fd, '?'); + sleep(0.05); // added delay after ? + printf("%d Querying payload with ?\n", trys); + waitTime = millis() + 500; + end = FALSE; + // int retry = FALSE; + while ((millis() < waitTime) && !end) { + int chars = (char)serialDataAvail(uart_fd); + while ((chars > 0) && !end) { + // printf("Chars: %d\ ", chars); + chars--; + c = (char)serialGetchar(uart_fd); + // printf ("%c", c); + // fflush(stdout); + if (c != '\n') { + buffer2[i++] = c; + } else { + end = TRUE; } - else - payload = OFF; // turn off since STEM Payload is not responding } - - if ((buffer2[0] == 'O') && (buffer2[1] == 'K')) { - for (int count1 = 0; count1 < 17; count1++) { - if (sensor[count1] < sensor_min[count1]) - sensor_min[count1] = sensor[count1]; - if (sensor[count1] > sensor_max[count1]) - sensor_max[count1] = sensor[count1]; - // printf("Smin %f Smax %f \n", sensor_min[count1], sensor_max[count1]); - } - } -*/ -} else - printf("Can't open serial to payload"); + } - if (payload == ON) { -// printf("\nSTEM Payload is present!\n"); -// sleep(2); // delay to give payload time to get ready - return(TRUE); + buffer2[i++] = ' '; + // buffer2[i++] = '\n'; + buffer2[i] = '\0'; + printf(" Response from STEM Payload board: %s\n", buffer2); + sleep(0.1); // added sleep between loops } - +} else + printf("Can't open serial to payload"); + +if ((buffer2[0] == 'O') && (buffer2[1] == 'K')) // { + // printf("\nSTEM Payload is present!\n"); + // sleep(2); // delay to give payload time to get ready + return (TRUE); +} + #endif #ifdef OLD_STEM_PAYLOAD2