latest git version of esp-hal + fix RustRover warnings + probe-rs

use this command for installing working probe-rs:
```
cargo install probe-rs-tools \
  --git https://github.com/probe-rs/probe-rs \
  --rev 9bde591 --force --locked
```
This commit is contained in:
okhsunrog 2024-09-08 04:45:26 +03:00
parent dce4ebc3f9
commit 26096fb6d4
4 changed files with 109 additions and 219 deletions

47
.idea/workspace.xml generated
View file

@ -7,14 +7,10 @@
<cargoProject FILE="$PROJECT_DIR$/Cargo.toml" />
</component>
<component name="ChangeListManager">
<list default="true" id="7b22105a-0bfb-4392-932c-cec93348d8e9" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/.gitignore" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/cody_history.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.vscode/settings.json" beforeDir="false" afterPath="$PROJECT_DIR$/.vscode/settings.json" afterDir="false" />
<list default="true" id="7b22105a-0bfb-4392-932c-cec93348d8e9" name="Changes" comment="latest stable esp-hal + hello world">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Cargo.lock" beforeDir="false" afterPath="$PROJECT_DIR$/Cargo.lock" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Cargo.toml" beforeDir="false" afterPath="$PROJECT_DIR$/Cargo.toml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/rust-toolchain.toml" beforeDir="false" afterPath="$PROJECT_DIR$/rust-toolchain.toml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main.rs" beforeDir="false" afterPath="$PROJECT_DIR$/src/main.rs" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
@ -38,17 +34,22 @@
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.rust.reset.selective.auto.import&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;main&quot;,
&quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
&quot;org.rust.cargo.project.model.PROJECT_DISCOVERY&quot;: &quot;true&quot;,
&quot;org.rust.first.attach.projects&quot;: &quot;true&quot;,
&quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"RunOnceActivity.ShowReadmeOnStart": "true",
"RunOnceActivity.rust.reset.selective.auto.import": "true",
"git-widget-placeholder": "main",
"node.js.detected.package.eslint": "true",
"node.js.detected.package.tslint": "true",
"node.js.selected.package.eslint": "(autodetect)",
"node.js.selected.package.tslint": "(autodetect)",
"nodejs_package_manager_path": "npm",
"org.rust.cargo.project.model.PROJECT_DISCOVERY": "true",
"org.rust.cargo.project.model.impl.CargoExternalSystemProjectAware.subscribe.first.balloon": "",
"org.rust.first.attach.projects": "true",
"vue.rearranger.settings.migration": "true"
}
}</component>
}]]></component>
<component name="RunManager" selected="Cargo.Run esp_hal_probe">
<configuration name="Run esp_hal_probe" type="CargoCommandRunConfiguration" factoryName="Cargo Command">
<option name="buildProfileId" value="dev" />
@ -99,10 +100,24 @@
<updated>1725751529946</updated>
<workItem from="1725751530671" duration="64000" />
<workItem from="1725752698276" duration="5000" />
<workItem from="1725758634613" duration="1240000" />
</task>
<task id="LOCAL-00001" summary="latest stable esp-hal + hello world">
<option name="closed" value="true" />
<created>1725758678966</created>
<option name="number" value="00001" />
<option name="presentableId" value="LOCAL-00001" />
<option name="project" value="LOCAL" />
<updated>1725758678966</updated>
</task>
<option name="localTasksCounter" value="2" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="3" />
</component>
<component name="VcsManagerConfiguration">
<MESSAGE value="latest stable esp-hal + hello world" />
<option name="LAST_COMMIT_MESSAGE" value="latest stable esp-hal + hello world" />
</component>
</project>

224
Cargo.lock generated
View file

@ -2,55 +2,6 @@
# It is not intended for manual editing.
version = 3
[[package]]
name = "anstream"
version = "0.6.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526"
dependencies = [
"anstyle",
"anstyle-parse",
"anstyle-query",
"anstyle-wincon",
"colorchoice",
"is_terminal_polyfill",
"utf8parse",
]
[[package]]
name = "anstyle"
version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
[[package]]
name = "anstyle-parse"
version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb"
dependencies = [
"utf8parse",
]
[[package]]
name = "anstyle-query"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a"
dependencies = [
"windows-sys 0.52.0",
]
[[package]]
name = "anstyle-wincon"
version = "3.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8"
dependencies = [
"anstyle",
"windows-sys 0.52.0",
]
[[package]]
name = "anyhow"
version = "1.0.87"
@ -114,52 +65,6 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "clap"
version = "4.5.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3e5a21b8495e732f1b3c364c9949b201ca7bae518c502c80256c96ad79eaf6ac"
dependencies = [
"clap_builder",
"clap_derive",
]
[[package]]
name = "clap_builder"
version = "4.5.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8cf2dd12af7a047ad9d6da2b6b249759a22a7abc0f474c1dae1777afa4b21a73"
dependencies = [
"anstream",
"anstyle",
"clap_lex",
"strsim",
]
[[package]]
name = "clap_derive"
version = "4.5.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0"
dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
"syn 2.0.77",
]
[[package]]
name = "clap_lex"
version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
[[package]]
name = "colorchoice"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0"
[[package]]
name = "critical-section"
version = "1.1.3"
@ -296,19 +201,6 @@ dependencies = [
"defmt",
]
[[package]]
name = "embassy-sync"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd938f25c0798db4280fcd8026bf4c2f48789aebf8f77b6e5cf8a7693ba114ec"
dependencies = [
"cfg-if",
"critical-section",
"embedded-io-async",
"futures-util",
"heapless",
]
[[package]]
name = "embassy-sync"
version = "0.6.0"
@ -356,23 +248,6 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f1177859559ebf42cd24ae7ba8fe6ee707489b01d0bf471f8827b7b12dcb0bc0"
[[package]]
name = "embassy-usb-driver"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fc247028eae04174b6635104a35b1ed336aabef4654f5e87a8f32327d231970"
[[package]]
name = "embassy-usb-synopsys-otg"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d46be92e72bcf39e623ff74d739a8ab29b02f4909a9b05986ca81c2157ac254a"
dependencies = [
"critical-section",
"embassy-sync 0.5.0",
"embassy-usb-driver",
]
[[package]]
name = "embedded-can"
version = "0.4.1"
@ -481,8 +356,7 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]]
name = "esp-backtrace"
version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c2ff4bce686f28fe48a5d16aaa48c30b627a423bb689be57949bb210b8551d0"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"defmt",
"esp-build",
@ -492,8 +366,7 @@ dependencies = [
[[package]]
name = "esp-build"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b94a4b8d74e7cc7baabcca5b2277b41877e039ad9cd49959d48ef94dac7eab4b"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"quote",
"syn 2.0.77",
@ -503,8 +376,7 @@ dependencies = [
[[package]]
name = "esp-hal"
version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64f5393b8f7e7f055455d9f86706ddb675f943c12f12a7b80b8a79c3a94233ff"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"basic-toml",
"bitfield",
@ -516,10 +388,9 @@ dependencies = [
"delegate",
"document-features",
"embassy-futures",
"embassy-sync 0.6.0",
"embassy-usb-driver",
"embassy-usb-synopsys-otg",
"embassy-sync",
"embedded-can",
"embedded-hal 0.2.7",
"embedded-hal 1.0.0",
"embedded-hal-async",
"embedded-hal-nb",
@ -545,6 +416,7 @@ dependencies = [
"riscv",
"serde",
"strum",
"ufmt-write",
"void",
"xtensa-lx-rt",
]
@ -552,8 +424,7 @@ dependencies = [
[[package]]
name = "esp-hal-embassy"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46e47f06e0d7ddf411c3a582ec8fdc4fbc91713aa14bad736618677df0ffb606"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"cfg-if",
"critical-section",
@ -572,14 +443,13 @@ dependencies = [
[[package]]
name = "esp-hal-procmacros"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6eac531546027909a355fc9c2449f22c839955fa4b7f1976b64ddd04b2f22f83"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"darling",
"document-features",
"litrs",
"proc-macro-crate",
"proc-macro-error",
"proc-macro-error2",
"proc-macro2",
"quote",
"syn 2.0.77",
@ -588,13 +458,10 @@ dependencies = [
[[package]]
name = "esp-metadata"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b471bc61fa817ca4ae41a31d5d453258328b31e5ad82db72b473621d36cc4cb6"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"anyhow",
"basic-toml",
"clap",
"lazy_static",
"serde",
"strum",
]
@ -602,8 +469,7 @@ dependencies = [
[[package]]
name = "esp-println"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d9dd4fc40306450e432cdf104ab00c8f6bd5c4f6c77b76c5fc3024c0e2a535d"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"esp-build",
]
@ -611,8 +477,7 @@ dependencies = [
[[package]]
name = "esp-riscv-rt"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfc32298ed7c263b06c8b031704d8517cc62c819f2a9d5c261d0cb119634d6e9"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"document-features",
"riscv",
@ -706,7 +571,6 @@ dependencies = [
"defmt",
"defmt-rtt",
"embassy-executor",
"embassy-futures",
"embassy-time",
"esp-backtrace",
"esp-hal",
@ -726,6 +590,7 @@ version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17186ad64927d5ac8f02c1e77ccefa08ccd9eaa314d5a4772278aa204a22f7e7"
dependencies = [
"defmt",
"gcd",
]
@ -812,18 +677,6 @@ dependencies = [
"hashbrown",
]
[[package]]
name = "is_terminal_polyfill"
version = "1.70.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
[[package]]
name = "lazy_static"
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]]
name = "litrs"
version = "0.4.1"
@ -936,6 +789,28 @@ dependencies = [
"version_check",
]
[[package]]
name = "proc-macro-error-attr2"
version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5"
dependencies = [
"proc-macro2",
"quote",
]
[[package]]
name = "proc-macro-error2"
version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802"
dependencies = [
"proc-macro-error-attr2",
"proc-macro2",
"quote",
"syn 2.0.77",
]
[[package]]
name = "proc-macro2"
version = "1.0.86"
@ -1165,18 +1040,18 @@ dependencies = [
"winnow",
]
[[package]]
name = "ufmt-write"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e87a2ed6b42ec5e28cc3b94c09982969e9227600b2e3dcbc1db927a84c06bd69"
[[package]]
name = "unicode-ident"
version = "1.0.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
[[package]]
name = "utf8parse"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
[[package]]
name = "vcell"
version = "0.1.3"
@ -1201,16 +1076,7 @@ version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
dependencies = [
"windows-sys 0.59.0",
]
[[package]]
name = "windows-sys"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [
"windows-targets",
"windows-sys",
]
[[package]]
@ -1309,8 +1175,7 @@ dependencies = [
[[package]]
name = "xtensa-lx-rt"
version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2ceb69c1487b78d83531c5d94fb81d0dceef1ccb0affba29f29420b1f72d3ddb"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"anyhow",
"bare-metal",
@ -1328,8 +1193,7 @@ dependencies = [
[[package]]
name = "xtensa-lx-rt-proc-macros"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11277b1e4cbb7ffe44678c668518b249c843c81df249b8f096701757bc50d7ee"
source = "git+https://github.com/esp-rs/esp-hal?rev=d71434adfb7573c267d4d41a4304a2c556d59231#d71434adfb7573c267d4d41a4304a2c556d59231"
dependencies = [
"darling",
"proc-macro2",

View file

@ -9,14 +9,21 @@ defmt = "0.3"
defmt-rtt = "0.4"
embassy-executor = { version = "0.6", features = ["defmt"] }
embassy-time = { version = "0.3", features = ["generic-queue-8"] }
embassy-futures = "0.1"
esp-backtrace = { version = "0.14", features = ["esp32c3", "defmt", "exception-handler", "panic-handler"] }
esp-hal = { version = "0.20", features = ["esp32c3", "defmt", "async"] }
esp-hal = { version = "0.20", features = ["esp32c3", "defmt"] }
esp-hal-embassy = { version = "0.3", features = ["esp32c3", "defmt"] }
static_cell = { version = "2.1", features = ["nightly"] }
[profile.release]
debug = true # Debug info is useful, and does not affect the size of the final binary
codegen-units = 1 # LLVM can perform better optimizations using a single thread
lto = "fat" # Attempt to perform optimizations across all crates within the dependency graph
opt-level = "s" # Optimize for binary size, but keep loop vectorization enabled
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
opt-level = 3
lto = 'fat'
overflow-checks = false
[patch.crates-io]
esp-hal = { git = "https://github.com/esp-rs/esp-hal", rev = "d71434adfb7573c267d4d41a4304a2c556d59231" }
esp-hal-embassy = { git = "https://github.com/esp-rs/esp-hal", rev = "d71434adfb7573c267d4d41a4304a2c556d59231" }
esp-backtrace = { git = "https://github.com/esp-rs/esp-hal", rev = "d71434adfb7573c267d4d41a4304a2c556d59231" }

View file

@ -1,17 +1,22 @@
//! embassy hello world
//!
//! This is an example of running the embassy executor with multiple tasks
//! concurrently.
//% CHIPS: esp32 esp32c2 esp32c3 esp32c6 esp32h2 esp32s2 esp32s3
//% FEATURES: embassy esp-hal-embassy/integrated-timers
#![no_std]
#![no_main]
use defmt::info;
use defmt_rtt as _;
use embassy_executor::Spawner;
use embassy_time::{Duration, Timer};
use esp_backtrace as _;
use esp_hal::{
clock::ClockControl,
peripherals::Peripherals,
system::SystemControl,
timer::timg::TimerGroup,
};
use defmt::info;
#[allow(unused)]
use {esp_backtrace as _, defmt_rtt as _};
use esp_hal::Blocking;
use esp_hal::peripherals::TIMG0;
use esp_hal::timer::timg::TimerGroup;
#[embassy_executor::task]
async fn run() {
@ -23,18 +28,17 @@ async fn run() {
#[esp_hal_embassy::main]
async fn main(spawner: Spawner) {
info!("Init!");
let peripherals = Peripherals::take();
let system = SystemControl::new(peripherals.SYSTEM);
let clocks = ClockControl::boot_defaults(system.clock_control).freeze();
let peripherals = esp_hal::init(esp_hal::Config::default());
let timg0 = TimerGroup::new(peripherals.TIMG0, &clocks);
esp_hal_embassy::init(&clocks, timg0.timer0);
info!("Init!");
// RustRover shows error if I don't write full time here, that's weird
let timg0: TimerGroup<TIMG0, Blocking> = TimerGroup::new(peripherals.TIMG0);
esp_hal_embassy::init(timg0.timer0);
spawner.spawn(run()).ok();
loop {
// info!("Bing!");
info!("Bing!");
Timer::after(Duration::from_millis(5_000)).await;
}
}
}