3 unstable releases

0.2.1 Mar 14, 2022
0.2.0 Mar 9, 2022
0.1.0 Dec 11, 2021

#335 in Procedural macros

Download history 332/week @ 2022-12-02 670/week @ 2022-12-09 486/week @ 2022-12-16 399/week @ 2022-12-23 142/week @ 2022-12-30 244/week @ 2023-01-06 169/week @ 2023-01-13 367/week @ 2023-01-20 286/week @ 2023-01-27 231/week @ 2023-02-03 408/week @ 2023-02-10 280/week @ 2023-02-17 197/week @ 2023-02-24 714/week @ 2023-03-03 194/week @ 2023-03-10 232/week @ 2023-03-17

1,380 downloads per month
Used in 5 crates

MIT license

1.5K SLoC


Support for the Raspberry Silicon RP2040's PIO State Machines assembly at compile-time.

What is pio-proc

This crate is a macro that can assemble PIO asm at compile-time. It is part of pio.

PIO Examples

This crate is just the PIO macro. If you want to see some fully-featured PIO examples integrated with Embedded Rust on the RP2040, check out the rp-hal examples.


NOTE This tool is under active development. As such, it is likely to remain volatile until a 1.0.0 release.

See the open issues for a list of proposed features (and known issues).


Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request


Distributed under the MIT License. See LICENSE for more information.


Project Link: https://github.com/rp-rs/pio-rs/issues Matrix: #rp-rs:matrix.org



~86K SLoC