Crates.io | pico-sdk-sys |
lib.rs | pico-sdk-sys |
version | 0.1.1 |
source | src |
created_at | 2024-07-14 14:49:28.782215 |
updated_at | 2024-07-14 17:44:25.644524 |
description | FFI bindings to Raspberry Pi's Pico SDK |
homepage | |
repository | https://github.com/kaganege/pico-sdk-rust |
max_upload_size | |
id | 1303054 |
size | 449,349 |
Pico SDK bindings for the Rust programming language.
[!WARNING] Most bindings are generated by rust-bindgen. If any bindings are missing, create an issue.
Since this crate depends on the Pico C SDK and other tools (see the official documentation), these must be downloaded or compiled first. This crate will automatically download or compile these tools for you, but it is also possible to manually download and the crate will pick it up accordingly.
If the tools can already be found on your system, they will be used.
Otherwise, the following dependencies are needed to compile and build this crate:
PICO_SDK_PATH
Path to Pico SDK.PICO_EXTRAS_PATH
Path to Pico SDK extras. (Optional)PICO_TOOLCHAIN_PATH
Path to Arm GNU Toolchain. It must contain arm-none-eabi
, bin
, include
, lib
folders.PATH
This crate searches ninja
in the PATH so be sure ninja is in the PATH.Add this to your Cargo.toml
:
[dependencies]
pico-sdk-sys = "0.1.0"
See the official documentation for more details. Examples can be found in the kaganege/pico-sdk-rs-examples.
By default enable-stdio-usb
feature is enabled.
pico-w
: Enables WiFi support.extras
: Adds pico-extras bindings.alloc
: Uses Arm GNU Toolchains allocators.enable-stdio-uart
: Enables logging over UART.enable-stdio-usb
: Enables logging over USB.full
: Enables extras
and alloc
features.pico-sdk-rs works with stable Rust, and typically works with the most recent prior stable release as well.
Currently this library using pico-sdk 1.5.1 (or newer patch versions).
Licensed under MIT license (LICENSE or opensource.org/licenses/MIT)