diff --git a/quad/sw/modular_quad_pid/src/callbacks.c b/quad/sw/modular_quad_pid/src/callbacks.c index 805d05d9b2b9d3d253ef26d99626da9c06402893..2081b1dd51eefaef8fb9644d807ecc7b3f296252 100644 --- a/quad/sw/modular_quad_pid/src/callbacks.c +++ b/quad/sw/modular_quad_pid/src/callbacks.c @@ -214,13 +214,10 @@ int cb_getcontrol(modular_structs_t* structs) // Controller value ID resp_data[1] = controller_value_id; // Controller value (4 byte float) - resp_data[2] = (controller_value) & 0x000000ff; - resp_data[3] = (controller_value >> 8) & 0x000000ff; - resp_data[4] = (controller_value >> 16) & 0x000000ff; - resp_data[5] = (controller_value >> 24) & 0x000000ff; + memcpy(&resp_data[2], &controller_value, sizeof(controller_value)); // Send the data - send_data(RESPCONTROL_ID, msg_id, resp_data, sizeof(resp_data); + send_data(RESPCONTROL_ID, msg_id, resp_data, sizeof(resp_data)); } }