Commit Graph

55 Commits

Author SHA1 Message Date
Peter Barker 85f89812d5 AP_Generator: avoid use of int16_t-read 2024-07-02 10:13:24 +10:00
Andrew Tridgell c70c8657bc AP_Generator: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Iampete1 8a06ee4cf6 AP_Gernerator: IE 2400: MAV_SEVERITY level depends on error code 2024-03-12 11:05:21 +11:00
Peter Barker c2f77d0593 AP_Generator: tidy RichenPower defines 2024-02-20 09:27:43 +11:00
Peter Barker 9213eef56c AP_Generator: add ASSERT_STORAGE_SIZE macro
saves havin gto name the dummy variable yourself
2024-01-22 22:44:05 +11:00
Peter Barker 52c806e32e AP_Generator: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Peter Barker 82fe13bc00 AP_Generator: correct compilation if GCS_SEND_TEXT not available 2024-01-04 20:48:23 +11:00
Iampete1 a00b6b6f86 AP_Gernerator: FuelCell: rework error check to give error cleared msg 2023-11-28 11:27:14 +11:00
Iampete1 3b3c94ea07 AP_Generator: IE_2400: update low and critial error ranges for V2 protocol 2023-11-28 11:27:14 +11:00
Iampete1 36dd720e78 AP_Generator: IE 2400: fix V2 low and critical errors and add warnings 2023-11-28 11:27:14 +11:00
Iampete1 c91407d662 AP_Generator: IE 2400: only return custom msg if error is critial or low severity 2023-11-28 11:27:14 +11:00
Iampete1 c861e15853 AP_Gernerator: IE_2400: lengthen message buffer and print error num 2023-11-28 11:27:14 +11:00
Iampete1 90f7ed3410 AP_Generator: Add support for IE V2 protocol 2023-11-28 11:27:14 +11:00
Mykhailo Kuznietsov 3acd0b3817 AP_Generator: Fix some typos
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Iampete1 f9c8ad8de8 AP_Generator: IE 650/800: does have fuel remaining 2023-09-26 10:47:50 +10:00
Peter Barker 4791e6f367 AP_Generator: use HAL_LOGGING_ENABLED 2023-09-23 13:59:42 +10:00
Peter Barker eb6f3f5135 AP_Generator: allow more libraries to compile with no HAL_GCS_ENABLED 2023-09-05 22:23:51 +10:00
Peter Barker 2ce61cce58 AP_Generator: rename generator define to fix feature extraction
pattern-matching requires a regular pattern.  Renaming the class would be bad, so  just rename the define
2023-08-16 17:35:59 +10:00
Peter Barker 41f622f892 AP_Generator: use minimize_features.inc for more features 2023-06-06 10:14:02 +10:00
Peter Barker 1e516a4dcb AP_Generator: turn RichenPower on on 2MB boards 2023-03-22 18:06:31 +11:00
Peter Barker 191e5eb9c9 AP_Generator: correct config boards include
Important to include AP_HAL_Boards.h directly, rather than relying on someone else having done it or getting it transitively
2023-03-19 09:08:41 +11:00
Peter Barker a32180f709 AP_Generator: rename fuel_remain_pct to fuel_remain_scale 2023-03-15 19:08:18 +11:00
Peter Barker b070217308 AP_Generator: add defines for generator backends 2023-03-14 10:34:05 +11:00
Peter Barker 89a77f84f1 AP_Generator: specify HAL_GENERATOR_ENABLED for periph in chibios_hwdef.py 2023-03-12 09:35:35 +11:00
Peter Barker 85501f8219 AP_BattMonitor: add defines for all battery backends 2023-03-10 08:48:24 +11:00
Peter Barker adc4bf66f8 AP_Generator: add and use AP_Generator_config.h 2023-03-10 08:48:24 +11:00
Peter Barker aa95dfb15e AP_Generator: rename has_fuel_remaining to has_fuel_remaining_pct 2023-02-02 16:16:05 +11:00
Peter Barker 9ae0eda879 AP_Generator: tidy includes of SRV_Channel.h 2023-01-25 22:30:55 +11:00
Peter Barker 6f3305a405 AP_Generator: remove GCS.h from header files 2022-11-16 18:29:07 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Peter Barker 9acf4c88c8 AP_Generator: add AP_GENERATOR_RICHENPOWER_ENABLED 2022-07-19 09:09:05 +10:00
Peter Barker c5f1d1db28 AP_Generator: inhibit maintenance warning based on GEN_OPTIONS bit 2022-05-25 18:17:05 +10:00
Peter Barker bc0befc737 AP_Generator: mask MaintenanceRequired out from error bits in prearm
Turns out the generator sets this bit when it reaches the
maintenance-required state.

Mask it out from the error bits so the user can still fly.

Add some periodically-run code to complain about maintenance-required,
separate from the prearm checks.
2022-05-25 18:17:05 +10:00
murata be89285d10 AP_Generator: Change from division to multiplication 2022-03-16 18:41:52 +11:00
Andy Piper eb259971e0 AP_Generator: nuke clang warnings 2022-03-03 16:34:14 +11:00
Peter Barker 88b8a7d64e AP_Generator: include cleanups 2022-03-01 11:21:33 +11:00
Peter Barker f25c1ef954 AP_Generator: reserve ID for Loweheiser mavlink-connected generator 2022-01-25 09:44:41 +11:00
Iampete1 f0bc041b86 AP_Gererator: IE Fuel Cell: reset health timer at init 2021-10-08 19:34:34 -04:00
Peter Barker 5433cbe9a5 AP_Generator: rename GENERATOR_ENABLED to HAL_GENERATOR_ENABLED 2021-09-26 19:24:09 +10:00
Gone4Dirt 30589f9b29 AP_Generator: Make unhealthy driver message persist 2021-09-21 11:14:03 +10:00
Iampete1 34f5b800b6 AP_Generator: atof to strtof 2021-09-15 17:36:12 +10:00
Andrew Tridgell 17b91903ed AP_Generator: mark logger Write() calls as streaming where appropriate 2021-08-18 10:20:03 +10:00
Patrick José Pereira 9965cbb79a AP_Generator: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Gone4Dirt c96ca2483e AP_Generator: Make sensor unhealthy msg consistent with other sensors 2021-01-06 09:59:34 +11:00
Peter Barker b21fdb7743 AP_Generator: use enum class For Battery Failsafe 2020-12-07 15:20:14 +11:00
Tom Pittenger 87813b9401 AP_Generator: AP_Periph should not include Generator by default 2020-11-25 14:20:53 +11:00
Gone4Dirt 8cfe4fc9f7 AP_Generator: Split into frontend-backend and add IE fuel cells 2020-11-24 12:54:52 +11:00
Peter Barker 10e0646251 AP_Generator: remove unused variables 2020-10-01 21:13:20 +10:00
Peter Barker c8a368d896 AP_Generator: update prearm checks, fill new GENERATOR_STATUS fields
AP_Generator_Richenpower: only update servo channel while disarmed

AP_Generator_Richenpower: move warning for servo output channel to prearm checks

AP_Generator: state is simply off if RPM is zero

AP_Generator: send runtime and seconds-until-maintenance in GENERATOR_STATUS

AP_Generator_RichenPower: correct runtime seconds/minutes position in packets

AP_Generator_RichenPower: correct and expand use of mode packet entry

AP_Generator_RichenPower: fail prearm check if generator not seen

AP_Generator_RichenPower: make prearm check for needing maintenance  warn-only

AP_Generator_RichenPower: rename runstate to pilot_desired_runstate

AP_Generator_RichenPower: tweak decoding of time-to-maintenance

AP_Generator: add hysteresis for warmup/cooldown in IDLE

AP_Generator: stop generator in case of vehicle crash

AP_Generator: generator must go through idle from run to stop

AP_Generator: emit statustext when generator configured but not present

AP_Generator: do not log if LOG_BITMASK is zero

AP_Generator: do not warn user if generator configured but not present

They won't be able to start the generator if we can't see it.

Don't update the runstate if no readings seen.

AP_Generator: do not send generator status if no readings seen
2020-08-05 16:26:19 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 47bf016a62 AP_Generator: adapt to upstream mavlink changes 2020-07-29 14:34:22 +10:00