Tracking PX4 firmware memory footprint across commits

I’d like to share a tool I’ve been working on called MemBrowse: a firmware memory footprint tracking platform.

It plugs into GitHub Actions, parses ELF + linker script after the build step, and uploads memory reports to a dashboard. The main benefit of MemBrowse is the persistent historical dashboard with a friendly interface where you can browse memory usage per region, section, symbol, and library across commits and targets. It also helps profile and understand on a library/module level where the bloat is actually coming from.

A few things it adds:

  • Track how flash/RAM usage trends over time and pinpoint which commit introduced growth

  • Compare utilization across board targets side by side

  • Set budget thresholds per memory region and get alerted when a target is getting tight

  • PR comments with the memory delta for reviewers

Here is a dashboard with data from PX4-Autopilot:

membrowse.com/public/michael-membrowse/px4-autopilot

It’s free for open source projects. If you find it useful I’d be happy to open a PR with the integration.

GitHub Action: membrowse/membrowse-action