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
Andrew Tridgell
ac2080ff93
AP_ESC_Telem: don't send mavlink msgs if we've never data any data
2021-06-08 12:30:30 +10:00
Andy Piper
8df4e0f127
AP_ESC_Telem: generalise ESC telemetry to allow harmonic notch handling with other ESCs
...
refactor to capture and output slewed rpm values
enable with HAL_WITH_ESC_TELEM
move notch calculation to front end
refactor telemetry data into frontend
cope with blended data
add mavlink send function
log telemetry data in frontend
add SITL ESC telemetry
record volts, amps and consumption as floats
report telemetry transmission errors
disable ESC Telemetry inclusion when there is no need for it
move ESC_Telem logging to the AP_ESC_Telem class (by amilcar.lucas@iav.de )
various cleanups (by amilcar.lucas@iav.de )
add support for raw ESC rpm
check RPM validity for mavlink output
Use const when applicable
2021-05-12 17:01:11 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
48ab08fb67
AP_ESC_Telem: Fix copy & paste typo
2021-02-24 12:49:05 +11:00
Siddharth Purohit
e9430d7f80
AP_ESC_Telem: move to using CANManager library
2020-08-19 17:31:09 +10:00
Randy Mackay
35737d484e
AP_ESC_Telem: wrapper for ESCs with feedback
2020-02-12 11:58:34 +09:00