How to fix Bluetooth mouse stuttering on Surface Laptop 4
I recently switched to a Surface Laptop 4 as my primary web development laptop and it has been nearly flawless. Windows combined with WSL2, winget, and the new Windows Terminal makes for a truly enjoyable workflow.
Unfortunately, any Bluetooth mouse connected to the Surface Laptop 4 randomly stuttered - thankfully there is a fix.
The steps in this article fixed the mouse stuttering issue I was experiencing under Windows 10 but in turn created a new bug.
Bluetooth devices would not work when resuming Windows after being put into Sleep Mode. I had to turn Bluetooth off and back on every time I woke the laptop otherwise all Bluetooth devices (MX Master 2S, Bose QC-35s, etc) would not connect. This was a small price to pay to get the mouse input to work fluidly.
Thankfully the stuttering has been fixed under Windows 11 using the latest drivers from Intel. So these registry entries are not required under Windows 11 and devices will work when resuming from Sleep.
Background information
There is a noticeable stutter or one second lag to the movement of the mouse cursor when using a Bluetooth mouse on the Surface Laptop 4 with Intel i7-1185G. The same does not happen on an AMD Ryzen or older Intel chip and seems to be restricted to the 11th-generation Intel chips.
Frustratingly, it isn't easy to replicate due to the seemingly random nature of when the stuttering occurs.
It is worth noting that this only happens when using Bluetooth input devices and can be seen with both a mouse and keyboard. Other Bluetooth devices, such as audio, remain unaffected (my Bose QC Comfort headphones play music flawlessly). Furthermore, the mouse cursor in Windows 10 on the Surface Laptop 4 remains very responsive when using a USB dongle instead of Bluetooth - such as with my Razer Viper.
The Bluetooth mouse I use is a Logitech MX Master 2s but the same stuttering occurs on similar devices such as the MX Master 3 or Microsoft's Surface Precision Mouse. Using the MX Master 2s on both my MacBook Pro or a 9th generation i7 Razer Blade 15 Advanced produces zero lag or stuttering.
The cuplrit appears to be related to a bug in how Intel AX Wireless Bluetooth cards (either AX1650 or AX201) control suspending Low Energy Bluetooth input devices in Windows 10 when using an 11th generation Intel chips (particularly 1165G and 1185G).
It apparently also occurs under Linux but I have not been able to test this myself. As such I'm not able to confirm a fix for any Linux distros. If it is purely a hardware issue and unrelated to operating system then it is plausible that it could occur under macOS too were Apple to use 11th-generation Intel chips in a hardware refresh.
Fix Bluetooth mouse stuttering in Windows 10
- Open Registry Editor by hitting
Win + R
and typingregedit
(you will need to be an Administrator) - Navigate the tree to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_8087&PID_0026
. You will find an identifier that may be different from one device to another depending on the particular AX card in use. Some Dell users have an entry named5&31036e8e&0&10
while on my Surface Laptop 4 this was5&1487bdb9&0&10
. The important part is that you need to find the entry with aDeviceDesc
containingIntel Wireless Bluetooth
. Thankfully there is usually only one entry so it should be easy to find. - Now that you have the device entry, navigate to the
Device Parameters
folder. - Edit the
DeviceSelectiveSuspended
dword entry and set the value to 0. - Add a new dword32 entry named
SelectiveSuspendEnabled
and set the value to 0. - Add a new dword32 entry named
SelectiveSuspendSupported
and set the value to 0.
You might need to reboot for everything to kick in but your mouse movements should now be smooth and lag-free.