Commit Graph

55 Commits

Author SHA1 Message Date
Andrew Tridgell 15d3ec3113 AP_ESC_Telem: allow IOMCU to work in example fw
example firmwares don't instantate AP_ESC_Telem
2024-01-02 08:12:37 +11:00
Andy Piper 6deff406e0 AP_ESC_Telem: don't set up parameters on iofirmware
add direct accessor for telemetry data to be used by iomcu
don't update telemetry data if no data
2023-12-18 19:02:52 +11:00
Andrew Tridgell 1bf7c9ee77 AP_ESC_Telem: added stale() method for ESC telem
prevents use of stale data when close to zero time
2023-11-03 08:08:31 +11:00
Mykhailo Kuznietsov c779d0b879 AP_ESC_Telem: Fix some typos
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Tatsuya Yamaguchi 30bb82a884 AP_ESC_Telem: fix fake value of SITL ESC 2023-09-11 09:48:34 +10:00
Andrew Tridgell 3a8fd367ad AP_ESC_Telem: use SIM_CAN_SRV_MSK and fixed throttle dependency
RPM should not depend on "throttle", it is per motor
2023-08-24 13:06:40 +10:00
Tom Pittenger dbe0aac73f AP_ESC_Telem: update_telem_data to be public 2023-08-22 16:14:36 -07:00
Michael du Breuil a0efcc7bdc AP_ESC_Telem: Correct a regression with calclulating active_esc_mask
Credit to @casrya on github for spotting this (#24665), and
investigating. The intent here was to bail out only if no data was
within the timeout, which I had messed up in a bad refactor.
2023-08-17 08:34:29 +10:00
Michael du Breuil 935fad54ad AP_ESC_Telem: Fix some time wrap issues that can lead to using stale data if a ESC stops responding 2023-08-08 09:53:48 +10:00
Michael du Breuil 84104331ec AP_ESC_Telem: Raise default timeout for the RPM spin check to 210ms
This copes better with 10Hz monitors, or losing a single packet
2023-06-20 09:30:03 +10:00
Michael du Breuil 3de912f2b8 AP_ESC_Telem: Add support for a max rpm check on the motors running check 2023-05-02 10:23:55 +10:00
Peter Barker b931617650 AP_ESC_Telem: add and use an AP_ESC_Telem_config.h 2023-03-10 08:48:24 +11:00
Tom Pittenger 9019fa2f8d AP_ESC_Telem: simplify AP_TemperatureSensor integration 2023-01-31 10:52:23 +11:00
Peter Barker bd91294337 AP_ESC_Telem: neaten definition of HAL_WITH_ESC_TELEM 2023-01-25 22:30:55 +11:00
Peter Barker f429aae09e AP_ESC_Telem: correct esc telem debug
wrong format specifier
2023-01-18 07:17:51 +11:00
James O'Shannessy dec9f486ed AP_ESC_Telem: Use SRV_Channel_config to extract the number of expected channels available
Removes duplication of definitions of available channels

Co-authored-by: Simon Maddison <81274690+Sypaq-MadMan@users.noreply.github.com>
2022-12-01 11:09:58 +11:00
Tom Pittenger 89bcd65603 AP_ESC_Telem: allow external libraries, like AP_TemperatureSensor, to override the temperature 2022-10-18 10:05:31 +11:00
Andrew Tridgell dc3f6fe69d AP_ESC_TELEM: allow for non-continguous ESC telem motor sets
this fixes ESC telem for quadplanes with motors at 5-8 or 9-12
2022-10-16 20:38:19 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Andy Piper 7510b68a8e AP_ESC_Telem: make sure active mask takes into account rpm updates 2022-09-20 09:45:03 +10:00
Andrew Tridgell 3512ea792f AP_ESC_Telem: support set_rpm_scale() call for scripting 2022-09-13 07:48:19 +10:00
Andy Piper 2de992dcf1 AP_ESC_Telem: avoid FPE on macos
use floats for rpm in API calls
2022-09-07 17:03:03 +01:00
Andy Piper b9280630f5 AP_ESC_Telem: add are_motors_running() based on rpm feedback
add spin armed rpm to SITL
use floats for rpm in API calls
implement is_telemetry_active()
simulate ESC telemetry in SITL
2022-09-07 17:03:03 +01:00
Andy Piper 28d0086a97 AP_ESC_Telem: don't provide zero udpates for ESCs that have never been used 2022-08-30 10:03:31 +10:00
Andrew Tridgell df56d8a8dd AP_ESC_Telem: don't default ESC telem on for AP_Periph
require it to be enabled specifically. Otherwise we end up with ESC
status msgs in GPS modules
2022-08-28 11:43:01 +10:00
Andy Piper d6ba508cb9 AP_ESC_Telem: keep RPM updates in the correct order 2022-08-09 11:13:11 +10:00
Andrew Tridgell 0b9c5d6dc1 AP_ESC_Telem: fixed race condition in update_rpm()
if another thread updates at the same time then we could get division
by zero
2022-07-13 17:33:00 +10:00
Andrew Tridgell ec31a13275 AP_ESC_Telem: expose update_rpm() for scripting 2022-07-13 17:33:00 +10:00
Andrew Tridgell 064b6c8a9d AP_ESC_Telem: use send_struct mavlink function
saves some flash, cpu and stack, but means we need a cast
2022-06-14 10:11:03 +10:00
Andrew Tridgell 3a1fc0f338 AP_ESC_Telem: disable ESC telem with zero channels
this prevents a build error and saves flash
2022-06-10 13:46:43 +10:00
Andrew Tridgell cd8ff2b37a AP_ESC_Telem: added ESC_TLM_MAV_OFS parameter
this allows for the ESC telemetry to be remapped to a lower range for
GCS displays. Users often want their quadplane ESCs to show up as ESCs
1 to 8 instead of the high numbers used internally
2022-06-10 13:46:43 +10:00
Andrew Tridgell aedf465049 AP_ESC_Telem: support ESC telem for ESCs 13 to 32
also fix a mavlink buffer starvation issue
2022-06-10 13:46:43 +10:00
Andrew Tridgell d33734ee85 AP_ESC_Telem: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Peter Barker 82f4faec31 AP_ESC_Telem: remove misleading comment 2022-05-10 19:43:49 +10:00
murata fb8582e98e AP_ESC_Telem: correct spelling mili -> milli 2022-01-31 08:55:29 +09:00
VMsunghwan 5bf24cd54c AP_ESC_Telem : Update Telemetry
telemtry -> telemetry
2022-01-17 11:26:34 +09:00
Andrew Tridgell 9da03668ae AP_ESC_Telem: allow build with AP_Periph 2021-12-10 08:11:24 -08:00
Andy Piper e8d1326a6d AP_ESC_Telem: fix raw rpm
Co-authored-by: Amilcar Lucas <amilcar.lucas@iav.de>
2021-09-01 17:15:32 +10:00
Andy Piper 9281982b8f AP_ESC_Telem: log raw RPM information 2021-09-01 17:15:32 +10:00
Dr.-Ing. Amilcar do Carmo Lucas 72a69ec274 AP_ESC_Telem: implement get_active_esc_mask()
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-08-13 16:22:37 +10:00
Pierre Kancir adf86357aa AP_ESC_Telem: prevent possible overrun 2021-08-12 11:20:24 +10:00
Pierre Kancir 7739ddefd0 AP_ESC_TELEM: prevent overrun, esc_index should be < to ESC_TELEM_MAX_ESCS 2021-08-12 11:20:24 +10:00
Pierre Kancir a0175441a0 AP_ESC_Telem: fix out of bound access 2021-08-12 11:20:24 +10:00
bugobliterator 3d6ef2106f AP_ESC_Telem: change class name from SITL::SITL to SITL::SIM 2021-08-05 07:25:31 +10:00
Andrew Tridgell b450b59acc AP_ESC_Telem: mark log messages as streaming 2021-08-03 10:23:36 +10:00
Michel Pastor 26c6224b2e AP_ESC_Telem: add method to get the temperature of the motor with highest temperature 2021-07-06 12:18:21 +10:00
Michel Pastor f9b149e793 AP_ESC_Telem: add method to get average motor RPM 2021-07-06 12:18:21 +10:00
yaapu b4d54cf565 AP_ESC_Telem: added methods to get average rpm data by motor mask 2021-07-02 15:35:05 +10:00
Dr.-Ing. Amilcar do Carmo Lucas 13a97eecd4 AP_ESC_Telem: fix compilation when HAL_WITH_ESC_TELEM == 0 2021-06-09 21:42:51 +10:00
Dr.-Ing. Amilcar do Carmo Lucas bb9a81d32e AP_ESC_Telem: dummy empty class to be used when HAL_WITH_ESC_TELEM == 0 2021-06-09 21:42:51 +10:00