Diagnose and repair your battery pack from the browser

Open Battery Information lets you talk to the BMS inside locked or dead power-tool batteries — no software to install, nothing to set up. Plug in an Arduino, flash the firmware, and read your battery from Chrome, Edge, Opera or Firefox.

Works in Chrome, Edge, Opera and Firefox on desktop. 100% in your browser — nothing is uploaded anywhere.

Why Open Battery Information?

This project aims to provide tools and information about various batteries in order to aid repair. It is very common for manufacturers to lock the BMS when a fault is detected, to protect the device and the user — an important safety feature. So when is it a problem? There is always a chance of false triggering of this protection, or the fault could have been temporary or even repaired. In that case it would be wasteful to throw out a perfectly good BMS just because its software says it is faulty.

This is the problem we want to solve.

Unlock dead batteries

Read status, charge cycles, and error codes from battery packs whose BMS has locked them out.

Web Serial, no drivers

Talks to your Arduino over the Web Serial API. No drivers, no cables beyond USB, no installs.

Modular design

Support for more modules and interfaces keeps growing — currently the Makita LXT pack via the Arduino OBI interface.

Private by design

Everything runs locally in your browser tab. No accounts, no telemetry, no data leaves your machine.

How it works

Three steps from plug-in to diagnosis.

Set up the hardware

Build the Arduino OBI interface and wire it to your battery, following the wiring guide.

Connect the board

Open OBI-1, pick your Arduino, and press Connect. The board resets and identifies itself automatically.

Read the battery

Insert a battery, press Read battery, and see cell voltages, temperatures, charge cycles, and status at a glance.

What you need

Check these before you start.

  • Chrome, Edge, Opera or Firefox on desktop Web Serial works in these browsers on desktop (Firefox 151+). Safari isn't supported.
  • An Arduino Uno with a USB cable A genuine or compatible Uno with the optiboot bootloader. The uploader flashes it automatically.
  • A supported battery Currently the Makita LXT 18 V packs (BL18xx / BL14xx) are supported via the Arduino OBI interface.
  • HTTPS or localhost Secure context is required for Web Serial. GitHub Pages provides HTTPS automatically.

Read this before you start

This tool reads and, on supported packs, modifies battery BMS data. Batteries store a lot of energy — always follow the upstream project's wiring guide and work safely. Incorrect wiring or use can damage the battery or the Arduino.

Use this software at your own risk. It is provided as open source (GPL-3.0) with no warranty. It is an independent project and is not affiliated with or endorsed by Makita.

See the upstream open-battery-information project for hardware details and documentation.

Frequently asked questions

Quick answers to the questions we hear most.

Is this the same as the desktop app?
Functionally, yes — this is a browser port of the desktop open-battery-information app. It uses the same Arduino firmware and the same module/interface architecture, so the hardware setup is identical.
Does my battery data leave my computer?
No. Everything runs locally in your browser tab. There are no servers, no accounts, and no analytics. Web Serial simply passes bytes between your browser and the Arduino over USB.
Which batteries are supported?
The Makita LXT module covers 18 V LXT packs (e.g. BL1815, BL1850, BL1860) and their 14.4 V siblings. Other packs can be added as new modules over time.
Why do I need to flash firmware first?
The Arduino needs the Open Battery Information firmware to talk to the battery BMS. The uploader in this repo flashes it for you in one click — no Arduino IDE or platformio install required.
Can it repair or re-unlock my battery?
The tool can read and clear error states on supported packs. Whether a pack can be fully recovered depends on why it locked up. See the upstream documentation for what is and isn't possible.