* feat: Allow configuring the watchdogs in the init config
* docs: Update changelog
* refactor: Remove unnecesary unsafe
* feat: Add a config module
* test: Add some init tests
* style: Rename all ocurrences to esp_hal::config::Config::default()
* style: Fix format
* fix: Doc errors
* revert: Move Config struct to lib.rs
* tests: Add default config test
* test: Add a test with CpuClock::max()
* test: Add timg1 test
* feat: Move Config struct to config module and reexport it in lib.rs
* fix: Fix init compilation for C2
* revert: Move Config struct to config module and reexport it in lib.rs
* fix: Use proper timergroup
* 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
* Initial esp-config poc, replacing the place-spi-driver-in-ram feature
* Allow documentation generation for configuration options
* add `Value::Number` and a macro to parse
* Add Value::String and replace esp-wifi's config
* repo maint
* make bool parsing stricter and number parsing more flexible
* use hand rolled const str to int
* Collect unknown config options
* friendly errors
* also batch invalid values
* dump msrv to 1.79
* Mention perf boost from disabling logging
* review suggestions
* output selected config
* changelogs and migration guides
* review feedback
* avoid multiple case conversions where possible
* refactor generate, fix bug, add full test
* run host tests in CI
* add more esp-config tests
* review comments
* add cargo env workaround
* 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
* Set DEFMT_LOG in CI
* Set DEFMT_LOG in CI
* Set DEFMT_LOG in CI
* Fix BLE vs DEFMT issue
* Fix ESP32 defmt problems in psram.rs
* Use `defmt` feature on `bt-hci`
* 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
* Update package dependencies and bump version numbers
* Update `CHANGELOG.md` for each package to be published
* Remember to update `xtensa-lx-rt` too :)
* Add and use TrapFrame::new() in esp-wifi
* Bump `xtensa-lx-rt` by minor instead of patch, as there are breaking changes
---------
Co-authored-by: Dániel Buga <bugadani@gmail.com>
* WIP state
* More fixes
* Roll back `esp-storage` changes
* Small fixes
Will not work, needs another patch for PACs
* update pacs dep
* Lint
* Get rid of unnecessary if-else
fix
* New pacs version
With my ESP32-C6 device, I saw the following panic when scanning was
enabled and there were many BLE devices in vicinity:
unwrap of `EVENT_QUEUE.enqueue((*event).dummy as usize)` failed: 14,
This occurs because the NPL event queue has overflowed. I increased the
queue size from 10 to 16, and the panic went away. I also did some
testing and discovered that there were at most 13 elements on the queue
at any given time, so a queue size of 16 (which allows for 15 elements)
should give us some margin. This also gives a slight overhead reduction
as the heapless crate recommends the queue size to be a power of two.
Co-authored-by: Gavin Li <git@thegavinli.com>
* Use the peripheral ref pattern for `OneShotTimer` and `PeriodicTimer`
* Update tests and examples to reflect changes in timer API
* Update `CHANGELOG.md`
* Check more features and targets in CI when linting
* Address clippy lints
* Address clippy lints for esp-wifi
* Expand println and storage checks
* Remove uneeded clippy lint
* Check every package for each target
* resolve esp-wifi clippy lints
* use defmt when building esp-wifi
* clean up
* fix warning in meta crate
* simplify CI workflow
* split up clippy jobs
* Use published versions of all dependencies, update dependencies as needed
* Fix `embassy_usb_serial` example build errors after updating `embassy-usb`
* New package releases
This patch replaces a CPU clock check that enforced running the MCU
at maximum clock speed during WiFi radio initialization. The previous
was incompatible for low power settings.
Now, the check ensures the CPU runs with at *at least* 80MHz, which
is the minimum required clock speed for proper WiFi radio functionality.
For `esp32s3` MCUs, the call to `ets_update_cpu_frequency_rom` has been
moved to the `esp-hal` clocks module. This call is now only made when
configuring CPU to a non-default setting.
* Extract embassy support into `esp-hal-embassy` package
* Update relevant packages/examples/tests to get CI green again
* Add back `defmt` support
* Re-export `Executor` and `InterruptExecutor` rather than making `executor` module public
* Document the `esp-hal-embassy` package
* Update `CHANGELOG.md`
* Hack together a "fix" for the `SYSTIMER` time driver
* Make `clippy` shut up
* Remove version from path dependencies in `examples` and `hil-test` packages
* Remove unused constant from `esp-println`
* Consistent badges across `README.md` files