How does Windows Mobile compare to BlackBerry?

I just got the I-Mate SP5m, one of the smallest new Windows Mobile 5 Smartphones. I was very curious as to how far along Windows Mobile has come. My only prior experience was with an Ipaq a few years ago, which is now collecting dust on my shelf as I really don’t use most of the “smart” features. Although I was playing with the SP5m, most of the issues listed here apply to any Windows Mobile 5 Smartphone.

Personally, I don’t really use most of the smartphone features. For example, the calandar and “tasks” are completely useless to me. I’m very much a pen-and-paper notetaker. However, two useful things to me are the address book and “push” email. For reference, my previous phone was a Blackberry 7100, which is one of the smaller Blackberry’s.

First off, there are two reasons I was looking for a new phone. First, while the Blackberry was small for a smartphone, it was still too big to comfortably fit in my jeans pockets. Part of my jobs requires that I be in touch at any given time, so this was a major pain. While I do need to receive emails in realtime, I very rarely have to respond to them immediately. Therefore, a QWERTY keyboard isn’t neccessary, and even becomes a liability since it makes the device bigger.
Second: I get really bored at the gym while working out. I wanted a phone that could double as an ipod-like device. While the newer Blackberry’s support this, mine didn’t. I was also somewhat concerned that the new Blackberry would support the codecs I wanted to use. Because I use a Mac Mini as my HTPC, most of my video’s are MP4 encoded with Mpeg4 baseline compression and aac audio. More on this below.

Since no US carrier had a phone (at the time) which met my requirements, I looked at purchasing one directly from a manufacturer. It basically came down to two main model lines: the IMate SP5(m), or the Imate SmartFlip. All these phones are also sold by different companies under different names. For example, the SmartFlip is now the Cingular 3125. The Smartflip is the same size and shape of the Motorola RAZR. Unfortunately, the SmartFlip has a shorter battery life, uses “microSD” instead of “miniSD,” and doesn’t have a standard USB plug. For those reasons, I chose the SP5m, which has roughly the same volume, but in a different shape.

Form Factor

The stats are deceiving! Despite what it may say on paper (or even in side-by-side photos), this phone is *way* smaller than even the smallest Blackberry. It comes with a bulky (and geeky) belt-holster, which I’ve never used, as the phone easily fits in a pocket. It is pretty solid and well-built, and weighs a bit more than the Blackberry did. This makes it very comfortable to hold and use.


There are definately some differences between how the Blackberry syncs and how the Windows Smartphone syncs. I am using this for work, where we support both the Exchange Enterprise software for Blackberry and for Windows Smartphone. The main difference is that for Blackberry, it Just Worked once you set it up. For Windows Smart Phone, it is very much a visible process. I’ve only had the phone for a few days so far, but I’ve already noticed that it will go for 10 minutes here, 20 minutes there without syncing for no apparent reason (activesync tells you how long its been since it last synced), and an error in activesync saying that it had trouble conencting to the server. A manual sync (or waiting a bit) will fix it.

Please note that I had to upgrade the firmware on my phone to get Push Email working — the version that shipped with it did not.
One of the nice things about the way Microsoft Push email works is that you don’t need to do anything special from your carrier. For example, Cingular (other carriers do similar things) will try to sell you a $45/month unlimitted Blackberry package, which you need for Blackberry. They will also try to sell “push” plans, including premiums for “Direct Push.” You probably don’t need that. There’s a good thread here which explains in more detail. However, you definately need an unlimited plan of some sort — Push Mail (ironically) requires a lot of bandwidth.

There are 3 other issues I’ve run into related to syncing.

First, it will only notify your of new messages in your inbox. Even though it can be set to sync subfolders, it will not include new messages there in the “new email” count. You can get around this by making your exchange “rules and alerts” run in Outlook instead of on the server, and closing outlook when you aren’y using it. This way, you will get all messages sent to your phone, and when you log in to the computer, it will still sort them into the correct subfolders.

Second, it cannot sync contact subfolders. This may be a problem for some people using 3rd party syncing software like Plaxo.

The third thing has to do with the network connections settings dialog. There are a bunch of categories, like “Internet,” “Work,” and “WAP.” For each one, you can choose how you want to connect to it. For example, for Internet, I can choose “Cingular WAP Connection,” if tethered then “Pass-Through Connection,” or “automatic.” Wow, automatic sounds great. You would think that automatic means that it would use the pass-through connection if available, or else fall back to the Cingular WAP. In fact, NEVER choose automatic for any of the options. Apparently in Redmond, Wa “automatic” means “don’t work.” In fact, when any setting was set to “automatic,” that type of connectivity just plain didn’t work, despite what form of communications was actually available.


I mentioned earlier that I use some non-Microsoft video formats. Although the phone comes with Windows Media Player, it is somewhat limitted in which codecs it supports. Obviously, Microsoft-ish ones. The first thing I did was install TCPMP (now called core), an open-source video player. This has plugins which allow it to play almost any format (the AAC audio plugin is here). While music seems to play fine, video is another story.
First off, don’t expect to play every ipod-formatted video on this phone. Since it doesn’t have iTunes copy-protection, you are limitted to free video in podcasts, or video which you encode yourself. However, it’s not really fast enough to decode h.264 with aac audio, at any kind of resolution. This is unfortunately because of the amount of ipod-formatted video out there. However, all is not lost. If you re-encode the video into mpeg4 format at around 400k/s, it will run perfectly smoothly. Additionally, this phone has one of the most beautiful displays I’ve ever seen on a mobile device, including the G5 Video Ipods (haven’t seen the G5.5 ones yet).

TCPMP is about to release a commercial product called “Core Player,” which supposedly will be 15% more efficient at rendering video. If this is the case, it might be enough to play ipod-formatted videos. Personally, I prefer not to pay for things like that (which should be free). Which brings us to our next topic.


There just isn’t that much free software available for Window Mobile Smartphone 5. Even though it has a lot of theoretical compatibility, it’s really, really hard to find stuff. Let’s run through it:

My SP5m came with a JVM and an applet manager, so that it can play J2me midlets. First off, I couldn’t find any free midlets which were newer than 2004. There really just aren’t any. Have opensource developers and students completely abandoned mobile Java? The few that I did find (most of them from 2002/2003) would not load on the phone. It complained about “invalid jar file,” which could not have been the case for all 10+ midlets that I tried from different sources. I was able to confirm that teh JVM worked in general because I was able to load one midlet — Google Mobile Maps. Maybe I would have more luck if I was willing to pay for apps. After my experience, though, I would not want to chance paying for an app and having it not work.

Then there are the Pocket PC apps. Most of these don’t work because the SmartPhone doesn’t have a touchscreen. I wish that they would install anyway, and you could use the joystick as a mouse or something, but thes apps generate an error when they try to install, and you can’t even try to run them. Unfortunately, most Windows Mobile software is for PPC, and not SmartPhone.

Finally, there is a whole class of software which was written for Windows Smartphone, but only for Smartphone 2002 or 2003, and does not support Smartphone 5. Bummer. This software will either not install at all, or will install but will then crash your phone (or do other bad things).

Having said that, there is a small amount of good, free software for Smartphone. Primarily, there is an SSH/Telnet client (which makes more sense when use it with a BlueTooth keyboard), and a handful of Nintendo, Super Nintendo, and NeoGeo emulators. If anyone else knows anything good, let me know 😉

Overall Impressions

So, does this phone meet my goals? For what I stated above, something to sync my mail and contacts, and to watch video on while I work out, yes, it works great. If I was expecting more, something more like a full-fledged PDA, I would probably not be thrilled, mainly because it does not run most Pocket PC software (including Word and Excel). The calandar functionality seems to be pretty good, however, even though I don’t use it.

Also, while it does hav a few quirks compared to the Blackberry related to syncing, it does seem to work reasonably well once you work around them. Also, despite the dearth of software I was able to find, it still has much more available than the Blackberry does. As it’s a relative new platform, and is only just now starting to get some products in the US, I expect there to be more [free] software available over time than for the less consumer-oriented-Blackberry. The game emulators give me a virtually unlimited library of games to play, so I don’t really miss having native ones.

Overall, the I-Mate SP5m is small, fits in my pocket, and has a great display. Windows Mobile 5 Smartphone lets me sync my email with Push Mail, play any nintendo or super nintendo game I want, and play music and video.

The phone does freeze up and/or crash from time to time (“Stupid Windows”), which the Blackberry never did. However, it seems to only happen right after installing a new app, or changing very basic settings, like how to connect to GPRS. After a reboot, it seemed to be fine, and it never just “randomly” crashed. While I don’t consider crashing to be OK or even acceptable, I can live with it as long as it doesn’t get any worse, or cause me to lose any data (hasn’t so far). Because of what I was doing when it did crash, I don’t expect it to happen again. I also suspect the regular user who buys a phone directly from their carrier (already set up) will never see these problems.
Overall, I would rate this pretty close to my ideal phone.

[later] Be sure to read my follow up article.

My New GNU/Windows Platform

We recently got an Averatec 2200 laptop, which is a pretty sweet device. It’s small, fast, and moreover, has a great feel to the keyboard. Unfortunately, it keeps locking up in Linux, and the wireless card doesn’t seem to get recognized when I installed Ubuntu 6.06.

Because I want to do a lot of unix-like development, I’ve been playing with how close I can get Windows to be like a Linux development environment. What I found was, quite a bit. I’m talking about both setting up compilers and shells, but also the graphical environment. Here is what I found:

  1. Cygwin / XWindows
    While you can get a free unix subsystem from Microsoft nowadays, the performance and compatibility has nothing on Cygwin.
    1. Go to the Cygwin site, and download and run the installer. The installer isn’t the most straightforward thing to use for the first time, but you get used to it quick. When you get to the package selection screen:
    2. Click on “View” once which will change it to “Full” view. This is easier to navigate.
    3. Add the following packages by clicking once where it says “skip” in front of them:
      • openssh
      • subversion
      • vim
      • X-startup-scripts
      • X-start-menu-icons
      • xwinwm
    4. Finish the install
    5. Go to My Computer->C:->cygwin->usr->X11R6->bin
    6. Right-click on “startxwin.bat” and choose “edit.” Find the line that reads
      “%RUN% xterm -e /usr/bin/bash -l”, and put a “REM” in front of it. Save and close.
    7. Right-click drag the file called “startxwin.bat” onto start->All Programs->Startup, and choose “Create Shortcut Here”
    8. Edit c:cygwinetcdefaultsetcssh_config. Find the line that reads “# ForwardX11 no” and change it to “ForwardX11 yes
  2. SSH
    While you now have command line access to ssh, there are a couple of useful ssh clients for Windows. You can install either or both Putty and Poderosa. Putty is lighter-weight, but Poderosa has a neat tabbed interface, and also lets you open a local cygwin shell as well. Unfortunately, Poderosa doesn’t natively support X11 port forwarding.
    1. Putty
      1. Download putty.exe from their web site
      2. Create a new directory c:Program FilesPutty and copy putty.exe there
      3. Create a shortcut on the start menu to the c:Program filesputty.
      4. Start putty
      5. Set Session->Protocol to “SSH”
      6. Set the Connection->SSH->X11->Enable X11 Forwarding to checked.
      7. Set Connection->SSH->Preferred SSH Protocol Version to “2 Only”
      8. under “Session,” save this as “Defaul Settings”
    2. Poderosa
      1. Download and install Poderosa from their web site
      2. To ssh to a remote host, use the “Cygwin session” and run ssh from it rather than doing an ssh from the menu (this way you can run remote X applications).
  3. Look and Feel
    I happen to like the Ubuntu “human” look-and-feel a lot. You ca set up Windows to act amazingly similar. First, you will need to patch Windows to allow you to use custom themes.
    1. Download and run UX Theme Patch from Softpedia
    2. Restart Windows
    3. Download the Human theme from DeviantArt
    4. extract the “human” directory from the theme file into c:Windowsresourcesthemes
    5. right-click on the desktop, and go to properties->appearance->Windows adn Buttons->Human
  4. Web Browsing
    Of course we are going to use Firefox to browse the web!
    1. Download and install it!
    2. Install the Human theme from Forever Now
    3. Activate the Human theme by going to tools->themes in Firefox
  5. Instant Messaging
    You can use Gaim for Instant Messaging. If you require MSN support, you’ll need to use the latest beta release:
    1. Download the gaim beta install exe from SourceForge
      Otherwise, you should download the latest stable release
    2. Download the gaim 1.5.0 release from Gaim
    3. Download some Windows plugins for Gaim (optional) for the Gaim Windows port
  6. Office
    We are going to use a version of OppenOffice for our office app. This one has some templates and clipart built into it, which makes it much more usable than the one from
    1. You want to download OpenOffice Premium (OOo_2.0.3_060801_Win32Intel_install_wJRE.exe) from their SourceForge site.

Blink List

You may notice that I now have a bunch of links on the right column of this site. This is a blinklist cloud.

Blinklist is a pretty cool site that lets you keep your bookmarks online. You can access them from any web browser, which is cool by itself. However, the site goes further and lets you do neat social bookmarking things with it. You can tag your links like Flickr (which creates the cloud on the right). It also keeps track of “blinks” on bookmarks, kind of like digg, and you can also subscribe to your friends’ blinks. Neat.