Commit Graph

61946 Commits

Author SHA1 Message Date
Iampete1
5fd3be1b75 AP_DroneCAN: add subscribe msgs for TemperatureSensor 2024-01-30 10:13:35 +11:00
Gone4Dirt
26bfedb956 AP_Periph: Send generic equipment temperature data 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
fd40b15e21 AP_Bootloader: added MatekH7A3 board type 2024-01-28 09:00:30 +11:00
Andrew Tridgell
f1566a481e AP_Bootloader: added board ID for BotBloxSwitch 2024-01-28 09:00:19 +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
Leonardo Garcia
13266ea1f3 Tools: Allocate ID for mRo KitCAN revC board 2024-01-27 10:33:50 +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
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