Saturday, April 27, 2013

Extracting contacts and calender data from a Nokia 2690

After resisting the inevitable march of progress, my wife upgraded to an Android phone recently. She had been using a Nokia 2690.

Image from Wikipedia

You may think "pfft, what an ancient phone!", but it has a USB connection and a microSD slot. Besides, I still use a 6100.

Attribution: Cessax / G├╝strow (Cessax at de.wikipedia)

It supports infrared, which must have looked cutting edge back in 2003, but surprisingly few new laptops incorporate it in 2013. Luckily my 3 contacts won't be too difficult to copy across manually in the unlikely event I actually use one of these Orwellian tracking devices known as "smartphones".

Anyway, back to the topic on hand. After swapping the SIM card over, the Android contacts application refused to read the contacts or calender information. I think the reason was because these had been stored in the actual phone memory instead of on the SIM.

My initial searches seemed to show that Nokia's Windows-only PC suite was the common way to copy this information from the phone to some usable format. Curses.

I tried searching the internet for terms like "transfer contacts nokia phone android ubuntu". The results were long-dead forum posts copied across multiple spammy domains, blogspam about Ubuntu phones, adverts for cheap feature phones, and review after review of the latest flavour-of-the-week Android device. This is the internet we have created in 2013 - full of unanswered questions wrapped in adverts, advertorials with more adverts, spam and money grubbers.

A beacon (mmm, bacon) of hope was a post on one forum that said "I've tried wammu but it didn't work". Aha!

Wammu it turns out is a GTK front-end application that ties into the Gammu command line utility to work with dozens (hundreds?) of mobile phones. And best of all it is Free Software. Jackpot!

On Ubuntu it's easy to install
sudo apt-get install gammu

Once that was done, I connected the aging Nokia device via USB cable to my laptop and set it to "PC sync mode". That caused a new device to show up in the /dev directory - /dev/ttyACM0. Wooo!
The gammu configuration I needed was on their wiki, but the connection string did not work. After fiddling around with wammu it seems like dku2 is the correct value for the connection type, and the advertised dku2phone doesn't exist.

~$ cat .gammurc
port = /dev/ttyACM0
connection = dku2

Once I had the phone details showing up in the wammu GUI I was almost there. I couldn't figure out how to save from wammu to a useful format - vCard seems to be the standard here. Luckily using gammu was easier and the man page has this example that does the job:

sudo gammu backup gammu_contact_backup.vcf -yes
I had to use sudo as I wasn't allowed to open /dev/ttyACM0 otherwise, and I couldn't be bothered faffing with groups for this one-off operation. This extracts all of the contacts and stores it in the vCard format. It came as a surprise to me that gammu chooses the type of data and the output format based on the backup filename extension, so using ".vcf" is required.

To extract the calender information, I had to use the ".vcs" extension. This causes gammu to export calender information and save it in the vCalendar format.

sudo gammu backup gammu_calendar_backup.vcs -yes
Once extracted, I copied these onto a suitable sdcard for the mrs's new android phone (which is a normal person's unlocked-but-freedom-hating Samsung S3 Mini, if you were wondering. Not my choice, but doesn't seem too shabby.)

The contacts app imported the vCard file no problem. From the android app's menu (didn't Google try and get rid of menus? Maybe Samsung have more idea about what works) there's an "import from SD card" option. This goes off and finds the vCard file itself and reads all the contacts in.

For the vCalendar file it didn't work as I expected. There are no "import" options in the calender app. Instead, I used the file navigation app (included by default) - and opened the vCalendar file there. It gave me the choice of what application to open the file with, I chose the calender app, and that was that.

Unfortunately I didn't manage to get the SMS files off in a way that the Android apps could understand. I don't think there's a standard interchange format there, each phone does it their own way.

I dread to think what will happen in a few years time when I want to repeat this process to get the stuff off the Samsung phone though.

1 comment:

  1. Anonymous12:42 am

    I always considered the term "smartphone" to be an oxymoron. With emphasis on the moron part.



Note: only a member of this blog may post a comment.