It’s been a while since I have used a “stable” software which almost made me tear my hair out! As good as the concept of Synergy is the execution could have been better. All credit to the software and it’s contributors/team for making it usable.
Synergy is a software that allows more than one machine share a keyboard and mouse. Just like having multiple monitors the mouse cursor will scroll off the edge of one computer say the desktop and onto the other like a laptop.
The best way to describe Synergy is the pictures from their website:
The software is cross platform so the keyboard and mouse can be shared with Windows, Linux and Mac computer all at the same time. In this post however I will be setting it up with 2 Windows machines.
Synergy also can share clipboards too so copying from computer A can be pasted on computer B.
The software uses the server-client model so the computer with the keyboard and mouse that is to be shared runs as the server and all remaining computers are classed as clients. If a client has a connected keyboard and mouse, it can still operate them independently of the server but the client keyboard and mouse cannot control the server – it’s a one way thing.
I will be using the Synergy setup as the example where The server is in the middle and 2 clients are either side of it.
Download and install the Synergy software. At the time I opted for the stable version which was 1.3.6. There are 32 and 64 bit versions so install the correct one for server. Clients can have different bit version to the software and vice-versa.
Once installed, start the software and a very basic window should appear. Change the selection option from Use another computer’s shared keyboard and mouse (client) to Share this computer’s keyboard and mouse (server).
Click on the Configure… button to open up a new dialogue box. This window sets the computers (monitors really) and their orientation. First, add the server computer to top list using the + button. It is recommended the Screen Name should be the same as the computer name found in
(My) Computer > (right click) Properties and the Computer name: is the name of the computer.
Leave Aliases as blank (empty).
Leave Options as all unticked and only tick them if there are issues with the stated keys.
Leave Modifiers as is or change according to preference. This may be useful for different operating systems.
Dead Corners prevents the cursor from jumping from one screen to the next. This may happen when using features such as expose on the Mac where moving the mouse to a designated corner will trigger something. Leave this unticked for now.
The next step is to link the computers together. This tells Synergy how the computers are positioned and which computer to go to when the mouse moves to the edge. It can be confusing at first but it means the screens can be linked in a series or in a circle. Always leaving the % of the screen unless the screens are very different. Working from left to right Select right, Client1, Server in the dropdown boxes. The line should read something along the lines of “of the right (part of the screen) of Client1 goes to Server“ so the right edge on Client one links to the Server. Click the + button below to add the link and ready for a new link.
Add the following to join the server to client1, server to client2 and client 2 to server (see above screenshot).
Click OK to close the dialogue box.
Click on the Advanced… button. This is where you specify which screen belongs to this computer. In this case the screen name should be Server. Either change or note down the Port and ensure it is open on the computer. Click OK to save and close.
Next is to register the program to start automatically by clicking on the AutoStart… button. Read and chose the relevant startup option preferred. I would leave it turned off for now because enabling it stopped it from working. It can be uninstalled but it does required Synergy to be restarted (don’t know why it can’t start the server). Close the dialogue box after.
Don’t bother with Test because it was broken I tried it. Go straight to Start button and the server is up and running if there is the Synergy icon in the tray.
Click on the Advanced… button and enter the screen associated with the client. So on Client 1 enter Client1 and Client 2 should be Client2.
Next click Start and it should be connected to the server!
It’s mainly nice to have features but it’s still worth noting that:
The UI can be confusing. For example I created a link for a computer, pressed the + button to add another and then OK’d it only to find it does not added it to the list unless you press the + button. Trying to remove a computer screen from the list caused Synergy to crash only to find it restoring to the last successful state. I am now confused as to how to remove them! Also the computer the aliases must match the ones typed on the server or it will error out.
A major issue I had with it was the Test function. Every time I tried it, it would either crash or complain it could not connect depending if it was the server or client. This made me go round and round trying different things only to find pressing start on client and server just worked (more or less).
It still prints out a message stating it’s a unstable software even though I’m using the stable version listed their site (64bit only maybe?).
I have noticed a problem where the clipboard is not being passed back and forth at times. Also the scroll wheel only works intermittently (more often not) which is very frustrating!
On Windows 7 client, the cursor centers to the middle of the screen. In a full screen application such as Windows Media Player, the cursor stays hidden.
It’s an understatement to say there are polish needed. Currently it works for what I need and hopefully it will improve over time.
The motion is very smooth and seamless. The basic functionality is there but can be improved. It’s a good solution for controller 2 or more computers via one keyboard and mouse. The best part of it is the cross platform even if I do not use it.