2578 Commits

Author SHA1 Message Date
Juraj Sadel
fe0a04517f
General esp-radio cleanup (#4017)
* General esp-radio cleanup

* changelog

* MG

* fix build error

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
2025-09-02 16:48:17 +00:00
Fernando Pérez Lara
f2bae5a923
Use div_ceil for buffer size calculation (#4022)
* Use div_ceil for buffer size calculation

Replace manual ceiling division with Rust's built-in div_ceil method for
improved readability and standard library usage in DMA buffer allocation
macro.

* Update CHANGELOG

* Cast buffer size to usize in div_ceil calculation
2025-09-02 16:04:51 +00:00
Björn Quentin
a337554ea1
Make internals private (#4029)
* Make internals private

* CHANGELOG.md
2025-09-02 15:57:36 +00:00
Dániel Buga
01a01ba99e
Select example if none was specified (#4024) 2025-09-02 11:56:55 +00:00
Dániel Buga
60248d2c2f
Fix devguide (#4020) 2025-09-02 07:10:50 +00:00
Dániel Buga
28204ac970
Cpu-driven SHA work queue (#4013) 2025-09-02 06:54:31 +00:00
Kirill Mikhailov
1a5c79ebc7
swap the SDA/SCL order in HIL tests (S2/S3) (#4018) 2025-09-01 16:00:22 +00:00
Juraj Sadel
5f0f7cd573
Fix esp-wifi examples (#4014) 2025-09-01 12:54:29 +00:00
Dániel Buga
55d8228987
Backtrace tweaks (#4012)
* Disallow multiple halt methods

* Warn for nonsense config

* Use DRAM range from metadata
2025-09-01 12:53:02 +00:00
Sergio Gasquez Arcos
af1956d477
[esp-backtrace]: Only halt cores when using the halt-core feature (#4010)
* feat: Only halt cores when using the halt-core feature

* docs: Update changelog

* feat: Remove p4 code

* feat: Use a cs arround the loop

* feat: Only define halt method when required
2025-09-01 11:11:47 +00:00
Dániel Buga
cc50c89a20
Enable UHCI on S3 and C3 (#4011) 2025-09-01 09:56:57 +00:00
Björn Quentin
854941f1b0
Integrate 802.15.4 into esp-radio more (#4003)
* Integrate 802.15.4 into esp-radio more

* Fix H2

* fmt

* Fix

* Deny combination of 802.15.4 and Wi-Fi
2025-08-29 13:10:49 +00:00
Dániel Buga
0d3771cf3a
Enable UHCI on ESP32-H2 (#4008)
* Deduplicate test string

* Enable UHCI on GDMA devices
2025-08-29 11:18:15 +00:00
Dániel Buga
d9229c005f
S3/C3: Remove UHCI1 (#4007) 2025-08-29 10:43:50 +00:00
Dániel Buga
44b6c3daf1
Allow running specific tests (#4009) 2025-08-29 10:20:43 +00:00
Szybet
9fe02b819c
UART using DMA (via UHCI) (#3871)
* working rx

* very sketchy working tx

* uart uhci qa example

* move it

* cleanout

* read working great, write outputs the whole buffer

* tx working but rx can freeze

* fix freezes

* dont use vec

* cleaning

* async weird and not working

* async working?

* into async

* Apply suggested changes

* it compiles

* it also works with 'd

* split into seperate structs

* Add uart config configuration after uhci consumed it

* working Uhci normal

* again aaa sorry

* Apply suggested changes (That I knew how to implement)

* Add proper publicity, reimplement wrappers for internal functions using a macro, repair examples

* Moved to config, uhci normal example doesn't echo

* still not working

* hacky works normal

* apply suggested changes

* Initial docs

* fix messing up rx tx, still doesn't work

* Workaround, working but well

* change back to not pub (Maybe redo to public later, for now just to not mess with the workaround)

* now its working

* forgot to push

* Revert 2 commits, implement drop to showcase problem

* apply some suggested changes

* apply more suggested fixes (async/blocking)

* Everything works

* clearing out warnings

* handle errors

* merge from upstream, make it compile (not sure)

* Apply almost all suggestions

* re add wait for done

* Move errors out of wait_for_done, formating, changelog

* Apply suggested changes

* apply lint suggestions

* docs

* No longer public

* hil tests, rx tx transfer

* implement split

* forgot to format

* apply suggested changes

* Add top level module doc

* cicd now working?

* format, cicd maybe now

* apply suggestion

* format fix

* modify to write
2025-08-29 08:05:17 +00:00
Anthony Grondin
3f29f0571c
feat(example): Add SNTP example to show how to update Rtc to the current time (#3995)
* feat(example): Add SNTP example to show how to update Rtc

* Bump embassy-net to 0.7.0 for compatibility

* Revert back to task-arena to build on stable.
2025-08-29 07:45:04 +00:00
Dániel Buga
5f1c1feed9
I2C: Fix bus clearing/error recovery (#4000)
* Run test with multiple timeouts

* Align hw_bus_clear option with esp-idf

* Generate stop condition after HW bus clearing

* Tweak software bus clearing algo

* Make sure I2C is always reset

* Properly set finished flag even on timeouts

* Fix reset/clear interactions

* Add a note about blocking in Drop

* Add changelog entry
2025-08-28 19:56:28 +00:00
Björn Quentin
b5a7397134
Add a way to get/set calibration data (#4001)
* get/set calibration data

* Simplify

* Rename

* Update CHANGELOG.md
2025-08-28 16:30:34 +00:00
Björn Quentin
63d48b3c04
Use the ram macro instead of assuming the .rwtext section (#4005) 2025-08-28 15:26:22 +00:00
Jesse Braham
1ecb6f5f76
Add BLE examples using trouBLE, move some Wi-Fi examples to qa-test (#3999)
* Move `embassy_wifi_bench`, `wifi_bench`, and `wifi_csi` examples to `qa-test` package

* Remove blocking BLE example, replace Embassy example with trouble-based scanner

* Add BLE `bas_peripheral` example
2025-08-28 09:31:37 +00:00
Dániel Buga
588140a55f
Fix ESP32 crash (#3998)
* Move sleep state reset code to hal init

* Move RTC clock init into HAL init

* Set up RC clocks before XTAL

* Clear calibration start bit when done
2025-08-27 13:03:29 +00:00
Juraj Sadel
6f713c357b
API improvements (#3994)
* API improvments

* MG and changelog
2025-08-27 12:51:25 +00:00
Dániel Buga
e42f7d2e06
More clock refactor (#3993)
* Remove duplicate constants

* Metadata-ify some clock frequencies

* Changelog
2025-08-27 08:50:34 +00:00
Juraj Sadel
e6cdd8eb3c
Add xtask command check-unused-deps and remove unused deps/features (#3967)
* Add xtask command check-unused-deps and remove unused deps/features

* fix changelog

* reviews, move check into nightly-ci

* reviews

* readd document-features to esp-preemt

* Just cargo machete
2025-08-27 08:48:58 +00:00
Dominic Fischer
3f3af9363a
Expose more Camera config options (#3996) 2025-08-27 08:19:35 +00:00
Dominic Fischer
d21e64e9a2
Align I8080 driver pin configurations with latest guidelines (#3997) 2025-08-27 07:46:05 +00:00
Dániel Buga
b62679a175
WDT cleanup and fix tests (#3992)
* Configure WDTs while disabled, clean up

* Wait for less time, disable WDT after test
2025-08-26 14:47:57 +00:00
Dániel Buga
b8b7793bd9
Move SHA algos to metadata (#3991) 2025-08-26 14:38:48 +00:00
Björn Quentin
5089c291bf
ESP32: Enable full 4M of PSRAM (#3990)
* ESP32: Enable full 4M of PSRAM

* CHANGELOG.md

* ESP32: Expose psram_vaddr_mode

* Update esp-hal/src/psram/esp32.rs

Co-authored-by: Dániel Buga <bugadani@gmail.com>

* Update esp-hal/src/psram/esp32.rs

* Fix the fix

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
Co-authored-by: Scott Mabin <scott@mabez.dev>
2025-08-26 13:01:37 +00:00
Dániel Buga
30e5591e88
Tweak XTAL frequency options (#3983)
* Don't estimate XTAL with RC oscillator if not necessary. Accept wider range in HIL tests. Skip calibration if value is valid.

* Init clock before RTC domain
2025-08-26 11:31:41 +00:00
Dániel Buga
92aba1ae6e
Make sure all tests define the app descriptor (#3989) 2025-08-26 10:45:21 +00:00
Jesse Braham
25735229d1
Fix CI example checks (#3988)
* Actually build the examples when not specifying an output directory

* Update `wifi` examples to get them all building again
2025-08-26 10:14:57 +00:00
Björn Quentin
4a8315191b
Clarify the meaning of the coexist feature (#3987)
* Clarify the meaning of the coexist feature

* Update esp-radio/Cargo.toml

Co-authored-by: Dániel Buga <bugadani@gmail.com>

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
2025-08-26 09:43:48 +00:00
Jesse Braham
5e1648f338
Minor documentation improvements for esp-radio (#3986)
* Use correct spelling/case for Wi-Fi in docs

* Link to functions mentioned in doc comments
2025-08-26 08:44:45 +00:00
Dániel Buga
d1681ab1f9
Clean up h2/c6 rtc_cntl code (#3984) 2025-08-26 10:34:17 +02:00
Dominic Fischer
085beda621
Expose cache line configuration (#3946)
* Expose cache line configuration

* cfg!()

* core

* configure memory reservation

* Dedup cache line configs

* improve preprocessor

* missed a spot

* lint

* core
2025-08-25 14:55:11 +00:00
Björn Quentin
f1d7c24464
Fix off-by-one (#3977)
* Fix off-by-one

* CHANGELOG.md

* Refactor

* Add tests

* use Range

* Update esp-bootloader-esp-idf/src/partitions.rs

Co-authored-by: Dániel Buga <bugadani@gmail.com>

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
2025-08-25 14:53:52 +00:00
Jesse Braham
4bfd7a28b6
Mark various enums/structs as #[non_exhaustive] (#3981)
* Mark various enums/structs as `#[non_exhaustive]`

* Update `CHANGELOG.md`
2025-08-25 09:47:56 +00:00
wzhd
6168d3487b
Make UsbSerialJtagTx::flush_tx_async wait when SERIAL_IN_EP_DATA_FREE is not set (#3957)
* Read EP1_CONF_REG to get UART FIFO status in UsbSerialJtagTx::flush_tx_async

If the USB_SERIAL_JTAG_SERIAL_IN bit is 1, UART Tx FIFO is not full.
This makes flush_tx_async read the same bits as flush_tx_nb and the blocking flush_tx.

* Add change of UsbSerialJtag's async function to CHANGELOG

* Apply suggestion from @bugadani

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
2025-08-25 09:21:04 +00:00
Björn Quentin
50265b457c
Have a way to get the booted partition (#3979)
* Have a way to get the booted partition

* CHANGELOG.md

* Add inline docs
2025-08-25 08:14:44 +00:00
Björn Quentin
522ff0bb73
Fix ota-example instructions (#3978)
* Fix ota-example instructions

* fmt
2025-08-22 15:38:30 +00:00
Juraj Sadel
90e3907617
update hil-test and qa-test readme to match reworked xtask (#3975) 2025-08-22 11:15:54 +00:00
Björn Quentin
282415a35e
ESP32-S3: SpiTimingConfigCoreClock is now optional (#3974)
* ESP32-S3: SpiTimingConfigCoreClock is now optional

* CHANGELOG.md

* Fix docs
2025-08-22 11:15:40 +00:00
Björn Quentin
61bc88c8fb
Reduce disk space used when running xtask ci (#3969) 2025-08-22 10:38:44 +00:00
Jesse Braham
bc13bf40f3
Miscellaneous esp-radio cleanup and documentation improvements (#3973)
* Refactor `os_adapter` into directory module

* Clean up Cargo manifest a bit

* Add and improve documentation for `wifi` module

* Address review comment
2025-08-22 10:34:49 +00:00
Scott Mabin
54e9646fbd
fix the changelog (#3968) 2025-08-21 14:17:34 +01:00
Juraj Sadel
0ce9a1c5e7
Split the wifi feature into wifi-ap, wifi-sta and wifi-eap (#3924)
* Split wifi feature into wifi-ap, wifi-sta and wifi-eap

* changelog

* Revert most of the changes, keep wifi and wifi-eap features only

* wifi-eap is unstable, include this feature into CI tests and documentation
2025-08-21 09:47:42 +00:00
Juraj Sadel
68345293ed
More consistent naming of interrupt-related functions (#3933)
* More consistent naming of interrupt-related functions

* MG entry

* changelog

* use correct package for MG

* fix hil

* other drivers

* address review comments
2025-08-21 09:46:04 +00:00
Björn Quentin
9e4da54b2a
Build xtask via xcheck with --quiet (#3965) 2025-08-20 18:16:05 +00:00