Makita LXT Digital Interface

Understanding the Proprietary Makita LXT Digital Service Interface

Makita LXT batteries (18 V tool batteries) use a proprietary one-wire digital interface that allows querying battery details, assessing health, and unlocking locked batteries.

The interface is exposed via the yellow auxiliary connector.

3rd party Makita batteries (non-original batteries) typically expose the yellow digital interface connector, but in most cases it is fake and does not work.

Overview

The digital interface was originally used exclusively by Makita chargers and diagnostics:

  • DC18RC (Charger):
    • Reads battery health and determines if it is safe to charge a battery
    • Can lock a battery when it finds security-relevant issues
  • BTC04 (Battery Diagnosis):
    • reads battery specs, calculates battery health
    • can lock and unlock batteries

Accessing the Makita LXT digital interface enables you to do what previously only the official (and expensive) BTC04 battery diagnosis could do:

  • Evaluate Health and Value
    • determine the value of a used battery that is on sale or that you want to sell.
    • identify weak cells that needs to get replaced soon.
  • Identify Issues and Fix them.
    • detect imbalanced cells: open the battery and manually balance them.
    • detect severely imbalanced cells: safely assume that a balancer tab is broken, and fix it in a few minutes.
  • Unlock Repaired Battery
    • you fixed a locked battery, and now you want to use it again
    • you want to unlock a locked battery to see if it maybe was a random error that won’t repeat

Good reasons - considering that repairing a battery is often not very hard, the batteries are too expensive to not try and repair them, and today, a few dollars worth of hardware can do what previously only an expensive BTC04 could do.

Makita 1-Wire Protocol

Up until 2024, it was impossible for users to use the Makita LXT digital interface since it was kept a secret: Makita did not publish the protocol details. A single person named Martin Jansson changed this by reverse engineering it and open-sourcing the findings:

  • Protocol analysis in 2021:
    Battery Hacking – Initial reverse-engineering work.

  • Firmware extraction & command discovery in 2024:
    Command Set Analysis – Extracted original firmware, identified key commands.

Using the LXT Interface

To use the digital interface on Makita LXT batteries, three things are needed:

  1. Hardware (Dongle):
    Emulates the Makita protocol

  2. Software:
    Sends Makita command bytes and receives results from the battery.

  3. User Interface:
    Displays battery data and invokes actions (such as battery unlock).

These three things can all be separate items, or combined in one device.

Hardware

The hardware acts like a “dongle” that translates between the Makita battery and the outside world by emulating the proprietary Makita 1-Wire protocol.

To implement this, you need a yellow Makita connector cable (to physically plug into the digital interface on the battery) and a cheap microcontroller (Arduino, ESP32, RP2040, etc. all will do) that runs the firmware that implements the Makita protocol.

Software

Sends the documented Makita command bytes to the battery to invoke certain actions (i.e. read battery state, unlock battery, etc.), and interprets the results.

Some projects have integrated this into the firmware, so no PC is needed. The original project used a separate python script that runs on a PC. Here are available options for you:

MCU + PC Software

Microcontroller works as dongle only, separate software communicates through dongle:

MCU Stand-Alone

Combines dongle and command logic, both run inside microcontroller:

User Interface Options, And What To Choose

The user interface visualizes the retrieved battery information, and options that you can pick range from “no visualization at all” to “full GUI application”:

PC Software

If you run your software on a PC anyway, then it is a natural thing to implement the user interface on the PC as well, and display the results as text in a console, or create a dedicated graphical user interface (i.e. dialog window).

  • Advantage: it is easy to play with the code and explore the protocol.
  • Disadvantage: you always need a PC

This was the original approach adopted by OpenBatteryInformation in 2024.

Web Interface

Some microcontrollers (like ESP32) are powerful enough to open a WiFi access point and display the data via its own web server.

You simply connect to it via your smartphone and essentially use your smartphone screen as user interface.

  • Advantage: simple setup, rich graphical user interface
  • Disadvantage: hassle to connect to the access point

This path was chosen by the first dedicated ESP32-based implementation in 2025.

WS2812 RGB LED

On less powerful microcontrollers, you can use simplified visualizations like a multi-color LED.

Advantage: very simple setup, no extra steps or PC needed
Disadvantage: limited information. While you can signal battery state (good/bad, locked/unlocked), and invoke automatic unlocking, you cannot visualize battery information such as cycle count or cell voltages.

This was the approach taken by the Automatic Makita LXT Battery Unlocker in 2026.

TFT Display

Information is displayed on a TFT display controlled directly by the microcontroller. This could be a separate display connected to the microcontroller via I2C or SPI, or a development board with integrated TFT display.

Advantage: very simple setup, all information directly at your fingertips, no extra steps or PC needed
Disadvantage: firmware is specific for a given development board/display type. This can make it harder for community to rebuild/adopt the solution.

First Steps

If you want to create your own Makita Digital Service Tool, here is what you should do:

  1. Pick a microcontroller and add a few resistors.
  2. Connect a yellow Makita connector to your microcontroller
  3. Pick the firmware that suits you best, and upload it to your microcontroller

If the firmware you picked contains the command logic as well, then you are done, and your device is ready-to-use.

If the firmware you picked is just a “dongle” (like ArduinoOBI), you have one more step:

  1. Connect your microcontroller to a PC via USB cable, then run the software that came with the firmware, or use a custom script that communicates via USBSerial.

Slow Website?

This website is very fast, and pages should appear instantly. If this site is slow for you, then your routing may be messed up, and this issue does not only affect done.land, but potentially a few other websites and downloads as well. Here are simple steps to speed up your Internet experience and fix issues with slow websites and downloads..

Comments

Please do leave comments below. I am using utteran.ce, an open-source and ad-free light-weight commenting system.

Here is how your comments are stored

Whenever you leave a comment, a new github issue is created on your behalf.

  • All comments become trackable issues in the Github Issues section, and I (and you) can follow up on them.

  • There is no third-party provider, no disrupting ads, and everything remains transparent inside github.

Github Users Yes, Spammers No

To keep spammers out and comments attributable, all you do is log in using your (free) github account and grant utteranc.es the permission to submit issues on your behalf.

If you don’t have a github account yet, go get yourself one - it’s free and simple.

If for any reason you do not feel comfortable with letting the commenting system submit issues for you, then visit Github Issues directly, i.e. by clicking the red button Submit Issue at the bottom of each page, and submit your issue manually. You control everything.

Discussions

For chit-chat and quick questions, feel free to visit and participate in Discussions. They work much like classic forums or bulletin boards. Just keep in mind: your valued input isn’t equally well trackable there.

  Show on Github    Submit Issue

(content created Dec 16, 2025 - last updated May 02, 2026)