esp-rs/esp-hal repo issues and pull requests
Start i2s circular with borrow #3612 [AstrickHarren]
This should partially fix #3285 basically we don't take owner ship of i2s when starting transfer. Not sure if this...
Use new instablility release, remove rustdoc json hacks #3834 [MabezDev] automation
ratatui/instability#23 and esp-hal/xtask/src/semver_check.rs Lines 111 to 237 ...
Update instability #3836 [bugadani] skip-changelog
Closes #3834
re-building `esp-riscv-rt` on top of `riscv-rt` 0.13.0 #2390 [romancardenas] package:esp-riscv-rt
One of the main fresh features of riscv-rt 0.13.0 is that, together with riscv 0.12.0, now it should be possible to...
Move irrelevant global symbols away from esp-wifi #3823 [MabezDev] package:esp-wifi
cc: #2865 mostly, but I'm sure there are others in some of the compat modules. If we really need them, we should try...
Examples restructure #3830 [MabezDev] examples
Our examples are not great. Some are fine to keep, but I think they can be organized better. I propose the following...
Panic in exception handler #3838 [bugadani]
With this change, esp-backtrace can print exceptions even if it is not the panic handler. To be quite honest, maybe...
Add SOC config that is hidden from the peri table #3839 [bugadani] skip-changelog
Remove all bleps and blocking network stack examples #3831 [MabezDev] examples
It's pretty clear to me two things: async for any kind of comms is the future troubleBLE and embassy-net are the...
Mark free standing functions in `wifi` module as unstable #3821 [MabezDev] package:esp-wifi
I'm not convinced wifi_state etc are ready to be stable. With wifi_state, we can definitely miss events, I think we...
Make features other than wifi unstable #3820 [MabezDev] package:esp-wifi
Unlike esp-hal, we probably want to use instabilities unstable-feature flags for the things we're not stabilizing...
cleanup `esp-wifi` README #3841 [playfulFence] skip-changelog
Make it clear that examples of usage with trouBLE might be found in the aforementioned project's repo. Also, some...
use riscv 0.14.0 #3842 [bjoernQ] skip-changelog
Thank you for your contribution! We appreciate the time and effort you've put into this pull request. To help us...
Rng should rate limit to avoid draining entropy before it is added by the hardware #2443 [MabezDev] bug peripheral:rng
See...
Explore a `getrandom` API for RNG (and in the future crypto) #3826 [MabezDev] RFC peripheral:rng
I'm not convinced that owned crypto and rng make sense in the long term. It's pretty rare for only one thing to want...
TRng should not own the RNG peripheral #2372 [nishanthkarthik] peripheral:rng
Motivations Wifi on esp32c6 requires an Rng instance. TLS requires a Trng instance. But both Rng and Trng consume...
Fix GPIO matrix typo #3840 [bugadani] skip-changelog
This PR fixes an issue where trying to use signals that can't be routed through the GPIO matrix causes a panic.
Rewrite RNG #3829 [bugadani]
This PR decouples the RNG entropy source and the RNG random number generator. It addresses #3826 while at the same...
Encode AES key lengths & modes in metadata #3843 [bugadani] skip-changelog
Sha algos as metadata #3844 [bugadani] skip-changelog
Restore printing exception context #3850 [bugadani] skip-changelog
This was accidentally removed in #3838
Add HW DTR support (port of #2994) #3796 [i404788]
Submission Checklist 📝 I have updated existing examples or added new ones (if applicable). I have used cargo...
Bump `embassy-usb` version #3848 [HaoboGu]
Thank you for your contribution! We appreciate the time and effort you've put into this pull request. To help us...
embassy-usb and embassy-usb-driver have released a new version, when using it with esp32s3, the USB module broken...
Yield in usleep #3852 [bugadani] skip-changelog
This PR lets esp-wifi tasks yield to other tasks while sleeping. The scheduler would preempt longer sleep times...
panic timed eventq_get not yet supported when central l2cap device disconnects #3760 [Szybet] package:esp-wifi status:awaiting-response
Bug description I'm talking about this line: esp-hal/esp-wifi/src/ble/npl.rs Line...
Implement NPL timed dequeue #3762 [bugadani]
Closes #3760 Untested as I can't reprouce the original issue.
Fix ble crash #3854 [bugadani]
This PR fixes the second problem reported in #3760 by inserting a short sleep before deinitializing the BLE...
feat(esp-wifi): add Country Code #3837 [denysvitali]
NoteFeature was "vibe-coded" with Claude Sonnet 4. Tested and it works for me. Submission Checklist 📝 I have...
add embassy #[main] callback passing #3813 [dragonnn]
Submission Checklist 📝 I have updated existing examples or added new ones (if applicable). I have used cargo...
Don't try to write FUNC_IN_SEL_CFG of non-matrix signal #3849 [bugadani] skip-changelog
This PR stops after selecting the digital function, for signals that can't be routed through the GPIO matrix....
esp-wifi: remove bunch of FIXMEs and clippy cleanup #3851 [JurajSadel] skip-changelog
esp-hal: i2s: add a way to stop I2sWriteDmaTransferAsync #3847 [anarsoul]
Motivations Currently there is no way to stop I2sWriteDmaTransferAsync Solution Implement stop() method, like in...
esp32s3 wifi station mode can scan but found nothing after wakeup from sleep #3751 [vult0306] bug low power package:esp-wifi
Case 1: Start esp32s3 wifi dhcp example, can scan and connect to wifi normally. Case 2: When device is up, put...
I2C: low level transaction builder #2598 [bugadani] peripheral:i2c 1.0 non-breaking
We should expose a low level interface, that passes a number of commands to the driver. This allows users to freely...
sdio: initial SDIO HAL implementation #3503 [rmsyn]
Thank you for your contribution! We appreciate the time and effort you've put into this pull request. To help us...
enabling psram feature causes panic after updating to esp-hal 1.0.0-beta.1 and espflash 4.0 #3765 [kendra-pdx] bug peripheral:psram
Bug description Some combination of espflash (4.0.1) and esp_hal (1.0 beta 1) seem to break psram on my ESP32S3...
Stop using `ok` in esp-wifi/esp-ieee802154 crates codebase. #3853 [playfulFence] skip-changelog
closes #2755 I'm not entirely sure if that's it for resolving the issue though. there's another usage of .ok() in...
`ok()` used for error handling #2755 [ede1998] bug package:esp-ieee802154 package:esp-wifi
Thanks for maintaining and developing ESP HAL. It was really fun when I developed my previous project with it. Bug...
Use riscv-rt's startup code #3857 [bjoernQ] skip-changelog
Thank you for your contribution! We appreciate the time and effort you've put into this pull request. To help us...
Move RSA operand sizes to metadata (including AES fallout) #3845 [bugadani]
Fold ieee801215 into esp-rf #3817 [MabezDev] package:esp-ieee802154 package:esp-wifi
Whilst the ieee driver is pure rust, both share the same phy init blobs, therefore I think we should merge these...
Rename `esp-wifi-sys` to `esp-radio-sys` #3859 [playfulFence] RFC
As an extension of #3815
Clean up NPL a bit #3764 [bugadani] skip-changelog
This PR attempts to clean up NPL a bit by making the following changes: Take mut pointers where applicable. The C...
Strip `EspRadio` prefixes across the `esp-radio` codebase #3862 [playfulFence] package:esp-wifi
Some modules have interesting descriptions in docs #3856 [bjoernQ]
Some modules show unhelpful information as their description on the index page
Move out the builtin scheduler to esp-preempt crate #3818 [MabezDev] package:esp-wifi
This is hopefully simpler than it sounds, and given that we already have another scheduler impl used with esp-wifi...
Create `esp-preempt-driver` #3819 [MabezDev]
In here will live the current Scheduler trait (might need some name bikeshedding), and impl macro. This crate is...
Split out preempt driver and default impl #3855 [bugadani]
Closes #3818 Closes #3819 Additional changes include: usleep is now part of the scheduler implementation added a...
esp-config: potential license compatibility issue #3822 [kaspar030]
esp-config depends on evalexpr, which unfortunately changed its license to AGPLv3 starting with version 12.0.0. As...
Replace evalexpr #3860 [bugadani] skip-changelog
Somni is a very young language at this point, but the expression evaluator should be good enough to replace...
Remove raw interrupt map address #3863 [bugadani] skip-changelog
Move TIMG clock source defaults to metadata #3864 [bugadani] skip-changelog
This PR isn't perfect, but at least we don't need to store constants in code. Ideally, we'd describe the available...
Hide C types from public API #3824 [MabezDev] package:esp-wifi
We have to be especially careful with our From/Into impls, these can leak these types into he public API easily.
Move REF_TICK and RC_FAST_CLK to metadata #3866 [bugadani] skip-changelog
Rename esp-wifi to esp-rf #3815 [MabezDev]
I hope this is not too controversial. For a while, esp-wifi has had more things in it other than WiFi. Imo we should...
Should esp-wifi take ownership of ADC2? #2150 [Frostie314159] package:esp-wifi chip:esp32
Motivations On the ESP32, you can't use the ADC2 peripheral, during Wi-Fi operations, which the current API, this is...
Rename `esp-wifi` to `esp-radio` (part 1) #3858 [playfulFence] skip-changelog
Closes #3815 Second PR will rename esp-wifi-sys to esp-radio-sys, but it is more of an internal thing, so I assume...
cc #3821, #3820, #3825 This will most likely have a follow up PR focusing on esp-wifi feature (#3700 (comment)).
Get rid of `EspRadio` prefix in `esp-radio` structs #3869 [playfulFence]
closes #3862
Reorganize PSRAM #3867 [bugadani] skip-changelog
This PR moves PSRAM code around to fix part of the rustdoc issue in #3856
Reorganize the efuse module #3868 [bugadani] skip-changelog
Closes #3856
Fold `esp-ieee802154` package into `esp-radio` #3861 [playfulFence]
closes #3817 this PR is based on #3858, so it can't be merged before it
Use move based api for I2S #3639 [AstrickHarren]
This is to fix #3285, as in #3612 @Dominaezzz laid out reasons for a move-based i2s API so I thought I may help a...
Dominaezzz: First batch of comments. Overall looks good, I'm excited to land this
Dominaezzz: Both are correct but the one in the comment is certainly clearer.
Dominaezzz: Feel free to delete these structs from the dma module too, they won't be needed anymore
Dominaezzz: Yes, DmaRxBuffer guarantees this. You can drop this comment,
Dominaezzz: This should more explicit and say Waits for the [DmaTxInterrupt::Done] interrupt.
AstrickHarren: Thanks a lot for PR reviewing @Dominaezzz appreciated!
Dominaezzz: You can now delete the prepare_transfer_without_start function from the dma module too
Dominaezzz: Do you actually need to listen to this here? This should be up to the user
bjoernQ: Happy to see the workaround go away!