Using all the buttons of a Logitech G500 on a Mac

For a while, I’ve been meaning to replace my current Apple Magic Mouse with something a bit more ergonomic. It seems like a few coworkers are quite happy with the MX Master, but it’s a bit pricey and, as it turns out, I already have a mouse that’s more ergonomic. A few years ago I got a G500 for gaming, but it also makes for a nice regular mouse.

My main problem switching to a more traditional mouse is that I’m really used to the gesture on the magic mouse to go back/forward, so I needed to replicate that.

Using Logitech’s Gaming Software, you can map the forward and back buttons, but they really just send ⌘-[ and ⌘-], which works for Safari, but not for other apps like Xcode.

Screen Shot 2015-11-23 at 16.25.45.png

Searching about it, I discovered BetterTouchTool, a nice free app that let’s you customize gestures, buttons, and keyboard shortcuts. It looks way more powerful than what I’m currently using it for, but it gets the job done.

My first problem was that it didn’t recognize the back/forward buttons on the thumb area. From what I’ve read, the mouse doesn’t send mouse events for those but keystrokes for whatever reason. It now makes sense that I got the new keyboard assistant when I first plugged it in.

Screen Shot 2015-11-23 at 16.24.21.png
The G500 detected as a keyboard

I next tried to map the scroll left/right to back forward, which felt a lot like the magic mouse, until I had to actually do horizontal scroll and I was stuck.

My final solution works, although it’s definitely hacky: map the back/forward buttons to a keystroke that I won’t normally use (in this case F13, ⇧-F13), and then map those to the gesture in BetterTouchTool

Screen Shot 2015-11-23 at 15.37.13.pngScreen Shot 2015-11-23 at 15.37.57.png

After an hour of usage, I wasn’t missing my Magic Mouse at all, but my hands started to get tired. Then I remembered to remove all the weights :facepalm:

These are great for FPS, not so much for extended usage