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 [Remote host closed the connection]
DepthDeluxe has quit [Ping timeout: 246 seconds]
starblue1 has quit [Ping timeout: 272 seconds]
starblue1 has joined #rust-embedded
bpye has quit [Ping timeout: 260 seconds]
bpye has joined #rust-embedded
<re_irc> <Tomaz Bracic> Would like to say Hi to everyone. I've joined this for the first time. :)
<re_irc> <Tomaz Bracic> I work in IoT for the last 7 years, but never on the side of a device. I really like Rust and would like to move into embedded Rust. Up to now, majority of projects involved FreeRTOS and Embedded Linux. But every project had OTA set up. I was searching/reading through some Embedded rust material, I flashed my micro:bit and all that is really nice, but I can't see anything on topic embedded rust FOTA (Firmware...
<re_irc> ... Over-The-Air)? Are there any resources out there covering this topic? Projects? Is it still too early for this in Embedded Rust? I can't imagine using Rust for embedded and not have OTA support?
<re_irc> < (@simon:delire.party)> does the micro:bit have any wireless hardware?
<re_irc> < (@9names:matrix.org)> it has BLE
<re_irc> < (@jan-henrik:baubs.net)> Tomaz Bracic: I worked on this for my master's thesis: https://github.com/jhbruhn/moonboot
<re_irc> It is (the start of) a framework to enable fota for bare-metal rust firmwares. In the end it is a bootloader which manages two memory banks which contain the old and new firmware.
<re_irc> < (@jan-henrik:baubs.net)> It roughly follows the SUIT IETF reference document
<re_irc> < (@frozendroid:matrix.org)> Tomaz Bracic: Check out embassy-boot as well
<re_irc> < (@siho:matrix.org)> Anyone had svd2rust hang on rendering device? I'm feeding it quite a complex .svd file which have broken multiple vendor tools. I just wondered if anyone have any debug tips/tricks other than setting log level debug.
<re_irc> It seems to be trying to process something. At least it's using CPU+Ram 😅
<re_irc> < (@siho:matrix.org)> And it crashed after using 6 hours and 23 GB ram
<re_irc> <Tomaz Bracic> : No it doesn't.
<re_irc> < (@therealprof:matrix.org)> Tomaz Bracic: That's not correct. It has BLE.
<re_irc> < (@siho:matrix.org)> Update on my debugging, ended up with gdb and currently seem stuck in the svd parser so will continue to look for what is causing it to hang
IlPalazzo-ojiisa has joined #rust-embedded
<re_irc> <henrik_alser> Tomaz Bracic: I think drogue-iot have some examples of FOTA on the microbit somewhere on their github? ping
<re_irc> <henrik_alser> (but yeah embassy-boot makes this super painless)
Foxyloxy has quit [Quit: Textual IRC Client: www.textualapp.com]
Foxyloxy has joined #rust-embedded
Foxyloxy has quit [Client Quit]
Foxyloxy has joined #rust-embedded
<wes_> good morning all. i'm new to embedded rust. i have a pretty solid project up and running on the rp2040 pico. i'm able to flash and monitor using cargo embed with rprint! statements. but i'd really like to debug with GDB. can anyone point me to a good walkthrough to get me there?
<re_irc> < (@lulf_:matrix.org)> Tomaz Bracic: Here is an example with FOTA for micro:bit (uses embassy and embassy-boot): https://github.com/drogue-iot/drogue-device/tree/main/examples/nrf52/microbit/ble . You can use the "drgdfu" tool to upload firmware from file or using Drogue Cloud.
<re_irc> < (@lulf_:matrix.org)> There are other FOTA examples there as well https://book.drogue.io/drogue-device/dev/examples.html#_over_the_air_ota_examples
dfgweb has quit [Ping timeout: 264 seconds]
DepthDeluxe has joined #rust-embedded
crabbedhaloablut has quit [Remote host closed the connection]
<re_irc> <kordi1801> Hi there, I'm writing the codegen backend plugin for LLVM. i created a small test which look like:
<re_irc> #![no_main]
<re_irc> use core::panic::PanicInfo;
<re_irc> #![no_std]
crabbedhaloablut has joined #rust-embedded
radens_ has joined #rust-embedded
DepthDeluxe has quit [Ping timeout: 260 seconds]
<re_irc> < (@barafael:matrix.org)> On my 2 laptops running recent versions of Arch Linux, I am having trouble using "defmt" it seems. On my first "defmt::println", I get:
<re_irc> ```ERROR panicked at 'called "Result::unwrap()" on an "Err" value: FrameFormat', src/main.rs:107:30
<re_irc> On older opensuse and ubuntu, I didn't see that error. Anybody knows this or has a solution?
<re_irc> < (@barafael:matrix.org)> * "ERROR panicked at 'called `Result::unwrap()` on an `Err` value: FrameFormat', src/main.rs:107:30"
<re_irc> < (@dirbaio:matrix.org)> sounds like a firmware crash, not a defmt issue
<re_irc> < (@dirbaio:matrix.org)> perhaps you haven't commited "Cargo.lock" and are using different versions of some crate on different computers?
DepthDeluxe has joined #rust-embedded
<re_irc> < (@barafael:matrix.org)> : hmm, Cargo.lock files are checked in. There are many small firmwares which all use defmt, but some use RTIC, embassy, just interrupts, etc., and they all have the same issue
<re_irc> < (@dirbaio:matrix.org)> 🤔 what's at "src/main.rs:107:30" ?
<re_irc> < (@barafael:matrix.org)> oops! Around "107" there's the initial defmt call, but this is actually related to the serial port. I didn't place the pullup resistor, that obviously causes the serial port to produce a FrameFormat
<re_irc> < (@barafael:matrix.org)> With the FTDI connected, everything works again. Thanks, you were right :)
<Socke> how can I put the esp32 into sleep and wake it up once it receives input on uart1? any ideas? haven't found anything in esp-idf-sys, do I have to implement it myself?
<re_irc> < (@chemicstry:matrix.org)> Socke: you should look into esp32 sleep modes documentation and see what parts of the MCU are shut down. I know it has an ultra low power coprocessor, which you could use to wake up the main CPU, but I'm not sure if it has access to UART peripheral
<Socke> thanks! will look into that
<Socke> okay looks like ram is powered down when in deep sleep, so that is not an option for me. but light sleep should work
<Socke> hmm. I'm receiving one data packet per second on the uart. do you think it is worth putting the esp into light sleep in the time between?
<re_irc> < (@chemicstry:matrix.org)> well it depends how fast esp32 can wake up from sleep (see datasheet) and what your power requirements are
limpkin has joined #rust-embedded