Commit graph

1350 commits

Author SHA1 Message Date
Liu Zhi Fu 6159788b97 esp32: fix wifi memory leak
Fix a WiFi memory leak bug
2018-10-21 20:43:48 +08:00
Tian Hao e982c25b40 coexist : fix coexist bugs related to coex hw blocking
1. fix some bugs by previous coex hw blocking bugfix,
   such like, rwble.c (64, 0) line 222
2. fix bug that ble scan performance is very low when software coexist
   is working.
3. update libcoexist version to v1.1.0
2018-10-17 18:30:39 +08:00
Liu Zhi Fu f97e2d3bde Bugfix/tw26696 fix wifi timer v3.1 (backport v3.1) 2018-10-17 17:30:46 +08:00
Ivan Grokhotkov 93f04b87b2 Merge branch 'bugfix/fix_random_failure_with_ota_updates_v3.1' into 'release/v3.1'
app_update: fix intermittent failure with firmware updates (backport v3.1)

See merge request idf/esp-idf!3419
2018-10-16 10:58:24 +08:00
Jiang Jiang Jian 3cf2f09469 Merge branch 'bugfix/several_bugfix_about_ba_session_setup_v3.1' into 'release/v3.1'
esp32: several fixes about BA session setup (backport v3.1)

See merge request idf/esp-idf!3456
2018-10-11 11:42:15 +08:00
Angus Gratton 027e081622 Merge branch 'bugfix/misc_v3_1_backports' into 'release/v3.1'
Multiple v3.1 backports

See merge request idf/esp-idf!3378
2018-10-10 15:01:13 +08:00
Liu Zhi Fu 84b4916fb8 esp32: several fixes about BA session setup
1. Fix the bug that ESP32 will reject the retry AddBA request frame
   if AddBA response frame is failed to sent by WiFi LMAC
2. Fix the bug that AddBA request retrys too frequently
3. Forbid BA session setup for VO queue related TID
2018-10-10 14:04:29 +08:00
Jiang Jiang Jian 1a3db605c2 Merge branch 'bugfix/no_disconnect_event_report_if_no_correct_status_code_report_v3.1' into 'release/v3.1'
Bugfix of no disconnect event report if no correct status code report( Backport v3.1)

See merge request idf/esp-idf!3386
2018-10-08 21:35:02 +08:00
Mahavir Jain bbad487deb app_update: fix intermittent failure with firmware updates
Routine `spi_flash_cache2phys` sometimes return incorrect value,
resulting in failure in getting currently running ota partition.
This in turn aborts firmware update process.This issue was more
prominent with SPIRAM enabled cases.

Fix ensures proper cache guards during `spi_flash_cache2phys`, and
also for few other similar APIs.

In addition, `esp_ota_get_running_partition` has also been optimized
to save currently running partition for subsequent invocations.

Fixes https://github.com/espressif/esp-idf/issues/2451
2018-10-08 03:18:37 +00:00
Sagar Bijwe 68a9d1168f nvs_flash: Add support for nvs encryption 2018-10-04 19:25:12 +05:30
Deng Xin 862b7b22b5 Bugfix of no disconnect event report if no correct status code report
Problem Description
The reporduce steps are as follows:

1.This issue can be reproduced with 4 ESP32 devices, 2 for stations (STA1, STA2) and 2 for soft-AP (AP1, AP2)
2.Configure AP1/AP2 to the same SSID (ssid_xxx)
3.The max allowed WiFi connections of AP1 is configured to 1 and STA1 connects to AP1
4.The AP1 is close to STA2 while AP2 is far away from STA2 (but the STA2 can find the AP2 via scan)
5.STA2 connects ssid_xxx with all scan method
6.The problem will happen on STA2 because it fails to connec AP1 and never connects AP2

Phenmenon
STA fail to connect after send auth or assoc with a wrong status code, but no disconnect event report and can not connect the next one in the envrionment
Root Cause
Because there are some same ssid APs in the evnrionment, when do all channel scan, it will collect all the matched AP in rc list, because rc list is not empty, so it would send disconnect event, however, we didn't do other step such as connect to other one
VNC MR 575
closes https://github.com/espressif/esp-idf/issues/2323
2018-09-29 16:18:26 +08:00
Tian Hao ebdc82d3d2 component/bt : fix coexist hardware blocking bug
fix the bug following:
1. after disable bluetooth controller, wifi cannot TX/RX any packets.
2. when software coexist working, there's a little ratio cause wifi task
watchdog timeout
3. when software coexist working, there's a little ratio cause bluetooth
cannot receive anything.

feature:
1. add libbtdm_app.a git commit local and remote checking

Known issues:
1. there's still a bug occurs with a very very low ratio cause bluetooth
   cannot receive anything. The reproduce interval may great than 3days
   ~ 1week via 7x24 hours heavy testing.
2018-09-27 20:56:46 +08:00
Ivan Grokhotkov 75fcd062e8 esp32: abort when running on single core chip in dual core mode
Ref. https://esp32.com/viewtopic.php?f=2&t=7307
2018-09-27 13:35:11 +08:00
Ivan Grokhotkov b7fde00aed sleep: keep RTC_SLOW_MEM powered on if RTC_NOINIT is used
Fixes a bug that if application uses RTC_NOINIT variables but doesn’t
use RTC_DATA variables, then RTC_NOINIT variables loose their values
after deep sleep.

Reported in https://esp32.com/viewtopic.php?f=2&t=7045&p=30301#p30299
2018-09-27 11:31:28 +08:00
qiyueixa 1d4ae1e9ad mesh: bugfix
1. suppport mesh type, mesh ID, router and IE crypt func&key at any time after mesh is initalized.
2. support modify parent at any time after mesh is configured.
3. modify manual networking example.
4. update header file.
5. fix issues in root conflicts handling.
6. add max length of beacon to menuconfig.
7. fix issue when received a beacon without DSSS.
2018-09-25 13:43:55 +08:00
XiaXiaotian 738afe2de3 esp32: backport several WiFi bug fixes to v3.1
Backport following WiFi fixes to v3.1:
1. Fix AMPDU RX sequence compitability bug
2. Optimize scan capability in all channel scan
3. Fix some modem sleep bugs
4. Update API to set CSI channel filter and HT_LTF data generating
2018-09-17 14:40:24 +08:00
Renz Christian Bagaporo bc8540fec1 cmake: fix source list issues 2018-09-13 11:13:27 +08:00
Renz Bagaporo 7edf2bf66c cmake: make main a component again 2018-09-13 11:13:27 +08:00
zhangyanjiao f617a33b8d esp32: fix the bug that SYSTEM_EVENT_STA_GOT_IP is forbidden when gateway is 0.0.0.0 2018-09-11 10:57:17 +08:00
zhangyanjiao c27c381ba2 defination: fix the bug that esp_derive_local_mac() defination missing 2018-09-05 14:42:23 +08:00
Jiang Jiang Jian 969161183a Merge branch 'bugfix/esp_wifi_disconnect_fail_v3.1' into 'release/v3.1'
update wifi lib to fix two bugs (backport v3.1)

See merge request idf/esp-idf!3158
2018-09-04 15:06:49 +08:00
Darian Leung 27ffeacf07 docs/rewrite_mesh_docs
The following commit rewrites the ESP-MESH docs. This commit includes
new diagrams and a structure approach to the mesh docs. Some mesh api references
have also been modified.
2018-09-03 13:03:32 +08:00
zhangyanjiao ec3a1318dc update wifi lib to fix two bugs
1. fix the esp_wifi_disconnect() err when wifi is not started or inited

2. make g_intr_lock_mux and g_osi_funs_p in DRAM
2018-08-31 20:10:20 +08:00
Jiang Jiang Jian 22da5f6de9 Merge branch 'bugfix/btdm_security_vulnerability_v3.1' into 'release/v3.1'
fix bluetooth security vulnerability of ECDH public key checking

See merge request idf/esp-idf!3139
2018-08-31 02:11:55 +08:00
XiaXiaotian 2ad5686937 esp32: reorder MPDU as AMPDU
Some APs transmit AMPDU and MPDU by turns. Moreover, the sequence
    numbers of AMPDU and MPDU are out of order, e.g. MPDU(1253) -
    AMPDU(1251, 1252) - MPDU(1254) - AMPDU(1255, 1256). In order to
    receive both AMPDU and MPDU in order, MPDU must be reordered with
    AMPDU.
2018-08-30 11:46:16 +08:00
Tian Hao 7f8de47631 fix bluetooth security vulnerability of ECDH publick key checking 2018-08-30 11:09:02 +08:00
Jiang Jiang Jian 9f791e06f6 Merge branch 'bugfix/mesh_fix_hard_to_find_parent_v3.1' into 'release/v3.1'
mesh: bugfix and add two APIs (backport3.1)

See merge request idf/esp-idf!3134
2018-08-30 01:54:08 +08:00
Jiang Jiang Jian c3ba237846 Merge branch 'bugfix/btdm_fix_crash_when_BLE_do_SMP_con_discon_stress_test_v3.1' into 'release/v3.1'
Component/bt: fix crash when BLE do connect and disconnect stress test(backport v3.1)

See merge request idf/esp-idf!3119
2018-08-30 01:51:33 +08:00
zhiweijian 17c4a76395 component/bt: fix crash when BLE do con and duscon stress test 2018-08-30 00:36:57 +08:00
Angus Gratton 1d537d29d5 Merge branch 'feature/cmake_v3.1' into release/v3.1 2018-08-29 19:30:06 +08:00
qiyuexia 09f5854c9a mesh: bugfix and add two APIs
1. new APIs: esp_mesh_get_subnet_nodes_num() and esp_mesh_get_subnet_nodes_list().
2. fix hard to find the parent during connect.
3. disable Wi-Fi channel switch function.
4. fix a typo of MESH_EVENT_NO_PARENT_FOUND.
2018-08-29 17:28:17 +08:00
Liu Zhi Fu 3d2cd911f0 esp32: update wifi lib to fix several WiFi bugs
Fix following WiFi bugs:
1. Shouldn't scan when connect
2. Check beacon length in modem sleep
3. Fix the bug that AP may deauth wrong station when inactivity timer expires
4. Fix the bug that WiFi assert the system when receiving empty MCS in association response frame
2018-08-26 13:15:53 +08:00
Angus Gratton 7f50bb7e7f Merge branch 'release/v3.1' into feature/cmake_v3.1 2018-08-17 14:14:10 +10:00
Angus Gratton ddb2570849 Merge branch 'mesh/bugfix_parent_switch_backport_v3.1' into 'release/v3.1'
mesh: modify parent switch mechanism (backport3.1)

See merge request idf/esp-idf!2977
2018-08-10 13:42:32 +08:00
qiyuexia d421663d3f mesh: modify parent switch mechanism
1. modify parent switch mechanism.
2. fix non-root doesn't clear the layer value in nvs.
3. fix retransmit the remove announcement packets.
4. add API esp_mesh_flush_upstream_packets().
5. automatically adjust passsive scan time based on the change of beacon interval.
2018-08-10 11:45:11 +08:00
Jiang Jiang Jian c455d6f2a0 Merge branch 'feature/nvs_version_check_v3.1' into 'release/v3.1'
nvs_flash: Version compatibility check for nvs storage (backport 3.1)

See merge request idf/esp-idf!2958
2018-08-10 11:36:39 +08:00
Jiang Jiang Jian 8a6c1df041 esp32: backport several WiFi bug fixes to v3.1
Backport following bug fixes to v3.1:

1. Bug fix of may connect to wrong AP in all channel scan

2. Station state machine change and fix ap loss

3. Add compatible to ccmp encryption

4. Update libphy.a to v3960:
   4.1 Decrease  phy_init time from 900us to 347us in sleep wakeup
   4.2 Fix RX STBC initialization
   4.3 Modify set_chan function to fix interrupt watchdog issue

5. Fix several wpa2 enterprise issues
   5.1 Fix heap corrupted bug
   5.2 Fix memory leak bug
   5.3 Make wpa2 enterprise thread-safe
   Closes https://github.com/espressif/esp-idf/issues/1569

6. Bugfix of coex wifi pm
2018-08-09 13:24:16 +00:00
Sagar Bijwe a3b5a23b87 nvs_flash: Version compatibility check for nvs storage
This change adds a check for compatibility between the nvs version
found on nvs flash and the one assumed by running code during nvs
initialization. Any mismatch is reported to the user using new error
code ESP_ERR_NVS_NEW_VERSION_FOUND.
2018-08-08 12:43:50 +05:30
Tian Hao 7d9d4d16e5 fix coex pause cause bluetooth performance decrease
1. it may cause BLE connection unstable
2. it may cause Classic BT connection unstable
3. it may cause BLE/BREDR scan performance decrease
2018-08-06 11:19:17 +08:00
chenyudong b490f05b95 wifi: fix ampdu duplicate issue
fix ampdu duplicate issue
2018-08-04 15:33:55 +00:00
Jiang Jiang Jian c209efa4e2 Merge branch 'doc/wifi_update_channel_state_information_document_v3.1' into 'release/v3.1'
docs: update channel state information document (backport v3.1)

See merge request idf/esp-idf!2796
2018-08-01 14:49:45 +08:00
wangmengyang d3cb687936 component/bt: bugfix on the crash during end of sco link resulted from link supervision timeout 2018-07-31 15:35:58 +08:00
He Yin Ling 146a959706 esp32/test: set 60s timeout for one deep sleep case 2018-07-28 15:00:57 +08:00
Jiang Jiang Jian 62682a681a Merge branch 'feature/wifi_check_wifi_lib_git_commit_id_v3.1' into 'release/v3.1'
check WiFi library git commit id in unit test (backport v3.1)

See merge request idf/esp-idf!2785
2018-07-26 14:24:52 +08:00
fuzhibo c6be772242 fix(sleep): swap touchpad num in wakeup status 2018-07-24 18:08:29 +08:00
Angus Gratton 9b6769411a Merge branch 'bugfix/deep_sleep_flush_uart_v3.1' into 'release/v3.1'
sleep: fix flushing UARTs when entering deep sleep (backport v3.1)

See merge request idf/esp-idf!2816
2018-07-24 14:06:59 +08:00
XiaXiaotian bd768edca2 check WiFi library git commit id in unit test 2018-07-23 20:03:43 +08:00
Deng Xin 487ae78235 Wifi: bugfix of beacon info don't update after user scan 2018-07-21 10:39:43 +00:00
Ivan Grokhotkov d360f6d95d sleep: fix flushing UARTs when entering deep sleep
Since 94250e42a0, UART output is suspended when entering sleep mode
(deep or light sleep). This makes sense for light sleep, where sleep
normally takes small amount of time, and flushing the UART would add
a lot of latency. But this breaks existing behaviour for deep sleep,
where UART output was previously sent out before entering sleep mode.

Closes https://github.com/espressif/esp-idf/issues/2145
2018-07-19 10:21:23 +03:00
XiaXiaotian f4c57eb764 docs: update channel state information document
1. Move channel to the first row of the table.

    2. Remove the condition of HT20/HT40 for they are determined by
    secondary channel.

    3. Clean up the CSI table.
2018-07-17 15:01:12 +08:00