Henry Wurzburg
85258153ac
AP_BattMonitor: update FS actions metadata with DO_RETURN_PATH_START
2024-12-17 09:34:49 +11:00
Thomas Watson
2f5be28378
AP_BattMonitor: INA3221: reallocate parameter indices
...
Hasn't been released yet so let's not add more conflicts.
2024-12-14 15:42:31 +11:00
Thomas Watson
49a3a9d220
AP_BattMonitor: add missing subgroup links to correct metadata gen
2024-12-14 15:42:31 +11:00
Thomas Watson
fb9119fac8
AP_BattMonitor: create table of used backend paramater indices
...
Hopefully makes it less likely for conflicts to happen and makes it
easier to find free indices.
2024-12-14 15:42:31 +11:00
Thomas Watson
190c3aa7ab
AP_BattMonitor: INA3221: fix up based on real experience
...
* correctly validate channel parameter and improve other parameter
access
* dynamically enable channels to avoid spending time converting unused
channels
* implement tracking of reading health
* correct reading scaling by using datasheet values
* accumulate measured current to track used mAh and Wh
* make configurable using #defines (and hwdef) for integrators
* correctly separate and lock frontend and backend state. Note that
_state of frontend can only be accessed in `read()` method.
2024-12-02 10:10:01 -06:00
Peter Barker
5bc3b629f4
AP_BattMonitor: add support for ina3221 triple-channel current/voltage sensor
2024-12-02 10:10:01 -06:00
Alfie Lockrey
8a6880711a
AP_Battery: include OPTIONS parameter on boards with SUM backend
...
Enable battx_options for periphs if useful.
Enable the options parameter for the battery monitor on AP_Periph devices if they could be useful - ie, battery summing is enabled and in use on a node with more than one source for battery inputs.
Only define options in a single place
Single definition for non periph builds or if AP_BATTERY_SUM_ENABLED
2024-11-20 08:52:51 +11:00
Thomas Watson
9f7ed65bc0
AP_BattMonitor: optimize DroneCAN subscription process
...
* remove unnecessary nullptr check, these are always called from an
initialized AP_DroneCAN so if it's nullptr something has gone
horrifically wrong
* pass in driver index instead of repeatedly calling function to get it
* simplify error handling; knowing exactly which allocation failed is not
super helpful and one failing likely means subsequent ones will too,
as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Pradeep CK
cc1ebe6529
AP_BattMonitor : update metadata for fuellevel param ranges
2024-11-12 09:22:21 +11:00
James O'Shannessy
2892483ea1
AP_BattMonitor: Fix documentation generating incorrect parameter name
...
Without this, parameter names are generated as eg. 'BATT2__ARM_VOLT'
2024-11-05 10:05:01 +09:00
Bob Long
11014cae06
AP_BattMonitor: add option minimum volt option
2024-10-01 10:05:01 +10:00
Peter Barker
0cd6e330a5
AP_BattMonitor: add more-specific prearm failure when SUM backend not available
2024-10-01 09:48:13 +10:00
Peter Barker
721a9b846e
AP_BattMonitor: print unhealthy message if battery backend not as expected
...
a backend which fails to allocate, or where the user has changed the backend type without rebooting will cause an "unhealthy" message to be emitted
2024-10-01 09:48:13 +10:00
Henry Wurzburg
4b5f490e9f
Tools:remove BATTRY_SUM from <1K builds
2024-10-01 09:48:13 +10:00
Peter Barker
8ee09c299e
AP_BattMonitor: add and use Battery backend internal-use-only flag
...
sometimes the information from a backend is very useful for logging, but not via telemetry.
Add an option bit to signify this
2024-08-08 09:12:08 +10:00
Peter Barker
d205e2e5cf
AP_BattMonitor: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Iampete1
600d9eb7a8
AP_BattMonitor: Sum: report average temperature
2024-07-30 11:00:49 +10:00
Iampete1
45647718cb
AP_BattMonitor: ESC: integrate consumed mah if not provided by ESC
2024-07-30 10:59:17 +10:00
Andrew Tridgell
60f582a6b2
AP_BattMonitor: support I2C INA231 battery monitor
2024-07-11 09:26:17 +10:00
Henry Wurzburg
a03ccd1a8a
AP_BattMonitor: make metadata more consistent
2024-07-02 11:34:29 +10:00
Iampete1
a9eb6051fa
AP_BatteryMonitor: add missing failsafe with no action
2024-07-02 09:54:36 +10:00
Peter Barker
029e0b15b3
AP_BattMonitor: avoid casting DroneCAN backend to incorrect type
...
- split get_type into allocated_type and configured_type
- check allocated type rather than configured type when looking at backends
Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Andrew Tridgell
4879cc24e6
AP_BattMonitor: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Iampete1
44bd77d49e
AP_BattMonitor: FuelLevel_Ananlog: set has_current true so capacity is reported
2024-05-21 10:07:48 +10:00
Iampete1
9026ce065a
AP_BattMonitor: ESC: add mask
2024-05-14 09:58:04 +10:00
Randy Mackay
e605f961f2
AP_BattMonitor: torqeedo support for multiple instances
2024-05-08 17:51:09 +10:00
Andrew Tridgell
a444004a8a
AP_BattMonitor: added MAX_AMPS and SHUNT parameters for INA239
...
allows for a wider range of current
2024-03-12 11:15:10 +11:00
Peter Barker
e15f9d3f39
AP_BattMonitor: tidy defines in scripting backend
2024-02-14 23:43:41 +11:00
Andrew Tridgell
6713a203f0
AP_BattMonitor: added temperature reading to INA2xx driver
2024-02-06 11:26:05 +11:00
Peter Barker
1f4c129341
AP_BattMonitor: add and use AP_BATTERY_ENABLED
2024-02-06 11:01:02 +11:00
TsuyoshiKawamura
8914e5585f
AP_BattMonitor: delete unnecessary underscore in description
2024-01-28 22:29:06 +11:00
Peter Barker
cddb58e105
AP_BattMonitor: allow compilation with HAL_LOGGING_ENABLED false
2024-01-17 18:25:55 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
bfab6e5ee7
AP_BattMonitor: Spell correction
2024-01-17 08:40:15 +09:00
Randy Mackay
dfd22aba32
AP_BattMonitor: support logging state-of-health percentage
...
Only DroneCAN backend implements this feature for now
2024-01-10 18:38:25 +11:00
Bob Long
fd855781d8
AP_BattMonitor: add scripting backend
...
AP_BattMonitor_Scripting: whitespace consistency
2024-01-09 07:53:59 +11:00
Andrew Tridgell
c48feefe23
AP_BattMonitor: fixed battery percentage with aux info
...
when we have aux battery information we had assumed the CAN device
would provide the battery remaining percentage. We should obey the "do
not use CAN SoC" with or without an AUX message
This fixes CAN battery monitors with a cell monitor
2023-11-27 13:02:46 +11:00
Tom Pittenger
6dcaf94c3d
AP_BattMon: add AP_BATTERY_WATT_MAX_ENABLED
2023-11-26 11:57:14 +11:00
Henry Wurzburg
36a66424e1
AP_BattMonitor:remove unused param from analog fuel level
2023-11-21 10:01:38 +11:00
Jonathan Loong
3f99891404
AP_BattMonitor: Merge in polynomial fit structure to FuelLevel_Analog
...
Update parameters and make current false
2023-11-15 10:52:10 +11:00
Jonathan Loong
5e61e4cdc5
AP_BattMonitor: Addition of AD7091R5 ADC I2C Read Driver
...
This is an ADC extender based on I2C which is used to read the current and voltage. Enable AD7091R5 in config.h which was reserved previously
2023-11-08 18:24:41 +11:00
Andrew Tridgell
aaa4e0268a
AP_BattMonitor: cope with InfoAux without nominal voltage
...
allows for reset of remaining charge from GCS or lua
2023-10-31 11:09:51 +11:00
Andrew Tridgell
532ab09c72
AP_BattMonitor: added option allowing InfoAux to be from different node
...
this allows the CAN node providing cell voltages to be a different CAN
node from the node providing the base current/voltage
2023-10-31 11:09:51 +11:00
Andrew Tridgell
7ce9febf9f
AP_BattMonitor: use a reference for AP::battery()
...
saves a small amount of flash
2023-10-31 11:09:51 +11:00
Andrew Tridgell
4d821b2c91
AP_BattMonitor: added get_cell_voltage() for scripting
2023-10-25 07:31:24 +11:00
Iampete1
816b92346e
AP_BattMonitor: DroneCAN: always have consumed energy
2023-10-17 11:13:26 +11:00
Mykhailo Kuznietsov
ff70921eca
AP_BattMonitor: Fix some typos
...
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Andrew Tridgell
65099d0626
Tools: allow Ohm units in parameters
2023-10-08 11:04:21 +11:00
Andrew Tridgell
e9fc3ab570
AP_BattMonitor: added SHUNT parameter to INS2xx driver
...
some vendors want different shunt resistors
2023-10-08 11:04:21 +11:00
AndKe
2030e6c9e2
SMBus :expanded SoloBMS to 6s
2023-09-26 10:17:02 +10:00
Peter Barker
7aea21bd40
AP_BattMonitor: log external temperature if available
2023-09-05 10:31:24 +10:00