Sunday, August 20, 2006

Synergy: One Keyboard & Mouse, Many Computers

Stumbled across a really cool piece of software listening to the Hak.5 Video Podcast last night. It's called Synergy and it's like a virtual software KVM switch without the video; it allows you to share one keyboard and mouse among many machines. You simply download the software on all the computers you want to control (they have binaries for Windows, Mac, and most Linux distros), start a server on any machine, and start the client on all the others, and presto! Drag the mouse to the edge of one screen, and it appears on the other machine, and the keyboard input goes to that machine.

I used to have two keyboards and two mice on my desk, one for each machine; now just one keyboard and mouse (my Apple keyboard and a Logitech MX518 optical corded mouse) controls both my Windows XP PC and my Apple PowerBook G4. It also has other cool features like a shared clipboard (copy from PC, paste on Mac seamlessly), synchronized screen savers and more. One of those things that makes you instantly wonder how you ever got by without it...

The Synergy software is still a bit rough around the edges, especially the Mac OS X version, where you have to configure the application by editing a text configuration file and run the software from the Terminal. No big deal, but not great for newbies. I'm sure someone will step up and get it polished soon. The Windows installer was dead easy, and has a nice simple GUI for client and server configuration, as well as installing it as a service so it starts at boot time, so you can control the XP login screen.

I'm running the server on my OS X laptop, so I also had to add a new rule to the built-in firewall on TCP port 24800, as well as add static DNS entries to /etc/hosts on the Mac and C:\Windows\System32\drivers\etc\hosts on the Windows box for the machines being connected. Would be nice if it supported Bonjour or some other sort of autodiscovery protocol.

The mouse movement is a bit odd, possibly due to a lack of development on the OS X software. If the mouse is on the XP screen and I shake it back and forth quickly, it "ghosts" on the OS X screen simultaneously; the reverse doesn't happen though. Sometimes the mouse pointer doesn't hide on the Mac, which is a known bug. Also, if I accelerate the mouse quickly on the OS X screen towards the edge, it pops out in the middle of the XP screen unexpectecly. I enabled an edge delay of 500ms which helps with this issue. I'll continue mucking around with the options and file some bugs to help the developers.

One thing I've found very useful is to add the following two lines in the screens section of the config file for the Window box:
alt = ctrl
ctrl = alt
Since I'm used to using Mac keyboard shortcuts, namely having the Command key under my left hand thumb, this swaps Control and Alt so that they same keystroke activates Control- on the Windows box. Hooray for muscle memory.

Wish I had time to contribute to the project! Having all this reclaimed desk real estate is awesome.

Go to the Synergy web site on SourceForge

I've also found a Synergy GUI Project for OS X but haven't tried it yet.

Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?