Automatically adjusts mouse polling rate based on running applications with a modern Electron-based GUI. Switches to high-performance mode when games are detected and reverts to standard mode when games are closed.
- Automatic Detection: Monitors running processes and adjusts polling rate accordingly
- Game-Specific Configuration: Customizable game process detection
- Configurable Rates: Set custom polling rates for gaming and standard use
- HID Direct Communication: Direct hardware communication without requiring manufacturer software
- System Tray Integration: Runs minimized in system tray with quick access controls
- Modern GUI: User-friendly Electron-based interface for easy configuration
- Real-time Status: Live display of current mode (Gaming/Normal/Manual) and polling rate
- Instant Controls: Quick polling rate adjustment via tray menu or GUI
- Manual Override: Temporarily set specific polling rates (500Hz to 8000Hz)
- Auto/Manual Toggle: Switch between automatic game detection and manual control
- Desktop Notifications: Optional system notifications for mode changes
- Settings Persistence: All configurations automatically saved and restored
- Import/Export: Backup and restore your settings configuration
- Start Minimized: Option to launch directly to system tray
- Windows Operating System: Windows 10/11 recommended
- Administrator Privileges: Required for HID device access
- Compatible Mouse: Currently configured for Lamzu mice (configurable for other models)
- Node.js: Only required for development/building from source
- Download the latest release from the GitHub releases page
- Extract the zip file to your desired location
- Right-click on
Lamzu Mouse Automator.exe
and select "Run as administrator" - Configure your mouse and games using the GUI interface
- The application will start in your system tray and run automatically
- Install Node.js LTS version (v20.x recommended)
- Clone or download the project
- Open PowerShell as Administrator in the project directory
- Install dependencies:
npm install
- Build and start:
npm run start-electron
- Double-click the tray icon to open the main settings window
- Right-click the tray icon for quick controls:
- View current status (Gaming/Normal/Manual mode)
- Set manual polling rates (500Hz to 8000Hz)
- Toggle between Auto and Manual modes
- Access settings window
- Quit application
The GUI provides easy configuration for:
- Mouse Hardware Settings: Vendor ID, Product ID, Interface Number
- Game Detection: Add/remove games from the monitoring list
- Polling Rates: Set rates for gaming and normal modes
- Notifications: Enable/disable desktop notifications
- Startup Options: Configure to start minimized
- Import/Export: Backup and restore settings
- Launch the application as Administrator
- Open Settings by double-clicking the tray icon or right-click → Settings
- Configure your mouse in the Hardware Settings section
- Add your games to the detection list
- Set preferred polling rates for gaming and normal use
- Save settings - they will be automatically loaded on next startup
If you're using a non-Lamzu mouse or experiencing issues, configure these values in the Settings window:
- Vendor ID: Your mouse manufacturer ID
- Product ID: Your specific mouse model ID
- Interface Number: HID interface number (usually 0, 1, or 2)
Finding Your Mouse Parameters:
- Visit https://www.lamzu.net/#/project/items
- Check Local Storage for device JSON data
- Extract the required values from the JSON
- You can send JSON to AI and ask for the Vendor ID, Product ID, and Interface Number
Adding Games via GUI:
- Open Settings window
- Go to "Game Detection" section
- Enter the process name (e.g., "cs2.exe")
- Click "Add Game"
Finding Process Names:
- Open Task Manager (
Ctrl+Shift+Esc
) - Go to Details tab
- Launch your game
- Note the process name in the Name column
- Add the exact name to the application
Set your preferred rates in the Settings window:
- Gaming Mode Rate: High-performance rate when games are detected (default: 2000Hz)
- Normal Mode Rate: Standard rate for general use (default: 1000Hz)
Supported Rates: 500, 1000, 2000, 4000, 8000 Hz
- Tray Menu: Right-click tray icon → Manual Control → Select rate
- Settings Window: Use the manual control section
- Auto Mode Toggle: Switch between automatic detection and manual control
For command-line usage without GUI:
# Build the project
npm run build
# Start CLI watcher (no GUI)
npm run start-cli
# Set manual polling rate
node dist/set-rate.js 8000
# Run in development mode with hot reload
npm run dev
# Build TypeScript and create executable
npm run build-electron
npm run build
- Compile TypeScriptnpm run start-cli
- Start CLI version (no GUI)npm run start-electron
- Start GUI applicationnpm run dev
- Development modenpm run build-electron
- Build distribution package
- Open Settings in the application
- Enable "Start with Windows" option (if available)
- Or manually: Copy shortcut to
shell:startup
folder
- Open Task Scheduler
- Create Basic Task
- Set trigger to When the computer starts
- Set action to start the application executable
- Check "Run with highest privileges"
Issue | Solution |
---|---|
Application won't start | Ensure you're running as Administrator |
Device not found | Check mouse hardware settings (Vendor ID, Product ID, Interface Number) |
Could not send feature report | Try different Interface Number values (0, 1, 2, etc.) in Settings |
Polling rate unchanged | Verify your mouse model is compatible or adjust hardware settings |
Permission denied | Always run as Administrator - required for HID access |
Tray icon missing | Check Windows notification settings and hidden icons |
Games not detected | Verify exact process names in Task Manager Details tab |
Settings not saving | Ensure application has write access to user data directory |
- Windows:
%APPDATA%/lamzu-automator/settings.json
- Access via GUI: Settings → Advanced → "Open Settings File Location"
- GUI Method: Settings → Advanced → "Reset to Defaults"
- Manual Method: Delete the settings file and restart the application
- Launch with
--dev
flag to see console output for troubleshooting - Check the developer console in the Settings window (Ctrl+Shift+I)
- Status Display: Current mode and polling rate
- Quick Rate Setting: 500Hz to 8000Hz instant adjustment
- Auto/Manual Toggle: Switch detection modes
- Settings Access: Open configuration window
- Hardware Configuration: Mouse device parameters
- Game Detection: Add/remove monitored games
- Polling Rates: Gaming and normal mode rates
- Notifications: Desktop notification preferences
- Startup Options: Minimized start and auto-launch
- Advanced: Import/export, reset, file locations
- HID Communication: Direct hardware access for optimal performance and minimal latency
- Process Monitoring: Efficient game detection with configurable check intervals
- Settings Persistence: JSON-based configuration with automatic backup
- Cross-compatibility: Works with most gaming mice (configuration may be required)
- Resource Usage: Minimal system impact with intelligent polling intervals
- Manufacturer Software: Close official mouse software to prevent conflicts
This project is provided as-is for educational and personal use.