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

Bluetooth Controller asserts (rwbt.c at line 381) after enable->disable->enable (IDFGH-9469) #10835

Closed
3 tasks done
mringwal opened this issue Feb 23, 2023 · 8 comments
Closed
3 tasks done
Assignees
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally Type: Bug bugs in IDF

Comments

@mringwal
Copy link
Contributor

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.

v5.1-dev-3541-g778aeae99e

Operating System used.

macOS

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

None

Development Kit.

ESP32 Lyra T v4.3

Power Supply used.

USB

What is the expected behavior?

I expect the Bluetooth Controller to work after this sequence:

  • esp_bt_controller_init
  • esp_bt_controller_enable
  • esp_bt_controller_disable
  • esp_bt_controller_enable
  • initialize the Bluetooth Host Stack (BTstack in this case)

While this enable->disable->enable sequence does not make sense as it is, it's a good test case as it reproduces 100% for me.

In a product, the user would like to disable the Bluetooth Controller to save energy and later enable it again. The crash then happens on the second startup.

What is the actual behavior?

During Bluetooth Host Stack startup, the following assert happens:

[00:00ASSERT_PARAM(2048 0), in rwbt.c at line 381
Guru Meditation Error: Core 0 panic'ed (IllegalInstruction). Exception was unhandled.

Steps to reproduce.

When using BTstack, add the following lines between the existing call to esp_bt_controller_enable and the call to esp_vhci_host_register_callback:

esp_bt_controller_disable();
esp_bt_controller_enable(bt_mode);

Then start any application.

Debug Logs.

ets Jul 29 2019 12:21:46

rst:0x1 (POWERON_RESET),boot:0x1f (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:5740
ho 0 tail 12 room 4
load:0x40078000,len:14932
load:0x40080400,len:3292
0x40080400: _init at ??:?

entry 0x400805bc
I (278) cpu_start: Pro cpu up.
I (278) cpu_start: Single core mode
I (286) cpu_start: Pro cpu start user code
I (286) cpu_start: cpu freq: 240000000 Hz
I (286) cpu_start: Application information:
I (291) cpu_start: Project name:     a2dp_sink_demo
I (297) cpu_start: App version:      ce6f85e79-dirty
I (302) cpu_start: Compile time:     Feb 23 2023 18:10:22
I (308) cpu_start: ELF file SHA256:  23bf0c53217ec466...
I (314) cpu_start: ESP-IDF:          v5.1-dev-3541-g778aeae99e
I (321) cpu_start: Min chip rev:     v0.0
I (326) cpu_start: Max chip rev:     v3.99
I (330) cpu_start: Chip rev:         v3.0
I (335) heap_init: Initializing. RAM available for dynamic allocation:
I (342) heap_init: At 3FFAFF10 len 000000F0 (0 KiB): DRAM
I (348) heap_init: At 3FFB7468 len 00000B98 (2 KiB): DRAM
I (354) heap_init: At 3FFB9A20 len 00004108 (16 KiB): DRAM
I (361) heap_init: At 3FFD0CD0 len 0000F330 (60 KiB): DRAM
I (367) heap_init: At 3FFE0440 len 0001FBC0 (126 KiB): D/IRAM
I (373) heap_init: At 40078000 len 00008000 (32 KiB): IRAM
I (379) heap_init: At 400987C8 len 00007838 (30 KiB): IRAM
I (386) heap_init: At 3FF80000 len 00002000 (8 KiB): RTCRAM
I (393) spi_flash: detected chip: generic
I (396) spi_flash: flash io: dio
W (400) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
W (414) ADC: legacy driver is deprecated, please migrate to `esp_adc/adc_oneshot.h`
W (422) i2s(legacy): legacy i2s driver is deprecated, please migrate to use driver/i2s_std.h, driver/i2s_pdm.h or driver/i2s_tdm.h
I (434) esp_core_dump_uart: Init core dump to UART
I (440) app_start: Starting scheduler on CPU0
I (445) main_task: Started on CPU0
I (449) main_task: Calling app_main()
[00:00:00.454] LOG -- btstack_run_loop_freertos.c.236: run loop init, task 0x3ffbc164, queue item size 8
[00:00:00.462] LOG -- main.c.322: transport_register_packet_handler
[00:00:00.475] LOG -- btstack_tlv.c.48: TLV Instance 0x3f40adbc
[00:00:00.477] LOG -- le_device_db_tlv.c.159: num valid le device entries 0
[00:00:00.481] LOG -- l2cap.c.4796: L2CAP_REGISTER_SERVICE psm 0x1 mtu 65535
[00:00:00.488] LOG -- l2cap.c.4796: L2CAP_REGISTER_SERVICE psm 0x19 mtu 65535
[00:00:00.494] LOG -- l2cap.c.4796: L2CAP_REGISTER_SERVICE psm 0x17 mtu 65535
Starting BTstack ...
[00:00:00.503] LOG -- hci.c.5064: hci_power_control: 1, current mode 0
[00:00:00.509] LOG -- main.c.218: transport_init
[00:00:00.514] LOG -- main.c.236: transport_open
[00:00:00.518] LOG -- main.c.261: esp_bt_controller_init
I (523) BTDM_INIT: BT controller compile version [2c56073]
[00:00:00.533] LOG -- main.c.280: esp_bt_controller_enable
I (534) phy_init: phy_version 4670,719f9f6,Feb 18 2021,17:07:07
[00:00:00.946] LOG -- main.c.287: esp_bt_controller_disable
[00:00:00.949] LOG -- main.c.294: esp_bt_controller_enable
[00:00:00.951] LOG -- main.c.301: esp_vhci_host_register_callback
[00:00:00.952] LOG -- hci.c.7519: BTSTACK_EVENT_STATE 1
[00:00:00.956] EVT <= 60 01 01
[00:00:00.960] CMD => 03 0C 00
[00:00:00.966] EVT <= 6E 00
[00:00:00.966] EVT <= 0E 04 05 03 0C 00
[00:00:00.969] CMD => 01 10 00
[00:00:00.974] EVT <= 0E 0C 05 01 10 00 08 0E 03 08 60 00 0E 03
[00:00:00.977] LOG -- hci.c.2780: Manufacturer: 0x0060
[00:00:00.982] EVT <= 6E 00
[00:00:00.985] CMD => 14 0C 00
[00:00:00.990] EVT <= 0E FC 05 14 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[00:00:01.056] LOG -- hci.c.2630: local name:
[00:00:01.060] EVT <= 6E 00
[00:00:01.062] CMD => 02 10 00
[00:00:01.068] EVT <= 0E 44 05 02 10 00 BF FF FF 03 CC FF EF FF 3F FF FC 1F F2 0F E8 FE 3F F7 8F FF 1C 00 04 00 61 F7 FF FF 7F 38 C0 FF 7F FF FF 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[00:00:01.086] LOG -- hci.c.2598: Command 0x00 supported 2/5
[00:00:01.091] LOG -- hci.c.2598: Command 0x01 supported 10/4
[00:00:01.096] LOG -- hci.c.2598: Command 0x02 supported 14/7
[00:00:01.102] LOG -- hci.c.2598: Command 0x03 supported 18/3
[00:00:01.107] LOG -- hci.c.2598: Command 0x04 supported 20/4
[00:00:01.113] LOG -- hci.c.2598: Command 0x05 supported 22/2
[00:00:01.118] LOG -- hci.c.2598: Command 0x06 supported 24/6
[00:00:01.124] LOG -- hci.c.2598: Command 0x07 supported 32/1
[00:00:01.129] LOG -- hci.c.2598: Command 0x08 supported 32/3
[00:00:01.135] LOG -- hci.c.2598: Command 0x09 supported 32/6
[00:00:01.140] LOG -- hci.c.2598: Command 0x0a supported 34/0
[00:00:01.146] LOG -- hci.c.2598: Command 0x0b supported 35/1
[00:00:01.151] LOG -- hci.c.2598: Command 0x0c supported 35/3
[00:00:01.157] LOG -- hci.c.2603: Local supported commands summary 00001fff
[00:00:01.163] LOG -- btstack_crypto.c.1121: controller supports ECDH operation: 1
[00:00:01.171] EVT <= 6E 00
[00:00:01.173] CMD => 09 10 00
[00:00:01.179] EVT <= 0E 0A 05 09 10 00 6A 2D 31 F2 3A 08
[00:00:01.181] LOG -- hci.c.2727: Local Address, Status: 0x00: Addr: 08:3A:F2:31:2D:6A
[00:00:01.189] EVT <= 6E 00
[00:00:01.192] CMD => 05 10 00
[00:00:01.197] EVT <= 0E 0B 05 05 10 00 FD 03 FF 09 00 04 00
[00:00:01.200] LOG -- hci.c.2645: hci_read_buffer_size: ACL size module 1021 -> used 1021, count 9 / SCO size 255, count 4
[00:00:01.211] EVT <= 6E 00
[00:00:01.213] CMD => 03 10 00
[00:00:01.219] EVT <= 0E 0C 05 03 10 00 BF EE CD FE DB FF 7B 87
[00:00:01.222] LOG -- hci.c.2761: Packet types cc18, eSCO 1
[00:00:01.227] LOG -- hci.c.2764: BR/EDR support 1, LE support 1
[00:00:01.233] EVT <= 6E 00
[00:00:01.236] CMD => 33 0C 07 00 04 3C 14 00 0A 00
[00:00:01.243] EVT <= 0E 04 05 33 0C 00
[00:00:01.244] EVT <= 6E 00
[00:00:01.246] CMD => 31 0C 01 03
[00:00:01.252] EVT <= 0E 04 05 31 0C 00
[00:00:01.253] EVT <= 6E 00
[00:00:01.256] CMD => 01 0C 08 FF FF FF FF FF FF FF 3F
[00:00:01.264] EVT <= 0E 04 05 01 0C 00
[00:00:01.265] EVT <= 6E 00
[00:00:01.267] CMD => 63 0C 08 00 00 00 02 00 00 00 00
[00:00:01.274] EVT <= 0E 04 05 63 0C 00
[00:00:01.276] EVT <= 6E 00
[00:00:01.278] CMD => 56 0C 01 01
[00:00:01.284] EVT <= 0E 04 05 56 0C 00
[00:00:01.285] EVT <= 6E 00
[00:00:01.288] CMD => 45 0C 01 00
[00:00:01.293] EVT <= 0E 04 05 45 0C 00
[00:00:01.294] EVT <= 6E 00
[00:00:01.297] CMD => 7A 0C 01 01
[00:00:01.302] EVT <= 0E 04 05 7A 0C 00
[00:00:01.304] EVT <= 6E 00
[00:00:01.306] CMD => 2F 0C 01 01
[00:00:01.312] EVT <= 0E 04 05 2F 0C 00
[00:00:01.313] EVT <= 6E 00
[00:00:01.316] CMD => 5B 0C 01 01
[00:00:01.321] EVT <= 0E 04 05 5B 0C 00
[00:00:01.323] EVT <= 6E 00
[00:00:01.325] CMD => 02 20 00
[00:00:01.331] EVT <= 0E 07 05 02 20 00 FB 00 0A
[00:00:01.332] LOG -- hci.c.2675: hci_le_read_buffer_size: acl size 251, acl count 10
[00:00:01.340] EVT <= 6E 00
[00:00:01.343] CMD => 6D 0C 02 01 00
[00:00:01.349] EVT <= 0E 04 05 6D 0C 00
[00:00:01.350] EVT <= 6E 00
[00:00:01.352] CMD => 01 20 08 FF FD FF FF 07 00 00 00
[00:00:01.360] EVT <= 0E 04 05 01 20 00
[00:00:01.361] EVT <= 6E 00
[00:00:01.363] CMD => 2F 20 00
[00:00:01.369] EVT <= 0E 0C 05 2F 20 00 FB 00 48 08 FB 00 48 08
[00:00:01.372] LOG -- hci.c.2682: hci_le_read_maximum_data_length: tx octets 251, tx time 2120 us
[00:00:01.381] EVT <= 6E 00
[00:00:01.383] CMD => 24 20 04 FB 00 48 08
[00:00:01.390] EVT <= 0E 04 05 24 20 00
[00:00:01.391] EVT <= 6E 00
[00:00:01.393] CMD => 0F 20 00
[00:00:01.399] EVT <= 0E 05 05 0F 20 00 0C
[00:00:01.400] LOG -- hci.c.2688: hci_le_read_white_list_size: size 12
[00:00:01.406] EVT <= 6E 00
[00:00:01.409] CMD => 24 0C 03 14 04 20
[00:00:01.415] EVT <= 0E 04 05 24 0C 00
[00:00:01.416] EVT <= 6E 00
[00:00:01.419] CMD => 13 0C F8 41 32 44 50 20 53 69 6E 6B 20 44 65 6D 6F 20 30 38 3A 33 41 3A 46 32 3A 33 31 3A 32 44 3A 36 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[00:00:01.489] EVT <= 0E 04 05 13 0C 00
[00:00:01.490] EVT <= 6E 00
[00:00:01.493] CMD => 52 0C F1 00 21 09 41 32 44 50 20 53 69 6E 6B 20 44 65 6D 6F 20 30 38 3A 33 41 3A 46 32 3A 33 31 3A 32 44 3A 36 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[00:00:01.561] EVT <= 0E 04 05 52 0C 00
[00:00:01.562] EVT <= 6E 00
[00:00:01.564] CMD => 0F 08 02 05 00
[00:00:01.571] EVT <= 0E 04 05 0F 08 00
[00:00:01.572] EVT <= 6E 00
[00:00:01.574] CMD => 18 0C 02 00 60
[00:00:01.580] EVT <= 0E 04 05 18 0C 00
[00:00:01.581] EVT <= 6E 00
[00:00:01.584] CMD => 1A 0C 01 03
[00:00:01.589] EVT <= 0E 04 05 1A 0C 00
[00:00ASSERT_PARAM(2048 0), in rwbt.c at line 381
Guru Meditation Error: Core  0 panic'ed (IllegalInstruction). Exception was unhandled.
Memory dump at 0x4008f238: f01d020c 00004136 f01d0000
0x4008f238: btdm_sleep_check_duration at /Users/mringwal/Projects/esp32/esp-idf/components/bt/controller/esp32/bt.c:947

Core  0 register dump:
PC      : 0x4008f23f  PS      : 0x00060d34  A0      : 0x80083c31  A1      : 0x3ffc16b8
0x4008f23f: r_assert at /Users/mringwal/Projects/esp32/esp-idf/components/bt/controller/esp32/bt.c:1863

A2      : 0x00000000  A3      : 0x00000800  A4      : 0x00000000  A5      : 0x3f410a98
A6      : 0x0000017d  A7      : 0xfffffffc  A8      : 0x8000814b  A9      : 0x3ffc1628
A10     : 0x00000000  A11     : 0x3ffc164b  A12     : 0x3ffc15f7  A13     : 0x00000031
A14     : 0x00000000  A15     : 0x3ffc15fc  SAR     : 0x00000004  EXCCAUSE: 0x00000000
EXCVADDR: 0x00000000  LBEG    : 0x40083b39  LEND    : 0x40083b41  LCOUNT  : 0x00000000
0x40083b39: r_assert_param at ??:?

0x40083b41: r_assert_param at ??:?



Backtrace: 0x4008f23c:0x3ffc16b8 |<-CORRUPTED
0x4008f23c: r_assert at /Users/mringwal/Projects/esp32/esp-idf/components/bt/controller/esp32/bt.c:1862





ELF file SHA256: 23bf0c53217ec466

Initiating core dump!
I (1665) esp_core_dump_uart: Press Enter to print core dump to UART...
I (1672) esp_core_dump_uart: Print core dump to uart...
Core dump started (further output muted)
Received  10 kB...
Core dump finished!

More Information.

No response

@mringwal mringwal added the Type: Bug bugs in IDF label Feb 23, 2023
@mringwal
Copy link
Contributor Author

Issue #8405 hits the same assert, but seems unrelated as they don't disable->enable the Bluetooth Controller.

@github-actions github-actions bot changed the title Bluetooth Controller asserts (rwbt.c at line 381) after enable->disable->enable Bluetooth Controller asserts (rwbt.c at line 381) after enable->disable->enable (IDFGH-9469) Feb 23, 2023
@espressif-bot espressif-bot added the Status: Opened Issue is new label Feb 23, 2023
@xiongweichao
Copy link
Collaborator

Hi @mringwal ,

May I ask if it can be changed to the following way?

esp_bt_controller_init
esp_bt_controller_enable
esp_bt_controller_disable
esp_bt_controller_deinit
esp_bt_controller_init
esp_bt_controller_enable
initialize the Bluetooth Host Stack (BTstack in this case)

Thanks

@espressif-bot espressif-bot added Status: In Progress Work is in progress and removed Status: Opened Issue is new labels Apr 4, 2023
@xiongweichao
Copy link
Collaborator

Hi @mringwal ,

Please try if this lib can solve the problem.
replace path: $IDF_PATH/components/bt/controller/lib_esp32
esp32.zip

Thanks

@mringwal
Copy link
Contributor Author

mringwal commented Apr 4, 2023

Thanks. I will try and let you know.

@mringwal
Copy link
Contributor Author

mringwal commented Apr 4, 2023

Hi @xiongweichao I've copied the the lib from the .zip archive at the indicated location ( $IDF_PATH/components/bt/controller/lib_esp32). I still get the same assert.
Would you like to reproduce this on your end? You only to follow our ESP32 Readme https://github.com/bluekitchen/btstack/tree/master/port/esp32 and add the disable/enable sequence in components/btstack/btstack_port_esp32.c - transport_open().

@mringwal
Copy link
Contributor Author

mringwal commented Apr 4, 2023

esp_bt_controller_init
esp_bt_controller_enable
esp_bt_controller_disable
esp_bt_controller_deinit
esp_bt_controller_init
esp_bt_controller_enable
initialize the Bluetooth Host Stack (BTstack in this case)

Hi @xiongweichao. This seems to work, thanks!
Please let me know if you try to get enable-disable-enable to work.
If not, going over de-init is a valid solution for us.

Should esp_bt_controller_mem_release be called a second time if Classic is not used on ESP32:

  • esp_bt_controller_mem_release
  • esp_bt_controller_init
  • esp_bt_controller_enable
  • ... use Controller
  • esp_bt_controller_disable
  • esp_bt_controller_deinit
  • .. long pause
  • esp_bt_controller_mem_release again?
  • esp_bt_controller_init
  • esp_bt_controller_enable
    .

@xiongweichao
Copy link
Collaborator

Hi @mringwal ,

  1. I reproduced this problem and there is no such problem after using the new lib.The new lib version information is as follows.
    BTDM_INIT: BT controller compile version [09b12ae]

  2. esp_bt_controller_mem_release again?
    I don't understand you. But I think you can refer to this.

Thanks

@mringwal
Copy link
Contributor Author

mringwal commented Apr 6, 2023

Hi @xiongweichao

Thanks for checking. Sorry, I must have made a mistake yesterday. Just tried again and the Controller behaves correctly both with enable/disable/enable as well as enable/disabled/deinit/init/enable.

Great!

Could you ping me here once it was merged into master? Thanks again!

@espressif-bot espressif-bot added Resolution: NA Issue resolution is unavailable Status: Done Issue is done internally Resolution: Done Issue is done internally and removed Status: In Progress Work is in progress Resolution: NA Issue resolution is unavailable labels Apr 11, 2023
espressif-bot pushed a commit that referenced this issue Apr 16, 2023
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state
3. Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
4. Fixed crash caused by supervision timeout greater than sniff interval

Closes #11164
Closes #10835
espressif-bot pushed a commit that referenced this issue Apr 19, 2023
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state
3. Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
4. Fixed crash caused by supervision timeout greater than sniff interval

Closes #11164
Closes #10835
espressif-bot pushed a commit that referenced this issue Apr 26, 2023
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state
3. Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
4. Fixed crash caused by supervision timeout greater than sniff interval

Closes #11164
Closes #10835
espressif-bot pushed a commit that referenced this issue May 5, 2023
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state

Closes #11164
Closes #10835
espressif-bot pushed a commit that referenced this issue May 14, 2023
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state
3. Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
4. Fixed crash caused by supervision timeout greater than sniff interval

Closes #11164
Closes #10835
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally Type: Bug bugs in IDF
Projects
None yet
Development

No branches or pull requests

3 participants