Jesse Braham
959631ee55
Fix nightly lint errors ( #2537 )
2024-11-14 07:59:55 +00:00
Jesse Braham
014a04faad
Use correct toolchain when building documentation or running doctests via xtask ( #2536 )
...
* Add an alias for `fmt-packages` (since I always get this wrong)
* Use correct toolchain when building documentation or running doc tests
2024-11-14 07:38:50 +00:00
Jesse Braham
f3346a80b9
Update documentation to recommend esp-generate
instead of esp-template
( #2535 )
...
* Update documentation to recommend `esp-generate` instead of `esp-template`
* Hide the `trm_link` macro in the documentation
2024-11-14 07:32:10 +00:00
Jesse Braham
c19c7fcf01
Remove get_core()
in favour of Cpu::current()
( #2533 )
...
* Remove `esp_hal::core()` in favour of `Cpu::current()`
* Update migration guide
* Update `CHANGELOG.md`
2024-11-13 16:13:47 +00:00
Jesse Braham
92b91257e9
Remove get_
prefix from functions ( #2528 )
...
* Remove `get_` prefixes from functions
* Update migration guides for `esp-hal` and `esp-wifi`
* Update `CHANGELOG.md` files
2024-11-13 15:40:26 +00:00
Dániel Buga
b11fc0fce8
Remove NoClkPin ( #2531 )
2024-11-13 15:07:55 +00:00
Jesse Braham
099e0eacdf
Use newest published PACs ( #2530 )
2024-11-13 15:06:22 +00:00
Dániel Buga
b538e48ea4
Fix RMT test ( #2529 )
2024-11-13 13:52:11 +00:00
Björn Quentin
7da4444a7e
Fail RMT one-shot transactions if end-marker is missing ( #2463 )
...
* Fail RMT one-shot transactions if end-marker is missing
* CHANGELOG.md
* Add test
* Fix
* Fix
* RMT: use u32, turn PulseCode into a convenience trait
* Clippy
* Adapt test
2024-11-13 11:29:36 +00:00
Dániel Buga
8cbc249e2e
I2c: attempt empty writes ( #2506 )
...
* Attempt 0-length writes
* Deduplicate
* Changelog
* Test existing address
* Name addresses
* Fix formatting
2024-11-13 09:57:30 +00:00
Easyoakland
30276e1609
implement wifi event handling with data ( #2453 )
...
* implement event handling for apsta{,dis}connect and probe
add to wifi_access_point example
* hide internal `Option` to simplify api
* move handler call logic to event.rs
* update_handler_leak
* - Add comments
- match simpler api from `std::panic::update_hook`
- do not assume size_of in prelude
- make all events handleable
- box static instead of leak
* update changelog
* elide lifetime on default handler
* newtypes for all event types.
* add doc to newtypes
* fix previous doc example
* - `get_handler` -> `handler`
- pass critical section to event handlers
- comment on perf of Box<ZST>
- don't pass `prev` in `update_handler`, instead call previous handler first unconditionally
* pass cs to dispatch_event_handler
* don't print "unhandled event" for handled events.
2024-11-13 08:49:41 +00:00
Dominic Fischer
456bcfb7c6
Remove redundant Enable trait ( #2523 )
...
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2024-11-13 08:26:18 +00:00
Björn Quentin
0b452f7933
C6/H2 Make higher LEDC frequencies work ( #2520 )
...
* ESP32-C6/H2: Make higher LEDC frequencies work
* FMT
* CHANGELOG.md
2024-11-13 08:11:01 +00:00
Dániel Buga
5d9cc1a588
Add ESP32-S2 alternate functions ( #2512 )
2024-11-12 12:18:16 +00:00
Björn Quentin
5d120f7a70
Remove the integrated blocking networking stack ( #2488 )
...
* Add simple example using `smoltcp-nal`
* Remove the blocking networking stack
* Renaming
* Fix CI
* CHANGELOG.md
* Fixes after re-base
* Update esp-wifi/MIGRATING-0.10.md
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
* Improve diff in migration guide
---------
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
2024-11-12 11:43:01 +00:00
Dániel Buga
6cb5d9643f
Deduplicate impl, chunk data in ehal transaction Operations ( #2481 )
2024-11-12 10:49:30 +00:00
Dániel Buga
fbc57542a8
Remove pins from Io
( #2508 )
...
* Split pins off of Io
* Remove the GPIO peripheral
* p.GPIO
2024-11-12 10:36:25 +00:00
Jesse Braham
321ca2f131
Add CHANGELOG.md
for remaining packages which do not have one ( #2518 )
...
* Add `CHANGELOG.md` for remaining packages which do not have it
* Update `changelog` workflow to check all relevant packages
2024-11-12 10:17:11 +00:00
Jesse Braham
cf10f07a9e
Add validation to esp-config
( #2475 )
...
* Clean up and re-organize `lib.rs` a bit (sorry)
* Add configuration validation, some other refactoring/improvements
* Add a built-in range validator, re-document the `generate_config` function
* Update build scripts to reflect new configuration API
2024-11-12 10:14:14 +00:00
Jesse Braham
57fc5df858
Modify bump-version
subcommand to also bump dependent packages' dependencies ( #2514 )
2024-11-12 07:08:32 +00:00
Jesse Braham
33659380dd
Update revision of PACs and fix all build errors ( #2515 )
2024-11-11 21:27:50 +00:00
Dániel Buga
4af44b1498
Introduce Driver and move implementation into it ( #2480 )
2024-11-11 15:43:07 +00:00
Dániel Buga
2c14e595db
I2C: add apply_config
, implement SetConfig
, add with_sda
and with_scl
( #2477 )
...
* Implement apply_config, SetConfig
* Remove pins from constructors
* Implement timeout changes, document them
* Fix up changelog
2024-11-08 22:51:42 +00:00
Dániel Buga
e10ae2ddff
GPIO: do not overwrite interrupt handler ( #2486 )
...
* Prefer defmt unwrap
* Auto-bind the GPIO interrupt handler
* Changelog
* Bind interrupt handler when initializing the hal
* Remove user handler overhead unless user handler is bound
* Add tests
* Try to preserve direct-bound handlers
* Fix match
* Don't rely on the vector table to check direct binding
* Fix comment
2024-11-08 17:04:06 +00:00
Sergio Gasquez Arcos
7402ad61ed
Expose CSI API in esp-wifi ( #2422 )
...
* feat: (WIP) add CSI api
* feat: Enable G_CONFIG.csi_enable and update example
* fix: Allow user to set the dessired cb method
* fix: Clippy warnings
* fix: Add missing doccomments
* feat: Add csi_enable config
* refactor: Update CsiConfiguration c6 struct
* feat: Create set_csi WifiController and EspNowManager methods
* docs: Update changelog
* refactor: Rename CsiConfig struct
* docs: Document c6 version of CsiConfig
* feat: impl From<CsiConfig> for crate::include::wifi_csi_config_t
* style: Rustfmt
* docs: Fix comment
Co-authored-by: Dániel Buga <bugadani@gmail.com>
* docs: Fix typo
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
* feat: Enable CSI on examples by default
* feat: Handle errors
* style: Rustfmt
* feat: Update error
* feat: Panic if csi config is not enabled
* feat: Cfg CSI stuff when CSI is disabled instead of panicing
* fix: Clippy lints
* feat: Fix signed bitfields
* feat: Pass the cb via ctx
* feat: Update CSI callback to use closures
* refactor: Rename promiscuous_csi_rx_cb to csi_rx_cb
* feat: Move extra boxing inside set_receive_cb
* feat: Refactor CSI callback to use generic types
* refactor: Remove Sized bound from CsiCallback trait
* feat: Add csi_enable field to EspWifiConfig and update CsiCallback trait for conditional compilation
* feat: Remove unnecessary boxes
* feat: Update callback type in set_csi to require Send trait
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
---------
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
2024-11-08 16:33:13 +00:00
Björn Quentin
3c4b7f0f66
Test more embassy interrupt spi dma ( #2490 )
...
* Add C3,C6 and H2 for `embassy_interrupt_spi_dma`
* Test more
* Don't require physically connected pins
2024-11-08 13:43:34 +00:00
Scott Mabin
50d8187e39
esp-wifi: Remove unneeded features ( #2446 )
...
* remove async features
* phy-usb config
* modem powersaving
* Fix examples
* make ps a runtime config
* fix linting
* changelog and migration guide
* revert esp-config changes
* remove blanklines after doc comments
* cfg away ps API
2024-11-08 13:30:33 +00:00
Dániel Buga
6d6f6a7baa
Move I2C driver to i2c::master
( #2476 )
...
* Move I2C driver to i2c::master
* Update esp-hal/CHANGELOG.md
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
---------
Co-authored-by: Dominic Fischer <14130965+Dominaezzz@users.noreply.github.com>
2024-11-08 12:28:53 +00:00
Dániel Buga
31d714a156
Tweak guidelines ( #2482 )
...
* Tweak guidelines
* Restore builder rule
* Address review comments
2024-11-08 11:50:52 +00:00
Dániel Buga
ac4679a1ae
Remove public hidden I2C APIs ( #2474 )
2024-11-08 10:37:13 +00:00
Dominic Fischer
d6f63d67a9
Fix I8080.set_byte_order() ( #2487 )
...
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2024-11-08 08:01:36 +00:00
Dániel Buga
d5e6ba5ceb
SPI slave with_pin functions ( #2485 )
2024-11-08 07:29:37 +00:00
Dániel Buga
4233bddf23
Fix test warnings ( #2483 )
2024-11-07 15:05:49 +00:00
yanshay
639853ede9
Add MultiwriteNorFlash trait to FlashStorage ( #2478 )
...
* Add MultiwriteNorFlash trait to FlashStorage
* add PR number
* Revert "add PR number"
This reverts commit 28bf0acd2468acfeb96a6537d6270c220fbccda1.
* Added changelog with PR number
2024-11-07 13:58:32 +00:00
Dániel Buga
ac819fb42f
Remove PeripheralMarker ( #2468 )
...
* Redo DMA compatibility check using DmaEligible
* Remove PeripheralMarker
2024-11-07 13:51:48 +00:00
Dániel Buga
8782429e9f
SPI slave: remove public hidden API ( #2470 )
...
* Redo declaration as macro
* Add Info
* Move impl out of Instance traits
* Publish traits
2024-11-07 09:41:16 +00:00
Dániel Buga
0da6eec089
Move I2S drivers to i2s::master and i2s::parallel ( #2472 )
...
* Move I2S drivers to i2s::master and i2s::parallel
* Remove mention of master mode
2024-11-07 09:39:08 +00:00
Dániel Buga
feac6f17c3
Mark State/Info as #[non_exhaustive] ( #2471 )
2024-11-07 09:37:56 +00:00
Dániel Buga
255f5e7c73
TWAI: Always configure a default filter ( #2467 )
2024-11-06 14:11:49 +00:00
Dániel Buga
4c5be2c907
Interconnect: force signals through GPIO matrix if split ( #2419 )
...
* Allow splitting off of gpio drivers
* Extract and correct low level connection bits
* Add Input/OutputSignal::connect_to
* Remove unnecessary public API
* Fix typos
* Remove unused private methods
* Add separate Direct signals that do bypass the GPIO matrix
* Do not disable stage input
* Clean up spi_slave test
* Constrain to static Flex
* Improve docs
* Separate input_enable and open_drain parameters
* Link to the chapter
* Changelog
* Clarify
2024-11-06 13:55:34 +00:00
Björn Quentin
ccb3a1ba40
Use diagnostic
on DmaChannelConvert
( #2465 )
...
* Use `diagnostic` on `DmaChannelConvert`
* Typo
2024-11-06 11:43:25 +00:00
Dániel Buga
8860aba9b2
Spi master: remove public hidden APIs, add Config/apply_config ( #2448 )
...
* Remove hidden public SPI API
* Fix in_progress flags not being set
* Remove redundant checks, fix full-duplex flag
* Remove now-redundant Send impl
* apply_config
* SetConfig
* Return ConfigError
* Unwrap config result in ctor
2024-11-06 09:03:43 +00:00
Dániel Buga
eabb6fb1c6
ETM improvements ( #2427 )
...
* ETM simplifications
* Work with GPIO signals
* Fix changelog
2024-11-05 13:39:19 +00:00
Dániel Buga
665fb0e278
Flatten Uart module, remove unnecessary data, replace methods with apply_config
( #2449 )
...
* Flatten uart config
* Do not remember at_command config
* Don't save config values in memory
* Move config implementations to Info
* Changelog
* Remove unused methods
* apply_config, SetConfig
* Fix test
* simplify futures
* Update esp-hal/CHANGELOG.md
Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com>
---------
Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com>
2024-11-05 09:56:14 +00:00
Dániel Buga
ed7960ce8b
Also add into_async for ParlIO ( #2461 )
2024-11-04 16:00:21 +00:00
Björn Quentin
ca9ee23b5e
Prefer ROM-fns over custom impl ( #2462 )
...
* Prefer ROM-fns over custom impl
* PR number
2024-11-04 15:55:23 +00:00
Dániel Buga
1e6820d1a7
Systimer improvements ( #2451 )
...
* Do not read to set update bit
* Deduplicate
* Try to bind interrupts to the correct core
* Inline poll_count into read_count
* Clean up
* Make sure only a single update is done at a time
* Changelog
* Fix docs
* Correct the channel count
* Assign enough timers for HIL test
* Use a lock to prevent re-update
* Remove locking, use esp-idf implementation
* Document timer count requirement
2024-11-04 11:36:34 +00:00
Dániel Buga
0c86740418
Peripheral interconnect redo, vol 2 (split()
) ( #2418 )
...
* Replace peripheral connection conversions with split
* Constrain Flex conversions
2024-11-04 11:29:28 +00:00
Dániel Buga
177db100fb
Remove redundant lifetimes ( #2459 )
2024-11-04 10:51:12 +00:00
Dániel Buga
40c0a6944e
into_async
(#2430 )
...
* Remove configure_for_async
* Add into_async and into_blocking to I2c
* Add into_async and into_blocking to UsbSerialJtag
* Rework LCD_CAM
* Rmt
* RSA
* TWAI
* Uart
* Documentation
* Disable interrupts set on other core
* Move configure into RegisterAccess
* Disable interrupts on the other core
* Use EnumSet in RMT
2024-11-04 09:32:12 +00:00