Commit Graph

10322 Commits

Author SHA1 Message Date
Daniel Agar fe6006e22f commander move mission_result to class 2018-01-14 12:53:53 +01:00
Daniel Agar f49c061a3c navigator fix mission_result increment and sign mismatch 2018-01-14 12:53:53 +01:00
Daniel Agar b1a3475ebf commander mission valid check require updated mission_result 2018-01-14 12:53:53 +01:00
Daniel Agar 916d6a15fd Mission merge offboard + onboard and simplify 2018-01-14 12:53:53 +01:00
Daniel Agar 956935141e Navigator simplify mission 2018-01-14 12:53:53 +01:00
Daniel Agar 25c7a03a8b Navigator remove unnecessary calls to updateParams
- the SuperBlock already does this
2018-01-14 12:53:53 +01:00
Lorenz Meier 6227139df1 MAVLink app: Make debug messages a compile time check
The debug messages are too verbose to be run in a production vehicle and inherently were something that should only be run in SITL / debug sessions on hardware. Switching the flag to the PX4_DEBUG() macro does not only make this more explicit, but also saves a lot of flash space that otherwise was consumed by the strings.
2018-01-13 22:02:57 -05:00
Matthias Grob 931482941c mc_pos_control: use global _dt member from the control block architecture 2018-01-13 13:08:47 +01:00
Daniel Agar a25ca0c37d param include px4_config.h for FLASH_BASED_PARAMS
- fixes #8585
2018-01-12 23:46:15 +01:00
Daniel Agar 7b1b255158 EKF2 set zero unused estimator_status fields 2018-01-12 23:19:46 +01:00
Beat Küng f47d0c8f8c load_mon: reduce FDS_LOW_WARNING_THRESHOLD to 3
This bound can be quite tight, because:
- The system still behaves well, even if all FD's are used (as opposed to
  a stack overflow)
- The amount of used FD's is typically only increased one at a time
  (e.g. adding new logged topics, adding a mavlink stream, ...)
- reducing CONFIG_NFILE_DESCRIPTORS to the minimum frees up a considerable
  amount of RAM on systems that need it
2018-01-12 23:18:59 +01:00
Beat Küng 794c7a5a0f load_mon: fix tasks index & fds_free initialization
Makes sure that if CONFIG_NFILE_DESCRIPTORS == 0, no warning is printed.
2018-01-12 23:18:59 +01:00
Lorenz Meier eb43b86a4b Load mon: Also monitor file descriptors
It is important that tasks do not run out of them and this addition will provide a warning and log evidence if it goes wrong.
2018-01-12 23:18:59 +01:00
Daniel Agar 137a2444a8 VTOL standard respect VT_ELEV_MC_LOCK 2018-01-11 16:18:47 -05:00
Matthias Grob 385212f2c1 Simulator: virtual battery drain stops by default at 50% to avoid failing preflight checks to take off again
also added comments and removed throttle compensation because there is no real battery emulation with load drop
2018-01-11 08:36:03 +01:00
Matthias Grob 8c998c1309 Battery: enhanced voltage, capacity estimate fusion, set empty voltage to a useful value for reasonable lipo usage 2018-01-11 08:36:03 +01:00
Matthias Grob 919b6ae239 Battery added proper initialization for the capacity voltage fusion and doubled the time constant 2018-01-11 08:36:03 +01:00
Matthias Grob 663913a1dc Battery: added simple fusion of capacity based estimate and voltage based estimate 2018-01-11 08:36:03 +01:00
Matthias Grob 823d423456 Battery: refactor current integration to be easier understandable 2018-01-11 08:36:03 +01:00
Matthias Grob 9fbd6b912d Battery: adapt output constraints to possible values, only calculate remaining capacity if capacity is configured 2018-01-11 08:36:03 +01:00
Matthias Grob 60cc132c8a Battery: refactor _param out of the variable names and use 0.f for zero floats to make code more readable 2018-01-11 08:36:03 +01:00
Matthias Grob 90b326f3b5 Battery: get rid of the duplicate filtering, just use the already existing methods 2018-01-11 08:36:03 +01:00
Matthias Grob 101aeadf03 Battery: revised voltage drop calculation to fit the new simpler easier to verify estimation 2018-01-11 08:36:03 +01:00
Matthias Grob 52e2aecaf1 Battery: simplify linear voltage relation, currently neglecting the real world voltage drop under load 2018-01-11 08:36:03 +01:00
Matthias Grob bc15fdf267 Simulator: virtual battery drain simplified and stops when battery is exactly empty
it's a lot more readable and battery draining stops exactly at the empty battery voltage which makes debuging easier because it's directly predicatable
2018-01-11 08:36:03 +01:00
Beat Küng f561d16334 fix param_export: off-by-one buffer size
In rare circumstances, the buffer size was too small by 1 byte, leading
to a param export failure. And leading to a reset of all params!
This could only happen when the last saved param was a float.

Also the realloc_ok initialization is not needed.
2018-01-10 22:03:14 +01:00
Beat Küng f8ceee0cf2 fix param: need to use fsync() and not px4_fsync()
It's used with real OS FD's.
2018-01-10 22:03:14 +01:00
Beat Küng f962e9826b param_export: reduce bson buffer size from 512 to 256
Some modules call this (and maybe in rare circumstances), which could lead
to stack overflows. With our current headroom of >= 300bytes, 256 should
be ok.

This increases the export time from ~28ms to ~34ms in my case (on a
Pixracer)
2018-01-10 22:03:14 +01:00
Beat Küng dac2a93ea2 logger: add sensor_combined at full rate to high rate profile
useful in case the ekf replay topics are not enabled
2018-01-10 07:59:32 +01:00
Huang 60eb1c2262 mc_pos_control: delete the unused variable 2018-01-09 10:03:44 +01:00
Daniel Agar a02cd869c3 mavlink receiver remove unnecessary rates setpoint class member 2018-01-09 01:01:53 -05:00
Daniel Agar fe22b856d6 mavlink receiver remove unnecessary attitude setpoint class member 2018-01-09 01:01:53 -05:00
Daniel Agar cf2d794da9 Subscription remove unused instance class member 2018-01-09 00:48:54 -05:00
Daniel Agar 8fdcdedc84 Publication remove unused instance class member 2018-01-09 00:48:54 -05:00
Lorenz Meier 3d9cd5c0bc Params: Ignore volatile 2018-01-08 17:01:02 +01:00
Lorenz Meier 48af6b6d61 System: Mark reset state param as volatile 2018-01-08 09:27:22 +01:00
Lorenz Meier 501dd82aaf Systemlib: Move circuit breaker into Developer category 2018-01-08 09:27:22 +01:00
Lorenz Meier 115288301e INAV: Move circuit breaker to Developer category 2018-01-08 09:27:22 +01:00
Lorenz Meier d6a2002505 Sensors: Update param metadata
This hides these parameters by default from the user.
2018-01-08 09:27:22 +01:00
Lorenz Meier b07deed6c6 Land detector: Update param metadata
This helps with param transfers and will hide these params by default from the user.
2018-01-08 09:27:22 +01:00
Lorenz Meier 73348b6c4e EKF2: Update param metadata 2018-01-08 09:27:22 +01:00
Lorenz Meier a0c312fcbd Commander: Update param metadata 2018-01-08 09:27:22 +01:00
Lorenz Meier 7f12f4ae9b Params: Switch level to category and move it to attribute along with volatile
This makes it easier for QGC to parse.
2018-01-08 09:27:22 +01:00
Lorenz Meier 55e0588661 Eagle: Update to latest param message 2018-01-08 09:27:22 +01:00
Lorenz Meier ac5f856d2d Param parser and XML output: Add support for volatile attribute
This allows to mark parameters as volatile.
2018-01-08 09:27:22 +01:00
Lorenz Meier 27e64149f0 MAVLink app: Avoid comparing to zero for value change
No functional change, but this avoids numerical issues in the check routine. Since the routine will tend to false positives, we will tend to send more param updates than required in case of numerical noise of the float representation. This is desired, as we prefer to send two updates rather than not sending one.
2018-01-08 09:27:22 +01:00
Lorenz Meier 7695f79239 Parameters: Add support for volatile parameters
Volatile parameters are ones that do not represent a fundamental configuration change but rather than incrementally changing settings. These include logged flight hours or sensor offsets. Marking them as volatile avoids these parameters forcing time-consuming telemetry updates.
2018-01-08 09:27:22 +01:00
Lorenz Meier f284385c3f MAVLink parameters: Send all updated parameters asynchronously
Parameters can change not just based on GCS request, but also due to internal code or requests by a different valid connected control authority such a cloud service. This change ensures that all connected systems get updated via MAVLink asynchronously.
2018-01-08 09:27:22 +01:00
Lorenz Meier 2170e7eba0 MAVLink main: Only update internal parameters
All param handling happens in the param manager.
2018-01-08 09:27:22 +01:00
Lorenz Meier fb3c58d85f Param interface: Publish instance count
This helps subscribers to understand if they should update their parameters or not. We will extend this with other flags such as the current save status and alike.
2018-01-08 09:27:22 +01:00