[package] edition = "2021" name = "renderbug-embassy" rust-version = "1.86" version = "0.1.0" [[bin]] name = "renderbug-embassy" path = "./src/bin/main.rs" [features] default = [] simulation = ["dep:csv-core", "dep:rmp"] radio = [ "dep:embassy-net", "dep:smoltcp", "dep:bleps", "dep:serde_json", "dep:serde", "dep:esp-wifi" ] motion = ["mpu", "gps"] max-usb-power = [] wokwi = ["max-usb-power"] headless = [] mpu = ["dep:mpu6050-dmp"] gps = ["dep:nmea"] demo = [] [dependencies] figments = { path = "../figments/figments/", features = ["alloc"] } figments-render = { path = "../figments/figments-render/", features = ["smart-leds", "micromath"], default-features = false } esp-bootloader-esp-idf = { version = "0.2.0", features = ["esp32s3"] } esp-hal = { version = "=1.0.0-rc.0", features = [ "esp32s3", "log-04", "unstable", ] } log = "0.4.27" embassy-net = { version = "0.7.0", optional = true, features = [ "dhcpv4", "log", "medium-ethernet", "tcp", "udp", ] } embedded-io = "0.6.1" embedded-io-async = "0.6.1" esp-alloc = "0.8.0" esp-backtrace = { version = "0.17.0", features = [ "esp32s3", "exception-handler", "panic-handler", "println", ] } esp-println = { version = "0.15.0", features = ["esp32s3", "log-04"] } # for more networking protocol support see https://crates.io/crates/edge-net critical-section = "1.2.0" embassy-executor = { version = "0.7.0", features = [ "log", "task-arena-size-98304", ] } embassy-time = { version = "0.5.0", features = ["log"] } esp-hal-embassy = { version = "0.9.0", features = [ "esp32s3", "log-04" ] } esp-wifi = { version = "0.15.0", optional = true, features = [ "builtin-scheduler", "esp-alloc", "esp32s3", "log-04", "smoltcp", "wifi", "ble" ] } smoltcp = { version = "0.12.0", optional = true, default-features = false, features = [ "log", "medium-ethernet", "multicast", "proto-dhcpv4", "proto-dns", "proto-ipv4", "socket-dns", "socket-icmp", "socket-raw", "socket-tcp", "socket-udp", ] } static_cell = "2.1.1" # esp-hal-smartled = { version = "0.15.0", features = ["esp32c3"] } esp-hal-smartled = { git = "https://github.com/esp-rs/esp-hal-community.git", features = ["esp32s3"] } smart-leds = "0.4.0" rgb = "0.8.52" nmea = { version = "0.7.0", optional = true, default-features = false, features = [ "GGA", "GSA", "GSV", "RMC", "VTG", "GLL", "GST", ] } embassy-sync = "0.7.2" mpu6050-dmp = { version = "0.6.1", features = ["async"], optional = true } embassy-embedded-hal = "0.5.0" embedded-hal-async = "1.0.0" smart-leds-trait = "0.3.1" anyhow = { version = "1.0.99", default-features = false } nalgebra = { version = "0.33.2", default-features = false } bleps = { git = "https://github.com/bjoernQ/bleps", optional = true, package = "bleps", rev = "a5148d8ae679e021b78f53fd33afb8bb35d0b62e", features = [ "macros", "async"] } serde_json = {version = "1.0.145", optional = true, default-features = false, features = ["alloc"] } csv-core = {version = "0.1.12", optional = true } serde = { version = "1.0.228", optional = true, default-features = false, features = ["derive"] } kfilter = "0.4.0" rmp = { version = "0.8.14", optional = true, default-features = false } xtensa-lx-rt = { version = "*", features = ["float-save-restore"] } futures = { version = "0.3.31", default-features = false, features = ["async-await"] } [profile.dev] # Rust debug is too slow. # For debug builds always builds with some optimization opt-level = "s" [profile.release] codegen-units = 1 # LLVM can perform better optimizations using a single thread debug = 2 debug-assertions = false incremental = false lto = 'fat' opt-level = 's' overflow-checks = false [build-dependencies] image = "0.25.8"