Mocha VNC and Mocha VNC Lite for IPhone
As I walk the vast expanses of this Macworld Oregon Branch Office (otherwise known as my home), there are times when it's useful to see what's happening on a given machine--did my never-ending iPhone backup process end? Did the backup of the mini generate any errors? Is that file upload to the server done yet? Answering these questions used to require me sitting in front of one of the Macs in the house--using screen sharing, I could then connect to the machine in question and see what it was doing.
Now, with the App Store, though, all I need is a first-generation iPhone with the 2.0 software and MochaSoft's Mocha VNC (or the free Mocha VNC Lite version). Mocha VNC allows you to connect to machines running OS X, Windows, and Linux using the industry-standard virtual network computing desktop sharing system. There are built-in VNC servers in OS X 10.4 and 10.5, so you can connect to your Macs with a minimal amount of work.
There are some limits with Mocha VNC--it only supports a single monitor on the remote system, and the maximum resolution of that monitor is 1,680-by-1,200. You can, however, zoom in and out on the screen as you would with a web page, and display the remote screen in portrait or landscape mode simply by turning your iPhone or iPod touch. Buttons along the bottom of the screen provide access to features such as the on-screen keyboard, Mocha VNC's menus, a right mouse button, and a button to control what happens when you drag a finger across the screen--one mode moves the remote mouse pointer, the other just scrolls around on your zoomed-in display.
There aren't many differences between the free and paid version of Mocha VNC, but the differences that exist are significant. The biggest limitation in the free version is that the only provided keyboard is the standard iPhone virtual keyboard--so no function keys, and no other special keys. (There are onscreen buttons for Control and Command, but not Option.) While this works OK for controlling Macs, you really need Control-Alt-Delete to work with Windows boxes, because otherwise you can't login.
The full version has a second keyboard that contains all the function keys, the Windows key, page navigation keys, and two special Windows meta-keys: Control-Alt-Delete and Alt-F4. (There's still no on-screen Option key, however.) With the paid version, you also get a dedicated on-screen right-mouse button, and support for macros (recorded bits of text you can send to the remote host with a couple of taps).
I found the speed of Mocha VNC to be decent on my home's wireless network. The initial screen draw on a larger screen took some time, but updates were relatively quick, and typing worked at a decent, but not great, speed. However, because there's no real keyboard or mouse, you won't want to tackle any complex projects with your iPhone or iPod touch--it's just too hard to work the buttons for the virtual keyboard and mouse. Instead, Mocha VNC is best used as a monitoring tool, or to do something fast and simple on the networked machine, such as starting a download or running Software Update.
While MochaVNC supports encrypted transmission of the VNC connection's password, your actual session data is not encrypted--so this is a tool best used within a local network, behind a firewall. The program would be more useful if it supported data encryption for the entire data stream, and not just the initial connection password. On Mocha VNC's FAQ page, the developer explains the lack of support for encryption by writing, "There is an issue with exporting 128 encryption from the USA, where the App Store server is located. 128 bits is seen as a dangerous weapon." (Mocha VNC is located in Denmark.)
The biggest issue I have with Mocha VNC (both the full and lite versions) is that it seems to peg the AppleVNCServer process at nearly 100-percent CPU utilization much of the time. I tested this with connections to both my Mac mini and my Mac Pro, and it happened on both machines, not every single time, but quite often. I even reinstalled Mocha VNC, just to be sure something wasn't wrong with my version of the program, but the high CPU utilization persisted. In practice, today's CPUs have enough horsepower that you won't notice this issue unless you ask the remote Mac to do something CPU-intensive, such as encoding a QuickTime video. However, it does mean that you may find the fan on your Mac really running fast the next time you walk past the machine--which is exactly how I discovered this CPU utilization issue.
There's no apparent reason for the CPU utilization to be so high--connecting from one Mac to another with screen sharing, for instance, doesn't drive the AppleVNCServer process to anywhere near 100 percent. Connecting to my Mac Pro from my MacBook Pro, as a test, led to the AppleVNCServer process generally using between 5 and 15 percent of the CPU, not 100 percent. (And that's displaying two monitors at full resolution, versus one at a maximum of 1,680-by-1,200.) Clearly Mocha VNC is doing something different that's driving the CPU utilization up, and hopefully this can be addressed in a future update.
If you have a lot of Macs and/or other machines in your home, and you want to keep an eye them from your iPhone or iPod touch, then the full version is worth the US$6 cost. The added keyboard keys and right-mouse screen key in the full version are both very useful--and the extra keyboard keys are a requirement if you want to work with Windows machines. However, even the free version may be sufficient if you'd simply like the ability to occasionally view the screen of a Mac on your network. You won't want to use either version for large, complex projects, but for simpler stuff, Mocha VNC can save you a walk down the hallway.
Mocha VNC and Mocha VNC Lite are compatible with any iPhone or iPod touch running the iPhone 2.0 software update.
[Senior editor Rob Griffiths writes the Mac OS X Hints blog.]