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
IlPalazzo-ojiisa has quit [Quit: Leaving.]
cr1901_ is now known as cr1901
Guest7282 has left #rust-embedded [Error from remote client]
AtleoS has joined #rust-embedded
<enaut[m]> Thank you all for the valuable hints and explanations. Starting electronics with rust may not be the easiest path, but it is a fun one... My project that I worked on yesterday was to get the display st7735 working - and because I sometimes was not sure whether the controller is in DFU mode (I already ordered an st-... (full message at <https://catircservices.org/_matrix/media/v3/download/catircservices.org/VCzClaLUHnySImzyQYjcrjVu>)
<enaut[m]> And I can't use the actual delay twice because both functions need a mutable reference...
IlPalazzo-ojiisa has joined #rust-embedded
Guest7282 has joined #rust-embedded
juliand[m] has joined #rust-embedded
<juliand[m]> <enaut[m]> "Thank you all for the valuable..." <- You will have different `Delay` structs for different crates that provide delays. And drivers will often require that you pass a delay that implements embedded-hal's `DelayNs` trait, see https://docs.rs/embedded-hal/1.0.0/embedded_hal/delay/trait.DelayNs.html
<juliand[m]> So the driver does not have to care how exactly the delay is implemented (there is a lot of different ways and they vary between basically every chip model) and can just require the passed `delay` to provide a few functions to generate delays.
<juliand[m]> s/drivers/driver/, s/will//, s/embedded_hal/embedded\_hal/
<juliand[m]> s/will//, s/embedded_hal/embedded\_hal/
M9names[m] has joined #rust-embedded
<M9names[m]> depending on the delay source, you might be able to clone it if you need 2 of them.
badyjoke[m] has quit [Quit: Idle timeout reached: 172800s]
<juliand[m]> <juliand[m]> "You will have different `Delay..." <- iirc you can often do something like `use_delay(&mut Delay{});`, that is, construct the delay right where you need it. But that may not work always.
IlPalazzo-ojiisa has quit [Remote host closed the connection]
thejpster[m] has quit [Quit: Idle timeout reached: 172800s]
uliano[m] has quit [Quit: Idle timeout reached: 172800s]
AtleoS has quit [Ping timeout: 264 seconds]
IlPalazzo-ojiisa has joined #rust-embedded
adamgreig[m] has quit [Quit: Idle timeout reached: 172800s]
diondokter[m] has quit [Quit: Idle timeout reached: 172800s]
<enaut[m]> I added an example for the black pill that you helped me with to the examples list: https://github.com/sajattack/st7735-lcd-examples/pull/7 there may be some things that can be done more idiomatic - if someone cares to review :)
inara has quit [Quit: Leaving]
inara has joined #rust-embedded
AtleoS has joined #rust-embedded
JomerDev[m] has quit [Quit: Idle timeout reached: 172800s]
barafael[m] has joined #rust-embedded
<barafael[m]> what do yall use for thiserror-like definitions on no_std? I use snafu... I don't see the reason for thiserror not working on no_std
sajattack[m]1 has joined #rust-embedded
<sajattack[m]1> <enaut[m]> "I added an example for the black..." <- marged!
IlPalazzo-ojiisa has quit [Ping timeout: 268 seconds]
kenny has quit [Quit: WeeChat 4.2.1]
kenny has joined #rust-embedded