Discussion:
[BitPim-devel] PERMANENT ringtones for LG vx 8100 V7 on mini SD: *SOLUTION*
Matt Campbell
2006-06-11 09:21:26 UTC
Permalink
**Here is a procedure I have written for getting around the infamous 8100
Version7 ringtone problem. Is it possible to automate this process in
future versions of Bitpim?**

Sick of your V7 ringtones vanishing when you turn off your phone?
Take a seat, this procedure is slightly more convoluted than for the V4
phone.

The premise of this solution is simply that in order to keep your card
ringtones from disappearing, each ringtone must have an identically named
dummy file on the phone in the "brew/16452/lk/mr" directory. In this way,
when V7 boots up and compares the my_ringtone.dat file to the phone's
ringtone directory, it will see that the file names match. Obviously the
paths won't match since my_ringtone.dat points to your SD card, but V7
doesn't check this. As long as there is a dummy file for each ringtone, it
won't rewrite my_ringtone.dat upon rebooting. If you're already very
experienced with the 8100, then based on this premise, you can probably
visualize the rest of the solution yourself. For the rest of us, here's the
step by step:

Tools required:
data cable
bitpim (0.8.13 or any version with the built-in "convert audio file" tool)
HEX editor (XVI32)
file system explorer (QPST)
IMPORTANT!!! Before starting this procedure, backup your phonebook with
Bitpim. Sometimes this procedure changes all of your ringtone assignments,
and it is much easier to reload your backed-up phonebook than to reassign
all of your tones.

1. Fix ringtones' directory path on mini SD card

I assume most of you already have all of your ringtones on your card in a
directory called "Ringers" since this is how Bitpim so eloquently handled
our ringtones when we had V4. **Rename your ringtone directory to be
something with exactly 11 characters** This will greatly simplify the
editing that you must do to that HEX file later on. Now, copy this
directory to your desktop and remove the SD card from the computer and DON'T
put it in the phone yet. You will need that copy of your ringtone library
on your desktop in order to make dummy files.

2. Update ringtone tables and create dummy files with Bitpim

NOTE: This step assumes that ALL of your custom ringtones will be on the
mini SD card, and it will take a while the first time since you're making
dummy files for your whole ringtone library. Succeeding times will be much
quicker if you're only adding a few ringtones, and thus only a few dummy
files.

On Bitpim with your phone attached, do a "get phone data" and select
"ringtones" with the "replace all" option. Since all of your ringtones are
stored on the card bitpim won't report them, and your ringtone screen should
be empty. Next, do a "send phone data" selecting "ringtones" and "replace
all." Finally, do another "get phone data" selecting "ringtones" and
"replace all." The second "get phone data" will now show all of your dummy
files if you have already done this entire procedure and are just adding
more ringtones. Otherwise this is your first time and your ringers tab will
still be empty.

Create the dummy files by adding them one-by-one into Bitpim, and use the
"convert audio file" tool to truncate them to a very small size. I
use 0.2seconds. The bitrate and sample rate don't matter, these
aren't your actual
ringtones. Once again, this process is lengthy if you're converting your
entire ringtone library, but it will get much faster when you're just adding
1 or 2 tones. Finally, do a "send phone data" selecting "ringtones" and
"replace all."
NOTE: Now Bitpim has updated your my_ringtone.dat and my_ringtonesize.dat
files to reflect your whole ringtone library. However, they are pointing to
your 0.2 second dummy ringtone library on the phone. Unless you can answer
your phone that quickly, let's make those files point to your full ringtone
library on the card instead.

3. Fixing ringtone tables to point to card

NOTE: This step requires a file system explorer and a HEX editor.
Unfortunately, Bitpim can only view the 8100's filesystem and cannot write
to it, so I use QPST. As for the HEX editor, I like XVI32.

Fire up your file system explorer, browse to the "dload" directory, and copy
my_ringtone.dat to your desktop. Now open that file in your HEX editor, and
you should see an ascii version of your ringtones' file paths as well as a
hex version. On the ascii side, all of your paths will start with
"brew/16452/lk/mr" That's where Bitpim put the dummy files, and that's
where the V7 phones look for ringtones every time they reboot. However, all
of your real tones sit in the directory "mmc1/xxxxxxxxxxx" and those 11 x's
represent whatever name you gave to your card's ringtone directory.
Loading...