From dda98502fbbefb89ee18f7f34fd5bfacd684ffaf Mon Sep 17 00:00:00 2001 From: Alan Johnston Date: Mon, 19 Jan 2026 11:03:33 -0500 Subject: [PATCH] Update main.c only use gps in FM modes --- main.c | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/main.c b/main.c index f511b8fa..468d2983 100644 --- a/main.c +++ b/main.c @@ -332,22 +332,26 @@ int main(int argc, char * argv[]) { cmdbuffer[0] = '\0'; gps_status = OFF; - FILE *gps_read = sopen("python3 /home/pi/CubeSatSim/gps_client.py"); // python sensor polling function - - if (gps_read != NULL) { - fgets(cmdbuffer, 1000, gps_read); - fprintf(stderr, "gps read: %s\n", cmdbuffer); - if ((cmdbuffer[0] == '-') && (cmdbuffer[1] == '1')) - { - gps_status = OFF; - fprintf(stderr, "Pi GPS off\n"); - } else { - gps_status = ON; - fprintf(stderr, "Pi GPS on\n"); - } -// fclose(gps_read); - } else - fprintf(stderr, "Error checking gps"); + FILE *gps_read = NULL; + if ((mode == AFSK) || (mode == CW) || mode == SSTV)) + { + gps_read = sopen("python3 /home/pi/CubeSatSim/gps_client.py"); // python sensor polling function + + if (gps_read != NULL) { + fgets(cmdbuffer, 1000, gps_read); + fprintf(stderr, "gps read: %s\n", cmdbuffer); + if ((cmdbuffer[0] == '-') && (cmdbuffer[1] == '1')) + { + gps_status = OFF; + fprintf(stderr, "Pi GPS off\n"); + } else { + gps_status = ON; + fprintf(stderr, "Pi GPS on\n"); + } + // fclose(gps_read); + } else + fprintf(stderr, "Error checking gps"); + } payload = OFF;