Commit Graph

26657 Commits

Author SHA1 Message Date
honglang
ef109721fe AP_HAL_ChibiOS: hwdef: reorder CUAV-X7 IMUs
adjust the sequence of IMU sensors to have good performance.
2021-07-20 16:10:50 +10:00
Peter Barker
dc5656d34a AP_AHRS: remove accessors only used internally 2021-07-20 12:38:57 +10:00
Iampete1
ffe91fc80e AP_BLHeli: update rover motors include 2021-07-20 10:48:01 +09:00
Iampete1
e75d3b68e6 AP_Motors: move AP_MotorsUGV to new AR_Motors directory 2021-07-20 10:48:01 +09:00
Iampete1
d158199a7a AP_Scripting: add bindings and example for dynamic motor mixer 2021-07-20 09:19:28 +10:00
Iampete1
6848cbc241 AP_Motors: add scripting dynamic mixer, allowing varable geometry vehicles 2021-07-20 09:19:28 +10:00
Iampete1
a6795a8e45 AP_Scripting: support depends keyword on userdata 2021-07-20 09:19:28 +10:00
Iampete1
aad459d447 AP_Scripting: support array userdata feilds 2021-07-20 09:19:28 +10:00
Andrew Tridgell
f969dbe411 RC_Channel: added training mode RC option 2021-07-20 09:00:46 +10:00
Willian Galvani
9083c97acf AP_BattMonitor: add Navigator to pins metadata 2021-07-19 12:21:40 -07:00
Josh Henderson
84fb03cb79 AP_BattMonitor: SMBus remove unused bool returns 2021-07-18 16:13:06 -07:00
Josh Henderson
0d64782220 AP_BattMonitor: remove temp var for SMBus read_full_charge_capacity 2021-07-18 16:13:06 -07:00
Josh Henderson
8af12608df AP_BattMonitor: make NeoDesign obey SMBUS_ENABLE 2021-07-18 15:16:57 -07:00
Peter Barker
d47a032a09 AP_Vehicle: explicitly number ModeReason enumeration values
These are logged, and mapping back is much easier if you have this
numbering
2021-07-17 09:27:38 +10:00
Andrew Tridgell
2bd04c14fd AP_OSD: move OSD_LINK_Q_* to a new param table
this gives us room for up to 63 more entries
2021-07-16 13:27:38 +10:00
Hwurzburg
ca92d73f25 AP_OSD: Add RX Link Quality Panel 2021-07-16 13:27:38 +10:00
Hwurzburg
55af794a2f RC_Channel: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Hwurzburg
983c7aba2f AP_RSSI: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Hwurzburg
c5f53fc0b6 AP_RCProtocol: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Hwurzburg
df0c9a42cb AP_Logger: Add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Hwurzburg
d806d8a26d AP_HAL: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Hwurzburg
0f2f6ccc80 AP_HAL_ChibiOS: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Andrew Tridgell
a098c80671 HAL_ChibiOS: use DNA for node allocation on Matek GPS
this works as MSP is now active when a DNA server is not found
2021-07-15 14:38:11 +10:00
Andrew Tridgell
db1df9d3a8 HAL_ChibiOS: raise DMA contention threshold for H7 2021-07-15 11:31:55 +10:00
Andrew Tridgell
8430f48375 AP_SerialManager: document DisableFIFO bit 2021-07-15 11:31:55 +10:00
Andrew Tridgell
e517a47f9b AP_SerialManager: call set_options() before first UART use
this ensures options are set before the first begin() call
2021-07-15 11:31:55 +10:00
Andrew Tridgell
926d4ad71c HAL_ChibiOS: implement NOFIFO option for uarts 2021-07-15 11:31:55 +10:00
Andrew Tridgell
269c4084d2 AP_HAL: added serial option for disabling FIFO on uarts 2021-07-15 11:31:55 +10:00
Siddharth Purohit
0138266fee AP_HAL: disable cast align check while casting char* read pointer to object 2021-07-15 07:50:12 +10:00
bugobliterator
0e7571c733 AP_EFI: fix casting without ensuring alignment 2021-07-15 07:50:12 +10:00
bugobliterator
0b505c491c AP_CANManager: fix casting without ensuring alignment 2021-07-15 07:50:12 +10:00
bugobliterator
e8e5f49640 AP_BLHeli: fix casting without ensuring alignment 2021-07-15 07:50:12 +10:00
Andy Piper
60b0df0a25 AP_HAL_ChibiOS: only control widest pulse for dshot and oneshot 2021-07-14 17:50:06 +10:00
Peter Barker
78e0e52542 SITL: add simulated ms5611 baro 2021-07-14 17:46:15 +10:00
Peter Barker
b184341424 SITL: add subclass for MS5525 2021-07-14 17:46:15 +10:00
Peter Barker
aa97c5b714 SITL: adjust MS5XXX to be new base class 2021-07-14 17:46:15 +10:00
Peter Barker
50d7fc353f SITL: rename SIM_MS5525 to SIM_MS5XXX 2021-07-14 17:46:15 +10:00
Andrew Tridgell
416c0724d2 AP_Common: use double precision for more location functions when available
this makes the location functions more accurate at long distances when
EKF double enabled
2021-07-14 17:34:40 +10:00
Andrew Tridgell
7550368fc7 HAL_SITL: update for changed SITL API 2021-07-14 17:34:40 +10:00
Andrew Tridgell
5eaf76cdc8 SITL: separate origin and home in SITL
this allows for accurate sensor data when flying a very long distance
from the takeoff location
2021-07-14 17:34:40 +10:00
Andrew Tridgell
6b73c2151a AP_NavEKF3: implement moving origin
this shifts EKF_origin to the current location at 1Hz, while leaving
public_origin alone. All output APIs and logging are relative to
public_origin.

The effect of this change is to remove the distortion caused by a
spherical earth, which allows the EKF to operate without errors at
very long distances from the public_origin.
2021-07-14 17:34:40 +10:00
Andrew Tridgell
3ded1e6c10 AP_Common: added ftype precision offset call 2021-07-14 17:34:40 +10:00
Peter Barker
7375d1949c SITL: add support for ms5525 i2c sensor 2021-07-13 12:00:37 +10:00
Randy Mackay
50ce79bcf6 AP_Torqeedo: simple driver to control torqeedo 1003 motor
includes fixes from peer review
2021-07-13 10:01:14 +09:00
Randy Mackay
7e68ce5c86 AP_SerialManager: add torqeedo to list of supported protocols
note that serial7_protocol and serial8_protocol param lists were missing 37:SmartAudio so this was also added
2021-07-13 10:01:14 +09:00
Randy Mackay
6c180994cd AP_Math: add support for crc8_maxim
Thanks to FastCRC
2021-07-13 10:01:14 +09:00
Hwurzburg
448ae368b1 RC_Channel: fix ELRS systems spamming CRSF mode/rate messages 2021-07-13 09:52:53 +10:00
Hwurzburg
ceeabb85a5 AP_RCTelemetry: fix ELRS systems spamming CRSF mode/rate messages 2021-07-13 09:52:53 +10:00
Leonard Hall
a32b5b3bb0 AC_AttitudeControl: Allow yaw rate reset to be de-selected 2021-07-13 09:51:36 +10:00
Peter Barker
ddb7378bdd AP_Terrain: add setter for terrain-enabled
Currently only useful for unit test
2021-07-12 17:34:44 +10:00
Peter Barker
fc2338612e AP_Common: stop setting terrain pointer in test_location
Also enable/disable as required for testing
2021-07-12 17:34:44 +10:00
Peter Barker
0a068d4d4b AP_Terrain: default terrain to off in Sub 2021-07-12 17:34:44 +10:00
Peter Barker
f75e258606 SITL: SIM_Ship: correct GLOBAL_POSITION_INT message altitude 2021-07-12 17:34:44 +10:00
Peter Barker
05a0205c21 SITL: change to use terrain singleton 2021-07-12 17:34:44 +10:00
Peter Barker
b625596dfa AP_Common: use singleton to access AP_Terrain data 2021-07-12 17:34:44 +10:00
Peter Barker
2d28c1065e AC_WPNav: use singleton to access AP_Terrain data 2021-07-12 17:34:44 +10:00
Peter Barker
de404b1999 AP_Terrain: allow AP_TERRAIN_AVAILABLE to be set in hwdef
Use AP_TERRAIN_AVAILABLE instead
2021-07-12 17:34:44 +10:00
Andrew Tridgell
98fb4fcbe7 AP_NavEKF3: convert code_gen.py to ftype 2021-07-12 17:27:08 +10:00
Andrew Tridgell
44f098c86d AP_NavEKF3: convert powF(xx,2) calls to sq(xx) 2021-07-12 17:27:08 +10:00
Andrew Tridgell
ae8dbe36bb AP_NavEKF3: convert EKF3 derivation to ftype 2021-07-12 17:27:08 +10:00
Andrew Tridgell
5f87335325 AP_Airspeed: review updates
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-07-12 17:14:59 +10:00
Andrew Tridgell
70bb470eb0 AP_Airspeed: fixed AP_Periph build 2021-07-12 17:14:59 +10:00
Andrew Tridgell
0bdd8231cf AP_Airspeed: added ARSPD_OPTIONS bit for disabling voltage correction
if the MS4525 has its own LDO then we are should disable the
correction
2021-07-12 17:14:59 +10:00
Andrew Tridgell
ca1508b02e AP_Airspeed: added DEVID parameters for airspeed
this makes log analysis easier
2021-07-12 17:14:59 +10:00
Andrew Tridgell
7f85b413f2 AP_Airspeed: use GCS_SEND_TEXT instead of printf for sensor probe messages 2021-07-12 17:14:59 +10:00
Andrew Tridgell
e6c7970a19 AP_Airspeed: support 3 I2C addresses for MS4525
and if bus number is configured then use only that bus number,
otherwise probe all buses as per existing behaviour
2021-07-12 17:14:59 +10:00
Peter Barker
a52e823967 AP_HAL_SITL: implement read(buf, length) 2021-07-12 12:11:30 +10:00
Andy Piper
40ec8c723b AP_RCTelemetry: correct firmware string length for CRSF 2021-07-12 11:25:31 +10:00
Leonard Hall
59909970fa AC_WPNav: Remove unused function 2021-07-10 20:25:05 +09:00
Leonard Hall
ac0b320922 AC_AttitudeControl: Add accessor for yaw slew limit 2021-07-10 20:25:05 +09:00
Leonard Hall
e2b5d3d585 AC_AttitudeControl: AC_PosControl: support accel only input in the vertical 2021-07-10 20:25:05 +09:00
Leonard Hall
e0e283f13e AC_AttitudeControl: AC_PosControl: support terrain following 2021-07-10 20:25:05 +09:00
Leonard Hall
7bc6c19306 AC_WPNav: seperate kinimatic shaping from pid limit setting 2021-07-10 20:25:05 +09:00
Leonard Hall
8a2f75d742 AC_AttitudeControl: AC_PosControl: seperate kinimatic shaping from pid limit setting 2021-07-10 20:25:05 +09:00
Leonard Hall
6e82bff55b AC_AttitudeControl: Add terain following to guided 2021-07-10 20:25:05 +09:00
Randy Mackay
430492469b AC_WPNav: get_terrain_offset and get_vector_NEU made public 2021-07-10 20:25:05 +09:00
Leonard Hall
620d066a2e AC_WPNav: move code to generate terrain following kinematic path 2021-07-10 20:25:05 +09:00
Leonard Hall
de36398ebf AC_Math: Control: Support Accel only input 2021-07-10 20:25:05 +09:00
Leonard Hall
b3acdd49d6 AC_AttitudeControl: AC_PosControl: Support Accel only input 2021-07-10 20:25:05 +09:00
Leonard Hall
8e084a0879 AC_AttitudeControl: AC_PosControl: Change input_pos_xyz name 2021-07-10 20:25:05 +09:00
Andrew Tridgell
75411afd21 AP_Math: added test for SCurve::calculate_path
this was the values shown in the core dump for failing guided mode
test in CI
2021-07-10 10:34:01 +09:00
Andrew Tridgell
498220b9f3 AP_Math: fixed error where t4_out could be negative in SCurve::calculate_path
this case cropped up in SITL due to floating point accuracies
2021-07-10 10:34:01 +09:00
Andrew Tridgell
b11450c18c AP_NavEKF: review feedback 2021-07-10 07:20:41 +10:00
Andrew Tridgell
f343c8501b AP_Math: fixed double fill_nanf() 2021-07-10 07:20:41 +10:00
Andrew Tridgell
168e860f70 AP_Math: fixed a few more single precision calls 2021-07-10 07:20:41 +10:00
Andrew Tridgell
56d9134e38 AP_Common: adjust test_location values
for adjusted longitude scale accuracy
2021-07-10 07:20:41 +10:00
Andrew Tridgell
1486a473bd AP_Math: remove unused rotation_matrix_norm() 2021-07-10 07:20:41 +10:00
Andrew Tridgell
a924f66f70 AP_Common: fixed comment 2021-07-10 07:20:41 +10:00
Andrew Tridgell
5319e3910f AP_NavEKF3: moved checkUpdateEarthField to be called less often 2021-07-10 07:20:41 +10:00
Andrew Tridgell
d91397f2f2 AP_Math: change wrap_PI to ftype
prevent loss of precision
2021-07-10 07:20:41 +10:00
Andrew Tridgell
afb928081a AP_Math: use ftype for a few internal trig fns 2021-07-10 07:20:41 +10:00
Andrew Tridgell
338ab28dea AP_NavEKF: larger frame limit for --enable-math-check-indexes 2021-07-10 07:20:41 +10:00
Andrew Tridgell
31a6663797 AP_Math: fixed vel correction test build 2021-07-10 07:20:41 +10:00
Andrew Tridgell
6a3b12956a AP_Common: make longitude_scale() a static
this changes the use of longitude_scale() to use the average latitude
instead of the lattitude at one end of the line when calculating
positions and distances. It means we obey the basic geometry rule
that:

 pos1 + offs = pos2
 pos2 - offs == pos1
2021-07-10 07:20:41 +10:00
Andrew Tridgell
a8c6d742aa AP_NavEKF3: update earth field at 1Hz
this prevents large mag errors on long distance flights
2021-07-10 07:20:41 +10:00
Andrew Tridgell
4f32fa537a HAL_ChibiOS: define HAL_HAVE_HARDWARE_DOUBLE on F765, F777 and H7 2021-07-10 07:20:41 +10:00
Andrew Tridgell
885e518741 AP_NavEKF3: allow for double EKF build 2021-07-10 07:20:41 +10:00
Andrew Tridgell
6aca0bb08a AP_NavEKF2: allow for double EKF build 2021-07-10 07:20:41 +10:00
Andrew Tridgell
3235747ef8 AP_NavEKF: allow for double EKF build 2021-07-10 07:20:41 +10:00
Andrew Tridgell
32a83ef347 AP_Mount: use ZERO_FARRAY() 2021-07-10 07:20:41 +10:00