Saturday, April 12, 2008

Sync'ing Nokia 3500 classic with Ubuntu

It's been about a month or two since I got my Nokia 3500 classic and have had whined a lot about Symbian S40 with it:

  1. Unable to do full phonebook backups on the phone itself
  2. Unable to restore a vCard File (.vcf) that contains multiple phonebook entries on the same file, which is considered a common means of doing backup (at least I'm aware that Sony Ericsson and LG phones does that)

But at least it supports SyncML, which provides a platform-independent means of information synchronization. So with some effort, I got OpenSync and MultiSync setup to have Evolution and my mobile phone to sync with each other. At the moment I'd say that using these tools made me feel like such information sync'ing architecture is still quite in its infancy stage: mainly due to a lack of user-friendly graphical frontends and seamless integration with the desktop environment. Which is quite a pity really, especially the rise of handheld devices, I'm currently looking forward to more development with such a capability.

But anyways, for those needing a working syncml-obex-client configuration for the Nokia 3500 classic (via Bluetooth), here's the configuration that I'm using at the moment:

<?xml version="1.0"?>
<config>
<!-- (Only for bluetooth) The bluetooth address if the bluetooth mode is selected -->
<bluetooth_address>[The Bluetooth address for your Nokia phone]</bluetooth_address>

<!-- (Only for bluetooth) The bluetooth channel to use. `sdptool browse $MAC` to search for the correct channel -->
<bluetooth_channel>11</bluetooth_channel>

<!-- (Only for USB) The usb interface number of the SYNCML-SYNC target. use syncml-obex-client -u (you will need access to the USB raw device) to find it. -->
<interface>0</interface>

<!-- The string that the plugin will use to identify itself. Some devices need a special string here. -->
<identifier>PC Suite Data Sync</identifier>

<!-- The syncml version to use: 0 for 1.0, 1 for 1.1 and 2 for 1.2 -->
<version>1</version>

<!-- if the plugin should use wbxml -->
<wbxml>1</wbxml>

<!-- The username to use. Leave empty to not require a username -->
<username></username>

<!-- the password for the username -->
<password></password>

<!-- sets the connection type to use. 5 means obex over usb, 2 means obex over bluetooth -->
<type>2</type>

<!-- If wbxml is enabled, defines wether the wbxml should use string tables -->
<usestringtable>1</usestringtable>

<!-- Never send ADD command, but send REPLACE (not needed normally) -->
<onlyreplace>0</onlyreplace>

<!-- Workaround around for mobile phones which only use local timestamps and _no_ UTC timestamps! -->
<onlyLocaltime>0</onlyLocaltime>

<!-- Sets the maximum allowed size in bytes of incoming messages (some device need this option set). Example: 10000 -->
<recvLimit>10000</recvLimit>

<maxObjSize>0</maxObjSize>

<!-- The name of the contacts db. Must be the same as the phones sends -->
<contact_db>Contacts</contact_db>

<!-- The name of the calendar db. Must be the same as the phones sends -->
<calendar_db>Calendar</calendar_db>

<!-- The name of the note db. Must be the same as the phones sends -->
<note_db>Notes</note_db>
</config>