#svd #embedded #register #map #generator

no-std bin+lib svd2rust

Generate Rust register maps (structs) from SVD files

51 releases (28 breaking)

new 0.29.0 Jun 5, 2023
0.28.0 Dec 25, 2022
0.27.2 Nov 6, 2022
0.24.1 Jul 4, 2022
0.1.2 Nov 27, 2016

#658 in Embedded development

Download history 243/week @ 2023-02-13 372/week @ 2023-02-20 253/week @ 2023-02-27 177/week @ 2023-03-06 182/week @ 2023-03-13 264/week @ 2023-03-20 235/week @ 2023-03-27 166/week @ 2023-04-03 133/week @ 2023-04-10 487/week @ 2023-04-17 189/week @ 2023-04-24 126/week @ 2023-05-01 263/week @ 2023-05-08 280/week @ 2023-05-15 171/week @ 2023-05-22 186/week @ 2023-05-29

908 downloads per month



crates.io crates.io


Generate Rust register maps (structs) from SVD files

This project is developed and maintained by the Tools team.



Minimum Supported Rust Version (MSRV)

The generated code is guaranteed to compile on stable Rust 1.65.0 and up.

If you encounter compilation errors on any stable version newer than 1.65.0, please open an issue.

Testing Locally

svd2rust-regress is a helper program for regression testing changes against svd2rust. This tool can be used locally to check modifications of svd2rust locally before submitting a PR.

Check out the svd2rust-regress README for information on how to use this tool.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Code of Conduct

Contribution to this crate is organized under the terms of the Rust Code of Conduct, the maintainer of this crate, the Tools team, promises to intervene to uphold that code of conduct.


~104K SLoC