* Migrate Camera to a move based API
* update
* update
* ManuallyDrop
* Add default channel to transfer struct
---------
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
* support psram in DmaTxBuf
* add example that sometimes works :-(
* fmt
* cleanups
* allow chunk_size upto (including) 4095
* this test is passing for me now
* remove chunk_size and compute based on block_size
* return error in `prepare_transfer` if psram is found on non-esp32s3
add `dma_tx_buffer` macro
* missing parens
* changelog
* default 4092 for esp32 & fmt
* no errors anymode
* use block_size is_some to flag invalid psram in prepare_transfer
* drop block_size from macro, the buffer allocation was not being aligned - its not needed for dram anyway.
* missed macro example
* use defmt::Format that decodes owner like Debug
* fix typo
* DmaTxBuf: its an error if buffer is in psram and block_size is none
* DmaTxBuf: its an error if buffer is in psram and block_size is none
* update for PSRAM feature changes
* address alignment comments
add simple test
* fmt
* better alignment test
* revert alignment test
---------
Co-authored-by: Juraj Sadel <juraj.sadel@espressif.com>
* Some more gpio cleanup
* Allow TWAI loopback using the same pin, enable ESP32
* Impl Format for ErrorKind
* Generic frame constructors
* More TWAI cleanups
* Fix signals
* Set self-reception bit
* Teach users to use const blocks
* Fix resetting TWAI
* Set opmode when starting
* Apply errata workaround
* Fix ESP32 baudrate
* Clean up read_frame a bit
* Changelog
* Clean up clippy
* Fix compile errors
---------
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
* Make most of PSRAM features into run-time configs
* Make CI green again
* Make CI green again
* Update esp-hal/MIGRATING-0.20.md
Co-authored-by: Scott Mabin <scott@mabez.dev>
* Use Range
* CI
* Rebase fixes
* Update esp-hal/src/lock.rs
Co-authored-by: Scott Mabin <scott@mabez.dev>
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
* Move lock impls out of lib.rs
* Reimplement Lock using ReentrantMutex
* Reimplement Lock using ReentrantMutex
* Refactor away some duplicate lock logic
* Return owner from try_lock
* Rework critical section to avoid spinning in irq-free context
* Fail compilation on unknown architectures
* Explain what RESERVED_MASK is
* Create one lock per timer group
* Move binary logging to sys crate
* make ieee take radio clks by value
* rename wifi-logs to binary-logs and fix compilation
* update sys to use correct size types
* move rtc_clk_xtal_freq_get to esp-hal
* changelogs and migration guide
* s/wifi-logs/sys-logs/g
* activate log features for esp-wifi-sys
* ble log fix c2
* fix logs using latest sys rev
* fix warning
* Allow accessing signal list via ErasedPin
* Replace AnyPin with more flexible signal config
* Update tests and examples
* Fix enable_from_gpio value
* Access signals from pin drivers
* DummyPin is not a pin
* Remove redundant public fns
* Various fixes, rename ErasedPin
* Changelog
* rustfmt
* Update i8080
* Typos and endless recursion
* Drop Pin suffix from traits
* Extract AF conversion
* Touch up changelog
* Clean up spi tests
* Refactor pull resistor handling
* Don't disable configured output functionality
* Clean up TODO
* Tweak docs
* Clean up examples
* Initial WIP RTC set implementation
* Deprecate get_time_raw and add docs + some cleanup
* Update rtc time example
* Format
* Update changelog
* Add some comments linking the PR
* Small compilation fixes
* C6 and H2 fixes
* Remove parantheses from if statement lol
* Remove accidental changelog change
* Implement boot time wrapping to avoid overflows
* Remove unused get_rtc_time_ms and get_rtc_time_us functions
* Make get_rtc_time_us public and re-add get_rtc_time_ms as public
* Update changelog
* Remove get_time_raw and replace with public get_rtc_time_raw
* Changelog reordering
* Function renaming
* Use fugit and update changelog
* Small typo fix
* Fix changelog addition from merging
* Use chrono for current_time and set_current_time
* Fix changelog
* Update example
* Fix merge errors
* Rename `time::current_time` to `time::uptime`
* Revert "Rename `time::current_time` to `time::uptime`"
This reverts commit fe8446899747c88d5b9f945f319e1133b90773ee.
* Format
* Add info to migration guide
* Fix compilation for esp32c2
* Remove information about setting RTC time from migration guide since it isn't really relevant
---------
Co-authored-by: naturecodevoid <44983869+naturecodevoid@users.noreply.github.com>
* esp-wifi uses global allocator, esp-alloc supports multiple regions
* CHANGELOG.md
* Apply suggestions
* Use `alloc` when linting esp-wifi
* Make coex example build for ESP32
* Re-enable some wifi examples for ESP32-S2
* Optionally depend on `esp-alloc` (by default)
* Rename INSTANCE -> HEAP
* Add integration with bt-hci crate
Implementing traits from bt-hci allows the BleConnector to
be used with the Trouble BLE stack.
* use packed based read interface
* Improve example to allow another connection after disconnect
* update trouble version
* Workaround for spurious command complete events
* fix formatting
* ignore notify errors in example
* fix clippy warnings
* remove async feature from hal dependency
* remove deprecated feature from example
* Adopt to api changes
* Api fix for esp32
* Set rust-version of esp-wifi
* bump MSRV to 1.77 for CI and esp-hal
* Add changelog entry
* Remove type erased gpio structs
* Implement Peripheral for ErasedPin
* Simpler type erasing, accept ErasedPin in pin drivers, remove type erased drivers
* Reformulate pin drivers using Flex
* Erase gpio types by default
* Accept any pin in AnyPin
* Add changelog and migration guide
* Fix tests and examples
* Undo rename of clone_unchecked
* Rework hal initialization
* Turn sw interrupt control into a virtual peripheral
* Return a tuple instead of a named struct
* Fix docs
* Remove SystemClockControl
* Move software interrupts under interrupt
* Re-document what's left in system
* Update time docs
* Update sw int docs
* Introduce Config
* Fix tests
* Remove redundant inits
* Doc
* Clean up examples&tests
* Update tests
* Add changelog entry
* Start migration guide
* Restore some convenience-imports
* Remove Config from prelude
Making these available straight from `gpio` aligns it with other Embassy
implementations (mainly nrf and stm32).
Signed-off-by: Priit Laes <plaes@plaes.org>
* Updated to latest release (`0.6.0`) for `embassy-executor`
* update changelog
* update hil-test version of embassy-executor to 0.6.0
* update embassy-executor in `examples`
* reflect esp_hal change in `OneShotTimer` to not have a lifetime.
* update changelog
* revert OneShotTimer changes
* Add self-testing mode for `TWAI` peripheral
* changelog entry
* fix docs build
* fix async example
* Restore example to original state
fix comment
* `NoAck` -> `SelfTest`
* Added touch pad support
* touch: Introduced blocking mode
* touch: moved fns out of TouchPad to prepare async code
* touch: added async support and embassy example