Keyboard shortcuts

Press โ† or โ†’ to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Intro

In this book, we use the Raspberry Pi Pico and program it in Rust to explore various exciting projects. You will work on exercises like dimming an LED, controlling a servo motor, measuring distance with a sonic sensor, displaying the Ferris (๐Ÿฆ€) image on an OLED display, using an RFID reader, playing songs on a buzzer, turning on an LED when the room light is off, measuring temperature, and much more.

Meet the hardware - Pico

We will be using the Raspberry Pi Pico, which is part of the Raspberry Pi Pico series built around the RP2040 microcontroller. The RP2040 is designed by Raspberry Pi in the UK and features a dual-core Arm Cortex-M0+ processor with 264 KB of on-chip SRAM and support for external flash memory.

You find more details from the official website.

Raspberry Pi Debug 2
Raspberry Pi Pico

Variants

When I started the Pico book, I originally targeted the Raspberry Pi Pico 2 with the RP2350 chip. I noticed that many people still use the older Raspberry Pi Pico based on the RP2040.

If you have previously purchased an RP2040 board and have been using it with another language such as MicroPython, you may want to try Rust on the same board without purchasing new hardware. This book is meant for that use case.

If you are buying a board now, I recommend buying the newer Pico 2 instead of the RP2040-based Pico. If you are using the newer version, you can refer to the corresponding book here: https://pico.implrust.com/

Note

There is also a variant called Pico W. It is based on the RP2040 and includes a CYW43439 wireless chip that provides Wi-Fi and Bluetooth support.

Datasheets

For detailed technical information, specifications, and guidelines, refer to the official datasheets:

License

The impl Rust for Pico book(this project) is distributed under the following licenses:

  • The code samples and free-standing Cargo projects contained within this book are licensed under the terms of both the MIT License and the Apache License v2.0.
  • The written prose contained within this book is licensed under the terms of the Creative Commons CC-BY-SA v4.0 license.
  • Circuit diagrams in this book were created with Fritzing.

Support this project

You can support this book by starring this project on GitHub or sharing this book with others ๐Ÿ˜Š

Disclaimer

The experiments and projects shared in this book have worked for me, but results may vary. Iโ€™m not responsible for any issues or damage that may occur while youโ€™re experimenting. Please proceed with caution and take necessary safety precautions.