Commit Graph

61984 Commits

Author SHA1 Message Date
Andrew Tridgell 4424f4e9f8 AP_Scripting: prevent double close in web server 2024-03-14 11:42:42 +11:00
Andrew Tridgell decd6c91ad AP_Scripting: prevent re-use of closed socket
this prevents a null pointer dereference after a close of a network
socket
2024-03-14 11:42:42 +11:00
Andrew Tridgell ff848ef269 waf: avoid trying to compile .github directory as DSDL 2024-03-14 11:42:42 +11:00
Andrew Tridgell fa401640b0 DroneCAN: update DSDL compiler, libcanard and pydronecan
fixed handling of bad multi-frame messages
2024-03-14 11:42:42 +11:00
Peter Barker 58be3d4296 Tracker: release notes 4.2.0beta -> 4.5.0beta 2024-02-23 17:28:02 +11:00
Peter Barker 7b20e4ba42 Tracker: correct altitude pressure offset calculation
the value nav_status.altitude_offset is expected to be a correction for differences between the barometers.  The user calibrates this value with a MAV_CMD_PREFLIGHT_CALIBRATION call.

Without this patch we were passing in the raw barometric pressure values for the tracker and the tracked vehicle.  It seems get_altitude_difference is expecting a sea-level pressure as its first argument now, as it subtracts the field elevation from the pressure-difference altitude calculations.

Change our call to provide a sea-level-adjusted value
2024-02-03 11:02:11 +11:00
Peter Barker cc8a9d1b4e Tracker: log the navigation alt offset
useful diagnostic, set just once
2024-02-03 11:02:08 +11:00
Randy Mackay 6714e07796 Copter: version to 4.5.0-beta1 2024-01-31 10:04:33 +11:00
Randy Mackay 81a1513c97 Copter: 4.5.0-beta1 release notes 2024-01-31 10:04:33 +11:00
Randy Mackay 32179336a5 Rover: version to 4.5.0-beta1 2024-01-31 10:04:33 +11:00
Randy Mackay 99012b016d Rover: 4.5.0-beta1 release notes 2024-01-31 10:04:33 +11:00
Randy Mackay 0eb0e64447 Plane: version to 4.5.0-beta1 2024-01-31 10:04:33 +11:00
Randy Mackay 6eb4f6c59f Plane: 4.5.0-beta1 release notes 2024-01-31 10:04:33 +11:00
Andrew Tridgell a3143ab009 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:43:14 +11:00
Andrew Tridgell 6e3369611e 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:52 +11:00
Andrew Tridgell f98a7d6ac1 waf: removed old UAVCAN defines 2024-01-25 11:44:49 +11:00
Andrew Tridgell 06a8aef998 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:44 +11:00
Andrew Tridgell 2d965684f6 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:32 +11:00
Peter Barker 113ada0524 Tools: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 03fe367459 Rover: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 55710e7f7b Blimp: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker aa14e73a0b ArduSub: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 2f0cb8b650 ArduPlane: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 8cda4ad924 ArduCopter: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker c7f7ec3312 AntennaTracker: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker f18e196fa9 GCS_MAVLink: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 475ef8a06d AP_Mission: fix use of uninitialised stack data
loading missions via FTP ends up using uninitialised stack data when storing missions.
2024-01-24 09:04:28 +11:00
Hayden Donald a81f2785aa AP_HAL_ChibiOS: Use correct pin config for ADC2 and ADC3 2024-01-24 08:03:24 +11:00
MallikarjunSE 873e2eac7d AP_HAL_ChibiOS: update truenav hwdef 2024-01-24 07:58:09 +11:00
J.R. Bronkar 1ec61c57ba Rover: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
J.R. Bronkar 6ffdfd9f48 ArduSub: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
J.R. Bronkar 2be84183b7 ArduPlane: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
J.R. Bronkar c28c50babe ArduCopter: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
J.R. Bronkar 784a21bcab AP_Mission: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
J.R. Bronkar 3a3f4ea446 autotest: Fractional Loiter Turn Test 2024-01-22 20:27:20 -08:00
Andrew Tridgell e602aa68a4 Plane: removed incorrect comment 2024-01-23 15:00:30 +11:00
Andrew Tridgell 50b95c81ca AP_Param: whitespace fix 2024-01-23 15:00:30 +11:00
Andrew Tridgell 649fbe9f24 Plane: make the 90x factor more obvios 2024-01-23 15:00:30 +11:00
Andrew Tridgell f6ff3b2fbb Tools: fixed incorrect param conversions 2024-01-23 15:00:30 +11:00
Andrew Tridgell 1341abc6b4 Tools: fixed name of pitch limit parameters 2024-01-23 15:00:30 +11:00
Andrew Tridgell b051719836 SITL: fixed name of pitch limit parameters 2024-01-23 15:00:30 +11:00
Andrew Tridgell e714f0a7a3 AP_HAL_ChibiOS: fixed name of pitch limit parameters 2024-01-23 15:00:30 +11:00
Andrew Tridgell bf60a3b385 Tools: added convert_param_scale.py 2024-01-23 15:00:30 +11:00
Andrew Tridgell 7de56d434c Tools: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 0d434c8b54 ArduPlane: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 315f4963cc SITL: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 4f182f3194 AP_Scripting: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 061ac459f8 RC_Channel: tidy a comment for LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell a4302e5fb8 Plane: tidy 2 comments 2024-01-23 15:00:30 +11:00
Andrew Tridgell f51fa31aae AP_TECS: fixed param names in comments 2024-01-23 15:00:30 +11:00