Commit Graph

61936 Commits

Author SHA1 Message Date
Andrew Tridgell 743b1262a0 waf: removed old UAVCAN defines 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
Thomas Watson d13193150c AP_ROMFS: store size in file structure instead of compressed stream
Cleans up code.
2024-01-25 11:24:31 +11:00
Thomas Watson d46cb3fd85 AP_ROMFS: embed raw DEFLATE streams
Saves size not including unnecessary headers or code to parse them.
2024-01-25 11:24:31 +11:00
Thomas Watson 5d37442f7c Tools/embed: drop py2 compat, necessary for future improvements 2024-01-25 11:24:31 +11:00
Iampete1 8c72304ab9 AC_Avoidance: AP_OADijkstra: correct use of uninitialised value when retrying fence 2024-01-24 19:20:02 +11:00
Peter Barker c33d665906 GCS_MAVLink: make rally/fence item conversion methods public 2024-01-24 19:14:41 +11:00
Peter Barker 3ef2139f4b AP_FileSystem: permit upload of fence/rally via ftp 2024-01-24 19:14:41 +11:00
Peter Barker 127961e692 Plane: break out a method for set-attitude-target 2024-01-24 19:10:35 +11:00
Peter Barker f96add13e9 Plane: break out a method for set-position-target-local-ned 2024-01-24 19:10:35 +11:00
Peter Barker 5bc2b1a09b Plane: break out a method for set-position-target-global-int 2024-01-24 19:10:35 +11:00
Simon Hancock 1bfd9f3763 AP_Logger: Correct for loop condition 2024-01-24 19:09:55 +11:00
Peter Barker 75dec6fcc7 Rover: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker 81b279758d Blimp: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker 57535b538e ArduPlane: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker 4c2cc511e6 ArduCopter: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker 5e5bca2bba GCS_MAVLink: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker d4cbb54e35 autotest: tidy setting of board type
splitting the string isn't pretty - just set two variables.
2024-01-24 18:42:18 +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