Samsung Galaxy display running CyanogenMod

How to set custom ringtones, alarms and notification sounds on a Samsung Galaxy S2

Custom Ringtones on the Samsung Galaxy

We are going to see how to install custom ringtones and notification sounds on a Samsung Galaxy phone. You can load MP3 files onto the phone and add them to the list of choices. I am going to assume that you have already read my other page explaining how to connect your Samsung Galaxy to your computer.

You can download the full user manual (11.0 MB), from Samsung's site, but it does not explain how to do this.

I found that a Google search quickly returned a number of pages purporting to explain how to set custom ring tones and other sounds, but three out of the first four pages had explanations that were simply wrong.

Here is how to set custom sounds on the Samsung Galaxy S2

Start by connecting your phone as a USB storage device. Mount the MicroSD storage card. Mount the added storage and not the phone itself. Let's say that you have mounted the card as /mnt. If this is a new card it will be almost but not quite empty. It will contain two empty directories named .android_secure and LOST.DIR

[root@linux ~]# tree -a /mnt
/mnt/
|-- .android_secure
|-- LOST.DIR

2 directories, 0 files
[root@linux ~]# ls -laR /mnt
/mnt/:
total 196
drwxr-xr-x  4 root root 32768 Dec 31  1969 .
drwxr-xr-x 28 root root  4096 Mar  1 04:43 ..

/mnt/.android_secure:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Dec 31  1969 ..

/mnt/LOST.DIR:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Dec 31  1969 ..  

You need to create three new directories. Their names are significant, you must get their names precisely correct or the phone will not pay special attention to them. Those names must be alarms, notifications, and ringtones (or at least that is the case with both Android version 2.3.6 based on kernel 2.6.35.11 and Android version 4.0.3 and 4.0.4 based on kernel 3.0.8).

That last one is where 75% of my brief sample got it wrong. It must be literally "ringtones" and not "ringtone" or "ring tone" or "ring tones".

[root@linux ~]# cd /mnt
[root@linux ~]# mkdir alarms notifications ringtones
[root@linux ~]# tree -a
.
|-- .android_secure
|-- LOST.DIR
|-- alarms
|-- notifications
`-- ringtones

5 directories, 0 files
[root@linux ~]# ls -laR
.:
total 196
drwxr-xr-x  7 root root 32768 Apr 27 17:40 .
drwxr-xr-x 28 root root  4096 Mar  1 04:43 ..
drwxr-xr-x  2 root root 32768 Apr 26 21:00 .android_secure
drwxr-xr-x  2 root root 32768 Apr 26 21:00 LOST.DIR
drwxr-xr-x  2 root root 32768 Apr 27 16:21 alarms
drwxr-xr-x  2 root root 32768 Apr 27 16:43 notifications
drwxr-xr-x  2 root root 32768 Apr 27 16:57 ringtones

./.android_secure:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./LOST.DIR:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./alarms:
total 64
drwxr-xr-x 2 root root 32768 Apr 27 16:21 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./notifications:
total 192
drwxr-xr-x 2 root root 32768 Apr 27 16:43 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./ringtones:
total 224
drwxr-xr-x 2 root root  32768 Apr 27 16:57 .
drwxr-xr-x 7 root root  32768 Apr 27 17:40 ..

Then copy MP3 files into the appropriate locations and verify that it worked:

[root@linux ~]# tree -a
.
|-- .android_secure
|-- LOST.DIR
|-- alarms
|-- notifications
|   `-- lafd-sq51-klaxon.mp3
`-- ringtones
    `-- cq-20wpm-800hz.mp3

5 directories, 2 files
[root@linux ~]# ls -laR
.:
total 196
drwxr-xr-x  7 root root 32768 Apr 27 17:40 .
drwxr-xr-x 28 root root  4096 Mar  1 04:43 ..
drwxr-xr-x  2 root root 32768 Apr 26 21:00 .android_secure
drwxr-xr-x  2 root root 32768 Apr 26 21:00 LOST.DIR
drwxr-xr-x  2 root root 32768 Apr 27 16:21 alarms
drwxr-xr-x  2 root root 32768 Apr 27 16:43 notifications
drwxr-xr-x  2 root root 32768 Apr 27 16:57 ringtones

./.android_secure:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./LOST.DIR:
total 64
drwxr-xr-x 2 root root 32768 Apr 26 21:00 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./alarms:
total 64
drwxr-xr-x 2 root root 32768 Apr 27 16:21 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..

./notifications:
total 192
drwxr-xr-x 2 root root 32768 Apr 27 16:43 .
drwxr-xr-x 7 root root 32768 Apr 27 17:40 ..
-rwxr-xr-x 1 root root 19121 Apr 27 16:25 lafd-sq51-klaxon.mp3

./ringtones:
total 224
drwxr-xr-x 2 root root  32768 Apr 27 16:57 .
drwxr-xr-x 7 root root  32768 Apr 27 17:40 ..
-rwxr-xr-x 1 root root 132413 Apr 27 16:47 cq-20wpm-800hz.mp3

With CyanogenMod, the directories must instead be:
/media/audio/ringtones
/media/audio/notifications
The added ringtones appeared immediately. Oddly, I had to reboot the phone before the added notifications appeared in the list.

Change out of the mounted file system and unmount it.

Tap the Home button at the bottom of the display to go to the home screen. Then tap the Menu button.

Tap the Settings button at the bottom right of the main menu.

Now you are ready to select your new ringtone and notification sound file.

Press and hold either the Phone ringtone or the Notification ringtone selection in the sound menu.

The newly added files will appear in the appropriate lists. If you have embedded an MP3 metadata "Title" tag with the mp3info program or similar, the file will appear under that title in the alphabetical list. Otherwise, it will appear under the file name.

Now my message notification is the dispatch klaxon for Los Angeles County Fire Department's Station 51.

My phone sends Morse code as a ring tone:
CQ CQ CQ DE KC9RG KC9RG
See the Morse Resource site to generate your own customized Morse MP3 files. You can set the speed, tone frequency, and content up to 200 characters. What a useful resource!

Audacity application processing Morse code signal.

The only downside to the Morse Resource result is that the audio is only at 50% volume. That is easily fixed by opening the file with the Audacity audio editing tool, selecting Effect and then Amplify, and accepting the default amplification of 3.0 dB or very close. Then simply save the result by selecting File and then Export and accept the default of overwriting the original file.

Enjoy the soothing sounds of my phone ringing and receiving a message.