CAN PDB Configuration Guide (ArduPilot)
This chapter applies to scenarios where the CAN PDB is used with the ArduPilot stack (controllers running ArduPilot firmware).
Enabling Voltage and Current Detection
To enable voltage and current detection, you need to configure the controller parameters. Connect the controller to the MissionPlanner ground station, set the following parameters in the Full Parameter List, and restart the controller after writing the parameters:

CAN_P1_DRIVER set to 1
CAN_P2_DRIVER set to 1
BATT1_MONITOR set to 8TIP
For ArduPilot firmware versions below 4.6, set BATT_MONITOR to 8.
Viewing Power Information

Custom Configuration
The CAN PDB provides 7 parameters for users to customize:
BATTERY_ID // Battery ID, Invalid
CAN_NODE_ID // CAN Node ID
CELL_SERIES_NUM // Number of battery cells, default value is 0 (automatic recognition), used to estimate battery percentage.
CELL_FULL_VOLTAGE // Full voltage of a single cell, used to estimate battery percentage.
CELL_EMPTY_VOLTAGE // Empty voltage of a single cell, used to estimate battery percentage.
CALIBRATION_PARAM // Calibration status identifier; a value of 1 indicates calibrated (read-only, cannot be written).
USE_TMP112 // Temperature sensor, default value is 1 (enabled); set to 0 to disable.NOTE
Under normal circumstances, the default parameters can meet the needs of most users. Do not modify them unless necessary.
Modifying Parameters
- Connect the controller to the MissionPlanner ground station.
- Navigate to the Configuration > Optional Hardware > Dronecan/UAVCAN Setup interface.
- Click "mavlink-can1" and locate the CAN PMU Information section.

- Find and set the parameters to be modified, save the settings, then restart the controller.

High-Voltage (HV) Battery Setup
Take a 6S battery pack (full voltage of a single cell: 4.35V, empty voltage of a single cell: 3.3V) as an example. Set the following parameters in the CAN PDB parameter list:
CELL_SERIES_NUM = 6
CELL_FULL_VOLTAGE = 4350
CELL_EMPTY_VOLTAGE = 3300Click "Write params (Write Parameters)", then restart the controller.

