Fix: Automating High-Resolution Scrolling for Logitech MX Master 2S on Linux (Solaar)
The Logitech MX Master 2S often loses its high-resolution scrolling setting after rebooting on Linux, resulting in choppy or abnormally slow/fast scrolling. This fix uses the Solaar utility and a simple startup script to automatically re-apply the correct setting on login.
Prerequisites
- You must have Solaar installed (
sudo pacman -S solaaron EndeavourOS/Arch). - Your mouse’s ID is typically
2(confirm withsolaar show). - The required setting name for the MX Master 2S is
hires-smooth-resolution.
Step 1: Create the Startup Configuration Script
This script waits for Solaar to fully load and then sends the command to enable high-resolution scrolling.
- Create the script file:
#!Bash nano ~/.config/solaar-set-scroll.sh#!/bin/bash# Wait 10 seconds to ensure Solaar has fully initialized and connected to the mousesleep 10# Check if Solaar is running before configuringif pgrep -x "solaar" > /dev/null then
# Command to force High-Resolution Scrolling (1 = True/On) on device ID 2
solaar config 2 hires-smooth-resolution 1 echo "Solaar scroll resolution
set successfully."fi
- Save the file (
Ctrl+O, thenEnter) and exit (Ctrl+X). - Make the script executable:Bash
chmod +x ~/.config/solaar-set-scroll.sh
Step 2: Configure Auto-Start in Cinnamon
You need two separate entries in your Desktop Environment’s Startup Applications manager (in Cinnamon, search for “Startup Applications”). The Delays are Critical for this fix to work.
1. Start the Solaar Application
| Setting | Value |
| Name | Solaar Logitech Manager |
| Command | solaar --window=hide --restart-on-wake-up |
| Startup Delay | 2 seconds |
2. Run the Fix Script
| Setting | Value |
| Name | Solaar Scroll Fix |
| Command | /home/$USER/.config/solaar-set-scroll.sh |
| Startup Delay | 12 seconds |
Final Result
By setting the script’s delay to 12 seconds, you ensure it runs after Solaar starts (2s) and completes its own internal waiting period (10s), guaranteeing the high-resolution scroll setting is applied correctly every time you log in.
