Skip to content

Rotoye Batmon

Rotoye Batmon 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.

Rotoye Batmon Board

Pre-assembled Rotoye smart battery

Where to Buy

Rotoye Store: Batmon kits, custom smart-batteries, and accessories


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

Software Setup

Build PX4 Firmware

  1. Clone or download Rotoye's fork of PX4:
    git clone
    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 Parameters

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
  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 (Rotoye)