diff --git a/main.c b/main.c index 5bc36555..9376e0e9 100644 --- a/main.c +++ b/main.c @@ -2973,7 +2973,8 @@ void get_tlm_fc() { // FUNcube Mode telemetry generation void socket_send(int length) { - printf("Socket_send!\n"); + printf("Socket_send!\n"); + fflush(stdout); int error = 0; if (!socket_open && transmit) { // open socket if not open @@ -2983,7 +2984,7 @@ void socket_send(int length) { struct sockaddr_in serv_addr; // char *hello = "Hello from client"; // char buffer[1024] = {0}; - error_count = 0; + // error_count = 0; if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0) { printf("\n Socket creation error \n"); error = 1; @@ -3003,7 +3004,9 @@ void socket_send(int length) { if (connect(sock, (struct sockaddr * ) & serv_addr, sizeof(serv_addr)) < 0) { printf("\nConnection Failed \n"); printf("Error: %s\n", strerror(errno)); + fflush(stdout); error = 1; + sleep(1); // try again error = 0; @@ -3026,18 +3029,21 @@ void socket_send(int length) { if (connect(sock, (struct sockaddr * ) & serv_addr, sizeof(serv_addr)) < 0) { printf("\nConnection Failed \n"); printf("Error: %s\n", strerror(errno)); + fflush(stdout); error = 1; + sleep(1); } } if (error == 1) { printf("Socket error count: %d\n", error_count); // ; //transmitStatus = -1; if (error_count++ > 5) { - printf("Restarting transmit\n"); + printf("Restarting transmit\n"); + fflush(stdout); FILE * transmit_restartf = popen("sudo systemctl restart transmit", "r"); pclose(transmit_restartf); sleep(10); // was 5 // sleep if socket connection refused - } + } } else { socket_open = 1;