-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathCargo.toml
127 lines (111 loc) · 3 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
[package]
edition = "2021"
name = "rusty-quad"
authors = ["Peter Krull"]
version = "0.1.2"
[features]
default = ["icm20948-async"]
mag = []
icm20948-async = []
debug_print = []
[dependencies]
cortex-m = "0.7.7"
cortex-m-rt = "0.7.3"
embedded-hal = { version = "0.2.7", features = ["unproven"] }
defmt = "0.3.4"
defmt-rtt = "0.4.0"
panic-probe = { version = "0.3", features = ["print-defmt"] }
# RP2040-specific
pio-proc = "0.2"
pio = "0.2"
# self-developed (or forked)
dshot-pio = { git = "https://github.com/peterkrull/dshot-pio", features = ["embassy-rp"]}
icm20948-async = { git = "https://github.com/peterkrull/icm20948-async" }
mag-calibrator-rs = { git = "https://github.com/peterkrull/mag-calibrator-rs" }
pid-controller-rs = { git = "https://github.com/peterkrull/pid-controller-rs" }
# Forked
sbus = { git = "https://github.com/peterkrull/sbus" }
ahrs = { git = "https://github.com/peterkrull/ahrs-rs", default-features = false}
# Attitude and estimation
nmea0183 = { version = "0.3.0", default-features = false }
# Linear algebra
nalgebra = { version = "0.32", default-features = false, features = ["libm"] }
num-traits = { version = "0.2", default-features = false, features = ["libm"] }
# Async & Embassy related
embedded-hal-async = "1.0.0-rc.1"
embassy-sync = { git = "https://github.com/embassy-rs/embassy", features = [
"defmt",
]}
embassy-executor = { git = "https://github.com/embassy-rs/embassy", features = [
"defmt",
"integrated-timers",
"arch-cortex-m",
"executor-thread",
"nightly"
]}
embassy-time = { git = "https://github.com/embassy-rs/embassy", features = [
"defmt",
"defmt-timestamp-uptime",
]}
embassy-rp = { git = "https://github.com/embassy-rs/embassy", features = [
"defmt",
"unstable-traits",
"nightly",
"unstable-pac",
"time-driver",
"critical-section-impl",
# "intrinsics",
]}
embassy-futures = { git = "https://github.com/embassy-rs/embassy" }
futures = { version = "0.3.26", default-features = false, features = [
"async-await",
"cfg-target-has-atomic",
"unstable",
] }
embassy-embedded-hal = { git = "https://github.com/embassy-rs/embassy" }
static_cell = "1.0.0"
[profile.dev]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
opt-level = 3
overflow-checks = true
# cargo build/run --release
[profile.release]
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
lto = 'fat'
opt-level = 3
overflow-checks = false
# do not optimize proc-macro crates = faster builds from scratch
[profile.dev.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false
[profile.release.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false
# cargo test
[profile.test]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
opt-level = 3
overflow-checks = true
# cargo test --release
[profile.bench]
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
lto = 'fat'
opt-level = 3