ChanServ changed the topic of #rust-embedded to: Welcome to the Rust Embedded IRC channel! Bridged to #rust-embedded:matrix.org and logged at https://libera.irclog.whitequark.org/rust-embedded, code of conduct at https://www.rust-lang.org/conduct.html
<ainedixon[m]> <adamhott[m]> "here's my template you can use..." <- Thanks, it helps
<JamesMunns[m]1> <ainedixon[m]> "Thanks, it helps" <- If there's something that was missing in the book, could you please open an issue, mentioning which part from Adam's repo helped you? I'd like to make sure we get this improved!
chek_ has quit [Ping timeout: 268 seconds]
chek has joined #rust-embedded
<adamhott[m]> <JamesMunns[m]1> "If there's something that was..." <- Bart M. helped me spruce this template up, he's aware of it. He wanted to include it in the book I believe.
<Henk[m]> I think opening an issue wouldnt hurt regardless
BenPh[m] has quit [Quit: Idle timeout reached: 172800s]
IlPalazzo-ojiisa has joined #rust-embedded
agg has quit [Ping timeout: 256 seconds]
agg has joined #rust-embedded
ivche has quit [Remote host closed the connection]
ivche has joined #rust-embedded
pronvis has joined #rust-embedded
Foxyloxy_ has joined #rust-embedded
Foxyloxy has quit [Read error: Connection reset by peer]
sourcebox[m] has quit [Quit: Idle timeout reached: 172800s]
embassy-learner[ has quit [Quit: Idle timeout reached: 172800s]
<MurrayToddWillia> <M9names[m]> "Murray Todd Williams: does..." <- > <@9names:matrix.org> Murray Todd Williams: does your project have a dependency on portable-atomic with the critical-section feature enabled?
<MurrayToddWillia> > That being missing would be my guess
<MurrayToddWillia> I don't know how to trace what is pulling portable-atomic in. I'm literally just starting with the base rp-pico 0.9.0 that comes with the rp2040-project-template. You can see my current configuration here: https://github.com/murraytodd/rp2040-blinky
<MurrayToddWillia> MurrayToddWillia: @9names: if I just add the embedded-hal-bus 0.2.0 to that `Cargo.toml`, the error appears.
<M9names[m]> You can check where dependencies come from using cargo tree
<M9names[m]> But it doesn't tell portable-atomic how to do its job, because there's multiple incompatible ways that could happen.
<M9names[m]> I'm not at a PC but I'm pretty sure embedded-hal-bus depends on portable-atomic to use atomic operations on targets that don't support them, like rp2040.
<M9names[m]> Which is why I suggested that if you do so, it might just fix your problem.
<MurrayToddWillia> Okay, so for my own understanding, let me play things back. This has to do with the fact that the rp2040 has two cores, so rather than assuming `portable-atomic` should use it's own critical-section based on single-core assumptions, we have to tell `portable-atomic` to expect an external implementation, which in fact has already been included by the `critical-section` crate that was already included by `rp2040-pac`.
<MurrayToddWillia> Ergo, adding `portable-atomic = { version = "1.6.0", features = ["critical-section"] }` to my own `Cargo.toml` is necessary so that it knows to include its own `compare_exchange` method. (I did add that to my `Cargo.toml`, and the issue appears to have gotten resolved.)
<MurrayToddWillia> * Okay, so for my own understanding, let me play things back. This has to do with the fact that the rp2040 has two cores, so rather than assuming `portable-atomic` should use it's own critical-section based on single-core assumptions, we have to tell `portable-atomic` to expect an external implementation, which in fact has already been included by the `critical-section` crate that was already included by `rp2040-pac`.
<MurrayToddWillia> Ergo, adding `portable-atomic = { version = "1.6.0", features = ["critical-section"] }` to my own `Cargo.toml` is necessary so that it knows to include its own `compare_exchange` method. (I did add that to my `Cargo.toml`, and the issue appears to have gotten resolved.)
<MurrayToddWillia> If that's all correct, would it make sense to either suggest the `rp2040-project-template` include that line by default or for either the `rp-pico` or `rp2040-hal` projects explicitly add that feature? I'd like to figure out if there's a good way to save the next beginner from this stumbling block.
ViktorDemk[m] has joined #rust-embedded
<ViktorDemk[m]> Hello, does anyone here have some experience with lora-rs? I'm wondering how I can change the tx params like datarate, bandwidth and spreading factor. I'm running a stm32wle5
pronvis has quit [Quit: My Unrecognized Mac has gone to sleep. ZZZzzz…]
gdamjan[m]1 has quit [Quit: Idle timeout reached: 172800s]
Makarov has joined #rust-embedded
Makarov has quit [Ping timeout: 250 seconds]
chek has quit [Ping timeout: 264 seconds]
chek has joined #rust-embedded
NickStevens[m] has quit [Quit: Idle timeout reached: 172800s]
vollbrecht[m] has quit [Quit: Idle timeout reached: 172800s]
zachariasfrings[ has quit [Quit: Idle timeout reached: 172800s]
embedded-enthusi has joined #rust-embedded
embedded-enthusi has quit [Remote host closed the connection]
embedded-enthusi has joined #rust-embedded
embedded-enthusi has quit [Remote host closed the connection]
embedded-enthusi has joined #rust-embedded
Alistair[m] has quit [Quit: Idle timeout reached: 172800s]
IlPalazzo-ojiisa has quit [Remote host closed the connection]
embedded-enthusi has quit [Ping timeout: 252 seconds]