[package] name = "Kyriav3" version = "0.2.0" authors = ["Haobo Gu "] description = "Keyboard firmware written in Rust" homepage = "https://github.com/haobogu/rmk" repository = "https://github.com/haobogu/rmk" readme = "../../README.md" edition = "2021" license = "MIT OR Apache-2.0" [dependencies] rmk = { version = "0.7", features = ["split", "rp2040_bl", "rp2040_pio"] } embassy-time = { version = "0.4", features = ["defmt"] } embassy-rp = { version = "0.4", features = [ "rp2040", "defmt", "time-driver", "critical-section-impl", ] } embassy-executor = { version = "0.7", features = [ "defmt", "arch-cortex-m", "executor-thread", ] } embassy-futures = { version = "0.1", features = ["defmt"] } cortex-m-rt = "0.7.5" portable-atomic = { version = "1.11", features = ["critical-section"] } defmt = "1.0" defmt-rtt = "1.0" panic-probe = { version = "1.0", features = ["print-defmt"] } static_cell = "2" [patch.crates-io] embassy-sync = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" } embassy-futures = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" } embassy-executor = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" } sequential-storage = { git = "https://github.com/tweedegolf/sequential-storage", rev = "4e9abcec36c259cb2c30840649ff8f9a6b6fcafc" } # Tmp workaround for https://github.com/tweedegolf/sequential-storage/issues/81 # [features] # avoid having to use --allow-multiple-definition linker flag # on macOS with Apple Silicon at least # default = ["rp-pico/disable-intrinsics"] [build-dependencies] xz2 = "0.1.7" json = "0.12" const-gen = "1.6" # Split keyboard example [[bin]] name = "central" path = "src/central.rs" [[bin]] name = "peripheral" path = "src/peripheral.rs" [profile.dev] codegen-units = 1 # better optimizations debug = true opt-level = 1 overflow-checks = true lto = false panic = 'unwind' [profile.release] codegen-units = 1 # better optimizations debug = true # no overhead for bare-metal opt-level = "z" # optimize for binary size overflow-checks = false lto = "fat"