I know there's already this question with many suggestions but it's marked as resolved and not about MBP.
I have a setup with Magic Keyboard and Trackpad 2 connected over Bluetooth to MBP. Also an external display Dell U2715H. I've been working for a few months with MBP 2012 and it worked flawlessly, the monitor was connected via DP to mDP cable. Then my 2012 MBP died on me and I replaced it with 2018 MBP. I connected the display via Satechi USB-C hub with mDP slot.
And with this new setup, my Trackpad started to suddenly drop Bluetooth connections from time to time. It randomly disconnects-connects for 4-5 times over a few seconds. So, it's obviously not a Trackpad or some Wi-Fi router interferences issue because it worked just fine with the old MBP. I tried a few things that did not help:
- Uninstall LittleSnitch (I've read somewhere that it might interfere)
- Connected USB-C hub to the right side (tried different slots)
- Reset Bluetooth module
- Disabled handoff
- Connect/disconnect Bluetooth devices
- Charged devices to 100%
Apple support wasn't helpful either.
At first, disconnects happened only with Trackpad but not Magic Keyboard which I thought is super weird but later the keyboard started to disconnect as well.
I read a few reports by people claiming that's the issue in the USB-C hub interfering with Bluetooth signal, so I tested a day without the USB hub and connections weren't dropped, so I decided that's the issue and bought myself a DP to USB-c cable to replace the hub for the display connection. But to my surprise, it did not help.
I installed Bluetooth PacketLogger and got these error logs during the disconnects:
12:54:25.383 L2CAP Receive 0x000C Trackpad Connection Request - HID Control
Identifier: 0x02
Size: 4 (0x0004)
PSM: 0x0011 - HID Control
Source CID: 0x0048
Channel ID: 0x0001 Length: 0x0008 (08) [ 02 02 04 00 11 00 48 00 ]
L2CAP Payload:
00000000: 0202 0400 1100 4800 ......H.
12:54:25.383 ACL Receive 0x000C Trackpad Data [Handle: 0x000C, Packet Boundary Flags: 0x2, Length: 0x000C (12)]
Packet Boundary Flags: [10] 0x02 - First packet of Higher Layer Message (i.e. start of an L2CAP packet)
Broadcast Flags: [00] 0x00 - Point-to-point
Data (0x000C bytes)
12:54:25.383 ACL Receive 0x0000
00000000: 0C20 0C00 0800 0100 0202 0400 1100 4800 . ............H.
########################################################
12:54:25.383 L2CAP Send 0x000C Trackpad Connection Response - HID Control - Connection Pending
Identifier: 0x02
Size: 8 (0x0008)
Destination CID: 0x0040
Source CID: 0x0048
Result: 0x0001 (Connection Pending)
Status: 0x0000 (No further information available)
Channel ID: 0x0001 Length: 0x000C (12) [ 03 02 08 00 40 00 48 00 01 00 00 00 ]
L2CAP Payload:
00000000: 0302 0800 4000 4800 0100 0000 [email protected].....
12:54:25.383 ACL Send 0x000C Trackpad Data [Handle: 0x000C, Packet Boundary Flags: 0x2, Length: 0x0010 (16)]
Packet Boundary Flags: [10] 0x02 - First packet of Higher Layer Message (i.e. start of an L2CAP packet)
Broadcast Flags: [00] 0x00 - Point-to-point
Data (0x0010 bytes)
12:54:25.383 ACL Send 0x0000 00000000: 0C20 1000 0C00 0100 0302 0800 4000 4800 . [email protected].
00000000: 0C20 1000 0C00 0100 0302 0800 4000 4800 . [email protected].
00000010: 0100 0000 ....
########################################################
12:54:25.383 L2CAP Send 0x000C Trackpad Connection Response - HID Control - Connection Successful
Identifier: 0x02
Size: 8 (0x0008)
Destination CID: 0x0040
Source CID: 0x0048
Result: 0x0000 (Connection Successful)
Status: 0x0000 (No further information available)
Channel ID: 0x0001 Length: 0x000C (12) [ 03 02 08 00 40 00 48 00 00 00 00 00 ]
L2CAP Payload:
00000000: 0302 0800 4000 4800 0000 0000 [email protected].....
12:54:25.383 ACL Send 0x000C Trackpad Data [Handle: 0x000C, Packet Boundary Flags: 0x2, Length: 0x0010 (16)]
Packet Boundary Flags: [10] 0x02 - First packet of Higher Layer Message (i.e. start of an L2CAP packet)
Broadcast Flags: [00] 0x00 - Point-to-point
Data (0x0010 bytes)
12:54:25.383 ACL Send 0x0000 00000000: 0C20 1000 0C00 0100 0302 0800 4000 4800 . [email protected].
00000000: 0C20 1000 0C00 0100 0302 0800 4000 4800 . [email protected].
00000010: 0000 0000 ....
########################################################
12:54:25.383 L2CAP Send 0x000C Trackpad Configuration Request - HID Control
Identifier: 0x03
Size: 8 (0x0008)
Destination CID: 0x0048
Flags: 0x0000 - Not Continuation
Options:
MTU (Hint) - Length: 0x02
MTU: 0xFFFF
Channel ID: 0x0001 Length: 0x000C (12) [ 04 03 08 00 48 00 00 00 01 02 FF FF ]
L2CAP Payload:
00000000: 0403 0800 4800 0000 0102 FFFF ....H.......
12:54:25.383 ACL Send 0x000C Trackpad Data [Handle: 0x000C, Packet Boundary Flags: 0x2, Length: 0x0010 (16)]
Packet Boundary Flags: [10] 0x02 - First packet of Higher Layer Message (i.e. start of an L2CAP packet)
Broadcast Flags: [00] 0x00 - Point-to-point
Data (0x0010 bytes)
12:54:25.383 ACL Send 0x0000 00000000: 0C20 1000 0C00 0100 0403 0800 4800 0000 . ..........H...
00000000: 0C20 1000 0C00 0100 0403 0800 4800 0000 . ..........H...
00000010: 0102 FFFF ....
########################################################
12:54:25.394 L2CAP Receive 0x000C Trackpad Connection Request - HID Interrupt
Identifier: 0x04
Size: 4 (0x0004)
PSM: 0x0013 - HID Interrupt
Source CID: 0x0049
Channel ID: 0x0001 Length: 0x0008 (08) [ 02 04 04 00 13 00 49 00 ]
L2CAP Payload:
00000000: 0204 0400 1300 4900 ......I.
12:54:25.394 ACL Receive 0x000C Trackpad Data [Handle: 0x000C, Packet Boundary Flags: 0x2, Length: 0x000C (12)]
Packet Boundary Flags: [10] 0x02 - First packet of Higher Layer Message (i.e. start of an L2CAP packet)
Broadcast Flags: [00] 0x00 - Point-to-point
Data (0x000C bytes)
12:54:25.394 ACL Receive 0x0000 00000000: 0C20 0C00 0800 0100 0204 0400 1300 4900 . ............I.
00000000: 0C20 0C00 0800 0100 0204 0400 1300 4900 . ............I.
I think the only helpful message out of all this is First packet of Higher Layer Message (i.e. start of an L2CAP packet)
. Sounds like there's an interference with Bluetooth after all.
At this point, I'm inclined to think that the MBP 2018 just has a bad Bluetooth module (or poor design that causes signal interferences) and to resolve it for good you'll need to buy an external Bluetooth adapter.