Wizcode Storage Tools Review
Wizcode has updated their product suite, including the now 3 separate utilities (ScanDisk Mobile, Undelete Mobile, and Defragment Mobile) for dealing with ugly storage card issues like fragmentation or card errors. Formerly, you had to purchase the full Pocket Mechanic product to get these tools. Read on to check out my tests and review, which met with mixed results.
***Note: I am in the process of updating my test results. The problems I experienced may have been related to my test unit, so until I post the updated results, the testing should be considered suspect at this point.***--Update: results posted below (see bold and italics in each section)--Update: Indeed it turns out that I did find a bug with the defragment utility, so the vendor will be working to fix this (see comment section for details)
The Windows Mobile operating system is largely reliant on the older FAT (File Allocation Table) file system. FAT was actually developed by Bill Gates and Marc McDonald back in the late 70’s. What FAT does is tell your computer or WinMo device (when you want to browse or view files) exactly where the various chunks of your files are located across the storage medium they are resident upon. This location information is stored in a table (ergo…the acronym FAT). Windows CE devices use a special form of this called TFAT (transaction safe FAT). This is not greatly different from original FAT, except in that it actively utilizes both FAT tables (yes there are 2) to ensure that file system changes (transactions) conclude properly before the primary FAT (FAT0) table is written. FAT or TFAT does not have any built in anti-fragmentation protection--like many Unix file systems--to prevent files from being scattered across storage, however, it is noteworthy to point out that your PDA can theoretically read any block (or chunk) of storage on the card as fast as any other (unlike actual spinning hard drives). So, the question remains, is there really any impact to performance caused by this so-called scattering? The answer is not exactly simple, but the solution actually is. You need to read Werner’s excellent articles here and here on fragmentation, file systems and optimization methods and tools to learn more about this. He has performed his own benchmarking tests to prove that indeed fragmentation does affect the performance of SD or flash memory storage. What I will relate is my own experience, which is less scientific, but I want to stress a couple of quotes from Werner’s articles first:
…”In real life, because you can only use your card as a storage medium (like your hard disk in your desktop PC), the speed problem won't be so apparent unless you start doing fancy things like…” --The vendor responded that flash memory suffers badly from fragmenatation (both file system and block alignment as well as cache misses) and that causes big impact on performance. It is not suprising that TomTom officially recomends defragmenting storage cards with our products to increase the performance of their products.
…”I would not recommend any Pocket PC-based tool for defragmenting your card - they're unreliable…” --The vendor responded that the newer tools are not the same as when Werner may have initially made this statement
So, are these tools on a PDA or phone even relevant, then? Well… here’s my experience. I have a huge number of storage media (CF, SD, micro drive, etc.), some of which date back to early 2002. I move a lot of data around from my cards to my PC and vice versa (pictures, movies, programs, etc.). I install a ton of programs to the cards to save on space and also to make it easier to reload apps. Most of these actions I do either through Active Stink or by inserting the cards (via a card reader) directly into my PC. Here is what I have observed.
If you change the data on your cards frequently as I do, you will eventually find that file system access (even via file explorer for example) becomes slower as an ever larger number of directories and files are populated. Cards are also prone to becoming corrupted from the frequent moving around from device-to-device (digital camera, PDA, computer). This is usually perceived as a hang of file listings and missing/corrupt data or unusable space (i.e. space shows as available, but unable to write anything to it). I have yet to find a tool that reliably fixes these problems, but it would be nice to have one on the device itself. Mounting storage media in Windows is often problematic all on it’s own. Whenever you move data around on a disk, you risk possibly corrupting it.
Enter Wizcode’s card maintenance tools--available individually as ScanDisk, Defragment and Undelete. There is some controversy over their usefulness, but the more important question is do they work reliably, or can they cause more problems than they fix? Several forum posts indicate they can actually render your data inaccessible, so you must be careful to have a good backup before using these tools. I have evaluated Pocket Mechanic Professional in the past for our awards (the Wizcode card tools are also part of the main product), and found that it was **unreliable in the storage card salvage department (as Werner suggested). The product was even suspect in roaching at least a few of my storage cards during testing.
**Note: The vendor has informed me that the new tools are not the same as the older version of PM (or even the same as the current tools in that app), and that a fatal flaw was noted and fixed.
Here is how I tested the new individual Wizcode tools:
1. Picked 4 of my most used cards. 2 of them are confirmed as fragmented, corrupted and nasty cards in general to test with. The short list (from top L-bottom R in screenshot above):
- IBM 1GB micro drive—An actual miniature hard drive that has seen better days. It works but often makes funny noises like clickety-click sounds (ominous).
- SanDisk 2GB ultra CF card—relatively new card that is used for peripheral files like GPS maps, music, movies, etc…Very few changes, and much less fragmentation
- Kingston 2GB microSD card—My everday storage card. It’s always plugged into my favey iPAQ, and has almost 800MB of games/programs on it, and about a million cab files. Most of the data here has been migrated from other cards. Most of my testing was done on this card.
- SanDisk 512MB SD card—I call it the storage tool “widow maker”. This is one of my oldest SD cards, that corrupts nearly every file written to it, and will only give you half of it’s usable space. It’s evil, and defies any format tool to fix it’s haggard clusters..
2. Run the storage tools from Wizcode on each medium:
- First, run a scan using ScanDisk and note errors
- Second, run a scan and actually attempt to fix errors (used the slow method which checks for bad sectors)
- Third, Run a Defragment scan and note errors/problems
- 4Th, attempt an actual Defrag (ran this also in safe mode)
- Repeat at least once if errors occur
My results were varied. The individual tools are similarly unreliable in fixing problems (**only on my iPAQ actually), but at least didn’t corrupt anything. I still think you will have far better results by periodically saving the card data and then re-formatting your card via a Windows PC (and then moving the data back). Personally I would do this using Ubuntu Linux instead of Windows, as Linux is far more stable in mounting and un-mounting removable media than Windows in my opinion.
**Note: I have since tested this on my i-mate 8150 and older iPAQ 3955, and both ScanDisk and the Defragment Mobile scanning utilities worked as advertised.
The excellent GParted tool in Ubuntu. Can also be used to create multiple partitions on a card (i.e. for booting mobile Linux).
Most Linux installations like Ubuntu offer format tools that support the gamut of file system choices (gparted is one such great tool), including FAT16. You can use GParted to format easily any storage device, even expand/contract partition sizes (see my post here on the “netbook remix”), and simply use the Ubuntu liveCD version from the stick (without installing). In the course of my testing, I actually backed up my data to a second card, and then reformatted using the Ubuntu tool. However, not everyone has access to a PC (or netbook), so is it safe to simply try to fix storage media problems using the Wizcode card tools? I am fairly confident at least that Wizcode did not cause any further problems (yet), but I definitely had some issues:
1. The SD (widow maker) card did not successfully complete any step. It errored and hung on Scan and Defrag, and my unit had to be soft reset to make it stop. It could not be killed.
2. The Micro-drive, and CF card responded well to ScanDisk and fix actions. They both errored on the defrag, however.
3. The microSD card couldn’t be scan fixed no matter how many times I ran it (same noted issues), until I ran chkdsk in Windows. This indicated errors in a particular folder that were not reported by the card tools. I removed the folder, and the next scan fixed everything. Defrags still errored and couldn’t complete. I finally re-formatted the card using gparted (see below) **This worked flawlessly on the i-mate 8150** I was able to scan and fix the card successfully on re-test.
4. Auto-defrag on reboot did not work (known bug).
5. Defrag reporting is not accurately reporting fragmentation information. Reports substantial fragmentation % when there is none. **This is only noted on my iPAQ hx2495b which is running a cooked ROM and thereby suspect at this point.
6. The Undelete product worked as advertised. You can reliably restore deleted files using this tool.
7. The various cache and boost settings also didn’t seem to have much apparent effect on file system performance on my iPAQ. **They shouldn't have actually as they are used by the app itself to speed up it's performance not WinMo's...
**So, the bottom line is that I could not verify the defragger actually did anything as it repeatedly failed, and even when I presented a freshly defragged card to it, it still reported significant fragmentation (**again only on my iPAQ unit). The Disk Scan tool fixed some issues, but also failed completely in at least 2 cases. The Undelete tool was successful in finding and restoring lost files. Since I can’t verify any great change in performance, the jury is still out on whether Defrag/ScanDisk could be beneficial. The Undelete tool definitely gets a testing thumbs up at this time.
**Actually, I could have re-written the entire paragraph above, but wanted it to stand that I had some issues on one unit (which is true). I suspect the problem might be something to do with the ROM, but until I can test on another iPAQ, can't be 100% sure.
Install goes as you would expect. The cabs are all around 2M in size. I installed them to the default location obviously…If you install to a card, the tools won’t be there to scan your cards unless you have multiple slots. In my case, the installs all immediately timed out the eval period and forced me to enter licenses.
Using the Wizcode Tools
They all work similarly in that each tool starts by performing a scan of your storage media, and then reporting errors (or in the case of Undelete, missing files), and ultimately suggesting a “fix” action.
Fragmentation Wizard…the progress screen (above) indicates a graphic representation of disk fragmentation
- Yellow=a bad block (marked as bad and not used by the file system)
- Light Blue=a contiguous block (no need to be defragmented)
- Dark Blue=a fragmented block
The step-by-step, wizard-oriented approach is easy for even a storage novice to handle. One big problem is there is no on-device help available for the Defragment utility (the vendor says they are working on it). After scanning your media, a report is also displayed indicating problems (and fixes if you selected the option to go ahead and fix problems). I would strongly advise you use any “fix” options sparingly. Scans are free, and not likely to disrupt the file system, but once you start applying changes, all bets are off.
Settings and optimization
The app settings (in all 3 apps) allow you to tweak aspects of storage performance by enabling filesystem and cluster caching (speeds up the scans themselves). You can also increase performance by using features called FlashBoost or DirBoost (in the Defrag utility). I would also consult Werner’s excellent articles above on ways to optimize your storage (if you truly have the need). He offers several totally free alternatives to doing this as opposed to using these products (but maybe you need this ability on your mobile). Most non-Power users are not going to realize much performance boost from this anyway**. As I stated earlier, the ability to Undelete is quite handy though, so I do recommend getting a copy of this particular utility.
**Want to add here that the vendor makes a good case that several large companies rely heavily on the Wizcode mobile technology, and the tools are not only reliable but useful even to the average user**
Wizcode Settings, and recovering lost files with Undelete…
The lack of a help file left me scratching my head over some of the options in the Wizcode tools (only Defrag currently lacks help). No matter how many settings I tweaked, a simple file list action still hesitated in directories containing a large number of files. The Defrag utility will also allow you to clean up the program memory (Defragment RAM) of your device. This has become a pretty common feature in WinMo maintenance utilities and seems largely harmless. If you leave a lot of programs running in the background, it could be useful, but by and large can be easily remedied with a simple soft-reset.
The Wizcode tools are handy as a possible troubleshooting resource, and I verified that they can fix some issues with your cards. In my case, they could not fix issues reliably on a single device/card, but I will try them on several of my handhelds to be sure. Anyway, the Undelete tool worked well, and since it also includes some of the performance tweak settings, you might want to give it a go. I’m sure you will eventually delete some file and wish to restore it. I think the Wizcode developer should look at the algorithm that figures out it’s defrag decision (**again could be a problem on my iPAQ only). The logic is biased towards recommending defrag, even when the percentage seems small, or even when a freshly defragged card is scanned. The truth is, I'm still testing the Defrag utility on multiple handhelds with input from the vendor to try and determine why it seems to be operating in such an inconsistent manner (could be my devices/media/setup). Like any software, I recommend that you download a trial copy and test first before purchasing (30-day eval is available), and make sure to backup your files to PC or another card to be on the safe side. You can get the tools individually by going here (50% off for a limited time). The are each $7.45…
UPDATE: Through coordinated testing efforts with the developer, we were able to pinpoint the cause of issues identified in the V1.01 Defragment and ScanDisk products that were affecting my tests. It is recommended that you upgrade to the latest product to fix these issues. See full details at the Wizcode developer blog here.
UPDATE: Finally tested the latest versions and confirmed that the scanner and defrag utilities are fully functional. I was able to defrag one of my cards that was heavily reported to be fragmented successfully. I recommend these products and commend the vendor for being very responsive to these tests and quickly developing a patch to fix any issues. However, you should always download a trial of any mobile software and test it with your device to be sure it will work for you.