<vollbrecht[m]>
avr-hal-generic already supports i2c afaik, so you probably only need to create a specific attiny-hal i2c driver and get it automatically implemented against e-hal
<vollbrecht[m]>
so its not about having an e-hal driver rather an i2c driver at all for that target
<leonardvdj[m]>
Hey y'all 👋 Was looking around the awesome-embedded-rust repo and couldn't quite see, is there any lib for the ST7796 SPI display driver? I got the esp32-3248S035C board
<leonardvdj[m]>
* esp32-3248S035C board, on the shipped c++/ino examples the TFT_eSPI lib is used.
Guest7282 has left #rust-embedded [Error from remote client]
<vollbrecht[m]>
ah wait its a 7796 i am not 7789, maybe it needs some adoption
<leonardvdj[m]>
You mean in the sense of, I have to add support to mipidsi for it? Not really sure how to get started with that 😄
<vollbrecht[m]>
<leonardvdj[m]> "You mean in the sense of, I have..." <- the right place for talking displays and stuff for embedded is https://matrix.to/#/#rust-embedded-graphics:matrix.org maybe you find something good there for it
<leonardvdj[m]>
Ah, thank you :)
emerent has quit [Ping timeout: 246 seconds]
emerent has joined #rust-embedded
notgull has joined #rust-embedded
notgull has quit [Ping timeout: 256 seconds]
notgull has joined #rust-embedded
notgull has quit [Ping timeout: 264 seconds]
crabbedhaloablut has joined #rust-embedded
Guest7282 has joined #rust-embedded
notgull has joined #rust-embedded
notgull has quit [Ping timeout: 256 seconds]
Ralph[m] has joined #rust-embedded
<Ralph[m]>
<onkoe[m]> "hey there! does anyone know if..." <- > <@onkoe:matrix.org> hey there! does anyone know if there's an on-going effort to get `avr-hal` working with `embedded-hal@1.0.0-r3`? i have a small library crate that i just ported to the new `embedded-hal` (since it's releasing soon), but i'd really like to test with my Arduino before i even... (full message at
<kriomant[m]>
Hello. I have strange glitches which seems like memory is exhausted. It on Arduino Uno R3 with only 2kb sram. Is there any way to view stack consumption of each function? I've found cargo-call-stack, but it fails with «failed to parse LLVM IR». Any other solution?
<adamgreig[m]>
not sure how well it works on AVR though
<adamgreig[m]>
watch out for functions that return large items, it's easy to end up with several copies and blow your stack that way
<kriomant[m]>
<adamgreig[m]> "not sure how well it works on..." <- Unfortunately, it seems it relies on llvm linker, while avr-gcc is used: "avr-gcc: error: unrecognized command line option '-mllvm=-lto-embed-bitcode=optimized'"
dngrsspookyvisio has quit [Quit: Idle timeout reached: 172800s]
therealprof[m] has quit [Quit: Idle timeout reached: 172800s]
ragarnoy[m] has quit [Quit: Idle timeout reached: 172800s]
djdisodo[m] has joined #rust-embedded
<djdisodo[m]>
<kriomant[m]> "Hello. I have strange glitches..." <- i've done such debugging once so i can be a help
<djdisodo[m]>
getting stack address is relatively simple
<djdisodo[m]>
you may want to use inline assembly because compiler might optimize it but i got one other method that doesn't use inline assembly
<djdisodo[m]>
put volatilecell(u8) into variable and cast reference of it to raw pointer and u16, print
<djdisodo[m]>
the stack address starts from 2048 + 255 and decreases
<djdisodo[m]>
this means that 2048 + 255 - (current stack address) is amount of stack memory used
<djdisodo[m]>
however available stack memory is likely smaller than 2048 bytes in the first place, it's because lot of things like static variable gets stored in sram
<djdisodo[m]>
you can get how much of sram is used when program loaded by checking size of .data in compiled binary
<djdisodo[m]>
compile in release profile and also check this
<firefrommoonligh>
Its timer module is a thin wrapper over the reg level API (which, thanks Nordic, is remarkably usable)
<firefrommoonligh>
I ended up wrapping that with a more trad/high-level Timer struct etc, FWIW
<firefrommoonligh>
Speaking of remarkably usable register APIs: Semtech's API and DS is remarkably good, at least for sx126x
<firefrommoonligh>
s/remarkably good/great/
notgull has quit [Ping timeout: 264 seconds]
notgull has joined #rust-embedded
<TristramGrbener[>
So I tried exploring a bit embassy. Sounds exiting (and overwhelming for someone only comfortable coding for a desktop with an OS).
<TristramGrbener[>
Am I supposed for now to keep working in the embassy tree, or did I miss something ?
<TristramGrbener[>
I tweaked the examples, and tried to extract it to a separate project. But it seems that the crates aren’t published (e.g. embassy_nrf) on crates.io.
<PeterHansen[m]>
<diondokter[m]> "Ok, I've been fuzzing `sequentia..." <- How would you find other items if the CRC is bad? Is the CRC covering the length, or is there not a length, or is the length somehow validated separately from the CRC?
<TristramGrbener[>
In those examples, in the Cargo.toml, we have things like : embassy-executor = { version = "0.4.0", path = "../../../../../embassy-executor" with a relative path to the crate, and not fetching it from crates.io, that is what surprises me