Ross ROSS = Recommend OSS · open-source software intelligence for agents

mnh-jansson/m18-protocol

Some data may be outdated — see provenance labels.

None observed · 2026-09-22

github.com/mnh-jansson/m18-protocol · Python observed · 2026-09-22

Health v2 · maintenance only

39/100

  • Activity 38
  • Release rhythm 35
  • Longevity 49

Flags: no_releases no_license

How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-10-21. Adoption (stars, forks) is never an input.

  • gap_med: n/a
  • age_days: 696
  • days_rel: n/a
  • days_push: 373
  • n_releases_24m: 0

Full methodology

Adoption not part of the score

1012 stars · 169 forks observed · 2026-09-22

What it is AI-extracted, prompt v1, taxonomy v1, 2026-09-07, confidence 0.86

A research repository and Python diagnostic tool for reverse-engineering the Milwaukee M18 power tool battery communication protocol. Using a 3.3V USB-to-serial adapter it emulates a charger, letting users read battery registers, generate health reports, and contribute diagnostics to map unknown protocol fields.

Use cases

  • check the health of a Milwaukee M18 battery from a computer
  • read all registers from an M18 tool battery and export them to a spreadsheet
  • reverse engineer a power tool battery serial protocol
  • emulate an M18 charger with a USB-to-serial adapter to talk to the battery
  • diagnose why an M18 battery behaves poorly or racks up dumb-charge counts
  • submit battery diagnostics to help document unknown registers

When to choose

  • You own Milwaukee M18 batteries and want to inspect their health, registers, and serial data from a PC
  • You have a 3.3V USB-to-serial adapter and want to experiment with or research the battery protocol
  • You want to contribute diagnostic data to help identify unknown protocol registers

When to avoid

  • You just need to charge batteries normally - this is a research and diagnostics tool, not a charger
  • You use other brands of tool batteries (DeWalt, Makita, Ryobi, etc.) since the protocol is M18-specific
  • You need a polished GUI application rather than a Python interactive shell and command-line scripts

Facets

cli-tool · maturity active

reverse-engineering developer-tools cli embedded hardware embedded-systems reverse-engineering developer-tools cross-platform python cli windows milwaukee-m18 power-tools battery-diagnostics battery-health serial-communication protocol-research charger-emulation usb-to-serial interactive-shell command-line linux macos

1 source

Member repositories

RepositoryRoleHealth v2
mnh-jansson/m18-protocolmain39

For agents

markdown · JSON · MCP: product_card(name="mnh-jansson/m18-protocol")

Data as of 2026-10-19T08:05:51.212177+00:00 · Report a problem