Synchronizing between Sony Ericsson w810i and Evolution using USB cable.

First, you must install OpenSync, an open source synchronization framework at http://www.opensync.org/wiki/download, either compile from source or use the pre compiled packaged for Ubuntu from this repository. Please note that the version numbers of OpenSync and it’s plugins must match. I installed the following packages:

  • OpenSync
  • Msynctool
  • Evolution 2 plugin
  • SyncML plugin (this plugin requires libsyncml)

After finishing the installation you mus add the sync group and it’s members:

$ msynctool --addgroup Sync1
$ msynctool --addmember Sync1 syncml-obex-client
$ msynctool --addmember Sync1 evo2-syn

Configure the SyncML member:

$ msynctool --configure Sync1 1

It will open nano to edit the config file. This is mine:

<config>
<bluetooth_address></bluetooth_address>
<bluetooth_channel></bluetooth_channel>
<interface>0</interface>
<identifier>Sony Ericsson</identifier>
<version>1.1</version>
<wbxml>1</wbxml>
<username></username>
<password></password>
<type>5</type>
<usestringtable>0</usestringtable>
<onlyreplace>0</onlyreplace>
<recvLimit>0</recvLimit>
<maxObjSize>725000</maxObjSize>
<contact_db>addressbook</contact_db>
<!-- calendar_db>calendar</calendar_db -->
<!-- note_db>tasks</note_db -->
</config>

Configure the Evolution member:

$ msynctool --configure Sync1 2

My config file for Evolution:

<?xml version="1.0"?>
<config>
<address_path>default</address_path>
<calendar_path/>
<tasks_path/>
</config>

If the default path doesn’t work then you must change default address path to something like:

<address_path>file:///path/to/your/evolution/address/book</address_path>

Now plug the USB cable cable in your phone (you don’t need to select the phone mode, just leave it). From this part we have a small problem as we need root permission to use the usb and if we sync as root Evolution doesn’t has any entry at all to sync because Evolution is run as normal user. So we must get the permission from udev:

$ lsusb
... Bus 002 Device 003: ID 0fce:d042 Sony Ericsson Mobile Communications AB

Take note of the Bus and Device number, and run the following command:

$ udevinfo -a -p $(udevinfo -q path -n /dev/bus/usb/002/003)
...
ATTRS{product}=="Sony Ericsson W810"
ATTRS{manufacturer}=="Sony Ericsson"
...
ATTRS{idProduct}=="d042"
ATTRS{idVendor}=="0fce"
...

Create a custom file in /etc/udev/rules.d/ called custom.rules and put the following in the file:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fce", ATTRS{idProduct}=="d042", MODE="0660", OWNER="YOUR-NAME-HERE"

using the information from the udevinfo command we ran above. Now we are happy to go !

$ msynctool --sync Sync1

It should looks like this:

Synchronizing group "W810-Evolution"
Member 2 of type evo2-sync just connected
received event dsession
received contact dsession
Member 1 of type syncml-obex-client just connected
All clients connected or error

It’s done :-)

  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • StumbleUpon
  • Ma.gnolia
  • Reddit

Random Posts

Comments 1

  1. Christoph wrote:

    Hey, this article was very helpful since I was struggling to get this to work with IRMC.

    However, did you manage to synchronize the calendar/events? It doesn’t work for me.

    greetings,
    Christoph

    Posted 09 Feb 2008 at 9:39 pm

Post a Comment

Your email is never published nor shared. Required fields are marked *