Peter Barker
eead037513
AP_BattMonitor: remove unneeded include of Notify
2022-10-26 21:22:39 +11:00
Tom Pittenger
812128125b
AP_BattMonitor: add set_temperature() by external temperature sources/libraries
2022-10-18 10:05:31 +11:00
jackhong12
4a4f361a17
all: use CLASS_NO_COPY() macro
2022-10-04 11:23:04 +11:00
Joshua Henderson
b26e37d652
AP_BattMonitor: fix Rotoye Temperature Monitoring
2022-09-20 09:43:25 +10:00
Joshua Henderson
a93b887f5f
AP_BattMonitor: move read_block up to SMBus base class
2022-08-30 09:09:54 +10:00
TunaLobster
aa2c6b8d17
AP_BattMonitor: Add macros for Fuel options
...
Adds macros for FuelFlow, FuelLevel_PWM, and FuelLevel_Analog. The features are enabled on all 2MB boards.
2022-08-16 09:36:31 +10:00
TunaLobster
6733f75542
AP_BattMonitor: Add Fuel Level Analog driver
2022-08-16 09:36:31 +10:00
Iampete1
6e6fcf4880
AP_BattMonitor: params always use set method
2022-08-03 13:43:48 +01:00
Andrew Tridgell
ba10c0ae42
AP_BattMonitor: make healthy() check all configured monitors
...
GCS reporting for SYS_STATUS should check all healthy, not just first
backend
2022-06-24 11:13:16 +10:00
Andrew Tridgell
93ee9a4ac1
AP_BattMonitor: allow INA2xx battery monitors to be powered after boot
...
the device doesn't show up till main battery is connected, so we need
this change to allow for separate avionics battery and main battery
with avionics battery powered on first
2022-06-24 11:13:16 +10:00
Andrew Tridgell
9a6fb19208
AP_BattMonitor: report arming unhealthy if backend unhealthy
...
important for i2c based battery backends
2022-06-24 11:13:16 +10:00
Peter Barker
6c377b2dcd
AP_BattMonitor: tidy includes
2022-05-03 09:14:58 +10:00
Peter Barker
2c0f52a8b7
AP_BattMonitor: zero-terminate strings in caller rather than read_block
...
It was noted that we did not increment the return value bufflen when
adding zero. This is an ambiguity in the function declaration; if we
are told to add a zero should the return value be like strnlen (does not
include terminating null character) or read (includes all bytes used in
return buffer).
This PR makes it a non-issue by ensuring string null termination in the
caller and removing the append_zero parameter.
2022-05-03 07:11:45 +10:00
Peter Barker
c2bf79d3f3
AP_BattMonitor: add PARAMETER CONVERSION comments
2022-04-28 10:17:11 +10:00
Andrew Tridgell
ce27ec2276
AP_BattMonitor: fixed battery remaining of sum battery
...
and move to common function for update_consumed()
2022-03-23 20:21:38 +11:00
Andrew Tridgell
9c067f360f
AP_BattMonitor: added option to send resting voltage to GCS
2022-03-22 11:12:54 +11:00
murata
9d321c5c31
AP_BattMonitor: Change from division to multiplication
2022-03-16 18:41:52 +11:00
Henry Wurzburg
f5766bb098
AP_BattMonitor: update name of type 10 to Sum of Selected Monitors
2022-02-26 08:31:24 +09:00
Joshua Henderson
1cf31dc25b
AP_BattMonitor: fix UAVCAN param index for varptr
2022-02-11 22:17:18 +09:00
Joshua Henderson
ec1f5e39b4
AP_BattMonitor: add documentation for UAVCAN params
2022-02-11 22:17:18 +09:00
murata
b3dd61656d
AP_BattMonitor: Remove meaningless semicolons
2022-02-07 08:27:34 +09:00
Hwurzburg
95e074a7bc
AP_BattMonitor: update option names in BATTMonitor in prep for expansion
2022-02-01 12:35:03 +11:00
Joshua Henderson
90744e08e1
AP_BattMonitor: UAVCAN switch to CURR_MULT
2022-01-25 13:55:31 +09:00
Hwurzburg
45e8cdea70
AP_BatteryMonitor: add current scaler for UAVCAN
2022-01-25 10:37:00 +11:00
Peter Barker
a894b93762
AP_BattMonitor: make C_TO_KELVIN a function macro; create KELVIN_TO_C
...
These are in celsius
2022-01-13 18:31:46 +11:00
Andrew Tridgell
fa2ae44926
AP_BattMonitor: fixed a segv with BATT_MONITOR=14
...
this causes a hang on boot on some boards
2021-12-29 10:51:35 +11:00
arBalasquide
10b4eebce4
AP_BattMonitor: Add calculate_mah, add unit tests
2021-12-22 07:52:03 +11:00
Shiv Tyagi
c34301d925
AP_BattMonitor: remove MPPT_PacketDigital from Type enum
...
we have removed AP_BattMonitor_MPPT_PacketDigital, hence this should be removed too
2021-12-17 20:24:25 +09:00
Shiv Tyagi
b34a7e46a8
AP_BatteryMonitor: remove AP_BattMonitor_MPPT_PacketDigital class
...
since latest versions of PacketDigital MPPT support UAVCAN, we can remove this older class
2021-12-16 09:39:43 +09:00
Hwurzburg
38e8e15200
AP_BattMonitor: change UAVCAN in metadata to DroneCAN
2021-12-15 09:53:21 +11:00
Josh Henderson
d79a9b7497
AP_BattMonitor: use SOC 127 as an invalid SOC flag
2021-12-14 09:11:48 +09:00
Peter Barker
70d98336bc
AP_BattMonitor: make logging dependent on HAL_LOGGING_ENABLED not HAL_BUILD_AP_PERIPH
...
We have logging on some periphs now
2021-12-14 10:34:06 +11:00
Randy Mackay
dea7e969bd
AP_BattMonitor_UAVCAN: re-format text based fault reporting and add get_mavlink_fault_bitmask
2021-12-07 02:12:06 -08:00
Tom Pittenger
1724d4911d
AP_BattMonitor: add UAVCAN MPPT PacketDigital driver
2021-12-07 02:12:06 -08:00
Andrew Tridgell
42412b2a60
AP_BattMonitor: added VLT_OFFSET for analog
...
useful for diode bias in voltage monitors
thanks to Charles from ASW and Jeff Wurzbach
2021-11-17 19:09:40 +11:00
Josh Henderson
fb28b39206
AP_BattMonitor: remove old parameter conversion to allow setting BATT_MONITOR to 0
2021-11-16 11:58:01 +11:00
Andrew Tridgell
75dfa6bae4
AP_BattMonitor: support other INA2xx battery monitors
...
added parameters for I2C bus and address. Tested on INA231 and INA226
This allows any 2M flash board to use an INA2xx battery monitor
2021-11-05 14:30:43 +11:00
Iampete1
73fb871695
AP_BatteryMoniter: combine pointer loaded param tables
2021-11-02 11:12:57 +11:00
Iampete1
7d4f305f20
AP_BatteryMoniter: add mask param to sum battery backend.
2021-11-02 11:12:57 +11:00
Andy Piper
70b02aeadf
AP_BattMonitor: convert APM_BUILD_COPTER_OR_HELI() to APM_BUILD_COPTER_OR_HELI
2021-10-26 11:42:12 +11:00
Randy Mackay
1bdfe8ad55
AP_BattMonitor: fixups from peer review
2021-10-19 01:30:51 -04:00
Randy Mackay
d3c8a5e85f
AP_BattMonitor: add torqeedo battery monitor
2021-10-19 01:30:51 -04:00
李孟晓
e5efc52324
AP_BattMonitor: Add support for BatteryInfoAux message
2021-10-13 18:44:05 +11:00
李孟晓
bf1a17825c
AP_BattMonitor: Provide the time remaining
2021-10-13 18:44:05 +11:00
Andrew Tridgell
281b8eb234
AP_BattMonitor: support LTC2946 I2C battery monitoring
2021-10-12 15:47:51 +11:00
Andrew Tridgell
2903e10fc0
AP_BattMonitor: added INA231 backend
...
only enabled via hwdef.dat for now
2021-10-12 15:47:51 +11:00
Josh Henderson
ca568953d9
AP_BattMonitor: capacity_remaining_pct add checks for healthy status and has_current
2021-10-07 22:16:02 +11:00
Iampete1
19f66803ff
AP_BatteryMonitor: Analog: check valid pin
2021-10-06 18:42:51 +11:00
Gone4Dirt
1d02ac768d
AP_BattMonitor: Add APM_BUILD_Heli
2021-09-29 19:55:48 +10:00
Iampete1
69624b1c1b
AP_BatteryMoniter: add plane Loiter to QLand failsafe action
2021-09-28 09:31:13 +10:00
Peter Barker
f71b4ec568
AP_BattMonitor: rename GENERATOR_ENABLED to HAL_GENERATOR_ENABLED
2021-09-26 19:24:09 +10:00
Peter Barker
b18bdb80d6
AP_BattMonitor: move from HAL_NO_GCS to HAL_GCS_ENABLED
2021-09-22 21:37:00 +10:00
Tatsuya Yamaguchi
1dcc5c3030
AP_BattMonitor: cope with AP_BATT_MONITOR_MAX_INSTANCES < 9
2021-09-22 18:58:12 +10:00
Willian Galvani
08b33954db
AP_BattMonitor_Analog: add default PM definitions for the Navigator Board
2021-09-14 09:21:42 +10:00
Willian Galvani
2e5b689196
AP_BattMonitor_Analog: allow per-board setting of CURR_AMP_OFFSET
2021-09-14 09:21:42 +10:00
Mohammad Hefny
bd099b3910
AP_Batt: link to battery monitor
2021-09-10 08:17:37 +10:00
Willian Galvani
1057161f88
AP_BattMonitor_logging: update to use capacity_remaining_pct() as a bool
2021-09-08 17:17:41 +10:00
Willian Galvani
9206599e6c
AP_BattMonitor_UAVCAN: update to use capacity_remaining_pct() as a bool
2021-09-08 17:17:41 +10:00
Willian Galvani
207723319b
AP_BattMonitor_Backend: change capacity_remaining_pct() to a bool
2021-09-08 17:17:41 +10:00
Willian Galvani
735e2ab651
AP_BattMonitor: change capacity_remaining_pct() to a bool
2021-09-08 17:17:41 +10:00
Andrew Tridgell
a2790f57c0
AP_BattMonitor: mark logger Write() calls as streaming where appropriate
2021-08-18 10:20:03 +10:00
Tom Pittenger
00cc8a4042
AP_BattMonitor: fix mppt sequence bug
...
closes https://github.com/ArduPilot/ardupilot/issues/18283
2021-08-12 14:37:04 +10:00
Andrew Tridgell
bbfd2e962e
AP_BattMonitor: mark log messages as streaming
2021-08-03 10:23:36 +10:00
Josh Henderson
289264f1dd
AP_BattMonitor: move analog parameters to subgroupvarptr
2021-08-03 09:36:26 +10:00
Josh Henderson
e37efa45de
AP_BattMonitor: add SMBus address param and create SMBus subtree
2021-08-03 09:36:26 +10:00
Iampete1
cea54c48cd
AP_BattMoniter: add Auto RTL option
2021-07-27 09:00:11 +09:00
bugobliterator
e553acd3e3
AP_BattMonitor: use separate register_driver method while contructing CAN Driver
2021-07-23 16:01:29 +10:00
Willian Galvani
9083c97acf
AP_BattMonitor: add Navigator to pins metadata
2021-07-19 12:21:40 -07:00
Josh Henderson
84fb03cb79
AP_BattMonitor: SMBus remove unused bool returns
2021-07-18 16:13:06 -07:00
Josh Henderson
0d64782220
AP_BattMonitor: remove temp var for SMBus read_full_charge_capacity
2021-07-18 16:13:06 -07:00
Josh Henderson
8af12608df
AP_BattMonitor: make NeoDesign obey SMBUS_ENABLE
2021-07-18 15:16:57 -07:00
Michelle Rossouw
ad2aca4900
AP_BattMonitor: Add blimp param frame values
2021-07-06 14:56:02 +10:00
Peter Barker
819c331acd
AP_BattMonitor: correct static_assert call
2021-06-28 11:05:00 +09:00
Michael du Breuil
0de9d3e759
AP_BattMonitor: Rearrange battery parameters to reduce memory usage
...
Saves 8 bytes per Params instance, which we have 9 of on every vehicle,
for a total saving of 72 bytes
2021-06-22 10:08:02 +10:00
Iampete1
cab8274690
AP_BattMoniter: log in Ah and Wh, add percentage to log
2021-06-22 09:19:40 +10:00
Iampete1
8ea9803193
AP_BatteryMoniter: fix mah to wah conversion
2021-06-22 09:19:40 +10:00
Andy Piper
3e6d8357e9
AP_BattMonitor: zero consumption total before recalculating
...
add reset function to ESC backend.
2021-06-16 17:48:47 +10:00
Peter Barker
278dc4a09b
AP_BattMonitor: add cells 13 and 14 for SITL only
...
Allows for testing higher-cell-count scenarios
2021-06-15 09:46:26 +10:00
Peter Barker
bf10b454d1
AP_BattMonitor: add assertion to avoid memory over-read
2021-06-15 09:46:26 +10:00
Peter Barker
bf9937489b
AP_BattMonitor: switch to Log_Write for BCL2
...
Just for the flash savings on smaller boards
2021-06-15 09:46:26 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
85666959ea
AP_BattMonitor: Increase the max. nr. of supported battery cells from 12 to 14
...
Uses a second message, because the original message does not support any more fields
2021-06-15 09:46:26 +10:00
Tom Pittenger
adccc3deb7
AP_BattMonitor: add support for AP_Periph MPPT driver
2021-06-09 18:36:18 +10:00
李孟晓
27089b4d2b
AP_BattMonitor: Fix the comment of BATTx_OPTIONS
2021-06-08 11:16:19 +10:00
Josh Henderson
80a17cb97f
AP_BattMonitor: get Mavlink charge state
2021-06-08 09:27:13 +10:00
James O'Shannessy
89e4df485a
AP_BattMonitor: Record and report UAVCAN Battery Info temperature correctly
2021-06-01 12:35:24 +10:00
Andy Piper
71e7f7e476
AP_BattMonitor: refector to use AP_ESC_Telem
...
rename AP_BattMonitor_BLHeliESC -> AP_BattMonitor_ESC
record volts, amps and consumption as floats
Correct ESC-telemetry-based voltage and temperature (<amilcar.lucas@iav.de>)
Correct ESC-telemetry-based voltage and temperature when less than 12 ESCs are used (<amilcar.lucas@iav.de>)
fix jumps in consumed current (<amilcar.lucas@iav.de>)
Implement temperature readings (<amilcar.lucas@iav.de>)
Fix temperature scaling (<amilcar.lucas@iav.de>)
2021-05-12 17:01:11 +10:00
Tom Pittenger
b62ab14791
AP_BattMonitor: prepare MPPT driver for AP_Periph
2021-04-28 19:22:53 -07:00
Tom Pittenger
a7f81c838f
AP_BattMonitor: make virtual Backend.init() optional to fix CANDriver.init(uint8, uint8) ambiguitiy
2021-04-28 19:22:53 -07:00
Tom Pittenger
a365e18420
AP_BattMonitor: add MPPT PacketDigital driver
2021-04-28 19:22:53 -07:00
Iampete1
9fdceeded3
AP_BattMoniter: add reset remaining per-instance rename existing to _mask
2021-03-31 19:21:59 +11:00
Michael du Breuil
e5de148ad1
AP_BattMonitor: Fix nullptr deref when resetting a battery
2021-03-30 09:47:44 +11:00
Peter Barker
84953c2e39
AP_BattMonitor: fix constexpr-and-MIN don't get along bug
...
lib/libArduCopter_libs.a(AP_BattMonitor_SMBus_NeoDesign.cpp.0.o): In function `AP_BattMonitor_SMBus_NeoDesign::timer()':
/home/pbarker/rc/ardupilot/build/sitl/../../libraries/AP_BattMonitor/AP_BattMonitor_SMBus_NeoDesign.cpp:27: undefined reference to `AP_BattMonitor_SMBus_NeoDesign::max_cell_count'
collect2: error: ld returned 1 exit status
2021-02-04 09:17:57 +11:00
Michael du Breuil
f854477efe
AP_BattMonitor: Limit the scope of possible corruption if the NeoDesigns gets a bad cell count
2021-02-03 19:21:39 +11:00
Patrick José Pereira
d190fff887
AP_BattMonitor: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
李孟晓
40dbb316c1
AP_BattMonitor: ignore SoC option for UAVCAN devices
2021-01-13 18:30:53 +11:00
Josh Henderson
e91953fa3b
AP_BattMonitor: move log BAT & BCL into AP_BattMonitor
2021-01-12 17:43:55 +11:00
Josh Henderson
dfa8e55622
AP_BattMonitor: add has_temperature method to Backend
2021-01-12 17:43:55 +11:00
李孟晓
aae2d0082d
AP_BattMonitor_UAVCAN: Fix issue with multiple batteries not working
2020-12-16 12:44:21 +11:00
Peter Barker
00a8a8fe8e
AP_BattMonitor: use enum class For Battery Failsafe
2020-12-07 15:20:14 +11:00
Tom Pittenger
171a10e117
AP_BattMonitor: Add support for multiple UAVCAN batteries from a single node
2020-11-25 14:20:53 +11:00