Crate picoboot_rs

Source
Expand description

githubcrates-iodocs-rs

Connecting to and communicating with a Raspberry Pi microcontroller in BOOTSEL mode over USB.


PICOBOOT is a USB interface provided by Raspberry Pi microcontrollers when in BOOTSEL mode. Normally, firmware for a Raspberry Pi microcontroller is loaded over a USB Mass Storage Device interface, appearing as a 128MB flash drive to the computer. The PICOBOOT USB interface is (usually) also active during this time, and can be used for more advanced management of the microcontroller device.

Re-exports§

pub use cmd::PicobootCmd;
pub use cmd::PicobootCmdId;
pub use cmd::PicobootError;
pub use cmd::TargetID;
pub use usb::PicobootConnection;

Modules§

cmd
Command Module
usb
USB Connection Module

Constants§

FLASH_END_RP2040
RP2040 memory address for the end of flash storage
FLASH_END_RP2350
RP2350 memory address for the end of flash storage
FLASH_START
RP MCU memory address for the start of flash storage
PAGE_SIZE
RP MCU flash page size (for writing)
PICOBOOT_MAGIC
RP MCU magic number for USB interfacing
PICOBOOT_PID_RP2040
RP2040 USB Product ID
PICOBOOT_PID_RP2350
RP2350 USB Product ID
PICOBOOT_VID
RP USB Vendor ID
ROM_END_RP2040
RP2040 memory address for the end of ROM storage
ROM_END_RP2350
RP2350 memory address for the end of ROM storage
ROM_START
RP MCU memory address for the start of ROM storage
SECTOR_SIZE
RP MCU flash sector size (for erasing)
SRAM_END_RP2040
RP2040 memory address for the end of SRAM storage
SRAM_END_RP2350
RP2350 memory address for the end of SRAM storage
SRAM_START_RP2040
RP MCU memory address for the start of SRAM storage
STACK_POINTER_RP2040
RP2040 memory address for the initial stack pointer
STACK_POINTER_RP2350
RP2350 memory address for the initial stack pointer
UF2_ABSOLUTE_FAMILY_ID
UF2_DATA_FAMILY_ID
UF2_FAMILY_ID_MAX
UF2_RP2040_FAMILY_ID
UF2 Family ID for RP2040
UF2_RP2350_ARM_NS_FAMILY_ID
UF2 Family ID for RP2350 (ARM, Non-Secure TrustZone)
UF2_RP2350_ARM_S_FAMILY_ID
UF2 Family ID for RP2350 (ARM, Secure TrustZone)
UF2_RP2350_RISCV_FAMILY_ID
UF2 Family ID for RP2350 (RISC-V)
XIP_SRAM_END_RP2040
RP2040 memory address for the end of XIP (execute-in-place) SRAM storage
XIP_SRAM_END_RP2350
RP2350 memory address for the end of XIP (execute-in-place) SRAM storage
XIP_SRAM_START_RP2040
RP2040 memory address for the start of XIP (execute-in-place) SRAM storage
XIP_SRAM_START_RP2350
RP2350 memory address for the start of XIP (execute-in-place) SRAM storage