Commit Graph

103 Commits

Author SHA1 Message Date
Peter Barker
57f8b7c2a8 AP_Compass: split AP_HAL_SITL and AP_SIM_ENABLED 2022-03-17 14:39:55 +11:00
Iampete1
209ad965be AP_Compass: remove custom rotations 2022-03-02 18:16:42 +11:00
Peter Barker
ed608d37f6 AP_Compass: add and use AP_SIM_COMPASS_ENABLED 2022-01-17 15:24:02 +11:00
Andrew Tridgell
8eb40bafc5 AP_Compass: revert compass parameter changes 2021-12-04 16:51:53 +11:00
Iampete1
6ba87dfe9a AP_Compass: add param conversion 2021-11-30 08:14:43 +09:00
Iampete1
071ff39ff8 AP_Compass: move instance params to shared table 2021-11-30 08:14:43 +09:00
Andrew Tridgell
2b19b8a988 AP_Compass: switched to GSF based compass learning
this makes inflight compass learning faster, more accurate and much
simpler
2021-11-01 09:00:27 +11:00
Peter Barker
62f6a5b033 AP_Compass: fail calibration unless at least 1 compass to cal 2021-08-24 10:18:38 +10:00
Peter Barker
944b82a7be AP_Compass: make is_calibrating const 2021-07-30 17:37:08 +10:00
Peter Barker
c351150a46 AP_Compass: use AP::compass().available in place of enabled() 2021-07-30 12:19:42 +10:00
Peter Barker
658c978c9d AP_Compass: add and use compass.available()
Covers both being enabled and initialised
2021-07-30 12:19:42 +10:00
Peter Barker
8bbed968de AP_Compass: remove unused variable 2021-07-30 12:19:42 +10:00
Siddharth Purohit
7cbb3d8a3f AP_Compass: allow compass cal option for AP_Periph if defined 2021-07-02 08:50:16 +10:00
Peter Barker
9791fdeb11 AP_Compass: remove unused setup_earth_field 2021-06-15 09:47:31 +10:00
Peter Barker
a9621ed802 AP_Compass: remove HIL support 2021-06-15 09:47:31 +10:00
Siddharth Purohit
8590bfea63 AP_Compass: use first available compass in priority list 2021-06-02 17:10:19 +10:00
Siddharth Purohit
b31a04e52b AP_Compass: allow single compass configure for autopilot boards 2021-05-19 18:04:20 +10:00
Jacob Walser
8defcb9169 AP_Compass: add memsic MMC5883 driver 2021-04-07 16:03:57 +10:00
Randy Mackay
64c4b6a42b AP_Compass: remove unused set_use_for_yaw 2021-03-31 19:16:01 +11:00
Andrew Tridgell
f8e0227c8c AP_Compass: added force_save_calibration() 2021-02-15 07:24:40 +11:00
Patrick José Pereira
842360b5e3 AP_Compass: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Andrew Tridgell
a068e95a48 AP_Compass: added ExternalAHRS driver 2021-01-05 21:13:12 +11:00
yaapu
5e88a856e9 AP_Compass: support for MSP compass 2020-09-09 06:35:50 +10:00
Siddharth Purohit
5cd6175d94 AP_Compass: fix reordering compass devid by priority at boot 2020-08-25 08:30:04 +10:00
Siddharth Purohit
f55ee264a7 AP_Compass: reset compass ids not present after compass cal
also implement replacement mechanism for UAVCAN compasses
2020-07-27 19:48:15 +10:00
Michael du Breuil
f25d20f549 AP_Compass: Only send a single MAG_CAL_* message per poll
this fairly allocates bandwidth between the calibrators
2020-06-16 10:09:14 +10:00
Siddharth Purohit
c0eb27cc35 AP_Compass: pull compass calibrator out into a separate thread 2020-06-05 09:38:40 +10:00
Andy Piper
63b5711a4d AP_Compass: use a separate slot for the custom compass rotation 2020-05-24 07:46:17 +10:00
Andy Piper
f5320e8816 AP_Compass: make sure SITL rotation gets initialized like all the others
don't remove a custom rotation that has already been set
2020-05-21 16:28:27 +10:00
Andrew Tridgell
4a80313fdd AP_Compass: added get_num_enabled()
used by EKF3
2020-05-09 12:33:33 +10:00
Andy Piper
b7b2d9a6ce AP_Compass: add support for custom compass rotation via COMPASS_CUS_{ROLL,PIT,YAW}
add reboot required for parameters that need it
disable custom rotation on AP_Periph devices
2020-05-05 09:25:18 +10:00
Andrew Tridgell
66655212b1 AP_Compass: fixed compass ordering bug with AP_Periph
when a user swaps compasses on AP_Periph we want to immediately
replace it. The compass ordering code was rejecting the new compass
and calling panic as it was out of slots. This changes the AP_Compass
ordering so that when we only have a single compass we operate in a
very simple manner where we always accept the first compass found
2020-04-29 18:51:16 +10:00
Paul Riseborough
8e9dc1c393 AP_Compass: Add accessor function for COMPASS_AUTODEC 2020-04-28 11:42:31 +09:00
Peter Barker
0665c379de AP_Compass: correct use of incorrect backend-count macro 2020-03-17 11:25:16 +11:00
Siddharth Purohit
8d227d401a AP_Compass: modify compass driver to support consistent ordering and hotplugging 2020-02-19 13:59:53 +09:00
Andrew Tridgell
09d7e732b7 AP_Compass: added mag_cal_fixed_yaw()
this is a fast compass calibration that uses a yaw value provided by
the user.
2019-12-18 17:20:37 +11:00
Andrew Tridgell
421fbef2a0 AP_Compass: added COMPASS_OPTIONS
this allows user to set that calibration requires GPS lock
2019-12-03 20:48:23 +11:00
Andrew Tridgell
6fd0ca36aa AP_Compass: added estimation of compass scale factor
this adds new COMPASS_SCALE, COMPASS_SCALE2 and COMPASS_SCALE3
parameters, which give the sensor scaling factor. It is used to
compensate for an incorrect scaling in a compass.

The 3D compass calibration process will set the correct value
automatically, otherwise users can set the value to a known value for
an existing compass
2019-12-03 20:48:23 +11:00
Andrew Tridgell
2a48241ebb AP_Compass: fixed naming of QMC5883L driver
needed for probe using COMPASS macro in hwdef.dat
2019-09-04 16:27:47 +10:00
Andrew Tridgell
f4576ec8f3 AP_Compass: reduce firmware size for AP_Periph 2019-08-27 10:29:56 +10:00
Peter Barker
1adda1ccf0 AP_Compass: move automatic declination setting into AP_Compass itself 2019-08-13 10:02:13 +10:00
Peter Barker
df01bed14f AP_Compass: take GCS link in place of channel to calibration routines 2019-08-05 09:23:10 +10:00
Michael du Breuil
9fc954b030 AP_Compass: Reduce scope of BattMonitor include 2019-06-18 10:02:05 +10:00
Andrew Tridgell
532b82b3a3 AP_Compass: use DRIVER_HMC5843 to match driver name 2019-05-30 15:39:57 +10:00
Peter Barker
bf23f1df67 AP_Compass: move responsibility for logging into library 2019-04-23 10:06:17 +10:00
Peter Barker
0e8722181f AP_Compass: take responsibility for not running cal if armed 2019-04-23 10:06:17 +10:00
Peter Barker
7ae7c48362 AP_Compass: remove set_and_save_offsets taking integer parameters
because the only caller that mattered had floats to offer...
2019-04-05 06:09:25 -07:00
Peter Barker
54e3959a99 AP_Compass: move enabled parameter into compass library 2019-04-02 10:24:49 +11:00
Peter Barker
f8be4efed4 AP_Compass: init never fails; return void rather than bool 2019-03-13 13:06:50 +11:00
thomass
8155c8b178 AP_Compass: added backend implementation for RM3100 compass 2019-02-10 08:00:49 +11:00