forked from Archive/PX4-Autopilot
Merge pull request #852 from PX4/sensors_loop
sensors: Keep looping in sensors app even if gyros do not update any mor...
This commit is contained in:
commit
f0298e005a
|
@ -1254,7 +1254,7 @@ Sensors::adc_poll(struct sensor_combined_s &raw)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_last_adc = t;
|
_last_adc = t;
|
||||||
if (_battery_status.voltage_v > 0.0f) {
|
if (_battery_status.voltage_filtered_v > BATT_V_IGNORE_THRESHOLD) {
|
||||||
/* announce the battery status if needed, just publish else */
|
/* announce the battery status if needed, just publish else */
|
||||||
if (_battery_pub > 0) {
|
if (_battery_pub > 0) {
|
||||||
orb_publish(ORB_ID(battery_status), _battery_pub, &_battery_status);
|
orb_publish(ORB_ID(battery_status), _battery_pub, &_battery_status);
|
||||||
|
@ -1571,12 +1571,10 @@ Sensors::task_main()
|
||||||
|
|
||||||
while (!_task_should_exit) {
|
while (!_task_should_exit) {
|
||||||
|
|
||||||
/* wait for up to 100ms for data */
|
/* wait for up to 50ms for data */
|
||||||
int pret = poll(&fds[0], (sizeof(fds) / sizeof(fds[0])), 100);
|
int pret = poll(&fds[0], (sizeof(fds) / sizeof(fds[0])), 50);
|
||||||
|
|
||||||
/* timed out - periodic check for _task_should_exit, etc. */
|
/* if pret == 0 it timed out - periodic check for _task_should_exit, etc. */
|
||||||
if (pret == 0)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
/* this is undesirable but not much we can do - might want to flag unhappy status */
|
/* this is undesirable but not much we can do - might want to flag unhappy status */
|
||||||
if (pret < 0) {
|
if (pret < 0) {
|
||||||
|
@ -1615,7 +1613,7 @@ Sensors::task_main()
|
||||||
perf_end(_loop_perf);
|
perf_end(_loop_perf);
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("[sensors] exiting.\n");
|
warnx("[sensors] exiting.");
|
||||||
|
|
||||||
_sensors_task = -1;
|
_sensors_task = -1;
|
||||||
_exit(0);
|
_exit(0);
|
||||||
|
|
Loading…
Reference in New Issue