# Rotoye Batmon

Rotoye Batmon (opens new window) is a kit for adding smart battery functionality to off-the-shelf Lithium-Ion and LiPo batteries. It can be purchased as a standalone unit or as part of a factory-assembled smart-battery.


At time of writing you can only use Batmon by building a custom branch of PX4. Support in the codeline is pending PR approval (opens new window).

Rotoye Batmon Board

Pre-assembled Rotoye smart battery

# Purchase

Rotoye Store (opens new window): Batmon kits, custom smart-batteries, and accessories

# Wiring/Connections

The Rotoye Batmon system uses an XT-90 battery connector with I2C pins, and an opti-isolator board to transmit data.

Board connections

More details can be found here (opens new window)

# Software Setup

# Build PX4 Firmware

  1. Clone or download Rotoye's fork of PX4: (opens new window)
    git clone https://github.com/rotoye/PX4-Autopilot.git
    cd PX4-Autopilot
  2. Checkout the batmon_4.03 branch
    git fetch origin batmon_4.03
    git checkout batmon_4.03
  3. Build and upload the firmware for your target board

# Configure Parmeters

In QGroundControl:

  1. Set the following parameters:
    • BATx_SOURCE to External,
    • SENS_EN_BAT to true,
    • BAT_SMBUS_MODEL to 3:Rotoye
  2. Open the MAVLink Console (opens new window)
  3. Start the batt_smbus driver in the console. For example, to run two BatMons on the same bus:
    batt_smbus start -X -b 1 -a 11 # External bus 1, address 0x0b  
    batt_smbus start -X -b 1 -a 12 # External bus 1, address 0x0c

# Further Information

Quick Start Guide (opens new window) (Rotoye)