This is tutorial on how to restore stock firmware on Motorola Moto G. Carefully follow the directions for successful restoration of the stock firmware.
a) Download and install Motorola Drivers:
b) Download and extract the stock firmware of your choosing from:
The firmwares with ‘_umtsds’ in the file name are for the ‘dual-sim’ versions of the Moto G, it’s probably not a good idea to flash these onto single sim phones, or vice-versa.
Edit: More firmwares for international retail and carrier devices can be found here:
Edit: The firmware files have been updated most of the firmware archives are now in .tar.gz archives which include Motorola fastboot and flashing scripts for OSX, Linux and Windows.
On windows the .tar.gz archives need to be opened and extracted using a 3rd party archive manager. e.g. 7-zip, or PeaZip, Windows cannot extract these files natively, Linux and OSX can.
We used the retail British firmware (fastboot_falcon_retgb_user_4.3_14.10.0Q3.X-76-LGG-8_54_release-keys-cid7-Retail_GB.tar.gz), extracted to c:\
c) If the firmware file you downloaded is a .xml.zip file then download Motorola Fastboot mfastboot-v2.zip (attached to this post) and extract the .exe into the same folder as the stock firmware files (the same folder as the .bin and .img files). If your firmware is a .tar.gz file then skip this step.
d) Get ADB (if you don’t already have this, we suggest downloading and installing Minimal ADB and Fastboot by shimp208:
Steps to restore stock firmware:
1) Reboot the phone into bootloader mode. There are 2 ways to do this.
I) The ‘hardware’ way.
a) Unplug the USB cable and power off the phone.
b) Press and hold ‘Volume down’ then power on the phone.
c) Connect USB cable to your computer.
II) The ‘software’ way.
a) Enable developer mode on the Moto G (Settings-> ‘About Phone’. Tap 7 times on ‘Build Number’)
b) Enable USB debugging. (Settings -> ‘Developer options’ -> ‘USB Debugging’ -> check)
c) Connect phone to computer via USB, you should see a new ADB device detected and drivers installed.
d) Open “Minimal ADB and Fastboot”. Type:
You should see the Moto G bootloader screen with the following options:
Switch Console [NULL: null] Barcodes
2) Open a command prompt / terminal (Start -> cmd.exe in Win7) and browse to the folder with the extracted firmware.
In my case:
3a) If you downloaded and extracted a firmware in .tar.gz format
In windows, run the ‘flashall.bat’ script Type:
The “/eu” switch forces userdata to be erased from the device, this is the same as a factory reset or wipe this is recommended when restoring stock firmware.
In Linux/OSX run the flashall.sh script. Type:
chmod +x flashall.sh
The scripts will fail with an error on downgrading from 4.4.2 to 4.3. Open the script in a text editor (notepad) and delete (or comment) the following:
Lines 89-90 in the flashall.bat file:
CALL :fastboot_flash partition gpt.bin
IF %errorlevel% NEQ 0 EXIT /b 1
Lines 120-121 in the flashall.sh file:
run $fastboot -s “$serial_number” flash partition gpt.bin
if [ $? -ne 0 ]; then echo “ERROR: fastboot failed.”; exit -1; fi
3b) If you downloaded and extracted a firmware in .xml.zip format.
Flash each of the partitions in sequence using mfastboot, you need to enter the following commands one-by-one checking that each one returns an [OKAY] Code:
mfastboot flash partition gpt.bin
mfastboot flash motoboot motoboot.img
mfastboot flash logo logo.bin
mfastboot flash boot boot.img
mfastboot flash recovery recovery.img
mfastboot flash system system.img_sparsechunk1
mfastboot flash system system.img_sparsechunk2
mfastboot flash system system.img_sparsechunk3
mfastboot flash modem NON-HLOS.bin
mfastboot erase modemst1
mfastboot erase modemst2
mfastboot flash fsg fsg.mbn
mfastboot erase cache
mfastboot erase userdata
The 1st command “mfastboot flash partition gpt.bin” will fail on 4.4.2 to 4.3 downgrade. Skip this command if you are downgrading and continue with the other commands, which should work.
4) Wait, you should now be rebooted into a fully stock Moto G firmware.