Tag Cloud

Thursday, January 03, 2008

Using SIM Directory Contacts by default on a Nokia S60 smartphone

Symbian S60 SIM directory screenshotSIMply troublesome

It has been a convenience to store my contacts on the SIM card since this allows me to swap phones without worrying about maintaining consistency of contacts on any make of phone. The way the contact list is stored on the SIM card is standard and any phone is able to access it readily. Having used phones from Motorla, Samsung and Sony Ericsson, I have never encountered any problem with my contacts until I switched to a new Nokia S60 smartphone.

SIM versus Phone contacts

It is good that Nokia have included some basic copy features so you can manage the contacts between the SIM card and phone memory and even backup to the memory card. However they have also deliberately made accessing the phone's memory the default and tucked away the SIM directory access in one of the menus. There is no option to choose whether you want to use the phone or SIM card memory by default; you MUST use phone memory. Nokia probably thinks that forcing us to use the phone's memory to store our contacts is the only way to take advantage of the PIM features of a smartphone which is quite true since it allows more fields to store PIM related data such as addresses, birthday and more phone numbers.

I have searched through a number of Symbian forums and the general consensus is that you cannot run SIM directory as default. There are workarounds which generally requires you to either copy all your contacts over to the phone memory and updating the SIM card's contact list every time you add or delete contacts or go through the menus to reach the SIM directory every time you need to make a call. Other then that, I guess the obvious least troublesome solution is to force yourself to use the phone memory. But there is actually one other way; write a program to load the SIM directory. And that's what I did.

A SIMple solution

Having spent some time playing around with Python for S60, I happened to find out from the developer forums a way to access the Sim directory. The SIM directory is actually a native executable app that can be launched except that there is no icon to load it directly. The code is so trivial and contains only 2 short lines that I am a bit embarrassed to post it here. :P

I have included the SIS which you can install. Python for S60 interpreter is mandatory.

Download Sim Contacts SIS (for S60 3rd Ed)
Download Python for S60 interpreter.
Choose "PythonForS60_1_4_1_3rdEd.SIS" assuming you are using a Symbian S60 3rd Edition phone.

Install both SIS files into your phone memory using PC Suite or other means. After installing, you should see the Sim Contact app in your phone where new apps usually reside. You can then set it to your softbutton or Active standby buttons for quick access.

The drawback to using this is that the SIM directory is only able to perform voice and video calls. There is no direct access to send SMS or messages. This is yet another feature Nokia conveniently omitted.

The storage cost to get this working is quite heavy considering the required Python for S60 package itself is almost one megabyte in size. Somebody with Symbian C++ programming skills would be able to do this more efficiently.

Anyway I hope this app will be useful to somebody.


João said...

Hi :),

this was just what was looking for.
I have only one problem, i don't have symbian s60 3rd edition, i have 2nd edition fp3 ( nokia n70 ) can you make a sis installer for this one or post the python code so i could try and do it my self?

Thanx in advance

Roy said...

Sorry, I may not have the resources to accommodate the request to create one that supports your version. I can however give you some tips on how to do it.

You may refer to this:

Its only a simple call to open an application. I am not sure of the exact app name but you should be able to find it with a file explorer like FExplorer (using export app list) on your phone. You can use ensymble to package your SIS.

João said...

Hi Roy,

thanx it took me a while
to get everything going
but got it in the end.

I have another question
which i could not find
an answer in the wiki,
which is if you can
close the caller app
after executing the
simdirectory app.

Do you know if this
is possible, and if so how?

Thanx in advance

Roy said...

I tried the app and it doesn't return to contact app after pressing "Back" from the SIM directory main menu. I am not sure if this will help but its in my code. Add the following to the last line of your code.

appuifw.app.exit_key_handler = appuifw.app.set_exit()

Do tell me if it works. If not then probably the app in S60 2nd Edition works different.

Anonymous said...

Thank you for this great work!
I'm searching for this kind of tool (displaying SIM contacts by default) since my first S60 device (E50, years ago) and i thought i was the only person on the web who wants this kind of feature. The most advanced mobile platform (S60) is the only platform without this feature, curious.

Thank you very much and greeting from Germany...

PS: Nokia added the feature to select SIM/Memory/both type of contacts with Feature Pack 2.

Roy said...

Thanks for the heads-up on Feature Pack 2. Finally Nokia listens. ;)

Anonymous said...

Though your need made the application, its rarely used. The easist method I used to do was to store sim contacts on sim in sequenctional storage locations, so if I preseed 1# the first contac from sim comes up and so on.
The problem here is to re allocate sim locations, which is not possible in symbian phones. You have to use a usb convertor and use a special software for the same on PC. I wish there was a sim number reallocator app. Can you please make one? regards, Dr Akash S

Roy said...

This app was a stop gap measure. If you need to access SIM contacts, time to get a new phone. I did. :)

Post a Comment