Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add esp wifi to monorepo with history #1582

Merged
merged 194 commits into from
May 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
194 commits
Select commit Hold shift + click to select a range
39d536c
Move the existing `esp-wifi` package into a directory
jessebraham Feb 2, 2023
13c13b9
Update READMEs
jessebraham Feb 2, 2023
c137f49
Don't prefix the ROM functions linker script with the chip name
jessebraham Feb 2, 2023
93d132d
Address a couple comments from review
jessebraham Feb 3, 2023
aa0ae90
Move the `esp-wifi` README back to the root of the repository
jessebraham Feb 3, 2023
cc7fd10
Add esp-now support
bjoernQ Feb 3, 2023
d47c22a
Don't use underscores in feature names
bjoernQ Feb 6, 2023
bc26768
Smoltcp 0.9 upgrade (#124)
MabezDev Feb 9, 2023
00599fd
Async WiFi (#125)
MabezDev Feb 9, 2023
269d53d
Ensure internal wifi buffers are freed (#128)
MabezDev Feb 12, 2023
162e3b3
Async WiFi: connect/disconnect/scan/wait_for_event (#129)
MabezDev Feb 15, 2023
ab2fb30
Add basic AP support (#134)
bjoernQ Feb 20, 2023
e2aa59b
Remove uneeded features from examples and esp-wifi (#135)
MabezDev Feb 20, 2023
cc40b59
Adjust for latest HAL (#139)
bjoernQ Feb 23, 2023
c56d832
ESP32-C6 WiFi support (#142)
bjoernQ Mar 2, 2023
943904f
ESP32-C6 cleanup (#148)
bjoernQ Mar 13, 2023
97bee31
Use ESP_HAL to read mac address (#149)
bjoernQ Mar 13, 2023
fdddaf5
Refactor examples (#146)
bjoernQ Mar 16, 2023
10e8fab
Refactor Socket::write to prevent infinite loop on long writes (#151)
teotwaki Mar 27, 2023
fd4da26
Use HAL's radio clock control (#153)
bjoernQ Mar 28, 2023
d5bed3e
Feature/radio singletons (#141)
MabezDev Mar 28, 2023
c4fbe97
Feature "big-heap", fix `calloc` (#155)
bjoernQ Apr 6, 2023
1a84e07
Use types from `core::ffi::` (#159)
bjoernQ Apr 11, 2023
b16abb3
Add wifi_set_mode for Wifi Protocol Support (#156)
Nereuxofficial Apr 12, 2023
e4dbff4
Add missing ROM functions for ESP32-S3/ESP32-S2 (#160)
bjoernQ Apr 12, 2023
66ad6fe
Async ble (#161)
bjoernQ Apr 17, 2023
5e44cc9
Use a more sane default MTU, have features to change MTU (#164)
bjoernQ Apr 18, 2023
e417341
Improve packet dumps (#165)
bjoernQ Apr 19, 2023
ba8ccea
Update embassy (#166)
bjoernQ May 3, 2023
0ce43f4
Fix DHCP handling (#173)
bjoernQ May 16, 2023
4f17136
A way to update iface-config (#177)
bjoernQ May 17, 2023
97ee8b1
fix(esp-wifi): Update is_started() implementation (#180)
AnthonyGrondin May 22, 2023
7b2ebb2
Basic IPv6 Support
bjoernQ May 22, 2023
3af5fe8
Don't panic on full BLE receive queue
bjoernQ May 24, 2023
02ca9e3
Activate embedded-svc with wifi feature
bjoernQ May 24, 2023
845ca39
A way to dequeue a complete HCI packet
bjoernQ May 24, 2023
5ff9d70
Make ESP32 BLE work again
bjoernQ May 24, 2023
5aee2a0
preempt improvements (#185)
MabezDev May 26, 2023
716008b
peer_exists now returns bool
May 31, 2023
f6e2e3b
De-duplicate init code
bjoernQ Jun 1, 2023
2483f11
What to initialize is now a runtime decision
bjoernQ Jun 1, 2023
dc33263
COEX is now an explicit feature
bjoernQ Jun 1, 2023
b9fe3a8
Panic when trying to use BLE and WIFI w/o coex
bjoernQ Jun 1, 2023
64e926a
Improve feature gating of COEX check
bjoernQ Jun 1, 2023
85787a7
Make it possible to use ESP-NOW with (STA) WiFi
bjoernQ Jun 1, 2023
e1095d4
Simplify async feature, update all examples
bjoernQ Jun 1, 2023
71acc4c
Make timer type alias public
bjoernQ Jun 2, 2023
6ce10cc
Less verbose cfgs
bjoernQ Jun 2, 2023
4c33a67
use linkage = 'weak' for missing intrinsic stub (#191)
MabezDev Jun 2, 2023
a1a7469
Workaround to make ESP32-C2 BLE work again
bjoernQ Jun 2, 2023
1e5d3ff
Fix ESP32-C2 BLE
bjoernQ Jun 5, 2023
cfb0f14
Don't require timg0 as timebase
bugadani Jun 24, 2023
a288255
ESP32 and ESP32-C2 working
bjoernQ Jun 27, 2023
44e525f
BLE works on C3 / S3
bjoernQ Jun 28, 2023
97e077e
Fix COEX for C3 and S3
bjoernQ Jun 28, 2023
56093b9
Make COEX for ESP32 compile again
bjoernQ Jun 28, 2023
22fa1ee
Remove embassy-net dependency
bjoernQ Jun 30, 2023
2b1f6b0
Update smoltcp, embassy-net, embassy-net-driver
bjoernQ Jun 30, 2023
6a7e6c0
Return all pending wifi events
bugadani Jul 4, 2023
cba1a6b
Clear the correct events, clear after polling, simplify scan_n
bugadani Jul 4, 2023
b013352
Provide specialized futures
bugadani Jul 4, 2023
f809e57
Remove event in future when polling
bugadani Jul 4, 2023
31ccfb2
Avoid clearing interesting events
bugadani Jul 5, 2023
acc5a41
Add DNS query interface to WifiStack (#213)
Sofiman Jul 20, 2023
12a95b6
Update dependencies (#198)
katyo Jul 21, 2023
69a72da
Clear state on stop (#217)
bugadani Aug 7, 2023
dcd45c1
fix log_timestamp value (#218)
AnthonyGrondin Aug 7, 2023
1835469
Scan related refactorings (#221)
bugadani Aug 7, 2023
89cc838
Properly set initial config (#223)
bugadani Aug 7, 2023
1ee8822
Enable wifi/bt power domain (#220)
bugadani Aug 7, 2023
d4913b3
Refactor TCP socket read impl to handle correctly EOF and no data (#216)
Sofiman Aug 8, 2023
fdbcda7
Configurable tuning parameters (#233)
bjoernQ Aug 9, 2023
b49f098
Update HALs, uncomment commented code in S2 power domain enable (#235)
bugadani Aug 11, 2023
3b764dd
Wait for esp now send callback to be called after sending (#232)
M4tsuri Aug 11, 2023
9ef719f
Add more configuration options (#234)
bjoernQ Aug 11, 2023
54ceae8
Make EspNow methods take immutable borrowed self (#237)
M4tsuri Aug 11, 2023
7af836b
Reduce stack-allocations (#243)
bjoernQ Aug 22, 2023
81bcca9
Add defmt::Format to some types (#251)
bugadani Aug 30, 2023
0f380bb
use intset intclear now they are recognized by llvm (#248)
MabezDev Aug 30, 2023
b695f72
Clean up btdm initialization (#254)
bugadani Aug 31, 2023
7f698f1
Make log optional, add feature and macros to route to defmt (#252)
bugadani Sep 1, 2023
147c2fe
A few DataFrame-related fixes (#257)
bugadani Sep 4, 2023
ca88f04
Remove embedded-hal dependency (#258)
bugadani Sep 4, 2023
69d5fda
Don't depend on PACs directly (#260)
bugadani Sep 5, 2023
f2fca66
Remove DataFrame, Leverage the internal WiFi heap (#259)
MabezDev Sep 5, 2023
03ac40d
defmt related improvements (#255)
bugadani Sep 5, 2023
fdf0f5a
Implemented duplex ESP-NOW correctly (#240)
M4tsuri Sep 7, 2023
6b9fe8e
HAL cleanups & remove example macros (#261)
MabezDev Sep 7, 2023
1d42b54
ESP32-C6 BLE Support (#262)
bjoernQ Sep 7, 2023
c297b08
Docs & README changes for release (#263)
MabezDev Sep 7, 2023
148dcc3
Implement floor() using libm (#272)
ellishg Sep 25, 2023
b7a354c
Support ps-max-modem (#273)
bjoernQ Sep 29, 2023
5f02512
Task/semaphore tweaking (#276)
bugadani Oct 11, 2023
3adfbea
Avoid AtomicU64 if possible, fix race condition (#278)
bugadani Oct 11, 2023
824bfb5
Xtensa: Copy TrapFrame in one statement (#279)
bugadani Oct 12, 2023
0fc619a
Remove StrBuf (#280)
bugadani Oct 12, 2023
5a66d78
Allow using AP when `ps-max-modem` is enabled (#283)
bugadani Oct 12, 2023
9e5dbad
Config for failure_retry_cnt and scan_method (#282)
bjoernQ Oct 12, 2023
d4ee043
Deduplicate SoC/arch-specific task switching related code (#284)
bugadani Oct 13, 2023
603989f
Fix overflow in timestamp calculation (#287)
bugadani Oct 18, 2023
7e97bac
Fix log strings (#292)
bugadani Oct 18, 2023
084c6bf
Fix typo in ble feature name (#297)
plietar Oct 20, 2023
93b29b6
Enable `vsnprintf` on compilers newer than `1.73.0.1` (#293)
bugadani Oct 20, 2023
2340871
Split wifi state for AP and STA (#288)
bugadani Oct 24, 2023
2b51da4
Misc. simplifications (#298)
bugadani Oct 25, 2023
6dbf1ca
Implement gettimeofday and __assert_func (#304)
bugadani Oct 25, 2023
b30a0c7
Configure burst size on async Device, allow 0 as no maximum (#308)
bugadani Oct 26, 2023
475e84e
Remove unused import (#310)
bugadani Oct 26, 2023
74f67ef
Prevent some leaks & a bit of cleanup (#306)
bugadani Oct 26, 2023
730bc21
Block until mutex can be locked (#318)
bugadani Oct 30, 2023
f87c8a8
Misc small changes (#312)
bugadani Oct 30, 2023
68f0aa2
Clean up a bunch of timer code, use `heapless::Vec` instead of array …
bugadani Oct 31, 2023
2e440a5
Queue fixes and cleanups, work queue `->` task spawn (#316)
bugadani Oct 31, 2023
98b3f7d
Move syslog out of common, implement `%ll{u,d}` (#317)
bugadani Oct 31, 2023
b7bf35d
Make sure the scheduling won't start before everything is setup (#324)
bjoernQ Oct 31, 2023
69bb60e
Add some config validations from esp-idf (#325)
bugadani Nov 1, 2023
67b1619
Added support for Wifi scan options (#302)
umgefahren Nov 1, 2023
fd23005
Replace a panic with a compile error (#321)
bugadani Nov 1, 2023
6d28263
Xtensa: Set up time slice before switching task, tweak tick rate (#323)
bugadani Nov 1, 2023
dc14344
Unify examples (#296)
MabezDev Nov 1, 2023
ffc4b31
Add a benchmarking example for blocking and async (#328)
MabezDev Nov 1, 2023
a053d9f
Use embassy-net 0.2 (#289)
bugadani Nov 2, 2023
a388b84
Clean up examples a bit (#332)
bugadani Nov 3, 2023
c1b0ff8
Revise API docs (#330)
bjoernQ Nov 3, 2023
4d6723e
Simplify multitasking (#334)
bugadani Nov 3, 2023
bf23ccb
AP-STA mode (#299)
bugadani Nov 6, 2023
9bec957
Use CCMP instead of TKIP (#338)
bugadani Nov 7, 2023
a78fee9
Add basic automated tests (#339)
bjoernQ Nov 7, 2023
11d73d7
Don't enable default features for esp*-hal (#303)
bugadani Nov 10, 2023
315aa6e
Add support coex for ESP32C6 (#327)
TuEmb Nov 13, 2023
c85e3bf
Add features to disable various network protocols (#340)
BryanKadzban Nov 13, 2023
3a70d43
Tolerate leading v in version string (#348)
bugadani Nov 16, 2023
4cd719d
Esp32c2 coex (#347)
bjoernQ Nov 16, 2023
a29853e
Don't crash on unexpected version string format (#358)
bugadani Nov 27, 2023
01a918b
Prepare release (#343)
bjoernQ Nov 27, 2023
f0cc90d
Fix README.md include (#359)
bjoernQ Nov 27, 2023
f6b9e84
add "scan_with_config" method to sync WifiController, like for async …
mhammerly Nov 27, 2023
620a3bc
Reliably avoid `r_ble_hci_ram_hs_cmd_tx` assert (#362)
bjoernQ Nov 28, 2023
660b92d
Remove recommendation against LTO (#363)
bugadani Nov 28, 2023
6fe9564
Fix broken links (#364)
bugadani Nov 28, 2023
93dc5ba
Remove embedded-svc feature (#366)
bugadani Nov 28, 2023
a20f940
Make COEX work on ESP-32 (#349)
bjoernQ Nov 29, 2023
e9795d4
Remove big-heap (#367)
bugadani Nov 29, 2023
81def9a
Don't require smoltcp as a dev dependency (#365)
bugadani Nov 29, 2023
38990d0
Some feature/README-related cleanup (#368)
bugadani Nov 29, 2023
3b8950f
Label ESP32 COEX as supported (#369)
bjoernQ Nov 30, 2023
f28bfb6
Exclude 1.74.0.0 from xtensa vaarg supported compilers (#372)
bugadani Dec 4, 2023
b14e8a6
Update dependencies, port to portable-atomic (#342)
bugadani Dec 5, 2023
4ceefcd
H2: Add BLE support (#352)
JurajSadel Dec 6, 2023
ce6c316
Update current support (#381)
SergioGasquez Dec 11, 2023
e1277ec
docs: Fix typo (#382)
SergioGasquez Dec 11, 2023
9e961ef
Bump esp-hal versions, patch embassy-net (#386)
bjoernQ Dec 13, 2023
3932429
Avoid overwriting HCI buffer until sent (#398)
bjoernQ Jan 2, 2024
c739cfb
move set_isr to chip_specific (#390)
MabezDev Jan 3, 2024
2519adf
Reset DHCP socket when the link up is detected (#401)
bjoernQ Jan 4, 2024
7d8a366
Use embassy-net-driver only is esp-wifi, make enet a dev dep (#402)
MabezDev Jan 5, 2024
c664181
Prepare release 0.2.0 (#403)
bjoernQ Jan 5, 2024
26cdd53
Small correction to coex warning message (#404)
jannic Jan 8, 2024
3e2556f
Include coex in list of enabled features for docs.rs (#405)
jannic Jan 8, 2024
223873a
Update driver blobs (#410)
bjoernQ Jan 11, 2024
c967ab5
fix(#383): Use a random local port when initializing the wifi stack. …
AnthonyGrondin Jan 16, 2024
3f8209b
Add minimal amount of default features, and instead enable the previo…
MabezDev Jan 23, 2024
f633182
Update everything to use latest `esp-hal` and `embedded-hal-async 1.0…
ProfFan Jan 29, 2024
48524a1
Prepare release 0.3.0 (#424)
bjoernQ Jan 29, 2024
fc03ae8
Remove "no token" warnings. (#428)
Dirbaio Feb 3, 2024
ed9f9b6
Make embedded svc really optional (#429)
bjoernQ Feb 5, 2024
921ea01
Performance improvement (#430)
bjoernQ Feb 8, 2024
d2e35ad
Instead of duplicating the config, we now use const eval to validate …
MabezDev Feb 20, 2024
9619359
Update esp-hal etc. (#434)
bjoernQ Mar 12, 2024
a6d7a90
Prepare release 0.4.0 (#439)
bjoernQ Mar 12, 2024
2891309
Fix a compile error when smoltcp can return more than 1 DNS result (#…
simpkins Mar 21, 2024
99fc3fd
update for changes in latest esp-hal git (#449)
liebman Apr 2, 2024
3a6cd58
Use esp-hal 0.17.0 (#456)
bjoernQ Apr 19, 2024
ec74dfd
Bump version, CHANGELOG.md (#458)
bjoernQ Apr 19, 2024
e20a91f
Prepare CHANGELOG.md for next release cycle (#459)
bjoernQ Apr 19, 2024
24a9b93
Bump to 0.5.1, make sure docs will build (#462)
bjoernQ Apr 22, 2024
776b48b
Remove direct embedded-hal v0.2 dependency (#466)
onestacked May 6, 2024
2d573cf
Adapt esp-wifi for current HAL
bjoernQ May 23, 2024
5649d32
Move examples to example folder
bjoernQ May 23, 2024
751a03c
Remove dev-dependencies from esp-wifi
bjoernQ May 23, 2024
ffa271c
Add bench-server etc.
bjoernQ May 23, 2024
e6fb218
Update links in README.md
bjoernQ May 23, 2024
cf6ae87
Remove useless patch
bjoernQ May 23, 2024
8b62a88
Compilable on stable
bjoernQ May 24, 2024
7b3af5c
Set env-vars used in esp-wifi examples
bjoernQ May 24, 2024
4436574
Set env-vars used in esp-wifi examples
bjoernQ May 24, 2024
6ab404b
Use `esp-build`
bjoernQ May 24, 2024
a447532
Don't use esp_build::warning
bjoernQ May 24, 2024
b67e738
Fixes after re-checking examples
bjoernQ May 24, 2024
6a09a53
Fix workflow file
bjoernQ May 24, 2024
ca21ad2
Fixes
bjoernQ May 24, 2024
295f0db
Make examples build on stable
bjoernQ May 24, 2024
0872162
Exclude some examples from H2/S2
bjoernQ May 24, 2024
6205ee4
Address review comments
bjoernQ May 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,12 @@ jobs:
esp-hal:
name: esp-hal (${{ matrix.device.soc }})
runs-on: ubuntu-latest
env:
SSID: SSID
PASSWORD: PASSWORD
STATIC_IP: 1.1.1.1
GATEWAY_IP: 1.1.1.1
HOST_IP: 1.1.1.1

strategy:
fail-fast: false
Expand Down
3 changes: 3 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ exclude = [
"esp-metadata",
"esp-println",
"esp-riscv-rt",
"esp-wifi",
"examples",
"extras/bench-server",
"extras/esp-wifishark",
MabezDev marked this conversation as resolved.
Show resolved Hide resolved
"hil-test",
]
1 change: 1 addition & 0 deletions esp-hal/src/reg_access.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ pub(crate) trait EndianessConverter {
}

/// Always use native endianess
#[allow(unused)] // only used in AES driver for now
pub(crate) struct NativeEndianess;

impl EndianessConverter for NativeEndianess {
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,15 @@ pub mod peripherals;
pub mod psram;
pub mod radio_clocks;

/// The name of the chip ("esp32") as `&str`
#[macro_export]
MabezDev marked this conversation as resolved.
Show resolved Hide resolved
macro_rules! chip {
() => {
"esp32"
};
}

pub(crate) use chip;
pub use chip;

pub(crate) mod constants {
pub const I2S_SCLK: u32 = 160_000_000;
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32c2/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,15 @@ pub mod gpio;
pub mod peripherals;
pub mod radio_clocks;

/// The name of the chip ("esp32c2") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32c2"
};
}

pub(crate) use chip;
pub use chip;

#[allow(unused)]
pub(crate) mod registers {
Expand Down
6 changes: 4 additions & 2 deletions esp-hal/src/soc/esp32c3/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,15 @@ pub mod gpio;
pub mod peripherals;
pub mod radio_clocks;

/// The name of the chip ("esp32c3") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32c2"
"esp32c3"
};
}

pub(crate) use chip;
pub use chip;

#[allow(unused)]
pub(crate) mod registers {
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32c6/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,15 @@ pub mod lp_core;
pub mod peripherals;
pub mod radio_clocks;

/// The name of the chip ("esp32c6") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32c6"
};
}

pub(crate) use chip;
pub use chip;

#[allow(unused)]
pub(crate) mod registers {
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32h2/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,15 @@ pub mod gpio;
pub mod peripherals;
pub mod radio_clocks;

/// The name of the chip ("esp32h2") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32h2"
};
}

pub(crate) use chip;
pub use chip;

#[allow(unused)]
pub(crate) mod registers {
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32s2/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,15 @@ pub mod radio_clocks;

pub mod ulp_core;

/// The name of the chip ("esp32s2") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32s2"
};
}

pub(crate) use chip;
pub use chip;

pub(crate) mod constants {
pub const I2S_SCLK: u32 = 160_000_000;
Expand Down
4 changes: 3 additions & 1 deletion esp-hal/src/soc/esp32s3/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,15 @@ pub mod radio_clocks;

pub mod ulp_core;

/// The name of the chip ("esp32s3") as `&str`
#[macro_export]
macro_rules! chip {
() => {
"esp32s3"
};
}

pub(crate) use chip;
pub use chip;

pub(crate) mod constants {
pub const I2S_SCLK: u32 = 160_000_000;
Expand Down
71 changes: 71 additions & 0 deletions esp-wifi/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added

### Fixed

### Changed

### Removed
- Removed embedded-hal v0.2 dependency

## [0.5.1] - 2024-04-22

Patch release to fix docs.rs build

## [0.5.0] - 2024-04-19

### Added

### Fixed
- Fix compile error when using smoltcp `DNS_MAX_RESULT_COUNT` values other than 1

### Changed

### Removed

## [0.4.0] - 2024-03-12

### Added

### Fixed

### Changed
- Users don't need embedded-svc to control wifi anymore. The wifi trait is optionally implemented now. (#429)
- Better network performance by forced yielding of the task when buffers are full / empty. (#430)
- Depend on esp-hal 0.16.1, update other dependencies

### Removed

## [0.3.0] - 2024-01-29

### Added

- Include coex in list of enabled features for docs.rs (#405)

### Fixed

- Small correction to coex warning message (#404)
- Use a random local port when initializing the wifi stack. (#414)

### Changed

- Update driver blobs (#410)
- Update dependencies to fit `embedded-hal` `1.0`

### Removed

## [0.2.0] - 2024-01-05

Initial release supporting WiFi on ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, supporting BLE on WiFi on ESP32, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, ESP32-H2

## [0.1.0] - 2023-11-27

Initial release supporting WiFi on ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, supporting BLE on WiFi on ESP32, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6
142 changes: 142 additions & 0 deletions esp-wifi/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
[package]
name = "esp-wifi"
version = "0.5.1"
edition = "2021"
authors = ["The ESP-RS team"]
description = "A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust"
repository = "https://github.com/esp-rs/esp-wifi"
license = "MIT OR Apache-2.0"

keywords = ["wifi", "bluetooth", "esp", "no-std"]
categories = ["embedded", "hardware-support", "no-std"]

[dependencies]
defmt = { version = "0.3.6", optional = true }
esp-hal = { version = "0.17.0", path = "../esp-hal", default-features = false }
smoltcp = { version = "0.11.0", default-features = false, features = [
"medium-ethernet",
"socket-raw",
], optional = true }
critical-section = "1.1.1"
log = { version = "0.4.20", optional = true }
embedded-svc = { version = "0.27.0", default-features = false, features = [
], optional = true }
enumset = { version = "1.1.3", default-features = false, optional = true }
linked_list_allocator = { version = "0.10.5", default-features = false, features = [
"const_mut_refs",
] }
embedded-io = { version = "0.6.1", default-features = false }
embedded-io-async = { version = "0.6.0", optional = true }
fugit = "0.3.7"
heapless = { version = "0.8", default-features = false, features = [
"portable-atomic",
] }
num-derive = { version = "0.4" }
num-traits = { version = "0.2", default-features = false }
no-std-net = { version = "0.6.0", optional = true }
esp-wifi-sys = { version = "0.3.0" }
embassy-sync = { version = "0.5.0", optional = true }
embassy-futures = { version = "0.1.0", optional = true }
embassy-net-driver = { version = "0.2", optional = true }
toml-cfg = "0.2.0"
libm = "0.2.7"
cfg-if = "1.0.0"
portable-atomic = { version = "1.5", default-features = false }
portable_atomic_enum = { version = "0.3.0", features = ["portable-atomic"] }

futures-util = { version = "0.3.28", default-features = false, features = [
"portable-atomic",
] }
atomic-waker = { version = "1.1.2", default-features = false, features = [
"portable-atomic",
] }

[build-dependencies]
toml-cfg = "0.2.0"
esp-build = { version = "0.1.0", path = "../esp-build" }

[features]
default = ["log"]

# chip features
esp32c2 = [
"esp-hal/esp32c2",
"esp-wifi-sys/esp32c2",
]
esp32c3 = [
"esp-hal/esp32c3",
"esp-wifi-sys/esp32c3",
]
esp32c6 = [
"esp-hal/esp32c6",
"esp-wifi-sys/esp32c6",
]
esp32h2 = [
"esp-hal/esp32h2",
"esp-wifi-sys/esp32h2",
]
esp32 = [
"esp-hal/esp32",
"esp-wifi-sys/esp32",
]
esp32s2 = [
"esp-hal/esp32s2",
"esp-wifi-sys/esp32s2",
]
esp32s3 = [
"esp-hal/esp32s3",
"esp-wifi-sys/esp32s3",
]

# async features
async = [
"dep:embassy-sync",
"dep:embassy-futures",
"dep:embedded-io-async",
"esp-hal/embassy",
"esp-hal/async",
]

embassy-net = ["dep:embassy-net-driver", "async"]

# misc features
coex = []
wifi-logs = []
dump-packets = []
smoltcp = ["dep:smoltcp"]
utils = ["smoltcp"]
enumset = []
wifi = ["dep:enumset", "dep:no-std-net"]
embedded-svc = ["dep:embedded-svc"]
ble = ["esp-hal/bluetooth"]
phy-enable-usb = []
ps-min-modem = []
ps-max-modem = []
esp-now = ["wifi"]
ipv6 = ["wifi", "utils", "smoltcp?/proto-ipv6"]
ipv4 = ["wifi", "utils", "smoltcp?/proto-ipv4"]
tcp = ["ipv4", "smoltcp?/socket-tcp"]
udp = ["ipv4", "smoltcp?/socket-udp"]
icmp = ["ipv4", "smoltcp?/socket-icmp"]
igmp = ["ipv4", "smoltcp?/proto-igmp"]
dns = ["udp", "smoltcp?/proto-dns", "smoltcp?/socket-dns"]
dhcpv4 = ["wifi", "utils", "smoltcp?/proto-dhcpv4", "smoltcp?/socket-dhcpv4"]
wifi-default = ["ipv4", "tcp", "udp", "icmp", "igmp", "dns", "dhcpv4"]
defmt = ["dep:defmt", "smoltcp?/defmt", "esp-hal/defmt"]
log = ["dep:log", "esp-hal/log"]

[package.metadata.docs.rs]
features = [
"esp32c3",
"wifi",
"ble",
"coex",
"async",
"embassy-net",
"esp-hal/embassy-time-timg0",
"esp-hal/default",
]
default-target = "riscv32imc-unknown-none-elf"

[lints.rust]
unexpected_cfgs = "allow"
Loading
Loading