Commit Graph

6789 Commits

Author SHA1 Message Date
Andrew Tridgell a967a682a4 GCS_MAVLink: added routing test sketch 2014-12-17 10:32:28 +11:00
Andrew Tridgell 7f817502c4 GCS_MAVLINK: implement new routing rules
see description in coments
2014-12-17 10:32:28 +11:00
Andrew Tridgell 70f5ec60e8 AP_TECS: added get_land_sinkrate() 2014-12-15 21:51:07 +11:00
Andrew Tridgell 8c1cab84c7 AP_SpdHgtControl: added get_land_sinkrate() 2014-12-15 21:51:07 +11:00
Randy Mackay 21beb26484 Notify: minor event reordering
No functional change
2014-12-15 14:10:26 +09:00
Randy Mackay e68a69e139 ToneAlarm_PX4: remove user_mode_init flag
Replaced by an initialised check in the main ArduCopter flight code
2014-12-15 14:10:21 +09:00
Randy Mackay 1c8ab375e2 Notify: rename failsafe_action event 2014-12-15 14:10:15 +09:00
Randy Mackay 972c8e47d2 Notify: rename notify_types to notify_flags_type 2014-12-15 14:10:10 +09:00
Randy Mackay bfc86ac7c0 ToneAlarm_PX4: add comments 2014-12-15 14:10:06 +09:00
Randy Mackay c75ab8f3e5 Notify: add comments re events 2014-12-15 14:09:15 +09:00
Jonathan Challinger 3dfcdde6be AP_Notify: Rework ToneAlarm_PX4 to play tones from local array 2014-12-15 14:09:04 +09:00
priseborough e2d47f836e AP_TECS: Fix bug causing plane to fly high on landing approach
The introduction of the height rate flare logic caused the demanded height rate to be zero except when a flare manouevre was being performed. This caused the plane to lag behind height changes if the D gain was non-zero, which caused it to fly high during landing approach.
2014-12-14 09:43:46 +11:00
Randy Mackay b54b7b7448 GCS_MAVLink: fix compiler error 2014-12-11 16:26:26 +09:00
Randy Mackay e581e81da5 AP_NavEKF: reorder declation to fix compiler warning
No functional change
2014-12-11 15:37:56 +09:00
Randy Mackay ddda0d52ce Baro: reorder declaration to fix compiler warning
No functional change
2014-12-11 13:06:24 +09:00
Andrew Tridgell ade7f9e1a9 GCS_MAVLink: fixed forwarding of non-targetted messages 2014-12-11 12:32:50 +09:00
Andrew Tridgell fcf17829cc GCS_MAVLink: fixed addition to routing table 2014-12-11 12:32:48 +09:00
Andrew Tridgell 079158d4b8 GCS_MAVLink: strip out the old GCS_Class class
this is not longer needed as we don't support multiple protocol
classes
2014-12-11 12:32:45 +09:00
Andrew Tridgell f198cdcf20 GCS_MAVLink: added support for a MAVLink snoop function
this can be used to watch messages for different targets
2014-12-11 12:32:32 +09:00
Andrew Tridgell 34be7f808e GCS_MAVLink: only try to fwd packets to active channels 2014-12-11 12:32:30 +09:00
Andrew Tridgell 411766f45a AP_Mount: removed use of mavlink_check_target() 2014-12-11 12:32:27 +09:00
Andrew Tridgell 4a9331c505 AP_Camera: removed use of mavlink_check_target() 2014-12-11 12:32:24 +09:00
Andrew Tridgell f1edd1bafb GCS_MAVLink: removed use of mavlink_check_target()
not needed now we do routing properly, as messages will only be
processed if they are for us
2014-12-11 12:31:06 +09:00
Andrew Tridgell aa88ba4158 GCS_MAVLink: only call message handler for our own messages 2014-12-11 12:30:59 +09:00
Andrew Tridgell 11f88f0f5d GCS_MAVLink: added routing object to GCS_MAVLink 2014-12-11 12:30:55 +09:00
Andrew Tridgell b91529622b GCS_MAVLink: initial implementation of MAVLink routing object
will be used to auto-route packets over all available links
2014-12-11 12:30:50 +09:00
Andrew Tridgell 76c710f596 GCS_MAVLink: removed obsolete headers 2014-12-11 12:30:46 +09:00
Andrew Tridgell 3354cb37d0 AP_GPS: fixed vertical velocity in Replay
fixed NavEKF use of velocity velocity
2014-12-09 18:57:17 +11:00
Andrew Tridgell 4a91546ced HAL_PX4: FRAM does not support fsync
the fsync just wastes time reopening /fs/mtd
2014-12-09 14:35:36 +11:00
Randy Mackay da247bacf8 GCS_MAVLink: add OPTICAL_FLOW to ap_message enum 2014-12-08 14:58:30 +09:00
Randy Mackay 3c23f00e81 OptFlow: remove ADNS3080 image grabber example 2014-12-08 14:58:24 +09:00
Andrew Tridgell 193bda068c HAL_Linux: run IO processes when we do a stop_clock()
this has the effect of allowing logging to progress in Replay where we
are running at much more than realtime speeds
2014-12-08 11:24:39 +11:00
Andrew Tridgell cb9c518ab8 Revert "AP_NavEKF : Reduce ripple in estimates that can cause copter motor 'pulsing'"
This reverts commit 13df6fb1c9.

This patch was a result of an incorrect merge of the optflow branch
into master. It reintroduced the bug fixed by this commit:

  AP_NavEKF : Fix bug in reset of GPS glitch offset
  8aa267f75f
2014-12-08 07:53:47 +11:00
Andrew Tridgell 22a7b69260 AP_OpticalFlow: don't build optical flow example
broken by library changes
2014-12-06 22:05:42 +11:00
Andrew Tridgell ed510d4f87 AP_OpticalFlow: run PX4 flow sensor at 10Hz
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-12-06 18:16:51 +11:00
priseborough a2bd3b4a42 AP_NavEKF: Add public method returning height above ground level 2014-12-06 18:16:51 +11:00
priseborough d701cfcb75 AP_NavEKF: Output terrain relative PosD when relying on Optical Flow 2014-12-06 18:16:51 +11:00
priseborough 0156d846f1 AP_NavEKF: Increase height at which nav gain reduction starts
Compensates for optical flow induced noise increase with height.
2014-12-06 18:16:51 +11:00
priseborough 12ea1d6e85 AC_AttitudeControl: Scale angle demand noise filter
Scales filter frequency using EKF nav gain scaler to take advantage of the reduced nav frequency whichcan tolerate a slower angle response.
This is required to reduce the effect of EKF optical flow noise increase with height.
2014-12-06 18:16:51 +11:00
priseborough a905432ffe AP_NavEKF: reduce height at which nav gain reduction starts 2014-12-06 18:16:51 +11:00
priseborough 5785272933 AP_NavEKF: Improve robustness to corrupted flow sensor data 2014-12-06 18:16:51 +11:00
priseborough b1d44d4dde AP_NavEKF: Add protection for negative height above ground 2014-12-06 18:16:50 +11:00
priseborough e80b1c67cd AC_AttitudeControl: Add EKF optical flow noise gain scaler
Allows gains to be adjusted to compensate for optical flow noise
2014-12-06 18:16:50 +11:00
priseborough 11fb51ceba AC_WPNav: Add nav velocity gain scaler to interfaces
Allows gains to be adjusted to compensate for optical flow noise
2014-12-06 18:16:50 +11:00
priseborough 5b8265ad6f AP_AHRS: Expand EKF speed limit public method to handle control limits 2014-12-06 18:16:50 +11:00
priseborough d994da0886 AP_NavEKF: Expand EKF speed limit public method to handle control limits 2014-12-06 18:16:50 +11:00
priseborough 5fa0c59310 AC_WPNav: Add EKF ground speed limit to loiter speed control
This is required to prevent the speed controller saturating the optical flow sensor during low altitude flying.
2014-12-06 18:16:50 +11:00
priseborough 83775554ea AP_AHRS: Publish EKF ground speed limit 2014-12-06 18:16:50 +11:00
priseborough bc2255d6b1 AP_NavEKF: Improve comments in setInhibitGPS public method 2014-12-06 18:16:50 +11:00
priseborough 416eaf4633 AP_NavEKF: Apply single definition of using optical flow 2014-12-06 18:16:50 +11:00
priseborough b56b68ce10 AP_NavEKF: Add public method reporting horizontal speed limit
This is required if using optical flow, as depending on height, the speed must be limited to prevent the sensor saturating
2014-12-06 18:16:50 +11:00
priseborough c8fb376cc4 AP_NavEKF: Fix bug in bias rate of change limiting
This doesn't change the behaviour, but means the result is achieved using the correct parameters, and comments are consistent
2014-12-06 18:16:50 +11:00
priseborough 599e53f3f2 AP_NavEKF: Prevent flow scale factor updating on ground 2014-12-06 18:16:49 +11:00
priseborough 083e22966c AP_NavEKF: Add public method to report available output data 2014-12-06 18:16:49 +11:00
priseborough 5532750a99 AP_AHRS: Add public method to inhibit GPS useage when using EKF
This provides the calling vehicle software the abiity to request the EKF to not use GPS.
An integer is returned that indicates the type of operation available:
0 = request rejected (request will only be accepted if the EKF is in static mode, eg pre-armed)
1 = request accepted, attitude, vertical velocity and position estimates available
2 = request accepted, attitude, height rate, height, horizontal velocity and relative position estimates available
2014-12-06 18:16:49 +11:00
priseborough e53d28854e AP_NavEKF: Add public method to inhibit GPS use and clean-up GPS use logic
This provides the calling vehicle software the abiity to request the EKF to not use GPS.
An integer is returned that indicates the type of operation available:
0 = request rejected (request will only be accepted if the EKF is in static mode, eg pre-armed)
1 = request accepted, attitude, vertical velocity and position estimates available
2 = request accepted, attitude, height rate, height, horizontal velocity and relative position estimates available
2014-12-06 18:16:49 +11:00
priseborough 8fb1d9cf8d AP_NavEKF: Fix bug preventing opt flow scale factor estimation
Also removes un-used variable declarations
2014-12-06 18:16:49 +11:00
priseborough a78920761c AP_NavEKF: Update comments in flow data interface 2014-12-06 18:16:49 +11:00
priseborough 063fb41748 AP_OpticalFlow: Add separate scale factors for X and Y axis.
The resolution is also increased to take advantage of the planned introduction of automated calibration methods
2014-12-06 18:16:49 +11:00
priseborough 52c7e56a4a AP_NavEKF: Add parameter for max valid optical flow rate magnitude 2014-12-06 18:16:49 +11:00
priseborough 6f8971d80a AP_NavEKF: Speed up flow sensor gyro bias correction 2014-12-06 18:16:49 +11:00
priseborough d7ad45ebda AP_NavEKF: Don't fuse flow measurements if too big 2014-12-06 18:16:49 +11:00
priseborough 2dff76394d AC_PosControl: Add spike and noise filter to demanded angles
This has been done to provide a smooth psotion hold when using an optical flow aided EKF which can be noisy.

Signed-off-by: priseborough <p_riseborough@live.com.au>
2014-12-06 18:16:49 +11:00
priseborough 84944fdd4e AP_NAvEKF: Revert back to 10Hz fusion 2014-12-06 18:16:49 +11:00
priseborough f4f0dfc45c AP_OpticalFlow: efficiency improvements to data processing 2014-12-06 18:16:49 +11:00
priseborough 1f78a73cdb AP_NavEKF: Make flow measurement delay vehicle specific
This takes into account the inter-sampling delay between the flow driver and the APM software which depends on the rate at which the dirver is being checked. This is 50Hz for plane and rover, and 200Hz for Copter.
2014-12-06 18:16:49 +11:00
priseborough 5f941655a8 AP_NavEKF: changes to support to 20Hz flow fusion rate 2014-12-06 18:16:48 +11:00
priseborough 0bf991eef9 AP_NavEKF: Fix bug in optical flow fusion smoothing 2014-12-06 18:16:48 +11:00
priseborough 7d27a22f77 DataFlash : Fix EKF optical flow logging bug 2014-12-06 18:16:48 +11:00
priseborough 7ec8dfebcf AP_OpticalFlow : Remove gyro scale factor user adjustable parameter
No longer required because bug in flow sensor has been fixed.
2014-12-06 18:16:48 +11:00
priseborough 2baa1e56ed Dataflash : Fix bug in EKF opt flow logging 2014-12-06 18:16:48 +11:00
priseborough df59f3311a AP_OpticalFlow : Add gyro scale factor correction parameter 2014-12-06 18:16:48 +11:00
priseborough eec49ce1dd AP_OpticalFlow : Add parameter for flow rate scale factor correction 2014-12-06 18:16:48 +11:00
priseborough 839b814d12 AP_NavEKF : Inhibit flow and range fusion in static mode 2014-12-06 18:16:47 +11:00
priseborough 9b9934ac06 AP_NavEKF : fix velocity timeout bug during optical flow operation 2014-12-06 18:16:47 +11:00
priseborough cc8e6dbfad DataFlash : Add EKF additional fault and timeout logging 2014-12-06 18:16:47 +11:00
priseborough 517026980b AP_NavEKF : Add fault and timeout logging 2014-12-06 18:16:47 +11:00
priseborough f640ec30ff AP_NavEKF : Reset held velocity on arming
This held velocity is used to constrain the drift in the optical flow solution before the vehicle is high enough for the optical flow sensor to work.
2014-12-06 18:16:47 +11:00
priseborough 4616721b0d DataFlash : Update EKF debug logging 2014-12-06 18:16:47 +11:00
priseborough 06c19a3a4d AP_NavEKF : Update optical flow debug logging 2014-12-06 18:16:47 +11:00
priseborough 1791dec622 AP_NavEKF : Fix velocity hold mode 2014-12-06 18:16:47 +11:00
priseborough 84421e0a35 AP_NavEKF : Adjust initial flow scale factor and limits 2014-12-06 18:16:47 +11:00
priseborough 573633daf7 AP_NavEKF : Fix incorrect use of flow sensor time-stamp
flow sensor time stamp is now issued by the flow sensor and is on a different time-base
2014-12-06 18:16:47 +11:00
priseborough 92e9336fe1 AP_OpticalFlow : prevent divide by zero 2014-12-06 18:16:47 +11:00
priseborough 9ea97c1a38 AP_NavEKF : Modify optical flow data interface
Sign conventions have changed
2014-12-06 18:16:46 +11:00
priseborough 8faeb190de AP_NavEKF : Rework logic to cope with bad flow data 2014-12-06 18:16:46 +11:00
priseborough 44e1695d5a AP_AHRS : Enable EKF start without GPS 2014-12-06 18:16:46 +11:00
priseborough 41f0231cfb AP_NavEKF : improve logic dealing with lack of flow or range data 2014-12-06 18:16:46 +11:00
priseborough 9ba46ad795 AP_NavEKF : Improve handling of flow sensor failure 2014-12-06 18:16:46 +11:00
priseborough 2ee1c549be AP_NavEKF : improve criteria used to inhibit scale factor estimation 2014-12-06 18:16:46 +11:00
priseborough e09ff84218 AP_NavEKF : Don't estimate focal length scale factor without reliable velocity 2014-12-06 18:16:46 +11:00
priseborough 4c92a5f23f AP_NavEKF : Use GPS velocity if PX4Flow sensor fails 2014-12-06 18:16:46 +11:00
priseborough 283811edcb AP_NavEKF : stop velocity change when flow measurements drop out 2014-12-06 18:16:46 +11:00
priseborough 9132fcfe43 AP_NavEKF : Change mag fusion to use corrected compass values
This enables compass units to be switched in-flight
2014-12-06 18:16:46 +11:00
priseborough c3be486c29 AP_NavEKF : Enable inhibiting of GPS measurements 2014-12-06 18:16:45 +11:00
priseborough 79698f7742 AP_NavEKF : improvements to range finder fusion 2014-12-06 18:16:45 +11:00
priseborough 1222559da0 AP_NavEKF : Fix bug affecting sonar fusion 2014-12-06 18:16:45 +11:00
priseborough 117bd2a998 AP_NavEKF : Add time based noise to terrain offset state 2014-12-06 18:16:45 +11:00
priseborough b1d3d5d9a3 AP_NavEKF : Don't update focal length scale factor at low speeds 2014-12-06 18:16:45 +11:00
priseborough 8dd1081f54 AP_NavEKF : Add range measurement to EKF debug message 2014-12-06 18:16:45 +11:00
priseborough f358d5e20f DataFlash : Add range measurement to EKF debug message 2014-12-06 18:16:45 +11:00
priseborough 744c72d40b AP_NavEKF : Updates to range finder fusion 2014-12-06 18:16:45 +11:00
priseborough a07e402ebf DataFlash : Update names in EKF optical flow logging 2014-12-06 18:16:45 +11:00
priseborough a20729f60f AP_NavEKF : Update names in optical flow debug logging 2014-12-06 18:16:45 +11:00
priseborough 235b3bebda AP_NavEKF : Add range finder health and enable range finder fusion
The 2-state auxiliary filter is also renamed.
2014-12-06 18:16:45 +11:00
priseborough a4984a1e76 AP_AHRS : Add range finder health status to EKF optical flow data 2014-12-06 18:16:44 +11:00
priseborough 988de2a898 AP_NavEKF : Add smoothing to optical flow fusion 2014-12-06 18:16:44 +11:00
priseborough 70c779dbc2 AP_NavEKF : Optical flow numerical optimisations 2014-12-06 18:16:44 +11:00
priseborough 2a1420171a AP_NavEKF : reduce minimum accepted flow quality 2014-12-06 18:16:44 +11:00
priseborough 3fbedc9f98 AP_NAvEKF : update comments 2014-12-06 18:16:44 +11:00
priseborough 81b09c9361 AP_NavEKF : temporary mods to test use of flow sensor internal gyro data 2014-12-06 18:16:44 +11:00
priseborough 12b012a00e AP_AHRS : temporary mods to test use of flow sensor internal gyro data 2014-12-06 18:16:44 +11:00
priseborough cd418c946c AP_NavEKF : preliminary implementation for optical flow and range finder fusion
Range finder measurements are not input to EKF at this time, however the method for fusing them is
implemented.
2014-12-06 18:16:44 +11:00
priseborough bc74abcd00 DataFlash : EKF optical flow fusion support preliminary changes 2014-12-06 18:16:44 +11:00
priseborough 7b76fc29fb AP_AHRS : EKF optical flow fusion support preliminary changes 2014-12-06 18:16:44 +11:00
priseborough 13df6fb1c9 AP_NavEKF : Reduce ripple in estimates that can cause copter motor 'pulsing'
This patch reduces the level of 5Hz and 10Hz 'pulsing' heard in motors due to GPS and altimeter fusion which cause a small 5Hz and 10Hz ripple on the output under some conditions. Attitude, velocity and position state corrections from GPS, altimeter and magnetometer measurements are applied incrementally in the interval from receiving the measurement to the predicted time of receipt of the next measurement. Averaging of attitude state corrections is not performed during periods of rapid rotation.

Time stamps are now explicitly initialised to the current IMU time to avoid unwanted activation of timeout logic on filter start and the various calls to the hal.scheduler->millis() object have been consolidated.

Unused variables have been removed
2014-12-06 18:16:43 +11:00
priseborough dcb252cc05 AP_NavEKF : Fix bug in reset of position and velocity states
If the inertial solution velocity or position needs to be reset to the GPS, the stored state history for the corresponding states should also be reset.
Otherwise the next GPS measurement will be compared to an invalid previous state and will be rejected.
The position state should be reset to a GPS position corrected for velocity and measurement latency. This will make a noticeable difference for high speed flight vehicles, eg 11m at 50m/s
2014-12-06 18:16:43 +11:00
priseborough cb4d5986e0 AP_OpticalFlow : Update PX4Flow interface
Interface now uses the integral of flow and body rates
2014-12-06 18:16:43 +11:00
priseborough 0d774d301d AP_OpticalFlow : Remove support for ADNS3080 sensor
It is not compatible with the new interface and data fusion requirements
2014-12-06 18:16:43 +11:00
Randy Mackay 4452aa8448 AP_AHRS_DCM: compile error fix for low speed CPUs
Also correct initialisatoin order to remove compiler warning
2014-12-05 19:43:05 +09:00
Jonathan Challinger bfe71fea82 AC_PosControl: Use blended accelerometer measurement in altitude control 2014-12-05 19:40:10 +09:00
Jonathan Challinger 9261dfdefb AP_AHRS_NavEKF: overload get_accel_ef and get_accel_ef_blended functions 2014-12-05 19:40:08 +09:00
Jonathan Challinger 4975cefd84 AP_AHRS_DCM: update _accel_ef_blended 2014-12-05 19:40:06 +09:00
Jonathan Challinger 033ee3c900 AP_AHRS: Add get_accel_ef_blended function 2014-12-05 19:40:04 +09:00
Jonathan Challinger 7692761f34 AP_NavEKF: Added getAccelNED function 2014-12-05 19:40:01 +09:00
priseborough 874d0780aa AP_NavEKF: Reduce vulnerability to ground fixed magnetic interference
Re-initialisation of the magnetic field states and yaw angle is now only performed a maximum of two times after start-up.

Once when coming out of static modefor the first time (first arm event)
Again (for copter only) when the altitude gain above the arming altitude exceeds 1.5m

this prevents magnetic interference present at arming (eg arming on a metal roof)from corrupting the magnetic field states enough to cause bad heading errors and toilet bowling on copter
2014-12-05 14:33:04 +11:00
Andrew Tridgell ede920f293 AP_Mission: ensure location options are zero at start of mavlink conversion 2014-12-03 18:29:43 +11:00
Andrew Tridgell f98e283091 GCS_MAVLink: re-generate with updated upstream mavlink 2014-12-03 10:08:36 +11:00
Andrew Tridgell 940966f3e3 DataFlash: fixed example sketch build 2014-12-03 08:39:36 +11:00
Andrew Tridgell 86bf02d64c RC_Channel: update example sketch to copy input to output 2014-12-02 16:27:33 +11:00
Andrew Tridgell 5aabfd4dc4 AP_HAL: added RCInput example sketch 2014-12-02 15:49:50 +11:00
Andrew Tridgell 8e36c1cd60 AP_HAL: fixed RCOutput example 2014-12-02 15:03:59 +11:00
Andrew Tridgell 4ec6a74829 AP_HAL: addex UART_test example sketch 2014-12-02 13:14:03 +11:00
Andrew Tridgell 9e0a7e6631 AP_HAL: fixed printf example build 2014-12-02 13:14:03 +11:00
Andrew Tridgell c5e4e8f035 SITL: fixed SITL for example sketches
cope with no SITL object
2014-12-02 13:14:03 +11:00
Randy Mackay 9e731550fd AHRS: default EKF on for copter 2014-12-01 17:29:39 +09:00
priseborough 053c5054f3 AP_TECS: Change default landing damp gain to 0.5 2014-11-29 20:03:49 +11:00
priseborough 0912f05e7c AP_TECS: Add parameter to adjust height rate gain during flare 2014-11-29 20:03:41 +11:00
priseborough 11aefa6858 AP_TECS: Fix bug in parameter label 2014-11-29 20:03:37 +11:00
priseborough bd97f15d06 AP_TECS: make flare height demand consistent with height rate demand 2014-11-29 20:03:34 +11:00
Holger Steinhaus ebed80cd2a AP_GPS: work-around for invalid time reported by PX4 GPS 2014-11-28 13:30:21 +01:00
Holger Steinhaus df7c4baed9 AP_GPS: check lock type before accepting position and speed information 2014-11-28 13:26:51 +01:00
Andrew Tridgell 38c1b622f3 AP_AHRS: fixed example build on APM2 2014-11-28 17:59:18 +11:00
Andrew Tridgell 48abfcede7 AP_Scheduler: added example sketch 2014-11-28 12:59:47 +11:00
Andrew Tridgell 89cdae62b4 AP_AHRS: fixed example build 2014-11-28 10:40:52 +11:00
Andrew Tridgell e45522f51d AP_Baro: fixed example build 2014-11-28 10:40:43 +11:00
Andrew Tridgell a686494127 AP_Compass: fixed example build 2014-11-28 10:40:34 +11:00
Andrew Tridgell 908ad46e8e AP_GPS: fixed example build 2014-11-28 10:40:26 +11:00
Andrew Tridgell 7bb56e50aa AP_InertialSensor: fixed example build 2014-11-28 10:40:19 +11:00
Andrew Tridgell 0811f9c175 AP_Notify: fixed example build 2014-11-27 17:27:56 +11:00
John Williams d0e467aea0 AP_HAL_Linux: Bypass manual CS assertion for SPI_CS_KERNEL mode
Missed from initial patch series

Signed-off-by: John Williams <john@whelanwilliams.net>
2014-11-27 15:57:12 +11:00
Andrew Tridgell eb22815668 AP_TECS: fixed range values 2014-11-26 19:02:51 +11:00
Staroselskii Georgii d40011acf3 AP_Notify: added abstract Led and RGBLed classes 2014-11-26 11:16:27 +11:00
Mikhail Avkhimenia 955753f3f0 HAL_Linux: Optimize bandwidth for RCOutput_Navio
40% less bytes in I2C transactions for PCA9685.
2014-11-26 11:14:44 +11:00
Mikhail Avkhimenia 50459bdca0 HAL_Linux: Enable external clk for RCOutput_Navio
That should fix PWM value drifts.
2014-11-26 11:14:44 +11:00
Andrew Tridgell d0087c91e9 DataFlash: prevent build errors on non-PX4 targets 2014-11-26 11:14:44 +11:00
Andrew Tridgell 1d0122e6c2 DataFlash: log each ESC separately
this saves log space for ESCs that are not initialised (eg. only 3rd
ESC on fixed wing) and is a bit easier to deal with as a user
2014-11-26 11:14:44 +11:00
Holger Steinhaus 294d944cbd DataFlash: added logging of ESC feedback (currently only available with UAVCAN ESCs) 2014-11-26 11:14:44 +11:00
Andrew Tridgell 4132b53541 HAL_PX4: publish actuator values for UAVCAN ESCs
this publishes scaled actuator values so that the uavcan module can
drive ESCs
2014-11-26 11:14:44 +11:00
Andrew Tridgell e89d380b73 AP_HAL: added set_esc_scaling() RCOutput function
this will be used to scale outputs for uavcan ESCs based on throttle
range
2014-11-26 11:14:44 +11:00
Andrew Tridgell 22cb1c8525 HAL_Linux: tidy up SPI debugging a bit 2014-11-26 10:16:39 +11:00
John Williams 0fe3959d7e AP_HAL_Linux: Add support for in-kernel SPI CS handling
Add support for /dev/spidev<bus>.<cs> in-kernel SPI CS handling, and convert
existing SPI devices over.

 * Add a new member _subdev to the LinuxSPIDeviceDriver class, and initialiser
   in LinuxSPIDevice constructor.  Use subdev 0 for GPIO-managed CS
 * Extend the _cs_pin to signed 16 bits and define SPI_CS_KERNEL (-1) for
   kernel-managed CS
 * Move to per-device file descriptors (required for in-kernel CS)
 * Extend spidev filenames to include bus and subdevice numbers, possibly
   longer than 1 digit each
 * Allow support for platforms enumerating /dev/spidevNNN from non-zero bases
 * Convert existing users over to the new API

Signed-off-by: John Williams <john@whelanwilliams.net>
2014-11-26 09:55:09 +11:00
Andrew Tridgell 38c5f25c70 AP_Math: fixed example build 2014-11-25 13:22:17 +11:00
Michael Day b3e693daa4 AP_Mission: Support MAV_CMD_DO_FENCE_ENABLE as a mission item. 2014-11-25 13:02:47 +11:00
Michael Day b36c1b2c3d AP_Mission: support for MAV_CMD_CONTINUE_AND_CHANGE_ALT 2014-11-25 10:43:15 +11:00
Michael Day dca99a9643 GCS_MAVLink: code generation from XML for MAV_CMD_CONTINUE_AND_CHANGE_ALT. 2014-11-25 10:43:15 +11:00
Andrew Tridgell d5ced15acf GCS_MAVLink: include units in CONTINUE_AND_CHANGE_ALT 2014-11-25 10:43:14 +11:00
Michael Day 958d8ffacc GCS_Mavlink: New message def: MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT 2014-11-25 08:49:13 +11:00
Kirill A. Kornilov 33e4f44434 RC_Channel: added set_radio_trimmed()
take into account trim value in set_radio()
2014-11-25 08:19:27 +11:00
Andrew Tridgell 8d54368650 AP_Math: fixed build warning 2014-11-25 08:17:15 +11:00
Andrew Tridgell 09547c40cb DataFlash: added staticmode to EKF4 message
useful when diagnosing logs
2014-11-22 18:27:51 +11:00
Andrew Tridgell 46f601d703 AP_NavEKF: added getStaticMode() function 2014-11-22 18:27:51 +11:00
Andrew Tridgell 8acfbb2ee0 AP_NavEKF: add another health check in the EKF
if SV, SP and SH are all off then the most likely cause is divergence
of the EKF. This was done based on a flight log with bad gyro cal
2014-11-22 18:27:51 +11:00
Andrew Tridgell f84f432ecf AP_InertialSensor: allow gyro calibration to take up to 30 seconds
this gives time for the user time to get their battery hatches on and
hold the model steady. 5 seconds was just far too short
2014-11-22 18:27:51 +11:00
Randy Mackay 20f3f19285 Compass: add new rotation to ORIENT param description 2014-11-22 14:13:25 +09:00
Randy Mackay 503d14428d AP_Math: add new rotation to example rotation sketch 2014-11-22 14:10:00 +09:00
Randy Mackay 3d2c9910b3 AP_Math: add yaw 293, pitch 68, roll 180 rotation 2014-11-22 14:09:16 +09:00
priseborough d57c99f1cc DataFlash: Fix bug in logging of EKF IMU1 Z accel bias 2014-11-18 13:39:42 +11:00
Andrew Tridgell 78db698108 AP_Mount: allow a MOUNT_CONTROL message to reset RC targetting
fixes issue #1617
2014-11-18 13:35:11 +11:00
Randy Mackay 73f3b50e2f RC_Channel: make get_control_mid const 2014-11-17 18:16:12 -08:00
Jonathan Challinger 9375fc8947 RC_Channel: add get_control_mid function 2014-11-17 18:16:09 -08:00
Jonathan Challinger 4d7988b302 RC_Channel: replace long with int32_t 2014-11-17 18:16:08 -08:00
Andrew Tridgell 14467b75a1 AP_Mount: use norm_input_dz()
this makes rc targeting much easier without drift
2014-11-18 12:44:29 +11:00
Andrew Tridgell 6b0c15b70f RC_Channel: added norm_input_dz()
normalised input, taking into account dead zone
2014-11-18 12:44:05 +11:00
Andrew Tridgell ad0e6dccbb GCS_MAVLink: re-generate headers 2014-11-18 11:20:44 +11:00
Andrew Tridgell de294277e9 GCS_MAVLink: cope with new mavlink repo change in mavlink_system_t 2014-11-18 11:20:28 +11:00
Andrew Tridgell abba6395ad AP_TECS: fixed spelling error 2014-11-18 11:12:57 +11:00
Randy Mackay 8ef2948f27 GCS_MAVLink: generate update to version 2014-11-17 15:59:36 -08:00
Randy Mackay e46be909a4 GCS_MAVLink: generate after mount_status msg change 2014-11-17 15:59:33 -08:00
Arthur Benemann 9b5684d007 GCS_MAVLink: add MOUNT_STATUS to message enum 2014-11-17 15:59:28 -08:00
Arthur Benemann f7f9bedc38 AP_Mount: update the status_msg() method to match the new definition 2014-11-17 15:59:23 -08:00
Arthur Benemann c5b4121fc7 GCS_MAVLink: MOUNT_STATUS to always be reporting the angle of the gimbal
This is useful for GCS trying to plot the camera footprint.
2014-11-17 15:59:21 -08:00
Jonathan Challinger 055d3bee1f GCS_MAVLink: run generate.sh 2014-11-17 14:38:53 -08:00
Jonathan Challinger a4f994e8f0 GCS_MAVLink: update MAV_FRAME enum 2014-11-17 14:38:51 -08:00
Jonathan Challinger 2cc65dffe0 AC_WPNav: add set_spline_dest_and_vel function 2014-11-17 14:38:46 -08:00
Andrew Tridgell 809ff15b43 AP_GPS: make NMEA driver a bit easier to read
thanks to crashpilot100
2014-11-16 14:12:14 +11:00
Andrew Tridgell b81b9e1bb8 AP_GPS: prevent bad NMEA strings from causing overruns in parser
fixes issue #961

thanks to crashpilot100 for spotting this!
2014-11-16 14:08:20 +11:00
Andrew Tridgell 7497b4dfb1 HAL_Linux: fixed Replay with new AP_InertialSensor library 2014-11-16 12:30:50 +11:00
Andrew Tridgell 7c288e020b AP_InertialSensor: fixed detection of dead IMU
if a PX4 sensor does not give new data we need to avoid calling
_rotate_and_offset_*() to avoid marking it as healthy. Otherwise if
the MPU6k dies we won't switch to the LSM303D automatically
2014-11-16 12:30:33 +11:00
Andrew Tridgell 22237f2530 HAL_SITL: fixed handling of SIM_FLOAT_EXCEPT in main thread 2014-11-16 11:05:55 +11:00
Randy Mackay d9d238cc3c Relay: param descr match labels for Pixhawk
Renamed Pixhawk FMU AUX1 to Pixhawk AUXOUT1 to match labels on case to
make it easier for users to know what value to choose
2014-11-15 12:49:02 -08:00
Randy Mackay 0d3e1131a7 Relay: Pixhawk AUXOUT2 enabled by default 2014-11-15 12:45:12 -08:00
bugobliterator 9d39c0407e HAL_Linux: added ToneAlarmDriver.h 2014-11-15 21:25:55 +11:00
bugobliterator 485abbac3a AP_Notify: cleanup use of bool from toneAlarm_init() 2014-11-15 16:59:28 +11:00
bugobliterator 329c1f5190 HAL_Linux:create ToneAlarmDriver as a separate class
ToneAlarm is now declared as a separate class instance of which is added as a private member of LinuxUtil
Some minor fixes in this patch include changing return type of tonealarm_init() to bool and use dprintf
2014-11-15 16:59:06 +11:00
bugobliterator ad460659ad AP_HAL: make toneAlarm_init() return bool 2014-11-15 16:59:06 +11:00
bugobliterator f058131140 HAL_Linux Scheduler: reduce the delay inside tonealarm thread
Since the tonealarm is now passthrough the delay inside the thread needs to be reduced for precise tune generation
2014-11-15 16:59:06 +11:00
bugobliterator 3b94cb3072 HAL_Linux: make tonealarm generation a passthrough operation
get rid of all delays and while loops(that may turn into infinite loop)
2014-11-15 16:59:06 +11:00
bugobliterator e254b406d0 HAL_Linux: make rtttl tune and tune repeat flag list static members
instead of initialising them inside constructor
2014-11-15 16:59:06 +11:00
Andrew Tridgell c8c822422a HAL_Linux: give error msg on failure to start toneAlarm 2014-11-15 16:58:58 +11:00
Andrew Tridgell 7718be81cb AP_Notify: give error msgs on failure to start 2014-11-15 16:58:40 +11:00
Andrew Tridgell 682cf02770 GCS_MAVLink: regenerate after merge 2014-11-14 15:25:06 +11:00
Andrew Tridgell 0dba1b370a GCS_MAVLINK: merge with upstream XML 2014-11-14 15:24:34 +11:00
Andrew Tridgell d3b087d2c1 AP_GPS: fixed build on non-PX4 platforms 2014-11-14 14:48:42 +11:00
Andrew Tridgell e69582aa1c AP_GPS: added PX4EXPERIMENTAL to GPS type drop down 2014-11-14 14:39:46 +11:00
Holger Steinhaus abad58874c AP_GPS: enable GNSS modules handled by PX4 firmware via GPS_TYPE
GNSS modules handled by PX4 drivers are not auto-detectable, some are not even
connected to a UART port. The activation is therefore controlled by GPS_TYPE
only. Baud rate and port settings (if applicable) have to be handled by the PX4
firmware.
2014-11-14 14:36:10 +11:00
Holger Steinhaus 442aafbd1e AP_GPS: add proxy driver for GNSS modules handled by PX4 firmware 2014-11-14 14:36:10 +11:00
John Williams 57d2fc1dd5 HAL_Linux: RCInput support for Zynq 2014-11-14 14:10:35 +11:00
Jason Short 7ee5b58535 AP_Mount: Axis mask speedup
Using a simple bit mask to avoid calculating an unneeded ATAN2() for AVR users.
2014-11-14 13:51:16 +11:00
Matthias Badaire 1d3a49e466 AP_HAL_PX4 : make UARTDriver capable to be called from different threads.
The modification allows the read and write functions to be called by any thread but the calling thread must be the last one that called the begin() function.
2014-11-14 13:51:16 +11:00
Andrew Tridgell 154bf51279 HAL_PX4: minor tidy up of if statement 2014-11-14 13:51:16 +11:00
Holger Steinhaus 9e9c62d245 HAL_PX4: work-around for periodic enable_ch() calls 2014-11-14 13:51:16 +11:00
Holger Steinhaus e5549c90a1 HAL_PX4: do not overwrite disabled channels with zeros
Fixes #1321
2014-11-14 13:51:16 +11:00
Randy Mackay d34ea4c124 AC_PosControl: fix to default force_descend param 2014-11-13 18:40:45 -08:00
Jonathan Challinger e81c1dd5a1 AC_PosControl: add force_descend option to set_alt_target_from_climb_rate 2014-11-13 18:40:38 -08:00
Andrew Tridgell 2270a904ce RC_Channel: make flaperson range from -4500 to 4500 2014-11-14 11:23:52 +11:00
Jonathan Challinger cc955b738b AP_NavEKF: Clean up flight detector logic 2014-11-14 10:34:49 +11:00
priseborough 5359da9c68 AP_NavEKF : Improved Magnetometer Error Handling
(Plane Only) If the yaw and GPS heading disagree by more than 45 degrees on takeoff, then the magnetometer is declared as failed. The heading is then reset based on the difference between GPS ground track and stgate velocity vector.
Magnetometer fusion uses corrected data and bias states are initialised to zero. This allows the compass to be switched in flight.
For persistent compass errors that trigger a timeout, the compass is not permanently failed, however for non-forward fly vehicles the compass weighting is reduced.
2014-11-14 10:34:48 +11:00
Staroselskii Georgii a55db1c25d AP_HAL_Linux: fixed LinuxGPIO_RPI::read() 2014-11-14 10:28:34 +11:00
Mikhail Avkhimenia 49d3035ee5 HAL_Linux: fix types, remove printfs in GPIO_RPI 2014-11-14 10:28:34 +11:00
Mikhail Avkhimenia 6f993fe64a HAL_Linux: add prototype RCInput code for Navio 2014-11-14 10:28:34 +11:00
Staroselskii Georgii ef420a2544 AP_HAL_Linux: changed SPI mode for MPU9250 2014-11-14 10:28:34 +11:00
Staroselskii Georgii bf860ee41f AP_HAL_Linux: Ublox SPI stub 2014-11-14 10:28:34 +11:00
Víctor Mayoral Vilches ce4c4c43dc AP_HAL_Linux: Scheduler reboot fix
exit from the autpilot when reboot is commanded.
The software assumes that the code is being
launched in an infinite loop thereby an exit
will make it reboot.
2014-11-14 10:27:19 +11:00
John Williams ae87399919 HAL_Linux: Basic Zynq Linux platform support
Preliminary support for Zynq/Linux on the 'ZyboPilot' HW platform.

see https://github.com/trjw/ZyboPilot-bsp for the PetaLinux / Vivado project
files.

At this stage CPPM/Pulse in and PWM out work, and in CLI mode the passthru
test works correctly.

The platform has passed minimal smoke testing in HIL mode.

ZYNQ IS NOT FLIGHT TESTED YET!  FLY THIS PLATFORM AT YOUR OWN RISK!

Signed-off-by: John Williams <john@whelanwilliams.net>
2014-11-14 10:21:04 +11:00
Andrew Tridgell adcf994356 AP_HAL: added Zynq platform type 2014-11-14 10:21:04 +11:00
Staroselskii Georgii 7f00dd413f AP_Compass: fixed HMC5883's initialisation code 2014-11-14 10:21:04 +11:00
Andrew Tridgell 3b6c732b3b APM_Control: changed default I gain for roll/pitch controllers to non-zero
too many people are still not tuning. At least this will give them a
chance to get their aircraft back in a cross-wind
2014-11-13 22:13:25 +11:00
Andrew Tridgell 258542b939 AP_Airspeed: added ARSPD_SKIP_CAL parameter
allows airspeed calibration to be skipped for easier startup
2014-11-13 21:12:37 +11:00
Andrew Tridgell 9c631944f7 AP_Airspeed: expose raw pressure for logging 2014-11-13 17:49:04 +11:00
Andrew Tridgell f04f8e226d SITL: abort on floating point error
this creates a core file
2014-11-13 17:27:20 +11:00
Andrew Tridgell 1fc8116069 AP_L1_Control: update NAV_L1_PERIOD docs 2014-11-13 14:26:42 +11:00
Andrew Tridgell 1552278fa3 AP_TECS: use aparm.stall_prevention 2014-11-13 14:05:33 +11:00
Andrew Tridgell 04b63a61bf AP_Vehicle: added stall_prevention variable 2014-11-13 14:05:22 +11:00
Andrew Tridgell 3667900e84 AP_SpdHgtControl: added load_factor in update_pitch_throttle() 2014-11-12 13:36:02 +11:00
Andrew Tridgell bf591b0008 AP_TECS: take load factor into account in min airspeed
this will push up minimum airspeed when turning
2014-11-12 13:36:02 +11:00
Andrew Tridgell d404cc6542 AP_Baro: add set_external_temperature()
this allows the use of an external temperature sensor for calibration
purposes, such as the sensor built in to the digital airspeed sensor.

The main affect this has is on the EAS2TAS calculation

The get_calibration_temperature() is used to choose either an external
temperature or an internal one. If an internal one is used then it is
clamped at no higher than 25 degrees C, to prevent hot electronics
on startup affecting altitude scaling and EAS2TAS
2014-11-12 13:36:01 +11:00
Andrew Tridgell 8b794602d1 AP_Baro: make get_temperature() a const function 2014-11-12 13:36:01 +11:00
Andrew Tridgell 986b7bf894 AP_InertialSensor: fixed frequency to 16 bit in LDM303D and L3GD20 drivers 2014-11-11 17:06:22 +11:00
Andrew Tridgell c750cbebfb GCS_MAVLink: prevent asan errors in send_text_all 2014-11-11 15:16:26 +11:00
Andrew Tridgell a566ebe4ec HAL_SITL: prevent array overruns in RCInput/RCOutput 2014-11-11 15:16:26 +11:00
Randy Mackay 67690553c5 BaroGlitch: add reset method 2014-11-09 13:34:15 -08:00
Andrew Tridgell 2eeec3fabe AP_RangeFinder: fixed oversized parameter RNGFND2_SETTLE_MS 2014-11-10 08:09:41 +11:00
Andrew Tridgell ec17c5806e AP_Param: check parameter tables for bad suffix lengths 2014-11-10 08:09:08 +11:00
Andrew Tridgell 00526359b0 HAL_Linux: use dprintf() instead of sprintf and write 2014-11-10 06:51:53 +11:00
Andrew Tridgell bec1c05773 AP_Notify: fixed bitfields 2014-11-10 06:33:54 +11:00
bugobliterator e48fcf2df7 AP_Notify:change tonealarm-type bitmask to bool type,
change parameter data type from const uint8_t to uint8_t,
initialise tonealarm error flag to value -1 at tonealarm class initiallisation

This is a part of a set of fixes for the bugs and typos tridge discovered and shared inside earlier commits for setting up tonealarm.
2014-11-10 06:27:49 +11:00
bugobliterator 9f5f5871f2 AP_Notify:Fix the typo, usage of toshibaled.init() instead of toshibaled.update()
This is a part of a set of fixes for the bugs and typos tridge discovered and shared inside earlier commits for setting up tonealarm.
2014-11-10 06:27:48 +11:00
bugobliterator af203760bd HAL_Linux: change the return type of AP_HAL::Util::tonealarm_init() to signed int8_t.
This is a part of a set of fixes for the bugs and typos tridge discovered and shared inside earlier commits for setting up tonealarm.
2014-11-10 06:27:48 +11:00
bugobliterator fa6e83318d AP_HAL: Add virtual toneAlarm member functions to be declared under Linux_HAL 2014-11-10 06:27:48 +11:00
bugobliterator 298b27444a HAL_Linux: Add ToneAlarm Driver to Linux_HAL
ToneAlarm is setup for Beaglebone Black using pwm, toneAlarm thread runs on second last priority.
2014-11-10 06:27:48 +11:00
bugobliterator 5d6af51517 AP_Notify:Add ToneAlarm Support for HAL_Linux Boards 2014-11-10 06:27:48 +11:00
Jonathan Challinger 2d288d46a4 AP_HAL_AVR_SITL: fill in ublox accuracy metrics with reasonable values 2014-11-08 19:07:50 +11:00
Randy Mackay 31087e4f20 Compass: shorten EXTERNAL2/3 to EXTERN2/3
Bug discovered by Michael Day
2014-11-08 10:21:22 +09:00
Robert Lefebvre a2958e2ffd AP_MotorsSingle: Fix parameter comments. 2014-11-08 10:18:03 +09:00
Randy Mackay 98f5a93e10 AC_AttControl: remove unused logging structure 2014-11-08 10:17:32 +09:00
Andrew Tridgell 02581f4c05 HAL_Linux: re-fix dirty mask bug in Storage
when conversion to a single parent class was done it re-introduced a
bug that was fixed a while ago

See commit d238ff7c5d
2014-11-08 11:55:55 +11:00
Andrew Tridgell 330dab2fe3 HAL_Linux: fixed some warnings 2014-11-08 11:49:09 +11:00
bugobliterator 4908e335d2 HAL_Linux: Add Storage.cpp containing common storage class member definitions 2014-11-08 11:36:12 +11:00
bugobliterator dd6d520385 HAL_Linux:Create subclass to handle FRAM Storage under main Storage Class 2014-11-08 11:36:09 +11:00
Victor Mayoral Vilches 46c8714996 AP_GPS: make the examples compile in Linux 2014-11-08 11:25:35 +11:00
Andrew Tridgell 14a6878bcd HAL_Linux: fixed termios settings on BBB initial boot
this should fix the problem of losing the GPS in flight
2014-11-07 22:15:28 +11:00
Andrew Tridgell e22c8b27a9 HAL_PX4: if there are no enabled channels don't send to PX4IO
this makes it possible to disable PWM output to IO to test override
2014-11-07 10:39:07 +11:00
Andrew Tridgell 16fd113020 RC_Channel: added channel_function()
this is used in the plane mixing code
2014-11-07 10:39:07 +11:00
Clay McClure 71586d40e3 AC_WPNav: minor fix to comments 2014-11-06 11:53:56 +09:00
squilter cab2010a8f AP_Arming: remove abbreviations from GCS messages 2014-11-06 11:13:26 +09:00
Jonathan Challinger 6c4d4713aa AP_NavEKF: Add parameter that specifies EKF-to-DCM/INAV fallback strictness 2014-11-06 10:03:52 +11:00
Jonathan Challinger 2293070a5b AP_GPS: Add uBlox accuracy metrics interface and logging 2014-11-06 07:38:41 +11:00
Jonathan Challinger 9be7039be1 DataFlash: add UBX3 message for accuracy logging 2014-11-06 07:38:41 +11:00
Jonathan Challinger d03ed7a2c3 AP_Mount: Added lead filter 2014-11-06 07:35:32 +11:00
Andrew Tridgell 7e3b8a30f5 HAL_PX4: use px4io generated values for servo output readback
this makes it easier to observe the behaviour of IO failsafe
2014-11-05 21:54:53 +11:00
Andrew Tridgell 2b48434e60 AP_TECS: fixed throttle demand on underspeed
thanks to Philipp Oettershagen for finding this bug!
2014-11-05 07:55:18 +11:00
priseborough d6508acfa5 AP_TECS : Prevent throttle undershoot after climb
If the plane was unable to achieve the climb and got significantly below the internal TECS demanded climb profile, the the PD term would be a large value at the top of climb, and would take some time to reduce due to the rate limiter. This meant that the integrator state could be pushed to a very low value and effectively cause the throttle to sit on the lower limit for longer than desired after levelling out.
2014-11-05 07:49:03 +11:00
Andrew Tridgell 3518cf5480 AP_InertialSensor: fixed default MPU9250 orientation for NavIO 2014-11-04 16:18:35 +11:00
Jonathan Challinger 369839c7ca AC_WPNav: Use target yaw instead of current yaw for close waypoints 2014-10-31 15:23:52 +09:00
Randy Mackay 1e4ec5f6a2 Camera: add f to float constants 2014-10-31 14:46:51 +09:00
Randy Mackay ad7a9bf81b Camera: initialise image_index 2014-10-31 14:46:49 +09:00
Arthur Benemann 7bb4a39608 Camera: record number of pictures taken since boot
The field is useful for detecting in a GCS if a mavlink_msg_camera_feedback message was dropped.
2014-10-31 14:46:45 +09:00
Arthur Benemann b48edf479b GCS_MAVLink: add CAMERA_FEEDBACK to enum 2014-10-31 14:46:40 +09:00
Arthur Benemann 2e4812afb5 Camera: Added feedback message support
Now the autopilot can publish the state of the camera via the mavlink_msg_camera_feedback message.
2014-10-31 14:46:38 +09:00
Jonathan Challinger 84da5d2d98 DataFlash: use new interface functions for EKF IMU weighting and accel biases 2014-10-30 18:17:38 +11:00
Jonathan Challinger 967986d5c6 AP_NavEKF: Split getAccelBias into getAccelZBias and getIMU1Weighting 2014-10-30 18:17:38 +11:00
Jonathan Challinger ac2e5f644c DataFlash: fix bug in ekf gyro bias logging 2014-10-30 18:17:37 +11:00
Jonathan Challinger bb6d8fd44a AP_NavEKF: Set prevDelAng after using it 2014-10-30 18:17:37 +11:00
priseborough aca78d321f DataFlash : Remove unused numerical divergence metric 2014-10-30 18:17:37 +11:00
Jonathan Challinger 0727ac5c79 AP_NavEKF: clean up unused variable lastDivergeTime_ms 2014-10-30 18:17:37 +11:00
priseborough 5e51c09978 AP_NavEKF : Remove ineffective numerical divergence checks 2014-10-30 18:17:37 +11:00
priseborough 638d63aa90 DataFlash : Change to more descriptive EKF logging names 2014-10-30 18:17:37 +11:00
priseborough 6f759fdb8e AP_AHRS : Tidy up logic used to enable synthetic sideslip fusion 2014-10-30 18:17:36 +11:00
Andrew Tridgell 8506e8b5fb HAL_Linux: fixed linux build 2014-10-30 17:47:18 +11:00
John Williams b9f0310b82 hal_ap_linux: Make PRU constants private to reduce #define namespace pollution.
Forthcoming Zynq port AP_HAL_Linux uses similar constants with different
values - move these as private member constants to avoid collisions.

Signed-off-by: John Williams <john@whelanwilliams.net>
2014-10-30 13:51:41 +11:00
Mikhail Avkhimenia 81de994fef HAL_Linux: separate RCInput for PRU and Navio 2014-10-30 13:30:07 +11:00
Mikhail Avkhimenia e05151f0e0 HAL_Linux: Initialize i2c before rcoutput (required by i2c pwm chips for initialization) 2014-10-30 13:30:07 +11:00
Mikhail Avkhimenia 2f0900b0a8 HAL_Linux: add GPIO driver for Raspberry Pi 2014-10-30 13:30:07 +11:00
Mikhail Avkhimenia 07ed93cea0 HAL_Linux: add PCA9685 based RCOutput for Navio 2014-10-30 13:30:07 +11:00
Alexander Mergel 14c401c0f4 AP_HAL_Linux: [Bugfix] prevent memory acces violation in process_dsm_pulse
When a S.Bus signal is fed into the rcin-Pin AruPlane on the BBB get's a
Segmentation fault. This patch prevents the memory acces to dsm_state.bytes[16] outside
of the array bounds. The patch should be reviewed by sombody who knows the DSM protocol,
as i don't.
2014-10-30 11:57:35 +11:00
priseborough 6a85753a5b AP_NavEKF : add INIT_GYRO_BIAS_UNCERTAINTY definition 2014-10-29 17:39:47 +09:00
priseborough fb14da7a4b AP_NavEKF : Add public method to reset gyro bias states 2014-10-29 15:32:21 +09:00
priseborough 2c07299c04 AP_AHRS : Add reset of EKF gyro bias states 2014-10-29 15:32:18 +09:00
Randy Mackay 8a776f8ff8 GPS: init primary_instance to zero 2014-10-29 12:04:13 +09:00
Benoit PEREIRA DA SILVA 010d267376 GPS: use primary for Notification 2014-10-29 12:04:12 +09:00
Jonathan Challinger 6848897999 AP_GPS: Add agcCnt to UBX1 message 2014-10-29 08:18:04 +11:00
Randy Mackay dffcfb42bc AHRS: add reset_gyro_drift method 2014-10-28 20:25:33 +09:00
Randy Mackay 7d48704f82 AP_NavEKF: fix parameter descriptions
Errors pointed out by Richard (DK)
2014-10-27 22:20:03 +09:00
Randy Mackay ac7ea2a12c AC_PosControl: use AttControl's sqrt_controller 2014-10-27 15:20:48 +09:00
Jonathan Challinger 7224669399 AC_AttitudeControl: cleanup angle_ef_roll_pitch_rate_ef_yaw_smooth 2014-10-27 15:20:46 +09:00
Jonathan Challinger 779baa006d AC_PosControl: Use sqrt_controller function 2014-10-27 15:20:44 +09:00
Jonathan Challinger 0c4a489491 AC_AttitudeControl: use sqrt_controller function 2014-10-27 15:20:43 +09:00
Randy Mackay fc898a00a3 AC_AttControl: add sqrt_controller
Original code by Jonathan Challinger
2014-10-27 15:20:40 +09:00
Andrew Tridgell 26de54c29a AP_AHRS: cope with 90 degree pitch in update_trig()
this prevents a numerical error in Replay
2014-10-25 11:21:04 +11:00
Michael Day 83c2f497a3 AP_Mission: Change jump_to_landing_sequence to get_landing_sequence_start 2014-10-24 21:42:06 +11:00
Andrew Tridgell 5ddbcc296d AP_OpticalFlow: fixed example build 2014-10-24 21:38:03 +11:00
Andrew Tridgell ad8b73c8aa AP_Airspeed: update ARSPD_AUTOCAL docs 2014-10-24 17:16:17 +11:00
Randy Mackay 41a6393356 RangeFinder: PulsedLight I2C addr to 0x62 2014-10-24 15:08:04 +09:00
Andrew Tridgell ad7c612334 AP_InertialSensor: fixed SITL with new HIL code 2014-10-24 15:05:44 +11:00
Andrew Tridgell aeaa3c1e04 AP_InertialSensor: fixed build for VRBrain 2014-10-24 12:10:41 +11:00
Andrew Tridgell 40e83ceb1f AP_InertialSensor: simplify next sample time calculations
this makes the calculation much clearer
2014-10-24 12:10:40 +11:00
Andrew Tridgell 9dfbdb1e69 AP_InertialSensor: run the MPU6000 at 1kHz on fast CPUs
use a software filter and 1kHz sampling for better filtering if we
have a fast enough CPU to do it
2014-10-24 12:10:40 +11:00
Andrew Tridgell a047d1f569 AP_InertialSensor: moved default filter and sample_rate to frontend
this simplifies the backends and prevents code repitition
2014-10-24 12:10:40 +11:00
Andrew Tridgell 17b2214798 AP_InertialSensor: make it easier to add multiple backends
use _add_backend() to add new backends on startup
2014-10-24 12:10:40 +11:00
Andrew Tridgell 868ee3af23 AP_Mission: fixed example build 2014-10-24 12:10:40 +11:00
Andrew Tridgell 006185f08a AP_InertialNav: fixed example build 2014-10-24 12:10:40 +11:00
Andrew Tridgell f79ce92673 AP_AHRS: fixed example build 2014-10-24 12:10:40 +11:00
Andrew Tridgell 33c7432e97 AC_WPNav: fixed example build 2014-10-24 12:10:40 +11:00
Andrew Tridgell 31eeb657ca AC_Sprayer: fixed example build 2014-10-24 12:10:39 +11:00
Andrew Tridgell 4fcf46005b AC_Fence: fixed example build 2014-10-24 12:10:39 +11:00
Andrew Tridgell 9a98e63702 AC_AttitudeControl: fixed example build 2014-10-24 12:10:39 +11:00
Andrew Tridgell bc5d79118d AP_InertialSensor: updated comments 2014-10-24 12:10:39 +11:00
Andrew Tridgell 3a9a5a9c18 AP_InertialSensor: implement gyro and accel health monitoring
sensor is healthy if it gave a sample on the last update()
2014-10-24 12:10:39 +11:00
Andrew Tridgell 586fa9a816 AP_InertialSensor: added product_id support
fill in parameter from first backend
2014-10-24 12:10:39 +11:00
Andrew Tridgell 37dea4e367 AP_Common: added MPU9250 product ID 2014-10-24 12:10:39 +11:00
Andrew Tridgell 520727e5bd AP_InertialSensor: fixed example build 2014-10-24 12:10:39 +11:00
Andrew Tridgell dbcd02f2be AP_InertialSensor: converted MPU9150 driver
untested conversion
2014-10-24 12:10:38 +11:00
Andrew Tridgell ff5f791343 AP_InertialSensor: converted flymaple driver to new API 2014-10-24 12:10:38 +11:00
Andrew Tridgell a42af0f2f1 AP_InertialSensor: use common AP_InertialSensor driver for PX4 and VRBRAIN 2014-10-24 12:10:38 +11:00
Andrew Tridgell 3ce7667e5a AP_InertialSensor: tidy up MPU6000 driver 2014-10-24 12:10:37 +11:00
Andrew Tridgell 2d47a07480 AP_InertialSensor: ported L3G4200D driver to new API 2014-10-24 12:10:37 +11:00
Andrew Tridgell deafcd6ddc AP_InertialSensor: improved timing in all drivers 2014-10-24 12:10:37 +11:00
Andrew Tridgell ff6d87f145 AP_InertialSensor: minor tidy up for HIL driver 2014-10-24 12:10:37 +11:00
Andrew Tridgell 85686c22ec AP_InertialSensor: converted the APM1/Oilpan driver to new API 2014-10-24 12:10:37 +11:00