Commit Graph

35311 Commits

Author SHA1 Message Date
Peter Barker 9ce9f88254 AP_Scheduler: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 92be3e7237 AP_RTC: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker fb7ccd327a AP_NMEA_Output: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 477fa3e161 AP_InertialSensor: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker f7886ca14d AP_HAL: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 0694154f1c AP_Vehicle: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker e39fad1411 AP_Logger: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker dc74f97739 AP_Compass: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker eb0c66fc90 AP_AHRS: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Henry Wurzburg dfc1b84186 AC_Fence: fix autofence enable in takeoff mode 2024-02-13 10:45:39 +11:00
Peter Barker aaad98e898 AP_RCProtocol: correct compilation when crossfire not compiled in 2024-02-13 09:36:05 +11:00
Peter Barker bb8047c026 AP_Scripting: correct compilation with AP_FILESYSTEM_FORMAT_ENABLED is false
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-02-12 09:38:29 +11:00
Peter Barker 1862b5dc27 chibios_hwdef.py: allow re-use of bootloader from other boards 2024-02-10 21:41:30 +11:00
Peter Barker 0e67209790 AP_Compass: fixed-yaw requires the AP_AHRS library to exist 2024-02-10 11:47:10 +11:00
Peter Barker 185396ee27 AP_Vehicle: compile with AHRS not available 2024-02-10 11:47:10 +11:00
Peter Barker e7ded62763 AP_Vehicle: compile without ins 2024-02-10 11:47:10 +11:00
Peter Barker 04ae9879f3 AP_Vehicle: compile without scheduler 2024-02-10 11:47:10 +11:00
Peter Barker a949b52b5a AP_Vehicle: add support for compiling arming out 2024-02-10 11:47:10 +11:00
Peter Barker e2543bdcb9 AP_Arming: add support for compiling arming out 2024-02-10 11:47:10 +11:00
Peter Barker 1e50e36000 AP_RCMapper: add rcmapper config 2024-02-10 11:47:10 +11:00
Peter Barker e358d1d237 AP_MSP: add rcmapper config 2024-02-10 11:47:10 +11:00
Peter Barker 821cfcd6ac RC_Channel: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Peter Barker c23ba04638 GCS_MAVLink: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Andrew Tridgell e8b4010899 HAL_ChibiOS: fixed CANFD timings (again!)
the timing table was not correct, thanks to APD for pointing this out.

This is recalculated from
https://www.kvaser.com/support/calculators/can-fd-bit-timing-calculator,
with transmitter timing delay compensation added and tested with Salae
captures to ensure we are getting the right bit rates
2024-02-09 18:55:08 +11:00
Hayden Donald 52409d6765 AP_Scripting: Add gyro/accel consistency checks to lua
Added the accels_consistent and gyros_consistent methods to the lua bindings
2024-02-09 18:54:43 +11:00
Hayden Donald fdf56c2ec4 AP_InertialSensor: Move accel/gyro_consistent to AP_IntertialSensor
Move the accel_consistent and gyro_consistent methods from AP_Arming to AP_IntertialSensor
2024-02-09 18:54:43 +11:00
Hayden Donald 2a55e6a030 AP_Arming: Move accel/gyro_consistent to AP_IntertialSensor
Move the accel_consistent and gyro_consistent methods from AP_Arming to AP_IntertialSensor
2024-02-09 18:54:43 +11:00
Randy Mackay 0fca670f85 Mount: Siyi waits for non-zero cam firmware version 2024-02-09 17:00:26 +11:00
bugobliterator 4bcac076f6 AP_GPS: broaden the acceptance criteria for GPS Yaw measurement 2024-02-08 00:59:15 -08:00
Hayden Donald c259d11cd6 AP_Scripting: Add getting of gyro/accel values
Added the ability to get gyro/accel from LUA
2024-02-08 15:24:12 +11:00
Hayden Donald baf8958ee0 AP_Scripting: Add send_text to display binding
Added a notify:send_text and notify:release_text binding to override the text displayed on a display with custom text
2024-02-07 23:52:30 +00:00
Hayden Donald dea51c9c50 AP_Notify: Add send_text for scripting use
Added a send_test_src method to override the text on the display and display custom text on a given row
2024-02-07 23:52:30 +00:00
Peter Barker ae19d032ce AP_RCProtocol: use constructor from parent class in ibus 2024-02-07 19:07:58 +11:00
Iampete1 5b6d86c278 AP_Parachute: do relay conversion if ever enabled 2024-02-07 19:07:29 +11:00
Hayden Donald 14aea255e6 AP_Scripting: Add calibrating method
Add the calibrating method to lua so we can see if the device is currently calibrating
2024-02-07 18:36:33 +11:00
Hayden Donald 85a8b6c414 AP_Scripting: Add filesystem format
Added the ability to format the SD card from LUA
2024-02-07 18:35:36 +11:00
bugobliterator 9919af69bc AP_HAL_ChibiOS: add config to enable sccripting on CANMod 2024-02-07 18:31:02 +11:00
Peter Barker 6da7cfcf4e AP_Vehicle: move scripting up to AP_Vehicle 2024-02-07 18:24:12 +11:00
Henry Wurzburg 2729b11b2f hwdef: add ASP5033 airspeed in minimal builds 2024-02-06 11:27:18 +11:00
Andrew Tridgell 6713a203f0 AP_BattMonitor: added temperature reading to INA2xx driver 2024-02-06 11:26:05 +11:00
Peter Barker 89b2e62b0f AP_Logger: add power status bits to logger metadata 2024-02-06 11:13:14 +11:00
Peter Barker b1ade6ccf5 AP_HAL: add power status bits to logger metadata 2024-02-06 11:13:14 +11:00
Peter Barker 4a1adc69da GCS_MAVLink: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 4c272d21ee AP_HAL_ChibiOS: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 084b0aea24 AP_Compass: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 8cc662163b AP_RCProtocol: add separate define for AP_RCPROTOCOL_DSM_ENABLED 2024-02-06 11:09:12 +11:00
Peter Barker f1457034e2 GCS_MAVLink: provide and use base-method implementation for guided mode request 2024-02-06 11:07:48 +11:00
Peter Barker e660a1925e AP_Vehicle: move can_mgr.init call up to AP_Vehicle
... also adds the call for Blimp...
2024-02-06 11:03:54 +11:00
Peter Barker b1ddbe9904 RC_Channel: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker bed976a8fc AP_Scripting: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker a8bc7761d3 AP_OSD: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker eda6d0b6a0 AP_Motors: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker b48b26ddb8 AP_RCTelemetry: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker c7678042da AP_OSD: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 10a815d3a2 AP_Notify: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker cfab2e08ef AP_MSP: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 55dbee78f8 AP_LTM_Telem: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 7f6cb0eab3 AP_Hott_Telem: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 1f4c129341 AP_BattMonitor: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 9961e8c49d hwdef: remove bad hwdef lines
these have no effect
2024-02-06 10:58:44 +11:00
rishabsingh3003 b2dfd14696 AP_Arming: Add check for CAN MR72 2024-02-06 10:57:21 +11:00
rishabsingh3003 b8d08a7211 AP_Proximity: Add support for CAN MR72 2024-02-06 10:57:21 +11:00
rishabsingh3003 0cdfdc6234 AP_CANMangaer: Add support for CAN MR72 2024-02-06 10:57:21 +11:00
Andy Piper d5ba0b6302 AP_RCProtocol: discriminate GHST and CRSF based on first byte
do not change to GHST baudrate unless it has been specifically configured
2024-02-06 09:55:56 +11:00
Andrew Tridgell 1f2b9df290 HAL_Linux: fixed float calc of time for onboard flow 2024-02-06 07:31:21 +11:00
Andrew Tridgell c26f6d0a98 HAL_SITL: use integer maths for clocks
same fix as for HAL_Linux
2024-02-06 07:31:21 +11:00
Andrew Tridgell 45ca3ad4bb HAL_Linux: fixed time function to use integer maths
avoid floating point rounding errors after long uptimes.

thanks to Richard (RSAXVC) for finding this
2024-02-06 07:31:21 +11:00
Peter Barker 49b4a74641 AP_Radio: tidy AP_Radio includes 2024-02-05 09:26:14 +11:00
Peter Barker 0d26118b12 hwdef: tidy AP_Radio includes 2024-02-05 09:26:14 +11:00
Andrew Tridgell 85439360d7 HAL_ChibiOS: fixed I2C4 on STM32G4 2024-02-05 07:36:14 +11:00
Andrew Tridgell 1e4f597e02 HAL_ChibiOS: fixed support for STM32H7A3
need to tell ChibiOS this is a newer H7
2024-02-03 08:36:18 +11:00
Andrew Tridgell 5130f93c03 AP_Param: fixed setting of defaults for dynamic param trees
when we load a VARPTR subtree we need to re-scan the parameter
defaults file from @ROMFS/defaults.parm in case there are defaults
applicable to this subtree
2024-02-03 07:45:51 +11:00
Peter Barker a82b7f20c9 AP_HAL_ChibiOS: use HAL_LOGGING_ENABLED in place of HAL_BOOTLOADER_BUILD
bootloader already disables GCS, so we can rely on HAL_GCS_ENABLED in place of HAL_BOOTLOADER_BUILD
2024-02-02 19:21:58 +11:00
David O'Connor 078697c825 hwdef: add AnyLeaf H7 board 2024-02-01 11:43:57 +11:00
Leonardo Garcia 5749bd5074 AP_HAL_ChibiOS: mRo KitCAN revC board fix
Add RM3100 reversal mask to deal with M10025C board changes.
2024-02-01 11:43:35 +11:00
Andrew Tridgell 33f6a1d87e hwdef: added MatekH7A3 support 2024-02-01 11:43:24 +11:00
Andrew Tridgell 054fb94e9a HAL_ChibiOS: added support for STM32H7A3
interesting MCU as it is the first H7 we support that doesn't have a
128k flash sector size
2024-02-01 11:43:24 +11:00
Andrew Tridgell 3171b5321a HAL_ChibiOS: support flash storage with 8k sectors
this allows for doubling up sectors to give an effective sector size
of 16k, allowing for flash storage with a useful storage size
2024-02-01 11:43:24 +11:00
Andrew Tridgell 07d0418cf9 HAL_ChibiOS: fixed flash support on H7 with 8k page size
the STM32H7A3xx has 8k pages
2024-02-01 11:43:24 +11:00
yjuav 8e71cf83cd hwdef: add YJUAV_A6Ultra board support 2024-02-01 11:29:11 +11:00
olliw42 381aba9c62 AP_Logger: RXLQ in RSSI is in percent 2024-02-01 09:18:08 +11:00
Peter Barker 94be9cb8b6 AP_Vehicle: move call to BoardConfig.init to AP_Vehicle 2024-02-01 07:59:11 +11:00
Andrew Tridgell 30497244d9 HAL_ChibiOS: whitespace fixes 2024-01-30 12:32:23 +11:00
Andrew Tridgell 0a6057f2b3 HAL_ChibiOS: adjust clocks for H723 and H730
FDCAN clock must be 80MHz, and also align no-crystal clocks with
clocks for boards with crystals
2024-01-30 12:32:23 +11:00
Andrew Tridgell aea2863141 hwdef: Added BotBloxSwitch 2024-01-30 12:32:23 +11:00
Andrew Tridgell 1be9c79e35 AP_Networking: fixed network bootloader without serial manager 2024-01-30 12:32:23 +11:00
Andrew Tridgell 967af533b9 HAL_ChibiOS: fixed flash page count on H723
single bank H7 has 8 pages
2024-01-30 12:32:23 +11:00
Andrew Tridgell 4eaf5ef247 HAL_ChibiOS: support STM32H723 boards 2024-01-30 12:32:23 +11:00
Peter Barker 2761a528f3 SITL: remove unused include of AP_Stats.h 2024-01-30 11:12:21 +11:00
Peter Barker 652d2ec198 AP_Vehicle: move AP_Stats to AP_Vehicle 2024-01-30 11:12:21 +11:00
Iampete1 4bcbb13f79 AP_TemperatureSensor: add DroneCAN backend 2024-01-30 10:13:35 +11:00
Iampete1 5fd3be1b75 AP_DroneCAN: add subscribe msgs for TemperatureSensor 2024-01-30 10:13:35 +11:00
Gone4Dirt 6e4ce35fca AP_Temperature: Add DroneCAN source 2024-01-30 10:13:35 +11:00
Andrew Tridgell e772012e01 HAL_ChibiOS: raise SDMMC clock limit on H7
this allows for faster log download on ethernet
2024-01-29 06:51:11 +11:00
TsuyoshiKawamura 8914e5585f AP_BattMonitor: delete unnecessary underscore in description 2024-01-28 22:29:06 +11:00
Andrew Tridgell e039ff2a30 AP_Param: don't enable param backup on all boards
this fixes an issue with resetting of parameters when going between
4.4.x and 4.5.x on MatekH743, and on any other board using flash
storage where the storage size has increased from 16k to 32k between
4.4.x and 4.5.x

The problem is that when you update to 4.5.x the parameter code stored
a backup of parameters in the StorageParamBak storage region which is
in the last section of storage. When you downgrade to 4.4.x the
AP_FlashStorage::load_sector() code tries to load this data and gets
an error as it is beyond the end of the available 16k storage. This
triggers an erase_all() and loss of parameters
2024-01-28 08:42:57 +11:00
Andrew Tridgell a2707b48c5 HAL_ChibiOS: enable clock management on G4
this allows for a different clock tree in the main fw from the
bootloader
2024-01-25 11:44:02 +11:00
Andrew Tridgell 2d031a4d20 HAL_ChibiOS: switched G4 FDCAN clock to 80MHz
this requires main CPU clock at 160 MHz instead of 168 MHz
2024-01-25 11:44:02 +11:00
Andrew Tridgell 1c8048df8f HAL_ChibiOS: fixed CANFD timings
our CANFD timings were resulting in a lot of busoff errors. Here is an
example of master at 1Mbit/5MBit:

Getting @SYS/can0_stats.txt as -
------- Clock Config -------
CAN_CLK_FREQ:   80MHz
Std Timings: bitrate=1000000 presc=7
sjw=0 bs1=7 bs2=0 sample_point=90.00000%
FD Timings:  bitrate=5000000 presc=1
sjw=0 bs1=5 bs2=0 sample_point=90.00000%
------- CAN Interface Stats -------
tx_requests:    2689
tx_rejected:    0
tx_overflow:    443
tx_success:     7
tx_timedout:    2232
tx_abort:       0
rx_received:    18470
rx_overflow:    0
rx_errors:      0
num_busoff_err: 34439
num_events:     18477
ECR:            F8
fdf_rx:         18467
fdf_tx_req:     2182
fdf_tx:         0

here is an example with the new timings:

------- Clock Config -------
CAN_CLK_FREQ:   80MHz
Std Timings: bitrate=1000000 presc=8
sjw=1 bs1=8 bs2=1 sample_point=90.00000%
FD Timings:  bitrate=8000000 presc=2
sjw=3 bs1=8 bs2=3 sample_point=80.00000%
------- CAN Interface Stats -------
tx_requests:    3023
tx_rejected:    0
tx_overflow:    0
tx_success:     3023
tx_timedout:    0
tx_abort:       0
rx_received:    27865
rx_overflow:    0
rx_errors:      0
num_busoff_err: 0
num_events:     30888
ECR:            0
fdf_rx:         27862
fdf_tx_req:     3016
fdf_tx:         3016

I am testing between a CubeOrange and a Pixhawk6X. I tested 1, 2, 4, 5
and 8 MBit (which are the only valid FD bitrates in our parameters)

Many thanks to Kai from Salient Motion for finding this issue and
providing the corrected timing table
2024-01-25 11:44:02 +11:00
Thomas Watson 52468f0238 AP_ROMFS: fix buffer null terminator
Ensure buffer is properly null terminated without changing the indicated
size even for uncompressed data.
2024-01-25 11:24:31 +11:00