Quantcast
Channel: Simply Does Not Work » Programming
Viewing all articles
Browse latest Browse all 11

Windows Mobile Device Center hangs on splash screen

$
0
0

At Skiviez, we use two HandHeld Honeywell Dolphin D7600 Mobile Computers to pick orders. They’re devices with a barcode scanner, a touch screen, and WiFi capability. They run a Platform Builder variant of Windows CE 5.0. And in Windows XP, they used ActiveSync to connect to Windows and provide the basic service of being able to access the file system of the device (the other services provided by ActiveSync, like syncing mail, contacts, and calendars, don’t really make sense for an industrial device like this).

ActiveSync is a pretty wonky and ugly looking program, but it worked.

In Windows Vista and Windows 7, ActiveSync has been replaced–though the tradition of fragility and wonkiness continued–by an abomination called the Windows Mobile Device Center. (Indeed, it is telling that the new Windows Phone 7 drops ActiveSync/Windows Mobile Device Center completely and instead uses its own synchronization mechanism through the Zune software.) Which, like its predecessor, still worked for providing the basic service of accessing the file system and allowing Visual Studio to connect a debugger.

Except, one day, it stopped working. And I had no idea why.

Suddenly, plunking the device into its cradle would have the following behavior:

  • The device would authenticate and think it is connected.
  • The PC’s USB subsystem would recognize the device and think it is connected.
  • Windows Mobile Device Center would permanently hang at the splash screen:

Which is just awesome.

If I re-launched Windows Mobile Device Center via the Start menu, the program would open, but it would insist that the device is “Not Connected.”

So, I began to troubleshoot.

  • I looked in the Event Log. (My first mistake. I’m renaming the Event Log the “Red Herrings Viewer”.)
  • I tried enabling verbose logging for Windows Mobile Device Center (which reports nothing useful).
  • I tried uninstalling the the device and letting Windows reinstall its drivers.
  • I tried uninstalling Windows Mobile Device Center and reinstalling it.
  • I tried soft resetting the device.
  • I tried hard resetting the device.
  • I made sure that the “Windows Mobile *” firewall rules existed in Windows Firewall.
  • I tried a different USB port.
  • I tried a different USB cable.
  • I tried a different D7600 device.
  • I tried a different D7600 cradle.
  • I tried merged the registry settings from another Windows 7 machine that the device would successfully connect to.
  • I tried switching to the RNDIS connectivity model.
  • I tried granting additional permissions on the “Windows CE Services” registry keys.
  • I tried diddling with the various “Windows CE Services” registry keys.

You might think that anyone of these things would contain the solution. But you’d wrong.

The problem was that I had FileZilla FTP Server installed on my machine, configured to allow FTPS connections. (We use an FTP server to manage images and files on the Skiviez Web site, and I had a local copy on my machine from when I was testing the configuration.)

Now, some people might ask “Why the hell would an FTP server break Windows Mobile device connectivity?” Apparently, Windows Mobile Device Center uses port 990 to orchestrate the connection.

Port 990 just so happens to be the standard control port for FTPS connections. If anything else is consuming port 990, then the Windows Mobile Device Center either hang, reports that the device is not connected, or stupidly tries to keep connecting to it. (A message like “whoops port 990 is in use or does not seem to be a mobile device” would go a long way.)

So make sure nothing is using port 990; then go pour yourself a g&t.


Viewing all articles
Browse latest Browse all 11

Trending Articles