Phone and firmware manipulation guide/Motorola

From Legacy Portable Computing Wiki

Note that although 64-bit Motorola P2K drivers exist, P2K software (i.e. P2Kman, P2KCommander, and P2KTools) seems to be most stable on Windows XP.

P2K Patriot/Neptune LT[edit]

The code groups of old-style Motorola flash files are stored with a form of blowfish encryption. Software to decrypt the code groups of certain older P2K phones does exist, but do note it hasn't been tested on every model of P2K Patriot / Neptune LT phone.

USB file transfer[edit]

The "file system" of old-style P2K phones is one single root directory with no sub-folders. P2Kman can manage the files and seems of these phones.

P2K Neptune LTE/LTE2/3G; P2K05[edit]

The majority of Motorola P2K firmware files are in Motorola .shx format. It is a type of S-record format and can be split into code groups using SHXCodec (shouldn't be used for firmware made for flashing.) An alternative program that can also split SHX files into the necessary code groups is RandomSHX. This program generally seems to work when SHXCodec doesn't.

The firmware of some later P2K phones are in Motorola .sbf format, and can be split using SBF-Recalc.

Flash & Backup can be used to split .sbf or .shx files into .smg code group files. It can also recombine them into .sbf, .shx, or proprietary .fb3 and .fsw files designed only for Flash & Backup.

The CG part in .smg files stands for Code Group.

The "Flex" file (CG2.smg) is the file system of the phone and normally can be extracted using FlexParser04.

The "DRM" file (CG15.smg) holds all the system graphics for boot animations, status symbols, and so on. It can be opened and edited with SHXCodec by going to Utilities > DRM Editor. It can also extract every graphic from the code group.

USB file transfer[edit]

Most common P2K phones support PC synchronization using Motorola Phone Tools, but P2KCommander and P2KTools can both be used to interface with the phone directly and modify the file system, seems, and settings.

If P2K Commander doesn't work for you, you may need to first open a program like Flash & Backup or Motorola Phone Tools, then start P2KCommander and connect your phone. It's okay if Flash & Backup hangs, but you should only copy around 5 files or folders at a time or else your phone will stop connecting and you'll have to redo the process. Fortunately, this extra step isn't necessary for most P2k phones

CDMA Phones[edit]

Generally speaking, P2K tools do not work with CDMA-based Motorola phones, as they use a different chipset (P2k phones use Freescale chipsets while CDMA Motorolas use Qualcomm chips)

Usually, RandomSHX will work fine for splitting .shx files from CDMA phones. SHXCodec may work as well, but generally, there are inconsistencies between the GSM P2k and CDMA .shx files that cause it to give an error (such as CRC mismatch).

USB file transfer[edit]

USB transfer between CDMA Motorola phones isn't always consistent. BitPim works best most of the time, as it's a general-purpose Qualcomm CDMA phone modification tool, but sometimes certain files will be 'locked', meaning you can't save them or they are set to read only.

Some certain Motorola phones do work with very specific versions of P2KCommander, such as version 4.9D. If a phone can be used with this program, it's best to use that instead as it bypasses any 'locked' files you may encounter when using BitPim.

Note that some older Motorola CDMA devices (such as the E815) have EFS reading blocked by default. To bypass this, a specific seem in the phone needs to be edited. The method will be posted here once it is proved working.

iDEN phones[edit]

Motorola iDEN phone firmware files can typically be found in Motorola iDEN upgrade packages, which can be unpacked using Universal Extractor.

In terms of flash files, 1x through 6x appear to be font data stored in S-record. The rest of the firmware is stored in encrypted ZLIB streams, aside from the su file, which is an encrypted form of S-record.


EZX was Motorola's mobile Linux OS. EZXCodec is capable of splitting the code groups of these phones' firmwares.

They will usually have several different "drives" as code groups in SquashFS format. They contain the header "hsqs" and can be extracted using 7-zip.

EZXCodec can also be used to extract filesystems from EZX phones.