Commit Graph

212 Commits

Author SHA1 Message Date
David Cermak
5c383d7b73 esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02:00
Shreyas Sheth
591c7a496c esp_wifi: WPA3 SAE H2E support for station 2022-06-20 18:51:11 +05:30
Shyamal Khachane
6d55761f60 OWE support for station 2022-06-15 17:20:24 +05:30
Li Shuai
7efa8b855a sleep: beacon loss and noise check timer optimize for wifi power save 2022-06-09 15:52:05 +08:00
muhaidong
06fb6b2e32 esp_wifi: fix country policy issue
1. Fix not update phy according to country code.
    2. Update regdomain max channel according to country info from nvs and or AP.
    3. Change nvs default country from "CN" to "01".
    4. Channel 14 is allowed only 11b mode.
    5. Remove csa when switch channel from/to 14 channel.
    6. Update phy mode nvs when softap channel from 14 to other.
    7. Fix the bug that check whether channel parameter is valid.

Docs: change default country from "CN" to "01"
2022-06-02 16:15:48 +08:00
Jiang Jiang Jian
8efa4d64e0 Merge branch 'feature/add_task_wrappers' into 'master'
wpa_supplicant: Add osi layer for FreeRTOS calls

Closes WIFI-2996

See merge request espressif/esp-idf!11734
2022-05-30 10:29:50 +08:00
Anton Maklakov
282c9ab1e1 esp_wifi: make int types consistent 2022-05-29 18:42:09 +08:00
liuning
e0decf4839 esp_wifi: fully support connectionless traffic with ps and coex 2022-05-28 08:52:55 +00:00
Jessy Chen
0ae391ef07 esp_wifi: enable FTM for esp32c2 & fix pre-commit check 2022-05-28 08:52:55 +00:00
Jack
58d04eb203 esp_wifi: update esp32c2 wifi rom & lib 2022-05-28 08:52:55 +00:00
zhangyanjiao
e979e9701f esp_wifi: bringup esp32c2 wifi 2022-05-28 08:52:55 +00:00
Kapil Gupta
0cdad0a002 wpa_supplicant: Add wrappers for FreeRTOS APIs 2022-05-26 15:23:21 +05:30
kapil.gupta
3d5ca7ee6e wpa_supplicant: Add support for FT psk 2022-05-01 16:16:51 +05:30
zhangyanjiao
e3b8f59867 update wifi api docs 2022-04-24 23:55:54 +08:00
Jessy Chen
8c3a8ea603 esp_wifi: update esp_wifi_internal_set_fix_rate usage 2022-04-24 21:20:54 +08:00
Jessy Chen
5cb82df4dc esp_wifi: update noise floor unit 2022-04-24 21:20:54 +08:00
xueyunfei
26fa8260b1 Doc:update wifi api docs
* Add documents related to espnow config rate

* Optimization set dns server api description
2022-04-24 21:20:54 +08:00
Nachiket Kukade
2982910075 esp_wifi: Update wifi libs
PMF capable flag in wifi_pmf_config_t is internally enabled,
for devices to be able to connect to WPA3 only AP's without
additional user configuration. But PMF may need to be disabled
for debug purposes or to avoid PMF issues on AP side. Add API
esp_wifi_disable_pmf_config to support this.
2022-04-05 17:44:42 +05:30
David Cermak
7db0f0feb1 esp_mesh: Document that hard-coded non-root nodes do not need TCP/IP 2022-03-10 08:19:44 +01:00
David Cermak
795b7ed993 esp_netif: Remove tcpip_adapter compatibility layer 2022-03-10 08:19:43 +01:00
Sagar Bijwe
6501eff7f5 Remove legacy system event framework. 2022-03-09 15:53:45 +05:30
Nachiket Kukade
7ed8fdac59 esp_wifi: Always connect Station in PMF mode if possible
While using esp_wifi_set_config, flag pmf_capable defaults to 0.
Users may not bother to enable it, which prevents connection to a
WPA3 AP. Or the AP may reset into WPA3 mode failing the re-connection.
To ensure better security, deprecate the pmf_capable flag and set it to
true internally.
2022-02-21 11:31:56 +05:30
aditi_lonkar
c3a661c0fd esp_wifi: Add pmf support for softAP. 2022-02-09 18:58:37 +05:30
NikLeberg
317a11cb05 allow for minimal scope of wifi_init_config_t
With this change one can use the default config as a variable with minimal scope: esp_wifi_init(&(wifi_init_config_t)WIFI_INIT_CONFIG_DEFAULT())
2021-12-08 19:39:41 +08:00
Shang Zhou
fffed159f8 docs: Update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file 2021-12-08 19:39:41 +08:00
Zhang Jun Hao
a568b4fddf esp_wifi: support station only mode for code size down 2021-10-27 11:48:22 +08:00
Li Shuai
46dedca23c ci: replace old header with new SPDX header style 2021-10-14 10:51:10 +08:00
Li Shuai
b774342402 Power Management: power up or down wifi power domain when wifi init or deinit 2021-10-14 10:51:07 +08:00
Kapil Gupta
797c7144bd esp_wifi: Add support for GCMP and GMAC ciphers 2021-10-12 20:48:51 +08:00
alex.li
26d8b7ee17 Add HW external coexist api.
Simplify the external coex flow.

And replace gpio of driver interface with hal one.
2021-10-12 14:05:14 +08:00
Kapil Gupta
834afad47e esp_wifi: Add support for MBO certification 2021-10-04 15:56:14 +08:00
David Cermak
3c6efbe5a5 wifi/netif: Fix wifi_ap_handlers comments to relate to AP 2021-08-23 09:20:12 +02:00
ChenJianxing
9e7d75cb95 esp_wifi: fix some wifi bugs
1. support config 80211 tx rate
2. fix 80211 tx crash issue
3. disable ampdu+amsdu bit
2021-07-31 18:02:20 +08:00
shenjun
42a1be10db esp_wifi_mesh: add non mesh connections access 2021-07-30 22:17:30 +08:00
Kapil Gupta
ecd1d9406e esp_wifi: Revert default country to China 2021-07-05 12:32:47 +05:30
Kapil Gupta
a5086e302d esp_wifi: Add support for regdomain database 2021-07-02 14:11:40 +05:30
Nachiket Kukade
eb49ee75b8 wifi/ftm: Additional FTM features implementation
Update wifi lib with below features -
1. ASAP mode for both Initiator and Responder
2. Offchannel FTM while connected to AP (ASAP only)
3. Support up to 3 Initiators simultaneously
4. Session termination, failure support etc
5. Mem-zero AP scan buffer in get_records API
2021-06-30 17:52:07 +05:30
Shu Chen
6061a547e5 esp_phy: decouple esp_phy component from esp_wifi and bt
* add esp-phy-lib submodule
* move libphy.a and phy_init.c from esp_wifi to esp_phy
* move librtc.a from esp_wifi to esp_phy
* move libbtbb.a from bt to esp_phy
* corresponding updates to build system
2021-06-03 16:17:31 +08:00
David Cermak
c4870f4d9e esp_netif/wifi: Add API to destroy default wifi-netif for sta/ap
Partially addresses https://github.com/espressif/esp-idf/issues/6950
2021-05-07 11:56:41 +00:00
shenjun
8b3e090533 esp_wifi_mesh: update wifi mesh libs
1. Fix mesh deinit blocking issue
2. Fix root has no eb for deauth frames during the networking
3. Add esp_mesh_send_block_time to set blocking time of esp_mesh_send
2021-04-28 02:46:34 +08:00
Nachiket Kukade
c93907fb27 wifi/ftm: Move FTM report logging into application and some bugfixes
Move FTM report processing and logging to application
Update wifi lib with below bugfixes
1. Initiator parameters sanity checks
2. Responder config option, fix beacon caps
3. To save space, register FTM modules only when FTM is enabled

Co-Authored-By: Nachiket Kukade <nachiket.kukade@espressif.com>
Co-Authored-By: Zhang Jun Hao <zhangjunhao@espressif.com>
2021-04-20 03:44:51 +00:00
ninh
c80310b1f6 esp_wifi: close tsen when close phy 2021-03-31 21:06:00 +08:00
xiehang
37567dcf2a esp_wifi: Add beacon timeout event
Update TBTT when rx probe respones after beacon timeout.
2021-03-31 11:29:56 +08:00
shenjun
f9fe524c32 mesh/ps: network duty signaling 2021-03-18 16:22:19 +00:00
shenjun
0ce0e4d569 mesh: support for chain topology 2021-03-16 14:17:13 +08:00
ninh
deb94f4768 esp_wifi: support sta to sleep at disconnected status 2021-03-12 00:20:09 +08:00
Li Shuai
1595973fe8 light sleep: some default parameters optimization 2021-03-10 18:22:41 +00:00
Xia Xiaotian
ce8b996ca0 esp_wifi: synchronize Wi-Fi adapter between different chips
Support preferring to allocate Wi-Fi memory from PSRAM on ESP32-S3

Support Wi-Fi TX cache buffer on ESP32-S3
2021-02-26 11:29:50 +08:00
Xia Xiaotian
f53c0c5b87 esp_wifi: store PHY digital registers before disabling PHY and load
them after enabling PHY
2021-02-26 11:29:50 +08:00
ChenJianxing
0a8ba88145 esp_wifi: optimization wifi rate
1.support disable 11b rate
2.support config espnow rate
3.fix sta negotiate phymode issue
4.update ftm rate
2021-02-25 10:21:46 +00:00
dongyou
fe76c53fec update wifi docs 2021-02-02 11:42:00 +08:00
alex.li
a9b0336ac5 Fix wapi authmode in NVS and S3/C3 compability. 2021-01-30 19:14:37 +08:00
baohongde
eef66789d4 Mac BB power down in light sleep
components/bt: Do not use feature: timer support isr dispatch method

disable controller after wake up finished.

protect critical section of power down

choose clk in sleep

components/coex: mac bb power down in light sleep

components/coex: Macro changed

components/os: protect reserved interrupt number

update phy to phy_version 300,6e46ba7,Jan 25 2021

some bugfix
2021-01-28 22:28:04 +08:00
Nachiket Kukade
8de3b31d2d FTM support for ESP32-C3 and connectionless mode
1. Support for FTM to work without any connection
1. Support for ESP32-C3 chip
3. Fix error case handling if FTM fails
4. Fix asynchronization, re-transmission related issues
2021-01-27 20:49:07 +05:30
Nachiket Kukade
a71976ab54 wifi/ftm: Stability fixes, raw FTM data in event
Update wifi lib with below additions -
1. Add FTM frame formation, IEEE definitions, event and IOCTL.
2. Implementation of FTM bursts, Measurements and RTT calculations
3. Fix Watchdog timeout, crashes with better cleanup of timers
4. Included FTM Report raw data in FTM event

Closes https://github.com/espressif/esp-idf/issues/5059
2021-01-27 11:16:35 +05:30
Nachiket Kukade
acb1143409 Add support for FTM operation
Add FTM support for below configuration -
1. Station(connected) as Initiator with AP as responder
2. SoftAP as responder with the connected Station
Added Station example with runtime FTM configurations.
2021-01-27 10:57:41 +05:30
Nachiket Kukade
76b2cb28d2 Add DPP Enrollee example
1. Add Example for DPP Enrollee
2. Use DPP Supplicant API's to setup connection
3. Add support for multiple channels in Bootstrapping
4. Add Unity testcase for testing Offchannel operations

Closes https://github.com/espressif/esp-idf/issues/5654
2021-01-25 13:26:33 +05:30
Nachiket Kukade
1ca80b4221 Add support for Remain-on-Channel and Action Tx
1. Add API's and structures for Remain-onChannel & Action Tx
2. Handling of events and callbacks for the operations
3. Update WiFi lib with related API support
2021-01-25 13:24:21 +05:30
Alex
67d0460c2d Feature/wifi wapi release 2021-01-23 18:15:07 +08:00
kapil.gupta
7bc74089f4 esp_wifi: Add pairwise cipher support in softAP config
Closes https://github.com/espressif/esp-idf/issues/5963
2021-01-20 22:40:40 +05:30
Li Shuai
27ddbf5fcc light sleep: libphy optimization for esp32c3 2021-01-20 13:28:30 +08:00
ninh
659d805411 esp_wifi: light sleep optimization 2021-01-18 15:31:03 +08:00
ronghulin
adfa43a3a4 feature: support tx amsdu 2021-01-15 20:10:18 +08:00
zhangyanjiao
1da9d9c356 esp_wifi: add esptouch v2
Closes https://github.com/espressif/esp-idf/issues/1311
2021-01-15 14:32:46 +08:00
Chen Jian Xing
5b44295cb9 esp_wifi: fix esp32c3 code issues
1. enable wifi clk and rm dport header
2.syn phy_init_data.h from esp32
2021-01-10 16:16:28 +08:00
xiehang
0cbb7d503d esp_wifi: Update WiFi lib
1. Refactor wifi_interface_t
2. Faster WiFi station connect improvement, avoid 100ms passive scan
3. Add FCS failed packets filter
4. Update esp32 phy lib to v4660

Closes https://github.com/espressif/esp-idf/issues/986
2020-12-25 16:46:01 +08:00
xiehang
d1222ce158 esp_wifi: Refactor wifi_interface_t 2020-12-25 02:49:12 +00:00
ChenJianxing
1780d9d2b5 esp_wifi: optimize phy version log 2020-12-23 10:47:25 +08:00
ronghulin
b4e4fd7a67 bugfix: fix some wifi bugs
1. fix max tx power to 20dBm
2. fix the issue that the esp_wifi_sta_get_ap_info can't get country

Closes https://github.com/espressif/esp-idf/issues/6267
2020-12-22 11:51:13 +08:00
ChenJianxing
1ffb12e6fd esp_wifi: add esp32c3 wifi lib 2020-12-15 17:13:10 +08:00
dongyou
070eaea67e Add description for esp_wifi_set_inactive_time()
Add documentation to avoid using WiFi modem sleep for WiFi/BT coexistence
Remove description of unusable API esp_wifi_restart()
Update esp_now_fetch_peer discription
Update table format prblm for esp_wifi_set_max_tx_power()
Update description for ssid and password

Closes https://github.com/espressif/esp-idf/issues/6049
Closes https://github.com/espressif/esp-idf/issues/5759
Closes https://github.com/espressif/esp-idf/issues/5719
Closes https://github.com/espressif/esp-idf/issues/3762
2020-11-26 20:52:36 +08:00
kapil.gupta
27101f9454 wpa_supplicant: Add initial roaming support
This commit adds different features from 802.11k and 802.11v
specifications to make the device ready for network assisted
roaming. It also adds initial framework for device to detect
whether it needs to move to a better AP.

Followings are added as part of this.

1. Support for sending neighbor report request and provide
   the report back to the APP.
2. Support for beacon measurement report.
3. Support for link measurement report.
4. Support for sending bss transition management query frame
   (triggered by the APP).
5. Support for bss transition management request and move
   to the candidate based on that.
6. Sending the bss transition management response.
2020-11-17 17:15:26 +05:30
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Xia Xiaotian
199414cd7e Wi-Fi: set softap beacon DTIM count according to TSF timer 2020-11-10 09:10:45 +00:00
shenjun
ea0603897d esp_wifi_mesh: update wifi mesh libs
1. Fix FIX-ROOT does not reconnect to router when disconnect reason is too many
2. Add API esp_mesh_print_scan_result
3. Modify not to reset mesh_xonseq of self and children when flush_upstream_packets
4. Fix not switch to a parent candidate which has the same layer and assoc as current parent
5. Fix not arm parent monitor when a parent candidate is cleared without sending an event to mesh layer
6. Fix the new voted root does not reconnect to router if rssi is weak
2020-10-28 02:58:44 +00:00
baohongde
628655b6be components/coex: Some bugfix about ble dynamic prio
Rewrite ble dynamic prio to fix ble disconn in conn_param_update/channel_map_update
Rewrite ble dynamic prio in connection establishment
Fix ble dynamic prio with latency
Fix status bit set error when conn fail
2020-09-29 21:08:13 +08:00
Hrudaynath Dhabe
8746d3726b wifi: Add IDF specific changes to add support for registering tx_done callback 2020-09-24 18:39:04 +05:30
Xia Xiaotian
bdbe74693f esp_wifi: refactor wifi code in order to adapter to new chips 2020-09-24 10:15:50 +08:00
Xia Xiaotian
2e0c60461c esp_wifi: refactor PHY access
- Simplify PHY access API
- Move coexist initializing and deinitializing out from PHY API
  to Wi-Fi and Bluetooth
- Remove coexist pause and resume for they are no longer needed.
2020-09-22 15:00:05 +08:00
Nachiket Kukade
3308ede898 espnow/pmf: Implement ESPNOW + PMF Co-existance
H/W decryption of Mgmt frames was disabled for PMF and done through
S/W. If ESPNOW packets go through this path, it affects backward
compatibility since method of decrypting Mgmt packets is different in H/W.

To address PMF + ESPNOW Co-existance, CCMP decryption method is modified
for ESPNOW packets so that they can be decrypted correctly. Since Tx
of ESPNOW packets can still be done in H/W alongside PMF, no change
required in encryption method in S/W.

Co-Authored-By: Nachiket Kukade <nachiket.kukade@espressif.com>
Co-Authored-By: zhangyanjiao <zhangyanjiao@espressif.com>
Co-Authored-By: kapil.gupta <kapil.gupta@espressif.com>
2020-09-02 09:26:39 +05:30
aditi_lonkar
a6a8381745 wifi: Fix esp_wifi log levels
Closes https://github.com/espressif/esp-idf/issues/5721
2020-08-28 11:59:03 +05:30
liu zhifu
6ed4dd65a4 esp_wifi: optimize WiFi debug log
1. Add esp_wifi_statis_dump()
2. Optimize WiFi related debug log
2020-08-15 11:35:10 +08:00
liu zhifu
fa9a5c0be5 esp_wifi: optimize WiFi TX performance 2020-08-13 12:26:21 +08:00
ronghulin
b006acbb46 bugfix: fix softap mode event issue
1. add sta connect again ap sent disconnect event
2. add set/get inactive time api

Closes https://github.com/espressif/esp-idf/issues/4401
Closes https://github.com/espressif/esp-idf/issues/4987
Closes https://github.com/espressif/esp-idf/issues/2375
2020-08-11 10:34:47 +08:00
Hrudaynath Dhabe
7bc2fae323 esp_wifi: Add esp_wifi_get_tsf_time() API to get the tsf time of
specified interface.

Closes https://github.com/espressif/esp-idf/issues/5533
2020-07-13 17:04:11 +05:30
Nachiket Kukade
81f037a299 Fix handling of multiple AP credentials in WPS
WPS can send multiple AP credentials, while existing implementation
will only use the first credentials which could be for the 5G band.
Fix this by passing these credentials to the App and attempting
to connect using each of those. Older Apps will remain compatible
without breaking WPS, but the issue will remain.
2020-07-08 11:02:55 +00:00
Nachiket Kukade
fc5d7239ea esp_wifi: Update wifi lib
1. Avoid parsing RSN/WPA IE's after connection
2. Remove AUTH_CHANGED reason code logic
2020-06-30 18:35:46 +05:30
zhangyanjiao
7cf59a8d18 esp_wifi:
Zhang Yan Jiao authored 1 day ago
1. Add TBTT update when AP reset TSF
2. fix the bug for regdomian update
3. update ESP32S2 phy lib to 601,5b0f7cd
2020-06-19 14:24:23 +08:00
kapil.gupta
179292f9b3 esp_wifi: Remove auth_changed event and fix wpa2 authmode threshold
Added following as part of this change
1. Removed auth_changed event
2. Updated doc regarding usage of  WPA/WEP secuiry modes
3. Fixed WPA2 enterprise authmode threshold.
2020-06-04 17:54:26 +05:30
ronghulin
cdaeef70c3 feature: optimize wifi API max tx power description 2020-05-20 11:52:42 +08:00
chenyudong
040f4be2a7 mesh: support set new type
If the root is specified (FIXED-ROOT) by set type or set parent, change ie.mesh_type to MESH_ROOT before connect to router
Release emesh_recv_toDS when the root becomes non-root
esp_mesh_set_type now supports MESH_IDLE and MESH_STA
2020-05-19 11:17:56 +08:00
Nachiket Kukade
d7edd28338 esp_wifi: Update WiFi lib
Add and utilize WPA3/WPA2 Mixed mode Authtype.
2020-05-15 17:24:51 +05:30
Xia Xiaotian
526a3e49ed esp_wifi: When WiFi TSF is active, skip light sleep
* Add an API for peripherals to set callbacks to skip light sleep

* Make WiFi power save example work
2020-05-13 19:31:36 +08:00
qiyuexia
4522ef8798 mesh: add duty cycle control and support only transmit/receive in actve duty cycle 2020-05-05 18:06:47 +08:00
Jiang Jiang Jian
4eec0ea4bb Merge branch 'bugfix/optimization_API_esp_wifi_deauth_sta' into 'master'
bugfix: optimization API esp_wifi_deauth_sta

Closes WIFI-1699

See merge request espressif/esp-idf!8363
2020-04-30 16:20:32 +08:00
Angus Gratton
d041512022 Merge branch 'feature/mesh_ip_network_example' into 'master'
ESP-MESH: IP internal network example

See merge request espressif/esp-idf!7724
2020-04-30 14:33:16 +08:00
ronghulin
3c8ed7b8c9 bugfix: optimization API esp_wifi_deauth_sta 2020-04-29 14:31:16 +08:00
zhangyanjiao
b96652c257 wifi changes:
1. fix the bug for softAP update second channel wrong
2. query country code wrong when policy change from manual to auto
3. change wifi_scan_time_t from union to struct
2020-04-28 20:02:25 +08:00
baohongde
95f47a2d4d Coexistence: Add coexist API to enable BLE connection dynamic priority 2020-04-28 16:16:27 +08:00
David Cermak
9e58d94a42 esp-mesh: Added example showing internal IP capable mesh network 2020-04-24 07:32:58 +02:00