Commit Graph

56 Commits

Author SHA1 Message Date
Andy Piper a52c375643 AP_ESC_Telem: ensure that EDTv2 only gets logged when telemetry is available 2024-12-11 18:14:34 +00:00
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 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
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
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
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
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
Tom Pittenger 9019fa2f8d AP_ESC_Telem: simplify AP_TemperatureSensor integration 2023-01-31 10:52:23 +11:00
Peter Barker f429aae09e AP_ESC_Telem: correct esc telem debug
wrong format specifier
2023-01-18 07:17:51 +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
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
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 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 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
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