A lean Python 3 implementation that runs on microcontrollers and other resource-constrained devices, with hardware access modules.
ZigEmbeddedGroup/microzig
A toolbox for building embedded applications in Zig, providing a hardware abstraction layer and board/chip support.
- Stars
- 2,326
- Forks
- 206
- Open issues
- 89
- Last commit
- yesterday
What is it?
MicroZig is a toolbox for writing embedded firmware in the Zig programming language. It is aimed at developers who want to target microcontrollers using Zig's build system and language features, with a hardware abstraction layer (HAL) that sits between application code and the specific chip registers.
The project is organized around chip and board support packages, so a user can write application code against a common interface and select the target device at build time. The repository also documents its project layout in an architecture file for contributors.
The project is still in development, and its API is expected to change. The README pins the Zig version to 0.17.0, and readers should expect breaking changes between releases.
Key features
- 01Hardware abstraction layer for microcontrollers written in Zig
- 02Chip and board support packages selected at build time
- 03Built on Zig's build system and language features
- 04Includes architecture documentation for contributors
Use cases
- Writing bare-metal firmware for microcontrollers in Zig
- Porting an embedded application across different chip families through a shared HAL
- Experimenting with Zig for embedded development
Quick start
- 1
Install Zig version 0.17.0, the version the README specifies
- 2
Go to microzig.tech to get started
Things to know
- The project is in development and API breaks are expected.
- It requires Zig 0.17.0 specifically.
In collections
Topics
FAQ
- What is microzig?
- A toolbox for building embedded applications in Zig, providing a hardware abstraction layer and board/chip support. MicroZig is a toolbox for writing embedded firmware in the Zig programming language. It is aimed at developers who want to target microcontrollers using Zig's build system and language features, with a hardware abstraction layer (HAL) that sits between application code and the specific chip registers.
- Is microzig free to use? What license does it have?
- microzig is open source under the Zlib license. Check the license terms before using it in commercial products.
- Is microzig still maintained?
- Actively maintained. The last commit to microzig was on Nov 6, 2026.
- What can I use microzig for?
- Writing bare-metal firmware for microcontrollers in Zig Porting an embedded application across different chip families through a shared HAL Experimenting with Zig for embedded development
- How do I install microzig?
- Install Zig version 0.17.0, the version the README specifies Go to microzig.tech to get started
- Where can I get microzig?
- The source code and installation instructions are on GitHub: https://github.com/ZigEmbeddedGroup/microzig
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Official development framework from Espressif for building firmware on ESP32 and other Espressif SoCs, on Windows, Linux and macOS.
Cross-platform command-line tool and build system for embedded development, covering library management, multiple boards and frameworks, debugging and unit testing.
Open-source cross-platform USB Host and Device stack for embedded systems, designed for memory and thread safety across 50+ MCU families.
A POSIX-compliant real-time operating system (RTOS) for embedded devices, scaling from 8-bit to 64-bit microcontrollers.
Open-source board that replaces the circuit board in a classic Casio F-91W watch, letting you run your own programs on your wrist.