2011
06.14

A few days ago a friend gave me a MaxSpeed MaxTerm 8000 to play with.  This was used as a thin client in a public library system to access the card catalog.  This is essentially the tiny, low power, diskless workstations you see at points of sale, libraries, etc.  The steps I took may not necessarily work for you and your mileage will vary, but hopefully this will provide you some hints and inspiration.

Upon booting the computer, the login screen complained that it could not join its domain.  Fortunately there was no administrator password and I was easily able to log in to the computer.  I don’t fully grasp Windows domains, I have never had a need for them but this often works if there is no connectivity to the computer’s original host server.

I immediately set out to clean up the computer, uninstalling Citrix and outdated copies of RealPlayer and Quicktime, changing the computer name, setting it to join a workgroup rather than a domain and getting it to autologon so it will boot without intervention.  But, upon reboot – EVERYTHING WAS BACK WHERE IT WAS!!??!! – What was going on here?

After quite a few Google searches I finally found out that Windows XP Embedded implements something called Enhanced Write Filter to protect the disk from writes by users.  Basically, do what you like, install anything, delete the entire drive, and everything is discarded upon reboot.  This is not quite like re-imaging but close, you can commit your changes if you know how (and now I do).

I found an excellent writeup originally from HP (who bought MaxSpeed incidentally) that explains EWF pretty clearly;

The Enhanced Write Filter allows the operating system to boot from a disk volume residing on any read-only media such as flash media, CD-ROM, or a write-protected hard drive while maintaining the appearance of read/ write access to the operating system. Enhanced Write Filter protects the contents of a volume on the target media by redirecting all writes to another storage location, called an overlay.

Used in this context, an overlay is similar to a transparency overlay on an overhead projector. Any change made to the overlay affects the picture as seen in the aggregate, but if the overlay is removed, the underlying picture remains unchanged.

So, it was a simple matter to disable EWF, make my changes and commit them.  I found an interesting article on a car computer forum where the author had gotten EWF working with XP-Pro, but he provided the enough info to get me started.  I’ll be examining that article a little closer, this will solve alot of problems with mission critical appliance PCs that don’t change much over the years.  Go to a command prompt and issue the command:

ewfmgr c: -disable

This will make your volume writable as any normal drive.  Don’t forget to re enable EWF with (and REBOOT, it won’t “take” till then):

ewfmgr c: -enable

And you can get the rest of the command switches with:

ewfmgr -?

Now, with writes enabled I could get down to business.  Here are a few caveats I found with XP Embedded that you should bear in mind.

  • It does not support safemode, in any way.  It will bluescreen.
  • It does not support automatic update, in fact forget updates totally.
  • Disk space is rather limited, so is memory.

These are the steps I took to get this machine operating the way I wanted, your mileage will vary depending on what you want to do.  I’m not entirely certain where I will deploy this machine, but it will be a “headless” server or utility machine somewhere remote.

  • Disabled the BIOS password by removing the BIOS battery for a few minutes.
  • Changed the boot order in BIOS so it would not attempt to find a network image, greatly speeding boot.  It now stands at C: then USB:
  • Disabled EWF and changed the computer domain to a workgroup and changed the computer name.  This disabled the domain joining.
  • Installed TightVNC
  • Installed Python 2.72 (the last version 2 release, to maintain backward compatibility with the pyserial library)
  • . . .
  • Profit!

I plan to use this computer as a receiver for my Jeenode work, simply listening for the radio traffic and sending updates off to the mySQL database.

Below is a small gallery of images of this machine.

 

Share

Comments are closed.