# esp-rs Triage ## 2024-03-18 ### Sergio - Questions: - How to filter tests per targets? - How can we tests https://github.com/taiki-e/semihosting/pull/9? - Xtensa support in embedded-tests needs a Xtensa version of https://github.com/probe-rs/probe-rs/blob/8dc467f3e0a492d0644e183255098432fad4c0f4/probe-rs/src/architecture/riscv/mod.rs#L116C4-L162C2 - Worked on: - HIL - Tested the rebased version of probe-rs testing branch - Setup C3 VM (using rustboard) - Updated VMs - probe-rs is having some issues with flashing C2 ## 2024-03-13 ### Sergio - Questions: - Omar H books reviewing - Worked on: - Update no_std Wokwi examples and templates - Also updated Wokwi no_std builders - espflash: Update stubs and testing - esp-hal HIL - VMs are having some issues where they dont recognize the targets ### Bjoern - Discussion - does having flash-modes `qio` and `qout` in espflash make sense? - just patching the bootloader is not enough to use it - users would need a custom built bootloader anyway - currently we only have the latest docs on docs.esp-rs.org - that's generally fine but slightly annoying for e.g. no-std-training which includes links to specific functions - Worked on - Looked into the issue with ESP32-S2 esp-wifi and TRNG - Looked into the Async-Twai PR, found something and left a note there - Updated the no-std training PR, got merged - Updated "Simplify DMA" PR, got merged - Updated "Runtime Interrupt Binding" PR - should we keep the `#[interrupt]` macro for internal use? - esp-wifi 0.4.0 release - updated esp-ieee802154, merged - updated esp-openthread - weird: https://github.com/esp-rs/esp-hal/discussions/1262 - using the obviously incorrect code makes things work? - using the apparently correct code breaks things? ## 2024-03-11 ### Sergio - Questions: - `esp-hal` HIL documentation - Devkits attaches, wiring on them, whats installed in the VM... - Shall we regenerate stubs and release 3.0.0? - One week since the rc, no issues - Only annoying issue is https://github.com/esp-rs/espflash/issues/556 which migth be related with https://github.com/esp-rs/esp-flasher-stub/issues/45 - This is something that can be fixed in a patch release. - Worked on: - esp-hal HIL - Only working on C6, [my fork](https://github.com/SergioGasquez/probe-rs/tree/feature/testing) is crashing when flashing C3. - Setting VMs - Update esp-template to use unified esp-hal ### Bjoern - Questions: - Request to publish `espsegs` or integrating the functionality in `espflash` - https://github.com/bjoernQ/espsegs/issues/6 - There is a problem where the TRNG functionality breaks esp-wifi for ESP32-S2 - https://github.com/esp-rs/esp-hal/issues/1257 - Given the above, we probably want to wait merging unrelated PRs until we get the TRNG issue sorted out? (and have a patch release out) - How to proceed with https://github.com/esp-rs/esp-hal/pull/1231 (runtime interrupt binding) - are we aiming for a big-bang PR changing all drivers at once or do it driver by driver (which means we can split up the work and we can first get more feedback for the more important drivers) - should we remove enabling interrupts before `main` in case of async and instead enable the needed interrupts when an async function is called (I guess we can do that unconditionally there) - `bleps` gets contributions from the community - probably we want them until `trouble` is at the same level and we can use that (and then contribute to it) - Worked on - Researched https://github.com/esp-rs/esp-hal/issues/1162 - TL;DR accessing flash in an ISR is not good - `#[ram]` isn't enough - some things are obvious while others are not that obvious (e.g. LLVM generating jump-tables in `.rodata`) - got something to work with Rustls (until it stopps working) - it's quite huge and probably projects should use embedded-tls if possible but still much, much nicer than esp-mbedtls ## 2024-03-06 ### Bjoern - Questions: - We eventually want to get rid of features like `async` and `eh1` but it seems that `async` is mutually exclusive to `direct-vectored`? Any ideas? (I currently don't have any ideas for that) - Worked on - had a brief look into Rustls - while Rustls is no-std/alloc we will need our own CryptoProvider - we probably can make it based on https://github.com/rustls/rustls/tree/main/provider-example - tested a bit more and was able to get through the handshake with www.rust-lang.org - interrupt handler binding - guess it's in reasonable shape, probably needs more feedback - DMA API simplification - waiting to get merged after next release - Working on - would like to continue with interrupt handler binding - but probably better to wait until we are all okay with how the drivers should work - once we are aligned I _could_ continue with another driver - but ... probably we shouldn't change all drivers in that PR but use this as the blueprint for other drivers and do it in a joint effort (like we did for the PeripheralRef stuff) - there is not even pressure to get through all of them since the "old way" still works fine - low-prio would like to look more into Rustls (as a side challenge) ### Juraj - Worked on: - "finished" esp-hal/README and migation guide - thanks Jesse - rebased Jesse's P4 uart, new compile errors occured, worked on fixing them - Working on: - P4 UART - would like to start working on either C6 or H2 sleep things (I have it in my PDI) ### Sergio - Worked on: - [Flashing an S3 with baud rate higher than 115,200 causes a timeout](https://github.com/esp-rs/esp-flasher-stub/issues/49) - [Fixed it in `esp-flasher-stub`](https://github.com/esp-rs/esp-flasher-stub/pull/50) - [Udpated S3 stub in `espflash`](https://github.com/esp-rs/espflash/pull/607) - [Large .text segments are merged incorrectly?](https://github.com/esp-rs/espflash/issues/552) - Not sure what to do here. `esptool` also shows errors when using the provided partition table and provided elf. - [Use unified `esp-hal`](https://github.com/esp-rs/esp-template/pull/149) in `esp-template` - `espflash v3.0.0-rc.2` released - Update deps to fix a dependabot vulnerability in `espup`. - Working on: ## 2024-03-04 ### Bjoern - Worked on: - started with first steps towards runtime interrupt handler binding - prepared PR to update no-std training after next esp-hal release - started working on simplifying the DMA API (basically prefer `&mut` instead of moving the driver and buffers) - Working on: - continue with interrupt handler binding - continue with DMA API simplification - plan to look into RusTLS no-std (so we can retire esp-mbedtls some day) ### Sergio - Worked on: - Started investigating https://github.com/esp-rs/espflash/issues/552 - Investigating https://github.com/esp-rs/esp-flasher-stub/issues/49 - Review book/espflash/esp-hal PRs - Working on: - Ill try to finish both investigations and get an rc2 for espflash. - https://github.com/esp-rs/esp-hal/issues/1219 ### Jesse - Worked on: - backlog and refinement - examples documentation - Working on: - esp-hal release prep - migration guides - MSRV CI checks investigation ### Kirill - Worked on: - Multi chip CI docs - Working on - Multi chip CI docs ### Juraj - Worked on: - READMEs and docs - Migration guide - Working on: - flasher investigation S3 - Start P4 UART ## 2024-02-28 ### Jesse - Worked on: Unify wrap up ### Bjoern - Worked on: - addr2line espflash fixups - uart init fixups - i2c main example fix on esp32s2 - xtask working on windows + new run subcommand - esp-wifi using esp-hal unified - Working on: - SPI slave issues and general issue from the unify testing ### Juraj - Worked on: - Fixing unify examples and testing - Top level README documentation - Working: - Migration guide/overview ### Kirill - Worked on: - Multichip documentation - TRNG PR merged - Working on: - continued ### Samuel - Worked on: - Working on: - esp-template ## 2024-02-26 ### Jesse - Worked on: HAL Unification - Working on this week: Fixing up unify examples - Blocked on: ### Juraj Sadel #### esp-hal - "blocked" on lp-timer -> would be nice if we can decide and agree on what would be the best way of adding (and refactoring already implemented lp-drivers): https://github.com/esp-rs/esp-hal/discussions/1193 - looked into P4 UART nothing done here yet -> testing the big PR is the priority - looked into C6 sleep driver as I'm planning to add H2 driver - not sure how to prioritize my work, so if there's anything more urgent that needs another pair of eyes, don't hesitate to ping me ### Bjoern Quentin - help in getting unify-1 past the finish line - unify-1 "aftermath" - i.e. preparing necessary changes in esp-wifi, esp-802154, esp-openthread etc. - look into the addr2line thing (https://github.com/esp-rs/espflash/issues/600) - correct UART init for chips other than C3 (https://github.com/esp-rs/esp-hal/issues/1195) - look into the issues identified when testing unify-1 examples (things seem to be broken on main) - Blocked on: ### Kirill Mikhailov ### worked on: - TRNG #### esp-hal - Higher priority: documentation - Lower priority: take a look into https://github.com/esp-rs/esp-hal/issues/1194 (seems to be pretty good QoL improvement) - `LP_WDT` for `esp32-c6` in https://github.com/esp-rs/esp-hal/issues/1030 - blocked due to https://github.com/esp-rs/esp-hal/discussions/1193 ### Sergio Gasquez #### Worked on - espflash HIL - tested unification examples - espflash issues #### Working on this week - Very short week for me (only working today and tomorrow) ##### espflash - [`cargo-espflash` install issue for MacOS](https://github.com/esp-rs/espflash/issues/597) - Investigate [large .text segments incorrectly merged](https://github.com/esp-rs/espflash/issues/552) - Clear other minor espflash issues/close inactives - Should we do another rc? Any blocking issue other than [#552](https://github.com/esp-rs/espflash/issues/552) #### Blocked on