4d634f5 | Daniel Agar | 16 December 2020, 03:11:28 UTC | update matrix init | 16 December 2020, 06:09:04 UTC |
1541e4b | Daniel Agar | 10 December 2020, 14:13:12 UTC | EKF: update control status and fault status getters - the fault status union exceeded 16 bits, but the getter was get_filter_fault_status(uint16_t *val) | 10 December 2020, 14:13:12 UTC |
fbf67bd | zhaoxiaowei | 09 December 2020, 03:39:24 UTC | reset gps height use vacc | 10 December 2020, 09:07:59 UTC |
8f3df7a | Mathieu Bresciani | 09 December 2020, 10:33:00 UTC | flow: restructure optical flow control logic (#928) - extract motion checks performed on ground - move all non-timing check to controlOpticalFlowFusion. This simplifies and standardirzes the setOpticalFlowData function. Furthermore, in some cases (SITL, PX4Flow), the dt is forced to 0 when the quality is 0 (which is usual on ground) so the ekf needs to ignore those values on ground to initialize properly the flow fusion. - add filter convergence test - move check for dt time max in setOpticalFlowData - in the simulator, do not update dt as this is the sensor integration period. | 09 December 2020, 10:33:00 UTC |
3835800 | kritz | 08 December 2020, 23:05:28 UTC | Auto update change indication by github actions Co-authored-by: kamilritz <kamilritz@users.noreply.github.com> | 08 December 2020, 23:05:28 UTC |
688a054 | Daniel Agar | 08 December 2020, 16:23:09 UTC | EKF: controlDragFusion() add parenthesis for readability | 08 December 2020, 23:03:04 UTC |
944b18c | Paul Riseborough | 05 December 2020, 07:48:41 UTC | EKF: Remove non useful status print Local position is never valid when filter is initialised so there is no use printing the status. | 08 December 2020, 23:03:04 UTC |
ee94980 | Paul Riseborough | 03 December 2020, 09:38:11 UTC | EKF: Clean up wind state activation logic Ensure wind states are deactivated in one place and always when in a non-position mode. Activate wind states separately for each observation method. | 08 December 2020, 23:03:04 UTC |
44ebfb8 | Paul Riseborough | 02 December 2020, 09:54:43 UTC | EKF: Don't report local position as valid when in a non-position mode | 08 December 2020, 23:03:04 UTC |
da7d41e | Daniel Agar | 08 December 2020, 17:16:59 UTC | EKF: add mag bias reset helper and update IMU bias reset to match (#924) | 08 December 2020, 17:16:59 UTC |
03cfcb9 | Daniel Agar | 04 December 2020, 01:48:51 UTC | EKF: RingBuffer minor improvements - allocate IMU and output buffers on construction according to defaults - determine buffer max time delay based on configuration parameters - reorder flowSample and extVisionSample to minimize padding - adjust parameter defaults to match PX4-Autopilot | 04 December 2020, 01:48:51 UTC |
67f13f7 | PX4 BuildBot | 02 December 2020, 11:48:25 UTC | Update geo_lookup WMM to latest Wed Dec 2 11:48:25 UTC 2020 | 03 December 2020, 00:47:46 UTC |
da9f314 | bresch | 10 November 2020, 08:24:30 UTC | mag: use strength in Gauss | 10 November 2020, 09:25:09 UTC |
c4d162f | Claudio Micheli | 04 November 2020, 17:35:39 UTC | EKF: range_finder parameterize range sensor quality hysteresis time Signed-off-by: Claudio Micheli <claudio@auterion.com> Co-authored-by: bresch <brescianimathieu@gmail.com> | 04 November 2020, 17:35:39 UTC |
6158d6d | Daniel Agar | 02 November 2020, 18:05:08 UTC | EKF: add const reference getters for status flags | 02 November 2020, 18:05:08 UTC |
a210928 | Daniel Agar | 01 November 2020, 16:39:34 UTC | EKF: remove virtual getters from estimator_interface | 02 November 2020, 14:35:47 UTC |
48a8992 | Daniel Agar | 30 October 2020, 13:48:45 UTC | EKF: move small simple getters to header - return by const reference where possible | 30 October 2020, 13:48:45 UTC |
defb35d | Daniel Agar | 29 October 2020, 15:30:49 UTC | EKF: pass imuSample by const reference | 30 October 2020, 13:47:22 UTC |
d85e24d | Daniel Agar | 26 October 2020, 15:58:55 UTC | EKF: Ekf class is final | 27 October 2020, 12:53:58 UTC |
961b545 | Daniel Agar | 26 October 2020, 15:55:55 UTC | cmake: respect MAX_CUSTOM_OPT_LEVEL if set - ignored for Debug and Coverage builds | 27 October 2020, 12:53:58 UTC |
5ea8824 | Daniel Agar | 26 October 2020, 15:54:56 UTC | EKF: inline simple getters | 27 October 2020, 12:53:58 UTC |
6e99ebd | Daniel Agar | 26 October 2020, 14:31:11 UTC | EKF: add fault status bit for bad vertical accel data | 26 October 2020, 16:37:15 UTC |
d936b85 | Daniel Agar | 21 October 2020, 17:15:04 UTC | EKF: add fault status bit for clipping | 26 October 2020, 16:37:15 UTC |
dd3ffc4 | Mathieu Bresciani | 26 October 2020, 12:27:52 UTC | Optical flow: compute velociy from corrected flow data for logging (#920) This is really useful when debugging optical flow data | 26 October 2020, 12:27:52 UTC |
9126282 | bresch | 26 October 2020, 09:53:25 UTC | CI: update containers, sync with px4/Firmware | 26 October 2020, 10:07:13 UTC |
e80a683 | bresch | 26 October 2020, 09:11:23 UTC | CI: update change indicator of yaw emergency estimator This was incorrectly uptated in 1a7c68ea72db82de1d8729f900a5543a253a3ac4 | 26 October 2020, 10:07:13 UTC |
f666ebb | Paul Riseborough | 06 October 2020, 08:29:19 UTC | EKF: Code format fix - replace 1E-x with 1e-x | 06 October 2020, 09:50:52 UTC |
e82d0af | Paul Riseborough | 06 October 2020, 08:21:50 UTC | EKF: Improve code clarity - non functional change | 06 October 2020, 09:50:52 UTC |
1a7c68e | Paul Riseborough | 06 October 2020, 07:05:18 UTC | EKF: update change indicator | 06 October 2020, 09:50:52 UTC |
759d217 | Paul Riseborough | 05 October 2020, 10:30:51 UTC | EKF: Improve protection for GSF weight collapse | 06 October 2020, 09:50:52 UTC |
7c81350 | Paul Riseborough | 04 October 2020, 00:30:48 UTC | EKF: Don't yaw reset if not yaw induced nav failure | 06 October 2020, 09:50:52 UTC |
bf0d70f | Paul Riseborough | 03 October 2020, 23:00:41 UTC | EKF: Protect against collapse of GSF weights | 06 October 2020, 09:50:52 UTC |
4c2355a | Daniel Agar | 25 September 2020, 13:37:34 UTC | EKF: use GPS to lookup declination from WMM before full GPS checks pass | 28 September 2020, 06:43:32 UTC |
6b99ea2 | Daniel Agar | 24 September 2020, 13:16:30 UTC | ECL standalone build improve ECL_INFO/WARN/DEBUG - ECL_{INFO,WARN,DEBUG} add newline - ECL_{INFO,WARN,DEBUG}_TIMESTAMPED add imu timestamp and newline | 25 September 2020, 13:33:50 UTC |
5879eaa | bresch | 25 September 2020, 08:49:00 UTC | ekf: fix variable length array error Even if the non_zeros() function is static constexpr, gcc (10.2) does not like it. Using sizeof...(Idxs) fixes the error. | 25 September 2020, 09:33:29 UTC |
99aafba | Daniel Agar | 14 September 2020, 16:04:42 UTC | README: remove obsolete build status | 14 September 2020, 16:04:42 UTC |
fab242a | Daniel Agar | 07 September 2020, 00:27:30 UTC | python generation add shebang, mark executable, ignore cache - commit all current generated files | 07 September 2020, 07:20:41 UTC |
a204c59 | rjgritter | 05 September 2020, 06:48:51 UTC | WindEstimator: Fix incorrect _state accessing, clarify enums (#906) | 05 September 2020, 06:48:51 UTC |
264c8c4 | bresch | 20 August 2020, 14:25:41 UTC | mag_fusion: mag heading and 3d modes are mutually exclusive There is no need to check if 3d fusion is active when in mag heading fusion mode since this is impossible | 27 August 2020, 05:48:40 UTC |
9797e4d | kamilritz | 22 August 2020, 07:36:31 UTC | updateYawInRotMat with hidden rotation sequence handling | 26 August 2020, 23:51:56 UTC |
419b70e | kamilritz | 17 August 2020, 18:00:13 UTC | Add tests for shouldUse321RotationSequence | 26 August 2020, 23:51:56 UTC |
4fb4e0c | kamilritz | 17 August 2020, 17:39:39 UTC | Clean euler321 and euler312 code and comment | 26 August 2020, 23:51:56 UTC |
2be738e | Kamil Ritz | 15 August 2020, 11:54:21 UTC | Add helper function to alter heading in rotation matrices | 26 August 2020, 23:51:56 UTC |
fdc86c2 | Kamil Ritz | 15 August 2020, 11:52:56 UTC | add functions to compute yaw (321 and 312 sequence) from quaternion and rotation matrix | 26 August 2020, 23:51:56 UTC |
15afa8a | Kamil Ritz | 15 August 2020, 11:43:55 UTC | shouldUse321RotationSequence(const Dcmf& R) | 26 August 2020, 23:51:56 UTC |
4872f2a | Kamil Ritz | 15 August 2020, 07:15:04 UTC | Remove not used code | 24 August 2020, 09:24:27 UTC |
0fafd4d | Kamil Ritz | 15 August 2020, 07:14:39 UTC | precompute cos and sin of yaw once before mutliple use | 24 August 2020, 09:24:27 UTC |
114516b | Kamil Ritz | 15 August 2020, 07:13:41 UTC | Use new added matrix functions | 24 August 2020, 09:24:27 UTC |
1f637af | Kamil Ritz | 15 August 2020, 06:53:21 UTC | Add const modifier | 24 August 2020, 09:24:27 UTC |
aa2c77f | kamilritz | 22 August 2020, 08:24:23 UTC | Small cleanup in velposfusion | 24 August 2020, 08:04:57 UTC |
644e903 | kamilritz | 22 August 2020, 08:24:03 UTC | Apply measurementUpdate function | 24 August 2020, 08:04:57 UTC |
404edde | kamilritz | 22 August 2020, 08:22:19 UTC | Add measurementUpdate function | 24 August 2020, 08:04:57 UTC |
f6252ff | kamilritz | 22 August 2020, 07:58:27 UTC | small cleanup in limitDeclination | 24 August 2020, 08:04:57 UTC |
f62662e | Daniel Agar | 21 August 2020, 19:26:56 UTC | update change_indication for newer WMM tables | 21 August 2020, 20:54:45 UTC |
802a6d9 | PX4 BuildBot | 21 August 2020, 11:48:14 UTC | Update geo_lookup WMM to latest Fri Aug 21 11:48:14 UTC 2020 | 21 August 2020, 20:54:45 UTC |
bd0c5fb | kamilritz | 20 August 2020, 18:51:40 UTC | Update change indication for ekf gsf | 20 August 2020, 20:16:28 UTC |
3ae9345 | kamilritz | 17 August 2020, 16:37:57 UTC | Add change indication for ekf_gsf_reset | 18 August 2020, 07:13:46 UTC |
fd849e0 | Paul Riseborough | 16 August 2020, 06:57:58 UTC | EKF: Fix specific force observation noise variance Also add protection for out of range value. | 18 August 2020, 07:05:59 UTC |
76f393d | Paul Riseborough | 16 August 2020, 06:49:53 UTC | EKF: Use const reference instead of local copy | 18 August 2020, 07:05:59 UTC |
c43307b | Paul Riseborough | 16 August 2020, 01:14:57 UTC | EKF: convert drag fusion from Matlab to SymPy generated auto-code | 18 August 2020, 07:05:59 UTC |
1e6c6f2 | Paul Riseborough | 15 August 2020, 23:39:51 UTC | EKF: update all output states when aligning output time horizon filter | 16 August 2020, 00:00:47 UTC |
3bd9415 | kamilritz | 26 July 2020, 09:44:00 UTC | Make delayed output stayed not a member variable | 16 August 2020, 00:00:47 UTC |
da9bfe4 | kamilritz | 26 July 2020, 09:41:41 UTC | Update interface of applyCorrectionsToOuputStates | 16 August 2020, 00:00:47 UTC |
64ab2b0 | Paul Riseborough | 15 August 2020, 12:21:10 UTC | EKF: Only record successful sideslip fusion when states updated | 15 August 2020, 22:45:59 UTC |
0fa7ef3 | Paul Riseborough | 15 August 2020, 12:11:21 UTC | EKF: Use ecl::powf for integer exponents | 15 August 2020, 22:45:59 UTC |
168dbdf | Paul Riseborough | 15 August 2020, 01:23:54 UTC | EKF: Convert sideslip fusion to use SymPy generated auto-code | 15 August 2020, 22:45:59 UTC |
06aa78a | Paul Riseborough | 14 August 2020, 23:29:57 UTC | EKF: Only record airspeed fusion event when states are updated | 15 August 2020, 22:45:26 UTC |
486a461 | Paul Riseborough | 14 August 2020, 23:25:43 UTC | EKF: airspeed fusion derivation test comparison cleanup | 15 August 2020, 22:45:26 UTC |
ede6204 | Paul Riseborough | 14 August 2020, 23:24:35 UTC | EKF: airspeed fusion cleanup | 15 August 2020, 22:45:26 UTC |
a5a43db | Paul Riseborough | 13 August 2020, 07:03:03 UTC | EKF: Convert airspeed fusion to use SymPy generated auto-code | 15 August 2020, 22:45:26 UTC |
5907e81 | Paul Riseborough | 14 August 2020, 22:49:42 UTC | EKF: optflow fusion cleanup | 15 August 2020, 22:44:17 UTC |
7fa9a19 | Paul Riseborough | 14 August 2020, 22:44:02 UTC | EKF: optflow fusion cleanup Co-authored-by: kritz <kritz@ethz.ch> | 15 August 2020, 22:44:17 UTC |
0e74f3e | Paul Riseborough | 14 August 2020, 22:43:46 UTC | EKF: optflow fusion cleanup Co-authored-by: kritz <kritz@ethz.ch> | 15 August 2020, 22:44:17 UTC |
6e992a1 | Paul Riseborough | 14 August 2020, 22:43:15 UTC | EKF: optflow fusion cleanup Co-authored-by: kritz <kritz@ethz.ch> | 15 August 2020, 22:44:17 UTC |
1ad042d | Paul Riseborough | 13 August 2020, 09:51:33 UTC | EKF: Use ecl::powf in comparison test | 15 August 2020, 22:44:17 UTC |
274523b | Paul Riseborough | 13 August 2020, 07:48:38 UTC | EKF: Use ecl::powf for integer exponents | 15 August 2020, 22:44:17 UTC |
f20a5d8 | Paul Riseborough | 13 August 2020, 07:43:36 UTC | EKF: Remove redundant tilt check Also fix comment indent | 15 August 2020, 22:44:17 UTC |
1592db8 | Paul Riseborough | 13 August 2020, 03:36:10 UTC | EKF: Convert optical flow fusion to use SymPy generated equations | 15 August 2020, 22:44:17 UTC |
1f386c1 | Paul Riseborough | 14 August 2020, 22:37:14 UTC | EKF: Add yaw estimate SymPy generated code files | 15 August 2020, 22:43:29 UTC |
510d938 | Paul Riseborough | 11 August 2020, 00:05:09 UTC | EKF: move yaw estimator derivation into main filter derivation Enables use of common components | 15 August 2020, 22:43:29 UTC |
f89c52e | Paul Riseborough | 13 August 2020, 08:21:17 UTC | EKF: use ecl::powf for integer exponents | 14 August 2020, 22:40:59 UTC |
0aa2f17 | Paul Riseborough | 13 August 2020, 03:23:57 UTC | EKF: Convert GPS yaw observation method to use SymPy generated code (#880) * EKF: add test comparison program for GPS yaw fusion equations * EKF: convert GPS yaw fusion method to use SymPy generated equations * Replace if/else with simple if * EKF: fix formatting of GPS yaw fusion auto-code comparison test * EKF: Use SparseVector type for GPS yaw fusion Jacobians * EKF: Fix bug in GPS yaw derivation comparison check * Add gps_yaw auto generated code file Co-authored-by: kamilritz <kritz@ethz.ch> | 13 August 2020, 03:23:57 UTC |
21cc46e | Paul Riseborough | 11 August 2020, 08:57:22 UTC | EKF: Convert magnetic field observation methods to use SymPy generated code (#879) * EKF: Add comparison test for mag field fusion generated code * EKF: convert mag field fusion to use SymPy generated code * EKF: Add test comparison program for yaw fusion equations * Stop setting 0 to 0 * Reduce if/else statement to only if * EKF: more accurate implementation for sequential fusion of magnetometer data * test: update change indicator * Use matrix::SparseVector<float, 24, ...> for observation jacobian * Adapt the auto code generation to allow for different bracket styles * Add auto generated code for mag fusion * Add generic computation of KHP * Apply generic computation of KHP to mag fusion * tests: update change indicator * tests: update change indicator Co-authored-by: kamilritz <kritz@ethz.ch> | 11 August 2020, 08:57:22 UTC |
ec93490 | kamilritz | 10 August 2020, 17:37:02 UTC | geo test change to arc length | 10 August 2020, 20:15:43 UTC |
98dec6a | kamilritz | 10 August 2020, 17:20:23 UTC | add tests for waypoint_from_line_and_distance() | 10 August 2020, 20:15:43 UTC |
60388a8 | kamilritz | 10 August 2020, 16:40:32 UTC | Geo: Fix double correcting for negative distance | 10 August 2020, 20:15:43 UTC |
6feb28c | Paul Riseborough | 10 August 2020, 07:27:31 UTC | EKF: Convert EKF-GSF yaw estimator from matlab to sympy derived equations (#871) * EKF: Add sympy derivation of equations for EKF-GSF yaw estimator * EKF: Convert EKF-GSF yaw estimator to use sympy generated equations * EKF: Add status prints for GSF-EKF yaw estimator cvode gen * EKF: Move generated code for GSF-EKF yaw estinmator to generated directory * Make it run with python3 * Cleanup yaw estimator code generation * Improve and simplify gsf measurement update code generation * Use improved auto generated measurement update code & remove obsolete updateInnovCovMatInv function * Delete generated ekf_derivation for the moment Co-authored-by: kamilritz <kritz@ethz.ch> | 10 August 2020, 07:27:31 UTC |
9d7d502 | kamilritz | 09 August 2020, 19:11:54 UTC | std::sin -> sin | 09 August 2020, 19:28:35 UTC |
4ab364f | kamilritz | 09 August 2020, 19:01:15 UTC | Make conversion from float to double explicite | 09 August 2020, 19:28:35 UTC |
9ea3468 | Julian Kent | 07 July 2020, 19:48:15 UTC | Negative distances go in the opposite direction | 09 August 2020, 15:36:36 UTC |
b7e49f2 | kamilritz | 09 August 2020, 12:43:36 UTC | Update change indication | 09 August 2020, 15:08:59 UTC |
4970088 | kamilritz | 09 August 2020, 08:48:20 UTC | Update matrix version | 09 August 2020, 15:08:59 UTC |
d7568d5 | kamilritz | 28 July 2020, 15:50:51 UTC | extend firmware build checks | 07 August 2020, 09:42:13 UTC |
310b989 | kamilritz | 06 August 2020, 12:41:35 UTC | refactor start of gps into separate function | 07 August 2020, 08:02:47 UTC |
7eb2b08 | kamilritz | 27 July 2020, 19:19:47 UTC | Yaw measurement jacobian to Vector4f | 04 August 2020, 07:57:00 UTC |
15d360f | kamilritz | 27 July 2020, 19:19:25 UTC | saved_mag_ef_cov to Squarematrix2f | 04 August 2020, 07:57:00 UTC |
7609bc6 | kamilritz | 27 July 2020, 19:18:04 UTC | drag innov member variables to Vector2f | 04 August 2020, 07:57:00 UTC |
960b80e | kamilritz | 26 July 2020, 09:34:40 UTC | Do not update output filter a second time after reset to flow. | 03 August 2020, 07:51:59 UTC |
77b1112 | Paul Riseborough | 30 July 2020, 02:44:08 UTC | EKF: replacement of covariance prediction autocode with sympy generated output (#870) * added python script with ekf derivation (WIP) Signed-off-by: RomanBapst <bapstroman@gmail.com> * worked on c code auto-generation Signed-off-by: RomanBapst <bapstroman@gmail.com> * save before variable name change Signed-off-by: RomanBapst <bapstroman@gmail.com> * changed symbol names Signed-off-by: RomanBapst <bapstroman@gmail.com> * added codegeneration class Signed-off-by: RomanBapst <bapstroman@gmail.com> * improve 3D mag fusion derivation Signed-off-by: RomanBapst <bapstroman@gmail.com> * EKF: Extend ekf sympy derivation to include all observation types * EKF: Add custom ecl::powf function for integer powers * EKF: Convert ekf covariance prediction to use sympy output * EKF: Add test program to compare sympy and matlab covariance prediction Also tests ecl::powf(x,exp) function * EKF: simplify ecl::powf function * Generate code to subfolder generated/ * Add printouts for showing code generation progress * Move generated covariance code to generated folder * Upgrade code generation to python3 * main.py: Remove unused create_symbols function & making code more compact * main.py: move main part into function * Code generation: fix passing wrong rotation matrix to yaw_observation () * EKF: Amend generated code filename for consistency * Move ecl::powf function test to unit tests * EKF: Use updated ecl:powf functionality in test program * Move ecl::powf to utils.hpp * Update ecl::powf test * Update output change indication * test: update expected output for change indicator * test: update expected output for change indicator again Co-authored-by: RomanBapst <bapstroman@gmail.com> Co-authored-by: kamilritz <kritz@ethz.ch> | 30 July 2020, 02:44:08 UTC |
0bffd95 | Matthias Grob | 28 July 2020, 17:48:55 UTC | AlphaFilter: include float.h for FLT_EPSILON | 28 July 2020, 19:41:58 UTC |