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
AdamHorden has quit [Quit: Adam Horden | adam.horden.me]
starblue has quit [Ping timeout: 245 seconds]
starblue has joined #rust-embedded
AdamHorden has joined #rust-embedded
AdamHorden has quit [Client Quit]
AdamHorden has joined #rust-embedded
AdamHorden has quit [Ping timeout: 255 seconds]
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #rust-embedded
AdamHorden has joined #rust-embedded
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #rust-embedded
K900 has quit [Quit: Idle timeout reached: 172800s]
starblue has quit [Ping timeout: 260 seconds]
starblue has joined #rust-embedded
M9names[m] has quit [Quit: Idle timeout reached: 172800s]
RoyBuitenhuis[m] has quit [Quit: Idle timeout reached: 172800s]
ithinuel[m] has quit [Quit: Idle timeout reached: 172800s]
mabez[m] has quit [Quit: Idle timeout reached: 172800s]
IlPalazzo-ojiisa has joined #rust-embedded
marmrt[m] has quit [Quit: Idle timeout reached: 172800s]
AdamHott[m] has quit [Quit: Idle timeout reached: 172800s]
AdamHorden has quit [Ping timeout: 264 seconds]
AdamHorden has joined #rust-embedded
haobogu[m] has joined #rust-embedded
<haobogu[m]> Hi, I'm writing a driver library which uses BLE. I found nrf-softdevice for nRF and bleps for esp, both worked well for me. But I want to make my driver library portable to both. There is already something in C, for example, https://github.com/h2zero/NimBLE-Arduino. I'm wondering does similar thing exist in rust embedded world?
thejpster[m] has joined #rust-embedded
<thejpster[m]> Who’s in London next week for Rust Nation?
rustyboy[m] has joined #rust-embedded
<rustyboy[m]> Hey! Has anyone tried programming the SIPEED M1S Dock(the board that has the BL808 chip) with Rust? I would like to know if it's possible to program it using Rust before purchasing it. It is pretty feature packed: RISC-V 480 mhz, 64 mb dram, wifi, bt, ble and others.
<rustyboy[m]> <haobogu[m]> "Hi, I'm writing a driver library..." <- Can I program this: Nordic nRF52840 using your project?
almindor[m] has quit [Quit: Idle timeout reached: 172800s]
dirbaio[m] has quit [Quit: Idle timeout reached: 172800s]
<rustyboy[m]> rustyboy[m]: I have a https://nicekeyboards.com/nice-nano board around and I don't know how to program it without ZMK
<rustyboy[m]> yea, I saw that too, they also ship the wifi firmware as blobs and that sucks
david[m] has joined #rust-embedded
<david[m]> Seems possible to run, I suppose: https://github.com/bouffalolab/bl-pac/tree/main
<david[m]> Although it looks like there's a bunch of peripherals with implementation TODO so if you want to be doing any wireless stuff you'll probably be treading some new ground
<david[m]> I think I've seen luojia65 around so maybe they have some wisdom
<rustyboy[m]> <rustyboy[m]> "I have a https://nicekeyboards...." <- I am really curious if you could add support for it if you have only the pinout. I will help with testing if you want.
<f0rte[m]> <rustyboy[m]> "yea, I saw that too, they also..." <- A lot of chips ship the wifi firmware as blobs unfortunately :/
mabez[m] has joined #rust-embedded
<mabez[m]> <thejpster[m]> "Who’s in London next week for..." <- Me!
khionu[m] has joined #rust-embedded
<khionu[m]> I'm starting to work with ESP for the first time, and I have an S3 here. I'm having a hard time finding information about the processor. Is it ARM based?
<khionu[m]> Also any recommendations for an embedded db that could run on an S3?
<khionu[m]> I don't have any feature constraints, just don't want to think too much about how I persist my data.
K900 has joined #rust-embedded
<K900> ESP32-S3?
<K900> It's either Xtensa or RISC-V and I think that one is Xtensa
<khionu[m]> Yeah
<khionu[m]> Xtensa
<khionu[m]> But I've never heard of that brand before now
<K900> It's not really a brand
<khionu[m]> IP, line, whathaveyou. It's my first time seeing such a CPU
<K900> It was originally a DSP core
<K900> And isn't really used by much
<K900> I assume Espressif chose it because it was cheap, and it was cheap because no one was buying it
<thejpster[m]> It’s from Tensilica who were bought by Cadence.
<thejpster[m]> And yeah, I suspect you compete with Arm by being cheaper than Arm
<K900> And Cadence isn't really in the high end CPU core business to begin with
<K900> Or even middle end
<K900> They mostly sell tools and fixed function IP
<K900> I'm pretty sure they bought Tensilica for the patents and not the actual products, too
vollbrecht[m] has joined #rust-embedded
<vollbrecht[m]> khionu: if you want to learn more about a specifc esp, the first thing is to get the "technical reference manual" to that esp chip. You can find it for any esp variant from esp32 to esp32s3 to the c3 and so on.
<khionu[m]> vollbrecht[m]: I did that, but they don't specify much
<khionu[m]> "Xtensa® dual-core 32-bit LX7 microprocessor" is what they have
<K900> Yeah, that's all you're really going to have
<khionu[m]> And searching for that doesn't even get me a list of models
<K900> There are no models, Cadence sells the design
<K900> As in, the schematics, basically
<khionu[m]> I really just need to know if it's big or little endian
<K900> And the actual vendor, which is Espressif, integrates that design into their chip
<K900> And sells the final product
<khionu[m]> Ahh, like how RISCV is done
<K900> So there is no Cadence or Tensilica chip in there, Espressif bought the core design from them and built the rest of the SoC around it
<K900> And then they sent the entire chip design to someone (I'm guessing TSMC) to actually produce it
<mabez[m]> khionu: Take a look at https://docs.esp-rs.org/book/ it should explain what you need
<mabez[m]> As for a database, that could mean quite a few things, what is your use case for the DB? What are you planning to store?
<khionu[m]> A few settings per users for a small (<100) user base
<khionu[m]> Like, it's small enough where I'd feel comfortable just saving a CBOR file outside of embedded dev
<khionu[m]> Don't need any DB features, per se, just don't want to worry about managing the storage besides maybe writing some glue to the backing store
<mabez[m]> Some kind of NVS key store would be appropriate then I think, there is one ready for use in esp-idf-hal, or you can find some other third party crates that build on top of embedded-storage
<mabez[m]> <K900> "I assume Espressif chose it..." <- Definitely not the case; those licenses are certainly not cheap, I mean look at the market cap of Cadence considering no one really knows about them vs ARM 😂
<K900> A lot of people know about Cadence, just not for those reasoms
<K900> s/reasoms/reasons /
GrantM11235[m] has joined #rust-embedded
<GrantM11235[m]> khionu: I haven't used this, but it sounds like what you are looking for https://crates.io/crates/sequential-storage
diondokter[m] has joined #rust-embedded
<diondokter[m]> <GrantM11235[m]> "khionu: I haven't used this, but..." <- I think I've had someone use it on ESP before, so I think it should work!
<khionu[m]> Alrighty, I'll give that one a shot. Thanks!
<khionu[m]> Is esp-idf-hal a drop-in replacement for esp-hal, with respect to how you might use it with Embassy?
<diondokter[m]> khionu[m]: If you've got questions about the crate, feel free to open an issue! Seems like I'll be working on that crate tomorrow anyways
<khionu[m]> Heh, alrighty, will do!
<khionu[m]> Actually, looks like I don't need esp-idf for sequential-storage?
<diondokter[m]> khionu[m]: Anything that implements the embedded-storage traits will do
<khionu[m]> <diondokter[m]> "Anything that implements the..." <- "will do" meaning "will need esp-idf", or "will just work"?
<diondokter[m]> Will just work. No specific executor or HAL is required
<diondokter[m]> I've used it for nrf, external flash and STM flash 
<vollbrecht[m]> in other words, the HAL provides a implementation of "embedded-storage" than you don't need to do anything, if the HAL doesn't than you need to provide a Implementation of embedded-storage to sequential storage.
<khionu[m]> Alrighty
<khionu[m]> Thanks!
<khionu[m]> What does the rt feature on the pac crates enable?
RoyBuitenhuis[m] has joined #rust-embedded
<RoyBuitenhuis[m]> That seems to come from here: https://docs.rs/svd2rust/latest/svd2rust/#the-rt-feature
sajattack[m]1 has joined #rust-embedded
<sajattack[m]1> cortex-m-rt generally, I think it stands for "runtime"
<khionu[m]> <RoyBuitenhuis[m]> "That seems to come from here..." <- Thanks
adamgreig[m] has quit [Quit: Idle timeout reached: 172800s]
M9names[m] has joined #rust-embedded
<M9names[m]> <rustyboy[m]> "Hey! Has anyone tried programmin..." <- yes, i have. https://github.com/9names/bl808_rust_playground
<M9names[m]> an espressif board or pico-w would be a better place to invest your time and money.
<haobogu[m]> <rustyboy[m]> "I have a https://nicekeyboards...." <- Currently you have to flash nrf52840 with a debugging probe. It’s possible to flash when just have usb connected imo, just like zmk. a little more work has to be done. I’ll investigate this week.