Commit Graph

11939 Commits

Author SHA1 Message Date
Vasily Evseenko 457526ebe7 Don't push bad values from lidar to EKF2 (#5196)
Report terrain altitude
2016-08-01 23:30:40 -07:00
Julian Oes ccea9c9e6f fmu: flash safety button correctly even disabled (#5189)
If the circuit breaker to disable IO safety is engaged, the safety
button should still blink in the appropriate pattern: double flash for
safety off, solid on for armed.
2016-08-01 02:18:36 -07:00
Julian Oes 623b99327d param: lock the bus as short as possible (#5187)
Since the FRAM and the baro are on the same bus on the Pixracer, we
currently need to lock down everything (instead of just this SPI bus)
for the time when the params are written.
Therefore, we need to keep this locking as short as possible.

This change makes the locking even shorter by moving all param_get and
param_name and param_size calls out of the lock.
2016-08-01 02:15:21 -07:00
Lorenz Meier a38263b8e7 Enforce enough braking power when users set higher horizontal speeds 2016-07-31 17:43:15 +02:00
Julian Oes dd70b3752a mpu9250: set accel DLPF to 41 Hz (#5177)
Previously, the accel DLPF was not set, so it's not clear what the
settings are or should be.
2016-07-31 08:04:01 -07:00
Julian Oes 21bc5d1716 land_detector: remove leftover printf (#5178) 2016-07-31 07:49:11 -07:00
Lorenz Meier 11f1a11934 Lock yaw integral if we hit a yaw limit 2016-07-31 14:14:55 +02:00
Lorenz Meier a1c8585342 EKF2: Report zero as position until local pos is valid 2016-07-31 14:01:32 +02:00
Lorenz Meier c835fb36a6 5611: Bump sampling frequency back up to 40 Hz from 25 Hz to help with altitude estimation 2016-07-31 12:20:48 +02:00
Julian Oes 0d80a77e46 unit_tests: move hysteresis test to new framework 2016-07-30 12:26:56 +02:00
Julian Oes 8f1d350d3c unit_test: add ut_assert_true and ut_assert_false 2016-07-30 12:26:56 +02:00
Julian Oes 6bf4bd5f35 land_detector: remove unused variable 2016-07-30 12:26:56 +02:00
Julian Oes 50cac88e5b land_detector: big refactor, share update function
This is a big refactor and general cleanup of the land detector. The
main functional change is to share the hysteresis lib across all land
detectors.
2016-07-30 12:26:56 +02:00
Julian Oes 9f928308c4 land_detector: astyle 2016-07-30 12:26:56 +02:00
Julian Oes 3d0fa410a8 hysteresis: astyle 2016-07-30 12:26:56 +02:00
Julian Oes fd6ad6565c commander: use hysteresis lib for auto_disarm
Since the auto disarm hysteresis was implemented wrongly, it's now
replaced with the hysteresis library call.
2016-07-30 12:26:56 +02:00
Julian Oes f7ad8c03b4 hysteresis: use 64bit for everything in us 2016-07-30 12:26:56 +02:00
Julian Oes 93acff8641 MulticopterLandDetector: remove always true call
The result from `!get_freefall_state()` was always true because
`get_freefall_state()` is already called before `get_landed_state()` is
called. Only if we're not in a freefall, we check if we are landed.
2016-07-30 12:26:56 +02:00
Julian Oes 740bfc0b32 MulticopterLandDetector: use hysteresis lib
The hysteresis was not properly implemented in the land detector and is
therefore replaced by the library call, both for the freefall detector
and the land detector.
2016-07-30 12:26:56 +02:00
Julian Oes ee1669e174 hysteresis: add to systemlib CMakeLists.txt 2016-07-30 12:26:56 +02:00
Julian Oes f365832c0b hysteresis: we needed different hysteresis
Sometimes, we only need a histeresis in one direction.
2016-07-30 12:26:56 +02:00
Julian Oes 401d807261 systemlib: added library for hysteresis
There have been two cases where a hysteresis function wasn't working
correctly. It is therefore a good idea to abstract the hysteresis
functionality into a library.
2016-07-30 12:26:56 +02:00
sander 788f04ea58 Remove debug info 2016-07-30 11:43:52 +02:00
sander 94fc8bda02 Fix indenting 2016-07-30 11:43:52 +02:00
sander 2bca19fc5e Remove acceptance radius from takeoff altitude for MC 2016-07-30 11:43:52 +02:00
sander e4f20f98cd Implement altitude acceptance radius 2016-07-30 11:43:52 +02:00
Lorenz Meier b5ef5cabb5 Updated src/drivers/gps/devices 2016-07-30 11:40:50 +02:00
James Goppert 5f16c97662 Added mb12xx sensor enable. (#5164) 2016-07-29 16:18:27 -04:00
Daniel Agar 390a7165dd make tests (#5163)
* make tests use px4 instead of mainapp

* commander_tests ALTCTL - not rotary requires altitude
2016-07-29 11:46:47 -04:00
Julian Oes 5a262ec6bc uorb: came across a wrong comment 2016-07-29 17:44:50 +02:00
Julian Oes a18eabead4 navigator: whitespace 2016-07-29 17:44:50 +02:00
Daniel Agar 2de66b1a9d FW navigation in high winds (#5097) 2016-07-29 06:05:48 -07:00
Beat Küng 0fa3bd4691 ms5611: use px4_getopt instead of getopt
- px4_getopt is threadsafe
- getopt does not do argument reordering (ms5611 start -T 5607 did not work)
2016-07-29 14:50:03 +02:00
David Sidrane 1b0f41e36e Added support to MS5611 Driver for MS5607 2016-07-29 14:50:03 +02:00
Lorenz Meier 6ab9dc0acf Testing cleanup from Daniel Agar 2016-07-29 13:49:14 +02:00
Daniel Agar 99aa5f49fc FW ALTCTL requires altitude 2016-07-29 13:48:21 +02:00
Daniel Agar 6aa935fed6 FW don't allow ACRO or RATTITUDE 2016-07-29 13:48:21 +02:00
Lorenz Meier e70223c2be Allow transition commands also in manual if no switch is used 2016-07-29 13:43:24 +02:00
Roman 1f1839d978 sensors: fixed code style
Signed-off-by: Roman <bapstroman@gmail.com>
2016-07-29 13:28:09 +02:00
Roman 9ece090dbe vtol_att_control: use transition switch instead of aux1
Signed-off-by: Roman <bapstroman@gmail.com>
2016-07-29 13:28:09 +02:00
Roman 499d362b8b added transition switch 2016-07-29 13:28:09 +02:00
Beat Küng 2241ab9cac mavlink: add a shell using SERIAL_CONTROL MAVLink message 2016-07-29 13:07:17 +02:00
Julian Oes 78a9472b25 px4iofirmware: astyle 2016-07-29 12:46:17 +02:00
Julian Oes dcb7c0e4c2 px4iofirmware: correct newline 2016-07-29 12:46:17 +02:00
Julian Oes 79a1b84b09 px4iofirmware: clean up override decision
The override checking was scattered across two places and is now unified
in controls_tick(). The part in mixer_tick only decides which mixer (or
none) to use give the override flag.
2016-07-29 12:46:17 +02:00
Julian Oes de76c398ca px4io: whitespace fixes 2016-07-29 12:46:17 +02:00
Julian Oes ec035b7268 px4iofirmware: no override in multirotor mode
This fixes a bug where multirotors got into override mode when the FMU
is dead/not responding.
The main bug was that the check was for FMU_OK || MANUAL_OVERRIDE_OK
in order to get further in the override checks.

Also a mixer_tick was called inside the controls_tick even though these
are called in px4io.c after each other anyway.
2016-07-29 12:46:17 +02:00
Julian Oes 57b3bbf657 px4iofirmware: don't set FMU_OK flags immediately
The FMU_OK flags are later checked anyway based on
system_state.fmu_data_received_time.
2016-07-29 12:46:17 +02:00
Julian Oes 31d5c59ab7 px4iofirmware: remove unused define 2016-07-29 12:46:17 +02:00
Julian Oes a9a5f3a19e px4io: add FMU fail test mode
In order to test what happens in px4iofirmware when the FMU stops
sending PWM or control commands, I added a test mode. When the test mode
is activated, no controls are sent.
2016-07-29 12:46:17 +02:00