Commit Graph

414 Commits

Author SHA1 Message Date
Andrew Tridgell 4c0ef40d3b AP_Periph: fixed IMU in periph
wait_for_sample() can't handle very low sample rates without a
separate delay() by a ms value
2024-12-10 09:29:37 +11:00
Andrew Tridgell 13807f24d7 AP_Periph: added simulation of DroneCAN servo status
allows for testing of DroneCAN servo logging in SITL
2024-12-03 07:38:17 +11:00
Andrew Tridgell 08761e6066 AP_Periph: fixed build with scripting 2024-11-20 07:32:03 +11:00
Hayden Donald 79b596d229 AP_Periph: Prepare reboot before rebooting via AP_Periph:reboot()
Call AP_Periph:prepare_reboot() before rebooting via AP_Periph:reboot()
2024-11-19 16:08:40 +11:00
bugobliterator 37cfe71257 AP_Periph: add missing mandatory virtual method define for GCS_MAVLink 2024-11-15 11:25:19 +11:00
Peter Barker dce4396430 Tools: make SRV_Channels::cork non-static
for symmetry with the push function
2024-11-13 19:47:49 +11:00
Peter Barker 573b02fc23 AP_Periph: create and use a singleton for SRV_Channels 2024-11-13 19:47:49 +11:00
Peter Barker 0ce765aac1 Rover: add specific defines for sending of GPS mavlink messages 2024-11-13 19:40:19 +11:00
Peter Barker d1674b089a AP_Periph: rearrange apd periph initialiser for --error=reorder 2024-11-13 06:40:37 +11:00
James O'Shannessy 753f9eedef AP_Periph: Fix documentation for INS parameters
Parameters are being generated as `INS_` as the group, so `INS_USE` is actually documented as `INS__USE` (not the double underscore).
2024-11-05 10:05:01 +09:00
bugobliterator b05a6c00b6 AP_Periph: add support for publishing raw imu data 2024-10-23 06:46:22 +09:00
bugobliterator 27b202e984 AP_Periph: make can broadcast threadsafe, like can_printf call from lua thread 2024-09-16 19:45:24 +10:00
Thomas Watson dcd34dd39e AP_Periph: clean up node ID parameter handling
Properly document the range and behavior.

Rename storage variable as it doesn't connect to the DNA preferred ID
feature.
2024-09-10 12:36:34 +10:00
Thomas Watson ebcb753acc AP_Periph: reject allocation of broadcast node ID
It is technically legal to receive an "allocation" of the broadcast node
ID. Fortunately, this was already ignored by `canardSetLocalNodeID`,
though it would trigger an assertion failure if those were enabled.

Fix by rejecting that ID. There is effectively no change in behavior
(except possibly fixes using moving baseline GPSes) but the code now
correctly ignores that ID and retries the allocation as it did before.
2024-09-10 12:31:19 +10:00
Ryan Friedman c5484d9d62 Tools: AP_Periph: Add AP_GSOF to libraries
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Iampete1 0b551ed7bc AP_Periph: add support for sending extended ESC status 2024-08-20 09:14:11 +10:00
Thomas Watson f2f1ac39cf AP_Periph: remove redundant DroneCAN packet buffer initialization
The <msg>_encode method always zeros the buffer up to <msg>_MAX_SIZE
bytes so there is no need to do it before calling the function.

Saves at least 8 bytes per instance.
2024-08-03 19:02:39 +10:00
rishabsingh3003 6a13432a21 AP_Periph: Fix compiling issues with AP_PERIPH_PROBE_CONTIONUS enabled 2024-07-25 10:53:23 +10:00
Bob Long 230269bed8 HAL_ChibiOS: add adjustable wdg timeout for hwdefs
This allows the watchdog timeout to be adjusted in the hwdef.dat file,
so that critical nodes like ESCs can recover more quickly.
2024-07-23 19:53:38 +10:00
Thomas Watson dc58d0406c AP_Periph: add ESC_RATE parameter to RC_OUT peripherals
Like other vehicles (which use RC_SPEED), ESC_RATE is used to set the
PWM output rate for outputs whose functions are set to MotorN so that
ESCs can be driven at a fast speed (400Hz, same default as aerial
vehicles) while servos still run at normal speed (50Hz, controlled by
OUT_RATE).
2024-07-10 18:17:41 +10:00
Thomas Watson 43bc80ab59 AP_Periph: ensure the dshot type gets set
Same fix as https://github.com/ArduPilot/ardupilot/pull/27093 .
2024-07-09 19:57:31 +10:00
Andrew Tridgell 57c8c19452 AP_Periph: show MCU temp in PPPGW web UI 2024-06-27 10:11:14 +10:00
bugobliterator c1ae140dcd AP_Periph: do not close if already closed 2024-06-21 20:31:31 +10:00
Peter Barker 1a2d940330 AP_Periph: rename Notify buzzertype enumeration 2024-06-20 14:47:20 +10:00
Andrew Tridgell 94841dd608 Tools: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Iampete1 cf16448dfa Tools: ignore lua-language-server-errors 2024-05-21 09:42:22 +10:00
Iampete1 bcf0733ea9 AP_Periph: always limit rangefinder update rate to given max rate 2024-05-08 17:16:34 +10:00
Iampete1 13cbffebcc AP_Periph: allow airspeed without I2C 2024-05-08 17:15:14 +10:00
Iampete1 6dcb0af697 AP_Periph: add support for streaming dedicated RPM message 2024-05-02 20:25:38 +10:00
Gone4Dirt 1a39bd1a6e Periph: Add probe continuous checks to airspeed and compass 2024-04-24 17:06:03 +10:00
Andrew Tridgell 0eded27a9f AP_Periph: check return of get_RelPosHeading 2024-04-23 10:32:43 +10:00
Gone4Dirt 853bfbf64d AP_Periph: Add support for up to two rangefinders 2024-04-17 17:06:42 +10:00
Peter Barker daf6bca778 AP_Periph: correct compilation when HAL_GCS_ENABLED 2024-04-10 17:11:34 +10:00
Michael du Breuil 81d7240bd9 AP_Periph: fix can mirroring 2024-04-05 10:53:38 +11:00
Peter Barker c450de6e96 AP_Periph: add assert that AP_CHECK_FIRMWARE_ENABLED is set 2024-03-26 10:50:11 +11:00
Peter Barker 7e1a3ae4dc Tools: allow forwards/backwards for DroneCAN type autoconfig
ArduPilot configures a connected DroneCAN GPS based on its GPS Type.

Given parameter name changes, ArduPilot must be able to configure both new and old AP_Periphs, and new AP_Periphs have to cope with being configured by old ArduPilots.
2024-03-19 19:50:12 +11:00
Peter Barker 7e4d9f2893 AP_Periph: stop passing serial manager to GPS init
it can get this via the singleton
2024-03-19 07:28:55 +11:00
Andrew Tridgell 9aade22c7e AP_Periph: support HiRes magnetometer data 2024-03-16 20:10:35 +11:00
Andrew Tridgell fbfa3e43bc AP_Periph: allow for RTCMv3 packets larger than 300 bytes
with newer receivers, RTCMv3 packets can be larger than 300
2024-03-06 19:38:06 +11:00
Andrew Tridgell 0007c7dce0 AP_Periph: mark master as 1.8.0 dev 2024-02-26 07:53:39 +11:00
Andrew Tridgell edd03b1ac2 AP_Periph: release notes for 1.7.0 2024-02-26 07:52:55 +11:00
Andrew Tridgell 7790b1ec71 AP_Periph: map MAV_SEVERITY to DroneCAN debug levels 2024-02-22 15:03:01 +11:00
bugobliterator 7b6b6ae803 AP_Periph: fix version setting in CheckFirmware app descriptor 2024-02-21 18:54:17 +11:00
Andrew Tridgell 20cb709ca2 AP_Periph: use gmtime_r() instead of gmtime() 2024-02-21 12:09:48 +11:00
Peter Barker 102ffd3aeb AP_Periph: don't send GPS messages if not compiled in 2024-02-15 12:17:07 +11:00
Peter Barker bdb84181bc Tools: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Andrew Tridgell 50332ab23f AP_Periph: check decode for DNA message 2024-02-11 16:48:52 +11:00
Gone4Dirt 26bfedb956 AP_Periph: Send generic equipment temperature data 2024-01-30 10:13:35 +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
Andrew Tridgell 9bb29aec36 AP_Periph: ensure no external flash in periph
bootloader protocol cannot support it in its current form
2024-01-21 12:30:08 +11:00