forked from Archive/PX4-Autopilot
Add a receive error counter for debugging purposes.
This commit is contained in:
parent
b14abad3a0
commit
c740e9c616
|
@ -70,6 +70,8 @@ static struct px4io_report report;
|
||||||
|
|
||||||
static void comms_handle_frame(void *arg, const void *buffer, size_t length);
|
static void comms_handle_frame(void *arg, const void *buffer, size_t length);
|
||||||
|
|
||||||
|
perf_counter_t comms_rx_errors;
|
||||||
|
|
||||||
static void
|
static void
|
||||||
comms_init(void)
|
comms_init(void)
|
||||||
{
|
{
|
||||||
|
@ -77,6 +79,9 @@ comms_init(void)
|
||||||
fmu_fd = open("/dev/ttyS1", O_RDWR);
|
fmu_fd = open("/dev/ttyS1", O_RDWR);
|
||||||
stream = hx_stream_init(fmu_fd, comms_handle_frame, NULL);
|
stream = hx_stream_init(fmu_fd, comms_handle_frame, NULL);
|
||||||
|
|
||||||
|
comms_rx_errors = perf_alloc(PC_COUNT, "rx_err");
|
||||||
|
hx_stream_set_counters(stream, 0, 0, comms_rx_errors);
|
||||||
|
|
||||||
/* default state in the report to FMU */
|
/* default state in the report to FMU */
|
||||||
report.i2f_magic = I2F_MAGIC;
|
report.i2f_magic = I2F_MAGIC;
|
||||||
|
|
||||||
|
@ -175,15 +180,13 @@ comms_handle_command(const void *buffer, size_t length)
|
||||||
system_state.fmu_channel_data[i] = cmd->output_control[i];
|
system_state.fmu_channel_data[i] = cmd->output_control[i];
|
||||||
|
|
||||||
/* if the IO is armed and the FMU gets disarmed, the IO must also disarm */
|
/* if the IO is armed and the FMU gets disarmed, the IO must also disarm */
|
||||||
if (system_state.arm_ok && !cmd->arm_ok) {
|
if (system_state.arm_ok && !cmd->arm_ok)
|
||||||
system_state.armed = false;
|
system_state.armed = false;
|
||||||
}
|
|
||||||
|
|
||||||
system_state.arm_ok = cmd->arm_ok;
|
system_state.arm_ok = cmd->arm_ok;
|
||||||
system_state.mixer_use_fmu = true;
|
system_state.mixer_use_fmu = true;
|
||||||
system_state.fmu_data_received = true;
|
system_state.fmu_data_received = true;
|
||||||
|
|
||||||
|
|
||||||
/* handle changes signalled by FMU */
|
/* handle changes signalled by FMU */
|
||||||
// if (!system_state.arm_ok && system_state.armed)
|
// if (!system_state.arm_ok && system_state.armed)
|
||||||
// system_state.armed = false;
|
// system_state.armed = false;
|
||||||
|
|
Loading…
Reference in New Issue