Update (24 August 2005)
Due to the fact that I have sold my iPAQ 2210 PocketPC in June 2004,
I am no longer in a position to give any support with the procedure
described on this page, and therefore any e-mails that I receive
regarding this procedure will not be answered. However, I am
leaving this page online in order to be used as a reference by
anyone attempting to follow similar procedures.
Update (10 April 2004)
On the 15th of March 2004, HP released a new ROM update (version
1.10). Also in the beginning of April, HP released the Italian,
French and Spanish ROM updates. This means that:
(1) Step number 4 below does not work with the new
1.10 ROM update since the new ROM image has a new checksum.
(2) The procedure to install a different language ROM still works.
I have verified this on my Italian device which has been
successfully updated to version
1.10 (English) but the checksum table listed in step 4 no longer
applies.
(3) It seems that the statement at the end of this page which says
'With this I assume that all iPAQs are identical and the only thing
which makes the international versions different is the software and
not the hardware" is incorrect. In fact when I tried to update my
Italian device from version
1.01 ENG to version
1.10 ENG, the update utility recognised my device as Italian, so
I had to modify the
1.10 image before I could update my device.
(4) Now that HP released the Italian, French and Spanish ROMs it is
possible to change the language of any iPAQ 22xx to English,
Italian, French and Spanish.
I am leaving the procedure with the old checksums
on this page as a reference for those of you who know how to
calculate the new checksums. This is after all something which is
relatively easy to do. Also, the link to get the
1.01 ROM still works ;-)
Procedure - Version 1.3 (4 April 2004)
Based on:
How to install a different language ROM in your iPAQ 3900 series PDA
How to dump the iPAQ 2210's ROM
Here I will discuss how to change the language of Windows Mobile
2003 on the IPAQ 2200 series using HP's own update tool! At the time
of writing (February 2004) this means that you can only change a
non-English device into an English one since at the moment HP has
made available only the English ROM update. Once HP releases other
versions of this ROM update for the localised devices you will be
able to use the same technique to change between other languages
too.
Disclaimer:
You will replicate the steps in this guide at your own risk! I have
tested this procedure and I confirm that it works 100% but I will
not accept responsibility for data-loss or damaged devices! The
steps described here can damage your device permanently if not
followed accurately and should be carried out only by technical
persons! Also I have read on various sites that changing the
language of your Pocket PC device will invalidate your warranty!
What you need:
Minimum requirements:
-
iPAQ 22xx PocketPC
-
IPAQ 2200 series English 1.01 ROM Update
- Hex Editor software
Recommended requirements (If you want to backup your original ROM.
It is recommended that you do so in case you need to restore it!):
-
iPAQ 22xx PocketPC
-
IPAQ 2200 series English 1.01 ROM Update
- 64MB (or more) CompactFlash Card
- CompactFlash PC Card reader
- Hex Editor software
- Terminal Emulation software which can connect over USB
I have tested the procedure using:
-
iPAQ 2210 (with Italian ROM)
-
256MB Crucial Technologies CF Card
-
Crucial Technologies 6 in 1 Card reader
-
Hex-editor XVI32 2.51 by Christian Maas
- Multi-Port/USB TTY
1.11a by HTC
-
WinHex 10.3 by Stefan Fleischmann - Registered Version
Procedure:
1. Erasing the CompactFlash card.
This part is optional and is not essential however it is recommended
in case you 'brick' your device! Do it only if you are going to
follow step 2 below.
1.1 Insert the CompactFlash card in your PC Card reader.
1.2 Load WinHex.
1.3 Click on 'Tools -> Disk Editor' and select your CompactFlash
card.
1.4 Click on the first byte and press Alt+1
1.5 Move down to the last byte, click on it and press Alt+2
1.6 Click on 'Edit -> Fill Block'
1.7 Leave value as '00' and click on 'OK'.
1.8 Read the warnings carefully and if you decide to proceed keep
clicking on 'OK'.
1.9 Wait until your card is erased, then remove it from the desktop
reader and put it in the PDA.
2. Dump of current ROM.
This part is optional and is not essential however it is recommended
in case you 'brick' your device!
2.1 The first thing that you should do is backup all your data files
in case you are going to restore them afterwards. Do not backup
installed applications and the device file structure since if you
restore these after the language change you will end up with a lot
of useless language specific folders.
2.2 Perform a hard-reset by holding button 2, the power button and
pressing the reset button. Believe me this is going to be quite
difficult but eventually you will manage! |
2.3 As soon as you see a
screen with the word 'Serial' connect the device to your PC via the
USB port and the word will change to 'USB'.
2.4 On the PC, kill ActiveSync (via Ctrl+Alt-Del on Win 9x or via
Task Manager on Win NT/XP/2000/2003 - End process tree of 'wcescomm').
2.5 Load MultiPort-TTY and select '\\.\WCEUSBH001' from the drop
down list. If you don't see this go back to step 2.4
2.6 As soon as you see a blank screen press enter and a 'USB>'
prompt will be displayed!
2.7 Enter the command 'password CPQHAMMER'. If this is not accepted
enter 'mb 7500 11' to get your password and repeat this step with
your password.
2.8 Enter 'h full' for a list of commands and note the one you will
be using that is 'd2s'.
2.9 Enter 'd2s' and wait for the ROM to be completely dumped on the
CompactFlash card.
2.10 Once the console returns the 'USB>' prompt perform a soft-reset
and close MultiPort-TTY.
3. Transfer of ROM dump to file.
This part is optional but once again is recommended especially if
you followed steps 1 and 2 above.
3.1 Remove the CompactFlash card from the PDA and put it again in
the desktop reader. If Windows warns you that the card must be
formatted, do not do so!
3.2 Load WinHex again and click on 'Tools -> Disk Tools -> Clone
Disk'.
3.3 Click on 'Source Disk' and make sure that 'Read sectors from
image file' is unchecked.
3.4 Choose the physical (not logical) drive where your card is
located.
3.5 Click on 'Destination File' and make sure that 'Write sectors to
an image file' is checked.
3.6 Click on 'OK' and choose the path and file name for your image.
3.7 Make sure that all checkboxes are ticked and click on 'OK'.
3.8 Make sure that you keep the ROM image to a safe place!
3.9 Format your CompactFlash card so that you can use it AGAIN.
4 Modify the softpaq supplied by HP.
This part is essential else the update program will not let you
flash your device.
4.1 Unpack the softpaq provided by HP.
4.2 Load the Hex Editor.
4.3 Open the file 'Upgrade_GWROM_10101_WWE.nbf'.
4.4 Look for 'ENG-1.01.01-794a'. 'ENG' is the language string and
'794a' is the checksum.
4.5 Change ENG to your language string (Eg ITA / FRE / GER / SPA /
POR) and notice that the corresponding bytes will change from
45/4E/47 to the values corresponding to your string.
4.6 Use a scientific calculator in Hex mode and add the 3 values.
4.7 Add the derived value to 7870 and you will get the new checksum.
4.8 The following table contains the checksum for the most common
languages. If yours is not listed just add the sum of the 3 language
string values to 7870 as described above to get your checksum.
ENG = 45 + 4E + 47 = DA + 7870 = 794a
ITA = 49 + 54 + 41 = DE + 7870 = 794e
FRE = 46 + 52 + 45 = DD + 7870 = 794d
GER = 47 + 45 + 52 = DE + 7870 = 794e
SPA = 53 + 50 + 41 = E4 + 7870 = 7954
POR = 50 + 4F + 52 = F1 + 7870 = 7961
4.9 Change 794a with your checksum, save the file and close the hex
editor.
5 Flash the modified ROM image
5.1 Follow the 'ReadMe.doc' contained in the softpaq provided by HP
to update your device. If the update utility tells you that the
checksum is incorrect than start again from step 4.1 above and this
time pay more attention.
5.2 After the update is completed, configure again your device and
restore your data files (if required).
5.3 Apart from the obvious fact that now the interface of the O/S is
in English, if you go to System, click on 'Asset Viewer' and expand
'Version' you will see: 'ROM Revision: 1.01.01 ENG'. Also if you
expand 'System' you will see ' Language: ENGLISH' so now there are
no visible signs that the device was once a non-English one.
6. Restore of original ROM image to card
This step is only required if you for any reason you need to restore
the original ROM image. Make sure that the card is the same size as
the one you used in steps 1 to 3 above!
6.1 Load WinHex.
6.2 Click on 'Tools -> Disk Tools -> Clone Disk'.
6.3 Click on 'Source Disk' and make sure that 'Read sectors from
image file' is checked.
6.4 Click on OK and choose the file you created in step 3 above.
6.5 Click on 'Destination Disk' and make sure that 'Write sectors to
an image file' is unchecked.
6.6 Choose the logical (not physical) drive where your card is
located.
6.7 Make sure that all checkboxes are ticked and click on 'OK'. Once
the clone is completed you will have a card which can be used to
restore your original ROM.
7. Restore of original Windows Mobile O/S
7.1 Insert the CompactFlash card in your PDA.
7.2 Perform steps 2.2 to 2.8 above.
7.3 Enter the 's2d' command and wait for the ROM to be completely
restored from the CompactFlash card to the PDA's ROM.
7.4 Once the console returns the 'USB>' prompt perform a soft-reset
and close MultiPort-TTY.
Final comments:
Do note that once you successfully change the language as per steps
4 and 5 above you will have an exact replica of an iPAQ which was
released with that language. This means that if HP will release any
further ROM updates in the future you will have to use versions
which are specific to the one which you flashed your device to (in
my example I will have to use English ROM updates from now onwards
and not Italian). In order to test this I flashed my device a second
time this time with the unmodified softpaq supplied by HP and the
utility updated the device whereas before the update utility used to
abort because I needed to use an Italian ROM update. With this I
assume that all iPAQs are identical and the only thing which makes
the international versions different is the software and not the
hardware.
|