diff --git a/groundStation/src/backend/backend.c b/groundStation/src/backend/backend.c index b442db5f35d3d471c96d684e7420aa98a6df1c28..01928622ac593cbb7d9776946378a32ec5e5f92a 100644 --- a/groundStation/src/backend/backend.c +++ b/groundStation/src/backend/backend.c @@ -919,7 +919,7 @@ static void client_recv(int fd) { static void quad_recv(int index) { static unsigned char respBuf[CMD_MAX_LENGTH]; static size_t respBufLen; - static int receiving_logs; + static int receiving_logs; struct metadata m; uint8_t data[CMD_MAX_LENGTH]; @@ -1005,11 +1005,15 @@ static void quad_recv(int index) { } fwrite((char *) data, sizeof(char), m.data_len, quadlog_file); break; - /*case SEND_RT_ID: + case SEND_RT_ID: quadlog_file = fopen("quad_log_data.txt", "w"); - fwrite((char *) data, sizeof(char), m.data_len, quadlog_file); + //TODO Add formatting here to populate .txt file in a way QT will be able to read + char * formatted_data = malloc(sizeof(data) + 1); + + fwrite((char *) formatted_data, sizeof(char), m.data_len, quadlog_file); fclose(quadlog_file); - break;*/ + free(formatted_data); + break; case RESPPARAM_ID: case RESPSOURCE_ID: case RESPOUTPUT_ID: diff --git a/quad/src/quad_app/quad_app.c b/quad/src/quad_app/quad_app.c index b30736f3a4eb233a849a766de00c0b7e2967c695..18c73685d4365b6b8ecc5ac2dea815f2cfbb8162 100644 --- a/quad/src/quad_app/quad_app.c +++ b/quad/src/quad_app/quad_app.c @@ -23,10 +23,10 @@ int quad_main(int (*setup_hardware)(hardware_t *hardware_struct)) // Structures to be used throughout modular_structs_t structs = { }; - //flags that indicate which rt data to send - SensorRTFlags_t flags; + //flags that indicate which rt data to send + SensorRTFlags_t flags; - // initialize internal flag data; + // initialize internal flag data for RT data transfer initializeFlags(&flags); // Wire up hardware @@ -37,7 +37,6 @@ int quad_main(int (*setup_hardware)(hardware_t *hardware_struct)) // Xilinx Platform, Loop Timer, Control Algorithm int init_error = init_structs(&(structs)); - int rt_configured_size = 0; if (init_error != 0) { return -1; @@ -67,10 +66,9 @@ int quad_main(int (*setup_hardware)(hardware_t *hardware_struct)) // Get data from the sensors and put it into raw_sensor_struct get_sensors(&(structs.hardware_struct), &(structs.log_struct), &(structs.user_input_struct), &(structs.raw_sensor_struct)); - //Send the sensor data in RT (TODO WILL NEED TO BE EDITED FROM CURRENT CONDITION DUE TO TINA) - //send_sensor_data(&flags, &(structs.hardware_struct.comm), &(structs.raw_sensor_struct)); - if (rt_configured_size != 0) - send_RT_data(&(structs.hardware_struct.comm), &(structs.raw_sensor_struct), &flags, rt_configured_size); + //Send the sensor data in RT (TODO WILL NEED TO BE EDITED FROM CURRENT CONDITION DUE TO TINA) + if (flags.flag_count != 0) + send_RT_data(&(structs.hardware_struct.comm), &(structs.raw_sensor_struct), &flags); // Process the sensor data and put it into sensor_struct sensor_processing(&(structs.log_struct), &(structs.user_input_struct), &(structs.raw_sensor_struct), &(structs.sensor_struct));