What do the diagnostic flash codes of Milwaukee tool battery packs mean

powertools

When I press the fuel gauge button on my Milwaukee M28 battery pack for a bit longer (some seconds), the four fuel gauge LEDs start to blink out what seems to be diagnostic codes. I just tried it twice in a row, and each time the readout was as follows:

all                                               4 
all all          1  2 2 2 2 2 2  3 3 3            4 4 4 4 4 4 4 4 
all all all         2 2          3 3 3            4 4 4 4 4 
all all all all     2 2          3 3 3 3 3 3 3 3  4 4 4 4 4 4 4 4 4

Here, "all" indicates one flash of all four LEDs at the same time, and a number indicates one flash of that LED (counted from left). Reading direction is like lines of text. Spacing is for clarity only.

What do these battery flash codes / blink codes indicate?

I found nothing about them in the Milwaukee V28 battery troubleshooting guide, and there is seemingly no equivalent document for the (newer but very similar) M28 battery series.

Battery pack data:

  • model: Milwaukee M28 Lithium-Ion 3.0 Ah (so, not yet the new M28 REDLITHIUM series)
  • nominal voltage: 28 V
  • working fine but in use for some years already
  • other numbers: 4932 3525 23, 7INR18/65-2, HAAC0

Best Answer

Since there is no official documentation, we need to do a bit of reverse engineering. So it appears to me (from similarities with flash codes from cars in the 1990's) that the number of flashes will indicate digits. The "all together" flashes are probably just separators. Applying this, the numbers encoded in your example would be:

  1. 0001
  2. 1638
  3. 0235
  4. 0289

Meaning:

  • The second number means "days since first charge". This number seems to increase by one every day (I observed an increase of 1 in 36 hours, but have to check more; also somebody else claims for M18 batteries it changes daily, see below). So 1638 days back from the date of your question would mean Sept 5, 2012 (says WolframAlpha). It will probably be the day of first charge, not of manufacture, because the date of manufacture is already included on the battery as a Milwaukee date code (though for this one I can't detect one, bit strange). Also, it is reported in the Milwaukee V28 battery troubleshooting guide that fuel gauge LEDs do not work at all before the first charge, so it seems reasonable to assume the flash codes will not work until then either. That is unconfirmed though, but anyway, both date of manufacture and date of first charge are a reasonably good approximation of battery age.

  • The third number means "charge cycle count". I found that out by charging again until the green light appears, which increased the third number by one and left all others unchanged.

  • The first and fourth numbers did not change yet, and I have no idea what they mean. They did not change for others who tried to decode them (see below). So maybe a battery health state code, a battery type number, or something else. I will have to compare values from my other battery packs (or if you have these too, please post your values below).

Other bits and pieces (everything I could find on the web):

  • Seemingly the Milwaukee M18 battery packs (18 V LiIon series) exhibit a very similar behaviour, and one user reports about that: "The first set of flash codes appears to change daily. A second set does change as well, but I haven't figured that one out yet. The remaining codes remain the same." (source)

  • Again for Milwaukee M18 batteries, an unknown source is quoted saying that "[T]he batteries ha[ve] a chip that records the date they were first charged (at the factory I assume) and that it records the number of charge cycles it has gone through." (source)

  • A Milwaukee support employee reportedly said "The flashes are of no significance." (source) The answer should have added "to consumers" however, as blink codes are of major significance to geeks :)