Phone and firmware manipulation guide/LG

From Legacy Portable Computing Wiki

General Purpose[edit]

GSM (TI Calypso / Analog Devices)[edit]

TI Calypso-powered LG phones tend to have firmwares stored in .m0 or .mot. Both are Motorola S-record files, but are handled differently.

.m0 files can be converted to a working BIN file with mot2bin. Make sure to add -w before passing the file, or you'll get a BIN file with incorrect endian (causes raw bitmaps to look noisy or 'embossed', and makes tones unfindable by extraction utils).

For example, if someone was to convert an LG C1300 firmware file to BIN format, they would type the following:

mot2bin -w C1300.m0

.mot files can be converted to BIN format with sre2bin. Unlike .m0 files, you don't have to use any arguments to change the endianness.

Example:

sre2bin C2200_alchemy.mot C2200_alchemy.bin

(the name "alchemy" is included as most LG firmwares of this type are split into two files names AlchemyData and CodeData. AlchemyData contains almost all graphics and sounds)

Once you have the firmware in BIN format, you can use ToneSniffer to extract sounds and Image Search Editor to look for raw bitmap graphics.

GSM (MTK)[edit]

Certain MTK powered LG phones store their firmware files in .IM format. These are standard BIN files with 64 bytes of extra data added every 2048 bytes.

Most of the time they are stored in .KDZ files, which can be unpacked with either RevSkills or LGExtract.

Once you get the .IM file, you can use RevSkills's "Byte Cutter" tool to remove the extra 64 byte blocks. Open RevSkills, then go to Extraction -> Repair -> Byte Cutter.

The following settings should work with .IM files, as long as the first 64 byte block is located at 0x00000800:

From there, you can use MultiExtractor or another general purpose file extraction tool to extract content from the .CUT file that RevSkills generates.

Other (CAB/DZ/KDZ/WDB)[edit]

For newer LG phones (with firmware files that are .cab/.dz/.kdz/.wdb), there are 2 options.

.KDZ and .WDB files can be extracted with LGExtract, which outputs .bin files and an embedded filesystem.

RevSkills can also extract .cab/.dz/.kdz/.wdb files.

USB file transfer[edit]

When it comes to older LG GSM phones, it depends a lot on the model (we don't have enough information). Early GSM LG phones released in the US that are TI Calypso-powered lack USB support, so content cannot be transferred over USB.

Newer LG phones are more standardized, as they tend to use Qualcomm SoCs, so you can use BitPim or Revskills to interface with the embedded file system. With that being said, not all LG phones are Qualcomm SoC based so it's best to do research on the specific phone.

Qualcomm-powered[edit]

Most LG Qualcomm phones, GSM or CDMA, will work fine under the "LG VX5400" preset in BitPim. This has been tested and confirmed to work with LG models B470, CU720 Shine, and VN250 Cosmos.

Revskills is generally a more favorable option if you want faster transfer and batch exporting of all files in the EFS.