Commit Graph

1708 Commits

Author SHA1 Message Date
Mark Sauder d3c169b1e0 Fix whitespaces in PreflightCheck.cpp, tilt_quad.aux.mix, and tilt_quad.main.mix 2018-06-28 20:20:32 -04:00
Beat Küng bf1c11a33c commander: move comment to the right place
It's now the same way as in the ARM logic further down.
2018-06-27 10:41:21 +02:00
Beat Küng 02fc68a53e commander arming: disable stick (dis-)arming when arming switch/button is used
A reason for using switch arming in the first place is that you cannot
accidentally disarm in-air with the sticks during acrobatic flights.

It also adds a low-throttle arming requirement for switch arming.
2018-06-27 10:41:21 +02:00
Beat Küng db2b010630 commander arming: add a grace period of 5 seconds to allow re-arming w/o preflight checks
This changes the arming logic such that the preflight checks don't need
to be satisfied if arming happens < 5 seconds after the last disarming.
This allows to recover from accidental in-air disarming.
2018-06-27 10:41:21 +02:00
Beat Küng 8c3cf0167c commander arming_state_transition: respect fRunPreArmChecks properly
if fRunPreArmChecks was set to false, there were still cases where the
preflight checks could be called. This fixes that.

arming_state_transition() with fRunPreArmChecks=false is only called
when entering & leaving preflight calibration mode.
All other places use fRunPreArmChecks=true, which means there is no change
for these.
2018-06-27 10:41:21 +02:00
Beat Küng 469b5f98e2 commander Preflight::preflightCheck: transition condition_system_sensors_initialized only to true
- this matches the logic in arming_state_transition()
- if Commander::preflight_check was run in armed state and the checks
  failed, disarming was not possible anymore
  (because disarming checks for condition_system_sensors_initialized).
  That is currently not the case, but the existing logic is way too fragile.

Alternative solution: check if armed in Preflight::preflightCheck, and
only transition to false if disarmed (but also respect the re-arming
grace period).
2018-06-27 10:41:21 +02:00
Beat Küng d1343b0ccb calibration_routines: fix 'Command denied during calibration' error message
The uorb subscribe logic got changed for queued topics with
https://github.com/PX4/Firmware/pull/9436, meaning an orb_subscribe will
return past messages as well now.

This lead to an error 'Command denied during calibration' for the previously
received calibration start command.
2018-06-18 15:06:58 +02:00
Daniel Agar daa6f29b58 commander ignore failsafe transitions when in mission and disarmed 2018-06-13 08:37:00 +02:00
Daniel Agar 20aabd3566 move systemlib/airspeed to standalone lib 2018-06-12 09:06:30 +02:00
Daniel Agar 387bc81f26 move systemlib/circuit_breaker.cpp to standalone lib 2018-06-12 09:06:30 +02:00
Daniel Agar 3399ec9e73 move systemlib/rc_check to commander (the only usage) and convert to c++ 2018-06-11 22:53:38 +02:00
Paul Riseborough 9fb674929c commander: do not check global position when using flow in POSCTL 2018-06-09 13:38:04 +02:00
Paul Riseborough 98597dcffc commander: allow position uncertainty to grow when operator can correct for drift 2018-06-09 13:38:04 +02:00
Lorenz Meier f87fa9131b FMUv5: Fix RGB led usage - these are individual status leds. 2018-06-06 23:03:28 +02:00
Philipp Oettershagen 9f414e82f6 Subsystem_info status flags & checks: Add comment to indicate that the IMU+MAG consistency checks need to be performed AFTER the individual checks are complete 2018-06-06 18:54:24 +02:00
Philipp Oettershagen e12b470cac Subsystem_info status flags & checks: Small fixes according to @bkueng's review 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 0b71c52225 Subsystem_info status flags & checks: Suppress sensor failover warnings in Hardware in the loop (HITL) 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 302cb0a285 Subsystem_info status flags & checks: Moved the set_health_flags helper functions out of the /lib/ folder and into the module/commander folder because they are actually only needed there 2018-06-06 18:54:24 +02:00
Philipp Oettershagen bd2af289f5 Subsystem_info status flags & checks: Code style fixes and cleanup to avoid strcmp() as suggested by @LorenzMeier 2018-06-06 18:54:24 +02:00
Philipp Oettershagen e4d863b95f Subsystem_info status flags & checks: Separate the functionality to a) set the health flags inside commander and b) to publish them from external modules 2018-06-06 18:54:24 +02:00
Philipp Oettershagen a807d34a7a Remove distance sensor checks again. These checks should be handled by EKF2 and should thus be added there later 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 075009be2f Subsystem_info status flags & checks: 1) Set health flags in commander directly instead of publishing via uORB 2) move publish_subsystem_info into lib/ folder" 2018-06-06 18:54:24 +02:00
Philipp Oettershagen f5847a4a7b Subsystem_info status flags & checks: Switch back to uORB for inter-process communication, handle GPS checks completely inside ekf2, add distance_sensor checks 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 6f1f414b49 Subsystem_info status flags & checks : Initial commit, updating the health flags in a centralized way mostly in commander and the votedSensorsUpdate function. 2018-06-06 18:54:24 +02:00
Alessandro Simovic 15a44a059d addressing review comments from #9563 2018-06-02 08:36:35 +02:00
Alessandro Simovic 52c290e234 commander: moved emergency shutdown to end of cycle 2018-06-02 08:36:35 +02:00
acfloria 57162ff08d Improve high latency switching and acknowledge
- Move publishing the telemetry status from the IridiumSBD driver to the mavlink instance
- In the commander use the iridiumsbd_status message for heartbeat in case of a high latency link
- Move positive acknowledge to the mavlink instance
- Add a failed acknowledge in the commander if no high latency link exists
2018-05-27 12:11:35 -04:00
acfloria 12f6affdfa Commander: Avoid sending ack for VEHICLE_CMD_CONTROL_HIGH_LATENCY if from_external is false 2018-05-27 12:11:35 -04:00
Daniel Agar 222a91c6be mathlib delete Matrix, Quaternion, Vector 2018-05-23 17:27:09 -04:00
Daniel Agar 0d7b5c4a4e commander accel calibration switch to matrix lib 2018-05-23 17:27:09 -04:00
Daniel Agar ac55a0de58 airspeed calibration log critical when ports are swapped 2018-05-22 21:02:33 -04:00
Daniel Agar 87a0e943d4 commander add geo dependency 2018-05-21 01:32:16 -04:00
Beat Küng f2516bbf5f system_params: add SYS_HAS_MAG and SYS_HAS_BARO params
This allows to use PX4 on systems that do not have a mag or a baro,
such as the Omnibus F4 SD.
2018-05-20 11:54:17 +02:00
Daniel Agar 4e32cb17df clang-tidy modernize-use-equals-default 2018-05-18 22:48:55 +02:00
Beat Küng 11f4631b2a fix commander: initialize tune_durations (#9468)
Fixes #9451
2018-05-16 10:20:28 -04:00
Hamish Willee 9a7195cb2d Change offboard mode fallback option back to Manual 2018-05-08 07:04:32 +02:00
Hamish Willee 42d1708d7c Commander failsafe action params to reflect current mode names 2018-05-08 07:04:32 +02:00
Jake Dahl 92f15283c1 changed int to float 2018-05-04 12:08:55 -04:00
Daniel Agar ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar fbbe1f5288 commander use new time literals 2018-04-24 00:02:48 -04:00
Daniel Agar 89ad46dd15 commander delete unused DIFFPRESS_TIMEOUT 2018-04-24 00:02:48 -04:00
Daniel Agar cd69a573b5 commander restore MC nav failure latch 2018-04-24 00:02:48 -04:00
Daniel Agar f13f8f9c64 commander add COM_POS_FS_PROB and COM_POS_FS_DELAY metadata limit 2018-04-24 00:02:48 -04:00
Daniel Agar fc26fd99bd commander move remaining position failsafe params to class and cleanup 2018-04-24 00:02:48 -04:00
Daniel Agar fa9f400dbd commander update super block parameters 2018-04-24 00:02:48 -04:00
Daniel Agar b70e7433dc commander add parameters for eph, epv, evh requirements 2018-04-24 00:02:48 -04:00
Daniel Agar 7bc3a12efe commander move telemetry checks to new preflightcheck helper 2018-04-16 20:43:33 -04:00
Daniel Agar 64fb4b43b6 commander preflightCheck don't report failures during calibration 2018-04-16 20:43:33 -04:00
Daniel Agar 2271b3f127 commander preflight checks pass status and status_flags messages 2018-04-16 20:43:33 -04:00
Daniel Agar f2104217d4 commander arm_auth check last 2018-04-16 20:43:33 -04:00