Arduino Battery SMBus Reader

Introduction: Arduino Battery SMBus Reader

A simple SMBus reader for most smart batteries
Reads the data from the TI chip set used in many smart battery packs

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1:

The 2x 1K resistors on data and clock inputs can be removed if you can’t get data
This was added for protection during testing other batteries with USB connection.

Step 2:

Original code was downloaded some time ago and heavily modified for formatting on Nokia display and getting data from larger battery packs (up to 8S)

Included the libraries that I used as these seem to change over time and the original code won't

More details are displayed via the Arduino Serial Monitor

Note the cell voltage displays 3 digits
Eg 356=3.56 volts
Cy = Cycles
CC = Current Capacity
DC = Design Capacity
DV = Design Voltage
V = Current Voltage

Step 3:

Build a Tool Contest

Participated in the
Build a Tool Contest

Be the First to Share


    • Backyard Contest

      Backyard Contest
    • Silly Hats Speed Challenge

      Silly Hats Speed Challenge
    • Finish It Already Speed Challenge

      Finish It Already Speed Challenge

    2 Discussions


    Question 5 months ago on Introduction

    Hi PB The board you gave me for the coffee, I managed to break the 5110 display and got one form ebay but when I run the arduino I get all pixels on.
    Is the code here the same as what I have on this nano?
    I want to try uploading the program again with different contrast values.


    Answer 4 months ago

    Yes . It’s the same code. It looks like the Arduino isn’t talking to the Nokia display properly. Recheck all connections.
    Edit - great to see you got it working again