Badland 12S DroneCAN
Details on the parameters and DroneCAN messages used in the 12S Badland battery.
Parameters
packetdigital.storage_mode_start_time_s |
---|
Software Min: none Minimum value: 0 (disable storage mode) Maximum value: 2,592,000 (30 days) Default value: 604,800 (7 days) |
packetdigital.top_balancing_enabled |
If true, internal top balancing will be enabled Can only be true or false |
uavcan.node_id |
Software Min: none Minimum value: 0 (use dynamic id allocation) Maximum value: 127 Default value: 0 |
uavcan.pubp-com.packetdigital.LifetimeData |
Software Min: 0 or 5,000,000 microseconds (5 seconds) Minimum value: 0 Maximum value: 3,600,000,000 (1 hour) Default value: 0 |
uavcan.pubp-uavcan.equipment.power.BatteryInfo |
Software Min: 0 or 1,000,000 microseconds (1 second) Minimum value: 0 Maximum value: 3,600,000,000 (1 hour) Default value: 500,000 (half a second) |
ardupilot.equipment.power.BatteryInfoAux_enabled |
If true, the BatteryInfoAux message will be broadcasted. It will be broadcasted right after the BatteryInfo message. If the BatteryInfo message is disabled, the BatteryInfoAux message will also be disabled regardless.
Can only be true or false |
uavcan.pubp-ardupilot.equipment.power.BatteryContinuous |
Software Min: 0 or 500,000 microseconds (half a second) Minimum value: 0 Maximum value: 3,600,000,000 (1 hour) Default value: 500,000 (half a second) |
uavcan.pubp-ardupilot.equipment.power.BatteryPeriodic |
Software Min: 0 or 1,000,000 microseconds (1 second) Minimum value: 0 Maximum value: 3,600,000,000 (1 hour) Default value: 5,000,000 (5 seconds) |
uavcan.pubp-ardupilot.equipment.power.BatteryCells |
Software Min: 0 or 1,000,000 microseconds (1 second) Minimum value: 0 Maximum value: 3,600,000,000 (1 hour) Default value: 0 |
Min/Max Details
Min/Max |
---|
A regular min/max presented in the DroneCAN guide. Values entered cannot be outside this. |
Software Min: |
A software enforced minimum that does not apply to 0. This is different from the min presented in the DroneCAN guide. Any nonzero value entered which is lower than Software Min will be treated as Software Min. The DroneCAN gui will still show the original entered value but internally Software Min is used. You can still disable a message by setting it to 0 if the other min allows. |
Broadcast Messages
ardupilot.equipment.power.BatteryContinuous - 20010 |
---|
Battery data to be sent continously float16 temperature_cells # [Celsius] float16 temperature_pcb # [Celsius] float16 temperature_other # [Celsius] float32 current # [Amp] float32 voltage # [Volt] float16 state_of_charge # [%] float32 capacity_consumed # [Amp hour] uint8 slot_id # uint32 status_flags # uint32 STATUS_FLAG_READY_TO_USE = 1 uint32 STATUS_FLAG_CHARGING = 2 uint32 STATUS_FLAG_CELL_BALANCING = 4 uint32 STATUS_FLAG_FAULT_CELL_IMBALANCE = 8 uint32 STATUS_FLAG_AUTO_DISCHARGING = 16 uint32 STATUS_FLAG_REQUIRES_SERVICE = 32 uint32 STATUS_FLAG_BAD_BATTERY = 64 uint32 STATUS_FLAG_PROTECTIONS_ENABLED = 128 uint32 STATUS_FLAG_FAULT_PROTECTION_SYSTEM = 256 uint32 STATUS_FLAG_FAULT_OVER_VOLT = 512 uint32 STATUS_FLAG_FAULT_UNDER_VOLT = 1024 uint32 STATUS_FLAG_FAULT_OVER_TEMP = 2048 uint32 STATUS_FLAG_FAULT_UNDER_TEMP = 4096 uint32 STATUS_FLAG_FAULT_OVER_CURRENT = 8192 uint32 STATUS_FLAG_FAULT_SHORT_CIRCUIT = 16384 uint32 STATUS_FLAG_FAULT_INCOMPATIBLE_VOLTAGE = 32768 uint32 STATUS_FLAG_FAULT_INCOMPATIBLE_FIRMWARE = 65536 uint32 STATUS_FLAG_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION = 131072 uint32 STATUS_FLAG_CAPACITY_RELATIVE_TO_FULL = 262144 |
ardupilot.equipment.power.BatteryPeriodic - 20011 |
Battery data to be sent statically upon request or periodically at a low rate uint8[<=50] name # uint8[<=32] serial_number # uint8[<=9] manufacture_date # uint8 cells_in_series # uint16 cycle_count # uint8 state_of_health # [%] float16 nominal_voltage # [Volt] float16 discharge_minimum_voltage # [Volt] float16 charging_minimum_voltage # [Volt] float16 charging_maximum_voltage # [Volt] float32 charging_maximum_current # [Amp] float32 discharge_maximum_current # [Amp] float32 discharge_maximum_burst_current # [Amp] float32 full_charge_capacity # [Amp hour] |
ardupilot.equipment.power.BatteryCells - 20012 |
Battery cell voltages. Rate set by parameter on smart battery (default off) float16[<=24] voltages # [Volt] uint16 index # Index of the first cell in the array, index 0 is cells at array indices 0-23, index 24 is cells at array indices 24-47, etc. |
uavcan.protocol.NodeStatus - 341 (Link) |
com.packetdigital.LifetimeData - 20901 |
https://packetdigital.egnyte.com/app/index.do#storage/file/13a8d477-af88-4176-9639-2fb641332dca frequency: set by parameter |
uavcan.equipment.power.BatteryInfo - 1092 (Link) |
frequency: set by parameter |
ardupilot.equipment.power.BatteryInfoAux - 20004(Link) |
frequency: same frequency as BatteryInfo, but can be separately disabled with a parameter if BatteryInfo is disabled, this message will be disabled regardless |
uavcan.protocol.dynamic_node_id.Allocation |
This is a message used for the dynamic node allocation, but I assume the user doesn’t need to be told about that. |