Pigweed#

Sustained, robust, and rapid embedded product development for large teams


Get started

Create a new project, integrate Pigweed into an existing project, browse example apps, or contribute to upstream Pigweed

What is Pigweed?#


Libraries

Over 150 libraries (“modules”) enabling you to use modern C++ and software development best practices without compromising performance, code size, or memory

Automation

Easier automated building, testing, and linting for Bazel, GN, and CMake projects

Environments

Hermetic and replicable development environments for your entire team - no more struggling with toolchains and “it worked on my machine”

Frameworks

Turnkey solutions for new projects that want to make full use of everything that Pigweed offers

Who’s using Pigweed?#

Pigweed has shipped on millions of devices.

Showcase: pw_console#

pw_console is our multi-purpose, pluggable REPL and log viewer. It’s designed to be a complete development and manufacturing solution for interacting with hardware devices via pw_rpc over a pw_hdlc transport. Gone are the days of hacking together a REPL and log viewer for each new project!

Using pw_console to interact with a device

Using pw_console to interact with a device#

What’s new in Pigweed#

Highlights (May 30, 2024 to Jun 13, 2024):

pw_malloc now supports pw_allocator-based backends.

  • New pw_build Bazel rules: pw_py_test rule wraps py_test, pw_elf_to_dump takes a binary executable and produces a text file containing the full binary layout, and pw_elf_to_bin rule takes a binary executable and produces a file with all ELF headers removed.

  • Improved Fish shell support: The pw and pw build commands now support Fish shell completion. The new bootstrap.fish script demonstrates how to bootstrap a Pigweed project from a Fish shell and makes it easier for Fish users to contribute to upstream Pigweed.

  • More informative modules index: The modules index now shoes useful metadata for each module, such as a summary of the module’s purpose and the programming languages that the module supports.

See Jun 13, 2024 in our changelog for details.

Talk to us#


Chat room

For real-time discussion with the Pigweed team, head over to our Discord.

Monthly community meeting

Our next Pigweed Live is Mon Jul 01, 2024 1PM (PDT). Please join us to discuss what’s new in Pigweed and anything else Pigweed-related.

Issues

Found a bug? Got a feature request? Please create a new issue in our tracker.