[Captivate Android Development] bames:
**VIDEO GUIDE ADDED BELOW**

There is already a guide for restoring IMEI and Product code with a PC and ADB moving files between phone and computer......so i thought i would provide an alternative method that can be done without a PC or ADB.

(This should be done from stock 2.1 (JF6) but may not be required (got this to work while in phoenix 1.5 without reverting)- results may very in custom rom environments....

***IMPORTANT PRECURSOR - we will be working with an important system folder (/EFS) and its contents (nv_data files). It is important to back this folder up (we will be doing this in step 2 below). I first backed it up to my external sd card but i did also copy the backup folder to my PC just in case.

fyi this fix is intended specifically for persons with borked product codes and imei's due to custom rom flashes and will not address nv_data issues of carrier blocks/etc. for those who had unlocked their devices and may in fact undo your unlock.***

This method assumes you are starting with a rooted phone w/ superuser rights

You will need the following APPS that can all be downloaded from market and, with the exception of Root Explorer, are all free:

A. Root Explorer (i know its paid but its the most $ worthy app i have encountered. You can use the free Android Mate as an alternative but not as robust or convenient IMO)

B. Busbybox (once installed from market open the app to install it)

C. Android Terminal Emulator

D. Hex Editor

E. SGS Toolbox

_________________________________________________________________

Once all tools/apps listed above have been downloaded proceed as follows:

THERE ARE 3 Total Lines you will need to edit

:

00188008

00188010

00188020

1. Install Busybox if you haven't done so already.

2. Use Root Explorer to create EFS Backup folder on an External SD (if you don't have one you can use the internal sd and give it a generic name that you will be able to identify). When ROOT EXPLORER opens you will be in the system file directory to get to your internal sd card open the SDCARD folder (from there you will see your external sd card as well if you have one installed)

3. Use root explorer to view the open the EFS folder from your system directory. The EFS folder contains the file you will will need to edit and replace. Open the efs folder and use the multi-select copy to copy the following files: nv_data.bin and nv_data.bin.md5 (you can also copy their respective backup files nv_data.bak and nv_data.bin.md5.bak).

4. Staying in root explorer go back to parent directory (option at top of file/folder list) and navigate to the backup folder you created and paste the files there. While still in this directory make a copy of just the nv_data.bin and the paste is either in the root directory or external sd or internal sd if you do not have ext. *Since i have good backups now on PC and external sd...i generally just edit the nv_data.bin file in place and save over the original in the efs folder.

5. Open Hex Editor Application and open the copy of nv_data.bin from your external or internal SD (click the capacitive menu button on phone and select OPEN FILE)

6. Once the file opens click the capacitive button to bring up the menu again and select jump to address:

7. Enter 0188008

This will take you to line 00188008

8. Edit the last or 8th Block (last column of green text). Click in the box and edit it so that it reads 41.

LINE 00188008

Block 8 = 41

9. use menu to jump to address again and Enter 0188010

10. This will take you to line 00188010. Edit the first two blocks of green text from this line. Replace the #'s so that both of the first two blocks contain 54. (look to the text at the right of screen the first two letter should have changed to TT. To recap you need to edit Block 1 and Block 2 of line 0018010:

LINE 0018010

Block 1 = 54

Block 2 = 54

(text @ right should now read TT....SG)

11. Now look down to line 0018020 and look at the line. If you look at the line to the far right text you will see ATOR or ATMB (or something other than AATT) if your nv_is messed up.

12. You may need to edit blocks 2-4. They should read as follows:

LINE 00188020

Block 2 = 41

Block 3 = 54

Block 4 = 54

(the text at the right of your screen should now read AATT....)

13. Save the file and move it back to efs using root explorer copying over the original.

14. delete all nv_data files from efs folder EXCEPT FOR YOUR NEWLY CREATED NV_DATA.BIN. (Delete the following: .nv_data.bak, .nv_data.bak.md5 and the nv_data.bin.md5 files. This differs from video but i also delete any .nv_state or nv.log file present and they are recreated).

FYI IF YOU ARE USING A GINGERBREAD ROM AND YOUR EFS CONTAINS .nv_core.bak and .nv_core.bak.md5 DO NOT DELETE THEM with the other .nv files.

15. (This step may not be necessary unless you lose your voice/data connection upon reboot)

Open Terminal Emulator and run the following commands:

su

busybox chown 1001:1001 efs/nv_data.bin

reboot

16. Once your phone has rebooted use SGS Toolbox APP to check your IMEI and Product Code to make sure the fix worked.

PS: Here are how the following lines should read (the ones in bold are the only ones you have to edit as line 00188018 will already be correct):

00188008|2e|34|00|00|00|00|ff|41|.4....A

00188010|54|54|00|00|00|00|53|47|TT....SG

00188018|48|2d|49|38|39|37|5a|4b|H-I897ZK

00188020|41|41|54|54|00|00|00|00|AATT....

PS - In terminal emulator after you enter your first Command Line

su

your keyboard may not pop back up. Don't worry if it doesn't just reopen it from your app drawer and proceed with line 2 and 3

**NEW: VIDEO GUIDE**

SPECIAL THANKS TO CONNEXION2005 for providing the video guide below:

[YOUTUBE]JqLK_2I-SBM?fs=1&hl=en_US[/YOUTUBE]

http://www.youtube.com/watch?v=JqLK_2I-SBM&feature=player_embedded#!

-----------------------------------------------------------------------------

*DISCLAIMER*

have already had one person post a response that this thread was misleading and stating that:

I have seen other users make this claim as well, however, they are either mistaken or what i experienced was a complete anomoly.

I had never backed up my efs folder or nv_data files prior to them being messed up (i didn't know they were there and had never used root explorer to view them until i had to research a fix). The first thing i did was use a hex editor to look at my nv_data.bin and its bak(s) and in fact none of them were good. They all contained wrong product code.

So the process i described was conducted without any previously backed up original nv_data.bin or nv_data.bak files.

I started with:

wrong IMEI

wrong product code

totally botched nv_data files with no backup of original unmolested efs folder or nv_data files

I ended up with

Restored original IMEI

Correct Product Code

Healthy/Correct nv_data files that i immediately backed up in multiple locations.

So if you didn't back up your original untainted efs or nv_data files and this fix doesn't work to restore your original imei and product code then allow me to apologize in advance for "misleading" you and trying to assist with your problem by posting what did in fact work for me.

--------------------------------------------------------------------------------------------------------------

DONATIONS NOT REQUIRED OR EXPECTED. IF YOU FEEL THIS THREAD HAVE HELPED YOU WITH A SICKLY DEVICE OR SAVE YOU ANY HEADACHE OR TROUBLE FEEL FREE TO CONTRIBUTE: