BatMon: Smartify your drone battery

Live now on Kickstarter BatMon

Batteries are an integral part of drones. However, hobbyists and other custom drone manufacturers have been using batteries in rather interesting ways. They are either too destructive on the battery – draining it beyond recommended limits – or too conservative and not utilizing the entire battery completely.

Smart batteries are batteries with multiple sensors and a processing unit to find the accurate remaining capacity of the battery and its health. THATS IT!! THATS ALL IT DOES..

BatMon enables you to build a smart battery from your existing “Dumb Batteries”. You can assemble BatMon to your batteries and see battery health and status in an OLED screen. BatMon can talk SMBUS protocol to communicate real time battery information to your favorite platform such as Arduino or autopilots such as ArduPilot and PX4.

  • Battery voltage doesn’t accurately show a battery’s remaining capacity
  • It is impossible to discharge batteries to the optimal capacity without knowing accurate battery remaining. 
  • Its time consuming to check and manage large number of batteries by plugging in voltmeter to each one
  • Features automated battery discharging to enhance battery longevity.
Finding battery capacity with a voltmeter is ancient technique

Lets do a simple experiment measuring voltage and current when you drain a battery. A circuit is shown below of the test setup.

Battery testing circuit

The graph below shows the voltage measured on a battery when it’s drained and stopped intermittently. Watch how the voltage rises and falls based on the load-on and load-off setting. What this means is the voltage cannot be used to find the capacity. 

Voltage and Current on a battery discharged from 100% to 0%

What’s worse is that the voltage changes with different constant load. The graph below shows the voltage of the same battery but at different current drain. The x-axis shows the voltage measured on the cell, and y-axis shows the true capacity remaining on the battery. The green line is at 1C, blue line at 6C and red at 16C. Watch how the same reading of 2.9 volt could represent different capacity remaining. 

Draining a battery at different current (C rate)

So, voltage alone cannot be used to find the charge state of a battery.

BatMon measures the voltage of the cell along with the instantaneous current to estimate the state of charge of the battery.

The voltage is measured using a high speed ADC. The current is calculated by measuring the voltage across a resistor(called a shunt resistor in this case). It’s a little tricky to calculate current though. We are interested in knowing the accumulated current drained through the battery, and not the instantaneous current. A traditional ADC measures the instantaneous value of a signal. Accumulated current is calculated using an integrating ADC which performs analog integration of the current providing an accurate sum of current.

Though BatMon logs the temperature of the battery, it does not use it to learn the changes of battery capacity at different temperatures. At least, not yet…

Though the concept of smart battery is decades old, a smart battery for drones has few differences. Smart batteries for ground robots and other electronic systems require an electronic cutoff to prevent overdrain/overcharge. However, most drones have very high power requirements and adding an additional power cutoff circuitry in a battery is heavy and introduces additional power loss.

Moreover, a smart battery shouldn’t be given the autonomy to switch off power. The autopilot should always be in charge of powering down the system. A worst case scenario that the autopilot should be able to command is a flight plan which destroys the battery, but saves the aircraft with a softer landing. Hence, BatMon does not have a cutoff mechanism. 

BatMon can be connected to development drone for displaying voltages and connecting to Autopilot

BatMon can be connected to the drone to visualize battery voltages and communicate individual cell voltages and current to the autopilot. However, this will not provide Smart Battery capabilities such as the ability to learn individual battery’s capacity over time and accurate battery remaining. 

BatMon mounted on a drone

BatMon can be integrated on multi-cell Lithium ion and Lithium Polymer batteries. There are currently two versions:

  • BatMon 2-6 for monitoring 2 to 6 cells 
  • BatMon 6-10 for monitoring 6 to 10 cells

The module can be easily shifted to newer battery pack after the first battery’s lifespan. The module supports two of the popular battery chemistry. Customized profiles for new batteries can be added on request.

When BatMon enabled smart batteries are connected on a drone and the data wires(SMBUS) are connected to the I2C lines of the autopilot, various parameters of the battery can be visualized on a ground station such as QGroundControl. Some of the parameters which are already available are 

  • Individual cell voltages
  • Battery temperature from different thermisters
  • Current
  • Estimated battery remaining

Few parameters such as cycle count and safety events such as overcurrent discharge can be read through a custom driver interface.

BatMon data on QGroundControl: Individual cell voltages of 6S cell during flight

Each cell in a multi-cell battery packs will have physical and chemical differences which results in slight changes of voltage and capacity in each of the cell. These differences over time can accumulate and result in performance and safety concerns for the pack. It is hence common for packs to be balanced by using the balanced lead. BatMon has an integrated cell-balancer which monitor these differences and equalize the pack so that you do not have to connect the balance leads for every charging cycle. 

Integrated auto cell-balancing for BatMon

This circuitry is also used to slowly discharge the battery to storage capacity after a predetermined time. Storing Lithium batteries at around 30% or lower significantly reduces the degradation of battery capacity over time. 

Conformal coated BatMon for humid environments (680). (Screen flickering due to high speed video)

Drones and robots are often used in high humidity environments where condensation and mist create problems for circuitry. BatMon is conformal coated to prevent humidity from damaging the circuit and continue to fly the mission. 

This is not an invitation to submerge the board. :) If moisture is present on the board, it should be cleaned with air spray to prevent water seeping into connectors and corroding them.

BatMon OLED is easily viewable in sunlight

Many field tests and drone flights are conducted outdoors and in bright sunlight. It’s important to read the battery information and decide whether to change the battery or select the right one to fly.

BatMon associates ID with each battery. A name can be associated with a unique ID

Managing large number of batteries are hard when you have to plug in voltmeter on each battery and calculate its remaining capacity. BatMon make it easy to find the battery charge. Each battery can be given a 64 bit unique ID and a human readable equivalent name for organizing batteries on different aircraft or projects. 

Custom cases can be built for BatMon or for the entire battery pack.  

Opensource case designs for BatMon

We know batteries have varying dimensions and users have different space constraints for a smart battery. Battery packs of various different sizes can be built using BatMon. 

Opensource case design for a 6S Smart Battery

Robust and lightweight custom battery cases can be print from ABS or PETG material. 

3D printed BatMon case for 6S 18650 battery

BatMon has been designed keeping ease of attachment to batteries and cases. Three mounting holes are available for screw attachment.  

Design concept for 3D printed case
Tools required to assemble BatMon into battery packs

BatMon can be assembled using the following tools:

  1.  High wattage soldering iron: Soldering the balance leads and power wires to pack
  2.  Heat shrink tubing: For wrapping the battery after packing BatMon
  3.  Hot air gun: For heating the heat shrink tubing
  4.  Exacto knife: Cleaning up the extra heat shrink tubing, cutting a hole around the buttons and the OLED monitor 
  • XT90-I connectors: Single connector for both power and SMBUS data
  • BatMon cases: Protection and a robust smart battery. This can be 3D printed 

We recommend using XT90-I connectors which have around 90 Amp current rating and integrated data pins. This is a seamless experience for using BatMon for both on-ground user-experience and in-flight data monitoring.  

XT90-I connectors provide a convenient option for both power and data

Rotoye is a startup based out of Atlanta and incubated at “The Farm”, a Comcast incubator. Our team believes that it’s time that smart battery are ubiquitous and used on every battery project. 

Rotoye is founded by alumni of Georgia Institute of Technology and have worked on both ground and flying robots in various projects. BatMon started as a fun project to provide monitoring for a safety critical research drone. However, it was soon clear that this was clearly a module that is missing in the current ecosystem. Though the functionality of the device is simple in theory, the wide variety of batteries, interfacing devboards, autopilots etc makes it a difficult module to build for every user. 

Rotoye believes that an open protocol revision is required for SMBUS to be future proof. SMBUS is over two decades old, but there are various aspects missing on this protocol needing additional parameters to be communicated in the bus for effective use. 

Each BatMon is currently build, hand assembled, calibrated and tested in our hardware incubator. Yes, it is very time consuming and laborious to places the more than hundred grain sized components on the board.

Placing and soldering SMD components on the board
Components placed on the board after applying the solder past
Boards are baked in the SMD oven.

Risks and challenges

Many sensors on a BatMon have to be calibrated for accuracy. We have conducted preliminary analysis of the overhead required to calibrate each BatMon boards. However, performing this for a few hundred boards could be more challenging than we estimate. In the worst case, this process would have to be optimized and a new calibration setup would have to be built. BatMon has been tested on both lithium ion and polymer batteries of few different sizes. However, if the Kickstarter is funded, BatMon will be used on varying battery sizes and chemistries. Our algorithms might need improvements and software tuning to make it work effectively. If this is the case, the board should be updated with newer firmware by the user.Learn about accountability on Kickstarter

Environmental commitments

Visit our Environmental Resources Center to learn how Kickstarter encourages sustainable practices.

Long-lasting design

Batmon boards have been made with durability in mind. These boards are designed with the intention to utilized on First-Person-View drone races. Although, we can’t guarantee to survive most of the direct impact crashes at 100mph, we have redesigned the boards for crashes and falls as much as we could: 1. SMD connectors are glued to PCB to prevent the connectors from tearing the copper pads from the PCB 2. Vias on the pads for SMD connectors to enhance adhesion of the connectors to PCB 3. A specific high surface area design for the heavy duty wire to board connection instead of a simple pad. This significantly increases adhesion of wires to the PCB. 4. The OLED display is protected with the casing and fairly robust unless a sharp object pierces it. 5. An opensource board casing for the batteries which have been iterated multiple times to refine the failure regions

Reusability and recyclability

BatMon boards are modular. If the boards are not damaged electrically or mechanically, they can be easily moved to a new battery.

Sustainable materials

BatMon utilizes ROHS compliant PCBs and components that are more environmentally friendly. However, we believe BatMon impacts the spiraling environmental cost of lithium battery manufacturing ( Currently most lithium batteries sold in the DIY and low volume products do not have a smart battery module. This results in the users deep-discharging the batteries resulting in reduced battery life. In fact, the difference in the usage(such as Depth-Of-Discharge) could change the lifespan of batteries by multiple orders of magnitude: BatMon allows batteries to be used for longer before they lose their capacity. This means you’ll have to throw your batteries away less often, and thus reduce the environmental footprint from battery manufacturing.The future is electric, but lithium and cobalt mining of batteries have significant environmental, social and economic impact. We should do everything to maximize the utility of these batteries.

Environmentally friendly factories

The PCB assembling will be performed in an hardware incubator space. We have always treated our team fairly, and as a startup would never be able to attract talent otherwise. The technician in charge of assembling has years of experience performing PCB assembly and reducing waste.

Sustainable Distribution

1. BatMon will be shipped to kickstarter backers from two locations: one in the US and one in Asia. All kickstarter orders will be assigned to one of these two locations based on distance and cost. This is a small optimization which we will do. 2. BatMon will be shipped in bagasse based packagingQuestions about this project? Check out the FAQ