Skip to content

lostbinarylabs/firmdiff

Repository files navigation

firmdiff

Firmware diffing for engineers who need answers, not just bytes.

CI Go Report Card License

firmdiff helps engineers compare firmware builds and explain what actually changed.

It is designed for embedded systems engineers dealing with:

  • non-reproducible builds
  • unexplained binary differences
  • mysterious firmware regressions
  • toolchain instability
  • build system drift

Instead of diffing hex dumps, firmdiff explains the difference.


Why firmdiff exists

Embedded firmware builds often change even when the source code does not.

Engineers frequently discover:

  • identical builds produce different binaries
  • compiler upgrades change output
  • link ordering changes addresses
  • toolchains inject timestamps
  • build flags drift over time

firmdiff helps you detect and explain these problems.


Installation

go install github.com/lostbinarylabs/firmdiff/cmd/firmdiff@latest

or build locally

git clone https://github.com/lostbinarylabs/firmdiff
cd firmdiff
go build ./cmd/firmdiff

Quick start

Run firmdiff on a firmware project:

firmdiff run --src examples/hello_firmdiff

Example output:

Running build A...
Running build B...

Comparing firmware...

Binary difference detected

Possible causes:
 - timestamp embedded in binary
 - object file order change
 - linker script variation
Commands
Command	Description
firmdiff run	perform firmware build comparison
firmdiff explain	analyse and explain binary differences
firmdiff report	produce markdown diff report
firmdiff sweep	run extended analysis
Example projects

See the examples/ directory for runnable demos.

Documentation

Full documentation lives in the docs/ folder.

Getting Started

Command Guide

Architecture

Troubleshooting

Roadmap

Planned features include:

ELF symbol diffing

linker map analysis

reproducible build verification

CI integration

Contributing

Contributions are welcome.

Please read:

CONTRIBUTING.md

About

Firmdiff

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors