[package] name = "rp2040" version = "0.1.0" edition = "2021" [dependencies] cortex-m = "0.7.2" waveshare-rp2040-zero = "0.6.0" rp2040-boot2 = { version = "0.2.0", optional = true } rp2040-hal = { version = "0.8.0" } cortex-m-rt = { version = "0.7", optional = true } panic-halt= "0.2.0" embedded-hal ="0.2.5" log = { version = "0.4", optional = true } fugit = "0.3.5" nb = "1.0.0" smart-leds = "0.3.0" smart-leds-trait = "0.2.1" ws2812-pio = "0.6.0" usbd-human-interface-device = "0.4.2" usb-device = "0.2" pio = "0.2.0" defmt = { version = "0.3", optional = true } libm = "0.2.7" dyn-smooth = "0.2.0" eeprom24x = "0.6.0" [features] # This is the set of features we enable by default default = ["boot2", "rt", "critical-section-impl", "rom-func-cache"] # critical section that is safe for multicore use critical-section-impl = ["rp2040-hal/critical-section-impl"] # 2nd stage bootloaders for rp2040 boot2 = ["rp2040-boot2"] # Minimal startup / runtime for Cortex-M microcontrollers rt = ["cortex-m-rt","rp2040-hal/rt"] # This enables a fix for USB errata 5: USB device fails to exit RESET state on busy USB bus. # Only required for RP2040 B0 and RP2040 B1, but it doesn't hurt to enable it rp2040-e5 = ["rp2040-hal/rp2040-e5"] # Memoize(cache) ROM function pointers on first use to improve performance rom-func-cache = ["rp2040-hal/rom-func-cache"] # Disable automatic mapping of language features (like floating point math) to ROM functions disable-intrinsics = ["rp2040-hal/disable-intrinsics"] # This enables ROM functions for f64 math that were not present in the earliest RP2040s rom-v2-intrinsics = ["rp2040-hal/rom-v2-intrinsics"] defmt = ["dep:defmt", "usb-device/defmt"] [[bin]] name = "rp2040" test = false bench = false