[General Topics] Menneisyys:
Last Summer, upon the release of the brand-new, 6-series of SOTi Pocket Controller Pro and the free My Mobiler (click the links for a review!), I’ve already pointed out the “let’s control your Windows Mobile device from your desktop!” scene is really thriving.

Since the above reviews, here have been major upgrades. First, My Mobiler has been greatly enhanced (for example, TCP/IP connections have been added) and the bugs I’ve elaborated on in the review have all been fixed – while still maintaining its free status. In this article (and the accompanying chart), I also thoroughly elaborate on these changes.

Even more importantly, the, for long-time Windows Mobile users, known VirtualCE has been greatly upgraded and enhanced.

As VirtualCE has been written by the same developer as the well-known and very fast PQV and SmartGear – one of the best titles in their respective categories (picture viewers and pre-SNES home and handheld console emulators). I wasn’t disappointed: while there is indeed some missing functionality in the new version, its price, CPU usage and, at times, speed, speak for themselves. It’s evident it has been written by a Windows Mobile & C / assembly language guru that knows how to optimize code and, therefore, reduce the CPU (and memory) usage.

(The main interface screen and an example of remote controlling a HTC Vox / s710. The latter displays the VirtualCE client on the handset.)

VirtualCE is, feature-wise, somewhere between the free My Mobiler and the pretty expensive, albeit VERY capable and highly recommended SOTi Pocket Controller. In some respects, it’s definitely more capable than SOTi’s app (for example, see the parallel multicontrol feature, which is only present in the even more expensive Enterprise version of SOTi’s app; also, the much lower CPU usage should be mentioned); in other respects, it’s inferior to even My Mobiler (see for example the complete lack of handheld / handset -> desktop PC clipboard synchronization).

Installation, usage

Installation-wise, there isn’t much to do. Just download the trial version HERE (note that there is a different one for Pocket PC’s and MS Smartphones), start the installer on the desktop computer and make sure your handset is connected via ActiveSync so that the (handset-side) server can be installed.

Should you want to activate the connection, then, you’ll need to start Start / (on Pocket PC’s) Programs / Virtual CE on your handset and. Then, just start the VirtualCE client on your desktop computer.

Should you want to remote control your device via ActiveSync, just cradle / connect it to your desktop and double-click the default “ActiveSync” entry in the list. If you establish the ActiveSync connection between the desktop and your handset before starting the desktop VirtualCE client, it'll automatically connect.

Should you want to create a non-ActiveSync connection, go to Connection / New… and, after naming the next entry (you don’t need to do this, but is still recommended), select the connection type in the Connection Type drop-down menu:

Should you want a remote TCP/IP connection, select WAN / Internet; then, you’ll also need to enter the IP of the handset as can be seen in THIS screenshot. Should you “only” want to control a, say, Wi-Fi-connected device on the LAN, you can also select LAN (Auto Discovery). Note that the latter will make initiating the connection a bit slower, as, as will also be explained in the “SOTi vs. VirtualCE” section, you’ll always need to select the device from a list whenever you try to initiate a connection to it.

Functionality

VirtualCE supports most functionalities one can expect of a non-high-end controller: taking screenshots, rotating the screen to be able to take screenshots / control games using GAPI to switch to Landscape mode and/or Web browsers like Thunderhawk that also use the landscape orientation. Also, just like all the other, most recommended alternatives, it allows for TCP/IP connections, which means you can remotely access a (connectable; that is, non-NAT’ed / firewalled) Windows Mobile device anywhere in the world. This is of extreme importance particularly for Customer Service and/or enterprise folks, who may need to access the handsets of their customers / workers somewhere else in the world (that is, not connected to the local desktop, where ActiveSync would (also) work.)

It also supports connecting to several clients at the same time. This is pretty unique. An example is shown in the following screenshot (click for the original size!)

In here, I’ve shown an example of controlling no less than five (VGA WM5 x51v, VGA WM6 HTC Universal; QVGA WM2003 HP iPAQ 2210; QVGA WM6 Vox/s710 Smartphone; QVGA WM6 HTC Wizard) devices at the same time. Note that I’ve left the main server screen of VirtualCE on all the handsets to reduce the size of the screenshot (PNG’s don’t really like colorful, “natural” pictures, and I didn’t want to use the, for making technical screenshots, inferior JPG); I could have controlled these devices freely. Also note the different IP’s visible on the phones.

However, it lacks some basic functionalities; most importantly, the ability to copy some text from the handheld to the desktop. While I agree the opposite direction is far more widely used (think of, say, quickly pasting loooooooooong registration numbers to your just-purchased app!), in cases, the opposite may also be desirable, particularly with folks that publish a lot of articles on Windows Mobile devices. (For example, I need to copy text from, say, Web browser User-Agent strings like in THIS thread.)

CPU usage

Traditionally, PDA controller apps have had high CPU usage. The two other, highly recommended controller apps (SOTi, My Mobiler) too have high CPU usage – particularly when controlling a VGA device.

Not so with VirtualCE. It has the least CPU usage of all; in this regard, it’s way the best. If you have problems because another remote controller app (either SOTi’s or My Mobiler – but are way worse in this respect) takes too much CPU time (which, for example, results in a very bad slowdown), make sure you give VirtualCE a try.

Speed

The screen refresh rate has always been causing the most problems with most remote controllers. (Actually, this is why I don’t recommend any of the alternative controllers at all: they’re plain slow, even with low-resolution (QVGA) devices, let alone high-resolution ((W)VGA) ones.)

In this regard, VirtualCE fares pretty well. Compared to (the free) My Mobiler, it’s faster in every respect; this is particularly visible in the full-screen animation video (see later). On QVGA devices, the difference isn’t that big, though – My Mobiler is perfectly usable on the latter.

Compared to SOTI’s much more expensive, but, apart from the CPU usage and the inability to control several devices at the same time and LAN discovery, vastly superior remote controller, there are two remarks.

1.	If you need to control an application with frequent full screen upgrades (a game or even wildly scrolling the, say, Programs screen), SOTi’s app is much better and faster on high-resolution ((W)VGA) devices.

2.	If, on the other hand, the changes are only restricted to a comparatively small area of the screen, VirtualCE updates the desktop-side screen somewhat faster than SOTi.

Again, the speed difference between these three apps are only really visible on high-resolution devices like WVGA or even VGA ones. On low-resolution (QVGA or 176*220 Smartphones) ones, there won’t really be (at least annoying) differences. There, My Mobiler will be the slowest but still really well usable.

I’ve made several, easily comparable test videos of all these results so that you can see I’m not lying. Two of them (the one based on my self-written test counter suite; the other on the new, excellent game Nanobotz) show changes restricted to a small area on the screen; the other shows a small portion of a full-screen animation. (Note that I’ve run the counter test twice on the VGA Dell Axim x51v: underclocked to 208 MHz and at the default 624 MHz to emulate slower and/or underclocked VGA devices).

Use the built-in Windows Media Player to play back the sample benchmark videos (all of them are linked from the chart). Unfortunately, the otherwise free and highly recommended (VideoLAN) VLC client isn't able to play them back.