2005 Commits

Author SHA1 Message Date
Björn Quentin
d3f3d81d9e
Prepare linker scripts for ESP-IDF application descriptor (#3124)
* Prepare linker scripts for app-desc

* Explain flash offset

* Explain `rotext_dummy`

* Test app-descriptor

* fmt

* embedded-storage
2025-03-06 10:23:26 +00:00
Dániel Buga
c382303ea6
Move xtensa-lx-rt-procmacros to repo root (#3221)
* Pass CI=1 to lint_packages

* Move xtensa procmacros to repo root

* Fix lint issues
2025-03-06 09:17:16 +00:00
Anthony Grondin
e1efec884d
feat(esp-println): Add timestamp to logging (#3194)
* feat(esp-println): Add timestamp to logging

- Introduce new `timestamp` feature to enable logging with a timestamp in millis, in the same format as the bootloader.

* Add CHANGELOG.md entry
2025-03-06 09:07:29 +00:00
Björn Quentin
f58d295cb0
ESP32/ESP32-S2: I2C Workaround (#3199)
* FIFO_SIZE vs CHUNK_SIZE

* I2C: ESP32/S2 workarounds

* Docs

* Fix test

* CHANGELOG.md

* Test empty writes, again

* Empty Write

* Comments

* Add TODO comment

* Use real FIFO size

* Docs

* Chunks
2025-03-06 08:13:18 +00:00
Robert Bastian
e598146175
Use raw u64 instead of chrono on RTC API (#3200)
* and again

* examples

* fix?

* tz

* after snippet

* fmt

* clippy

* ugh

* fix

* ugh

* remove examples

* reset xtask

* Update esp-hal/CHANGELOG.md

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>

---------

Co-authored-by: Robert Bastian <me@robertbastian.dev>
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
2025-03-05 20:01:41 +00:00
Dániel Buga
60e0127dfb
Document that subcommand help exists (#3218) 2025-03-05 17:30:31 +00:00
Juraj Sadel
ef1b3cf794
uart: minor docs improvements (#3216)
* uart: docs improvement, re-shuffle and merge impl blocks

* Add a note into developer-guidelines
2025-03-05 17:30:20 +00:00
Björn Quentin
154f3204d4
Mark unstable parts of config unstable (#3215)
* Mark unstable parts of config unstable

* Unstable
2025-03-05 14:41:12 +00:00
Dániel Buga
bcb64816bf
Document driver modes. (#3217)
* WIP

* Explain Async a bit better

* Update esp-hal/src/lib.rs

Co-authored-by: Scott Mabin <scott@mabez.dev>

* Improve consistency

* Disallow constructing driver modes

---------

Co-authored-by: Scott Mabin <scott@mabez.dev>
2025-03-05 14:09:31 +00:00
Dániel Buga
f535f1c6fb
Fix flip-link, make SSP configurable (#3203)
* Test flip-link

* Add todo

* Rebuild if linker files change

* Let espsegs show .stack

* Try to fix flip_link

* Changelog

* Make SSP configurable

* Substitute config values
2025-03-05 14:09:17 +00:00
Dániel Buga
eb771e1652
Fix UART with_tx/rx on the Async driver (#3212) 2025-03-05 11:38:45 +00:00
enelson1001
be7794bce0
RMT fix filter threshold max value (#3192)
* RMT fix filter threshold max value

* RMT - remove filter threshold check no longer needed

* Forgot to save file before pushing

* Tried running xtask fmt packages again

* Update entry in change log
2025-03-05 10:59:15 +00:00
Dániel Buga
f2b2d37f24
Various minor SPI fixes (#3201)
* Correctly clear fastrd_mode when data mode is Single

* Print logs in QA test

* Port SPI timing tuning from esp-idf

* Fix ESP32 QSPI signals

* Print the reason of an Unsupported error

* Partial changelog
2025-03-05 10:58:12 +00:00
Dániel Buga
0c89fa3fd1
Add rand_core 0.9 support (#3211) 2025-03-05 10:49:18 +00:00
Dániel Buga
d9c32d5c29
Test that all PSRAM is unsable (#3210) 2025-03-05 10:46:54 +00:00
4rzael
e657aeb228
Fix esp-lp-hal gpio reading for the esp32s3 and esp32s2 (#3191)
* Fix esp-lp-hal gpio read

* Update esp-lp-hal changelog

* Fix esp-lp-hal for esp32-s2 and esp32-c6

* Add PR number #3191 to the changelog
2025-03-05 10:37:17 +00:00
Anthony Grondin
9c99a2ce67
Fix developer guidelines link (#3202)
- Fixes a few links being broken after the rename in
https://github.com/esp-rs/esp-hal/pull/3049
2025-03-05 09:27:40 +00:00
Dániel Buga
2e5b58b701
UART: clear RX FIFO on overflow (#3190)
* Add failing test case

* Use pointer difference as the true FIFO count

* Take FIFO pointers into account when calculating FIFO length

* Fix grammar

* Clear RX FIFO on overflow

* Update esp-hal/src/uart.rs

Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>

* Handle overflow caught by RxFuture

* Reset the fifo after clearing the interrupt

---------

Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
2025-03-04 16:53:53 +00:00
Sergio Gasquez Arcos
3816de0d87
Update documentation links (#3197)
* feat: Update documentation links

* feat: Add documentation field to Cargo.toml
2025-03-03 10:58:03 +00:00
yuiiio
a71c67b7d6
esp32s2: psram_cache_init typo fix (#3196)
* esp32s2: psram_cache_init typo fix

broken esp32s2 psram since
cb0016aa43

* Add PSRAM test

* Add changelog entry

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
2025-03-03 10:05:45 +00:00
Dániel Buga
c8822b4f83
Restore multiple-integrated timer queues (#3166) 2025-02-28 13:02:58 +00:00
Dániel Buga
fc2a6562aa
Wifi: switch tasks at interrupt level 1 (#3164)
* Pull up common code to save an instruction

* Simplify

* Tick at priority 1

* Rename timer handler

* Explain yielding

* Switch tasks at prio level 1

* Keep delegating to the SW interrupt on ESP32

* Changelog
2025-02-28 11:21:55 +00:00
Björn Quentin
9bf1f33f8b
Clarify open drain (#3181)
* Migrationguide: Clarify how to replace `OpenDrainOutput`

* Add hint to `DriveMode::OpenDrain`
2025-02-28 10:00:18 +00:00
Dániel Buga
502d41f313
Fix Uart::flush_async (#3186)
* Fix Uart::flush_async

* Apply single-byte workaround
2025-02-28 09:50:38 +00:00
Björn Quentin
1050ce5bb4
Make sure FD SPI works after HD SPI (#3176)
* Make sure FD SPI works after HD SPI

* CHANGELOG

* Rename

* Fmt
2025-02-26 16:58:41 +00:00
Scott Mabin
49788f490a
esp-config 0.3.1 (#3172) 2025-02-24 15:19:25 +00:00
Jesse Braham
6976e6d669
Update portable-atomic (#3171)
* Update `portable-atomic` dependency

* Remove `portable-atomic` hacks
2025-02-24 14:33:01 +00:00
Jesse Braham
fd2bdefaab
New package releases (#3163)
* Update dependencies and bump version numbers

* Update `CHANGELOG.md` for each package being published

* Update repo-level `README.md`

* Use older nightly to resolve CI issues

* also release esp-backtrace and esp-metadata

* Cleanup

---------

Co-authored-by: Scott Mabin <scott@mabez.dev>
esp-storage-v0.5.0 esp-riscv-rt-v0.10.0 esp-hal-v1.0.0-beta.0 esp-hal-procmacros-v0.17.0 esp-lp-hal-v0.1.0 esp-hal-embassy-v0.7.0 xtensa-lx-v0.10.0 esp-println-v0.13.1 xtensa-lx-rt-v0.18.0 esp-config-v0.3.0 esp-wifi-v0.13.0 esp-build-v0.2.0 esp-alloc-v0.7.0
2025-02-24 13:32:29 +00:00
Scott Mabin
0a8c609a02
Deploy docs (#3147)
* take json input from action

* use hal xtask for all jobs

* temp, use checkout task

* use same xtask again

* tmp

* fixup output path

* try and send via scp

* fill in a bit more data

* debug

* base url adjust, try and remove doc dir

* prevent index generation errors

* remove docs prefix

* Create an xtask subcommand to tag releases for packages

* output json workflow input when tagging releases

* output full output for docs

* mention xtask output, set GITHUB_TOKEN in docs workflow

* target esp-hal proper

---------

Co-authored-by: Jesse Braham <jesse@beta7.io>
2025-02-21 15:36:31 +00:00
Björn Quentin
4d075751ae
Minor fixes (#3162) 2025-02-21 10:27:37 +00:00
Dániel Buga
a5bfa3a61d
Disable multiple-integrated timer queue flavour (#3159) 2025-02-21 10:01:05 +00:00
Scott Mabin
b38d5cc8d5
Update to 1.85 toolchain (#3146)
* test esp 1.85 toolchain

* clippy lints
2025-02-20 12:13:02 +00:00
Björn Quentin
53d57bd01a
ESP32-H2/ESP32-C6: Don't rely on the bootloader to deconfigure permission control (#3150)
* ESP32-H2/ESP32-C6: Don't rely on the bootloader to deconfigure permission control

* CHANGELOG.md
2025-02-20 09:57:12 +00:00
David Laban
7a6d381e19
Make wifi_embassy_access_point_with_sta example listen on both network addresses (#3121)
* Make wifi_embassy_access_point_with_sta listen on both network addresses

* turns out it does work on esp32s2

* update example instructions

* whitespace
2025-02-20 09:35:38 +00:00
Dániel Buga
9a307f0fb3
Wait for the FIFO to be empty in flush (#3151)
* Deduplicate existing test

* Wait for the FIFO to be empty in flush
2025-02-20 09:34:20 +00:00
Tommaso Clini
1a3664d951
add clone and copy to ledc speed types to make channel::config::Confi… (#3139)
* add clone and copy to ledc speed types to make channel::config::Config Clone and Copy

* CHANGELOG entry

* Update esp-hal/CHANGELOG.md

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
Co-authored-by: Juraj Sadel <juraj.sadel@espressif.com>
2025-02-20 08:58:12 +00:00
Dániel Buga
df3a8e3936
Add some esp-wifi MG content (#3156) 2025-02-20 08:48:00 +00:00
Dániel Buga
ff2a46dbc8
UART: make async operations cancellation-safe, update others for consistency (#3142)
* Make async operations cancellable

* Handle thresholds

* Fix written amount calculation

* Fix waiting for events

* Don't return 0 bytes, don't modify TX threshold

* Add read_exact implementation

* Fix tests

* Add tests

* Inline constant into the default values

* Make FIFO config stable

* Fix doc links

* Changelog

* Remove duplicate changelog entries

* Check for RX error

* Fix write_async not recalculating available space

* Fix ESP32 timeout loop

* Check the unmasked interrupt bits to actually detect errors

* Improve naming

* Change async handler to not clear interrupt status

* Test and fix case where write_async returned Ok(0)

* Tweak docs

* Address review feedback

* Use embedded_io to fill buffer in test

* Rename
2025-02-20 08:19:55 +00:00
Björn Quentin
90cc8b219c
Fix example (#3155) 2025-02-20 08:05:19 +00:00
Dániel Buga
26cf556cde
Hide Interrupts (#3152) 2025-02-19 16:44:18 +00:00
Priit Laes
1a40e3419b
migration: Fix example to use correct method .with_pull(...) (#3145) 2025-02-18 12:05:43 +00:00
Dániel Buga
acbb98339c
Uart tweaks (#3141)
* Impose some order on UART config impl blocks

* Only pass the relevant config half

* Remove incorrect statements from documentation

* Move error documentation to enum variants

* Changelog

* Undo config split related changes

* Mark rx fifo threshold config unstable

* Remove explicit numeric values

* Add note
2025-02-17 16:16:43 +00:00
Scott Mabin
07463bfabf
unstabilize Uart::split, globally remove _bytes postfix (#3137)
* unstabilize split, remove unneeded bounds

* remove _byte postfixes, make uart::flush fallible (inline with the async variant), unify read/write logic for inherent impls and trait impls

* fix tests

* changelog and migration

* put trait dm bound on driver structs

* changelog again

* fixups

* fixups

* fix uart tests

* small docs update

* small docs update

* test fix

* rebase fixup
2025-02-17 12:58:04 +00:00
Dániel Buga
0008bf5f8f
Split UART errors (#3138) 2025-02-17 12:20:03 +00:00
Dániel Buga
75ca8b6e3b
Do not enable unstable features by default (#3136)
* Do not enable unstable features by default

* Add to changelog and MG

* Update esp-hal/MIGRATING-0.23.md

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>

---------

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
2025-02-17 12:09:48 +00:00
PascalKoe
7c6e28a8d4
TWAI: make async transmission abortable and wait for actuall transmission (#3132)
* Add future for transmitting TWAI frames.

Compared to the previous implementation, the future cancels the pending transmission and only resolves when the transmission is done.

* update the changelog
2025-02-17 09:19:10 +00:00
Björn Quentin
0138d462b7
Rethink WiFi API (#3027)
* Rethink WiFi API

* Fix
2025-02-14 10:02:35 +00:00
Dániel Buga
1e58278a6a
Remove redundant macro syntax (#3135) 2025-02-14 08:04:07 +00:00
Björn Quentin
68c660f1c5
CI optimizations (#3129)
* CI Improvements

* Fix

* Lint with stable

* Fix

* Xtensa

* cleanup
2025-02-13 15:20:10 +00:00
Easyoakland
d1fd24fc32
fix #3051: pass attributes through heap_allocator macro (#3133)
* pass attributes through heap_allocator macro

* Update changelog

* use global path in macro

* fix typo.

use 64*1024B of dram2_uninit not 72

* Fix doc example

* Add PR number to changelog
2025-02-13 09:24:01 +00:00