Commit Graph

76 Commits

Author SHA1 Message Date
Bob Long
2b903d20b4 AP_ESC_Telem: tidy old calls to _telem_data
When #27755 was first opened, #26252 had not been merged yet. #26252
refactored a bit, but the change was not applied to #27755. This commit
fixes that.

This should not change the behavior of the code.
2024-09-11 10:23:00 +10:00
Iampete1
d0d5dfddda AP_ESC_Telem: getters: check index is in range first 2024-08-20 09:14:11 +10:00
Iampete1
f9f8c2aa29 AP_ESC_Telem: add telemdata.valid method to simplify code 2024-08-20 09:14:11 +10:00
Iampete1
64c2a1070f AP_ESC_Telem: SITL: fill in extended status values 2024-08-20 09:14:11 +10:00
Iampete1
be80f83679 AP_ESC_Telem: add getters for extended status values 2024-08-20 09:14:11 +10:00
Iampete1
34549cf0cb AP_ESC_Telem: add logging of power percentage 2024-08-07 11:23:35 +01:00
Andy Piper
f6984024c3 AP_ESC_Telem: use highest ESC temp rather than motor temp 2024-08-07 18:10:56 +10:00
Pradeep CK
0e53eb74df AP_ESC_Telem: addition of ESC extended status message
- Conditional compilation definition : AP_EXTENDED_ESC_TELEM_ENABLE
 - ESCX log structure
 - Update functionalities for ESCX status message
 - ESCX DroneCAN callback
2024-08-06 10:57:36 +10:00
rishabsingh3003
3ab3388752 AP_ESC_Telem: Add ifndef before defining ESC_TELEM_MAX_ESCS 2024-07-24 17:45:24 +10:00
Andy Piper
038735657a AP_ESC_Telem: add get_max_rpm_esc() 2024-06-26 17:36:54 +10:00
Maxim Buzdalov
0022c3aa72 AP_ESC_Telem: add support for Extended DShot Telemetry v2 2024-05-15 17:29:19 +10:00
aditya
9abcd6b7ca AP_ESC_TELEM: solved the logical error in grouping of escs into 4 2024-04-24 08:10:02 +09:00
Peter Barker
d0a7b54e61 AP_ESC_Telem: move defaulting of HAL_WITH_ESC_TELEM for periph 2024-03-05 12:37:40 +11:00
Maxim Buzdalov
0ede7f5075 AP_ESC_Telem: replace selected repeated indexing with references 2024-02-25 10:15:39 +11:00
Maxim Buzdalov
58d82000db AP_ESC_Telem: split logging and invalidation, deduplicate micros64() 2024-02-25 10:15:39 +11:00
Maxim Buzdalov
8a576f884e AP_ESC_Telem: remove redundant initialization 2024-02-25 10:15:39 +11:00
Maxim Buzdalov
5329ab8d92 AP_ESC_Telem: cleanup whitespace 2024-02-25 10:15:39 +11:00
Maxim Buzdalov
4e280795b2 AP_ESC_Telem: for RPM, log NaN instead of 0 when there are no measurements 2024-02-25 10:15:39 +11:00
Peter Barker
a7b658c260 AP_ESC_Telem: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Maxim Buzdalov
30146affa5 AP_ESC_Telem: Log RPM and raw RPM values as floats 2024-01-14 12:43:18 -08:00
Peter Barker
a2182f7c4b AP_ESC_Telem: add missing include 2024-01-11 15:29:54 +11:00
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