Closed AdemYavuzCelik closed 1 year ago
"CONNECTION_TERMINATED_MIC_FAILURE"; // Connection terminated because Message Integrity Check failed on received packet.
seems your device is really buggy
It works fine in 1.5.2.
This failure not happen on Xiaomi device, but it does on Google Pixel 6. Can we still say that the IoT device is buggy?
from the logs it seems you're device might not like "requestMtu"
try setting mtu to null
i.e device.connect(mtu: null);
We have to set mtu 512. i cant set null :/
As per spec, error 61 (0x3d) means "CONNECTION TERMINATED DUE TO MIC FAILURE". The Message Integrity Check (MIC) is a 4-bytes extra field added to the BLE packet when encryption is enabled. That means the MIC failed on a packet received on your phone, which causes disconnection.
I found something like this, I wonder if anything has changed regarding this?
Requirements
Have you checked this problem on the example app?
Yes
FlutterBluePlus Version
1.29.6
Flutter Version
3.13.5
What OS?
Android
OS Version
13/14
Bluetooth Module
esp32c3
What is your problem?
If the device is not a paired device, connection, service discovery, etc. work very well but device is paired, my app cant discover services. Another problem, it's rare but it does happen, Sometimes it shows autoconnect true in logs but autoconnect true or just connect anywhere in the application. Im using only autoconnect(false).
Logs