If you are confuse with many tutorial about how to connect your Windows Mobile 6.5 (WM65) device to your Linux box, then we have a same problem. I’m struggling to solved this problem for three days with googling and testing. And luckily now it works!
Samsung Omnia Pro (GT-B7320), Windows Mobile 6.5, and Fedora 12.
- Please backup your contacts to free sync service such as Google Sync (highly recommended). After you do the backup, please remove ActiveSync partnership with this service.
- Make sure you have installed this packages (or equivalent for your Linux distros): synce-kpm, multisync-gui, sync-hal, synce-sync-engine, libopensync-plugin-evolution2, libopensync-plugin-synce-wm5 (not libopensync-plugin-synce because it’s for older devices) and all dependencies.
- If you are using firewall, make sure you allow connection from 169.254.2.0/24 (RNDIS interface default). In iptables, we can do this with: iptables -A INPUT -s 169.254.2.0/24 -j ACCEPT. Wrong firewall configuration may block sync-engine and became a problem for synce-kpm.
synce-kpm (Files and Software)
- Connect the device using proper data cable.
- Run synce-kpm! At first run, you will be asked about making device’s partnership. Just create a partnership with any name you like, select available field you’d like to synchronize and you’re done!
- Make sure your devices detected and you have no problem with synce-kpm.
Evolution Sync (Contacts, Tasks and Calendar)
- Run multisync-gui and create a group with two member.
- First member using evo2-sync plugin and the second member using synce-opensync-plugin (and magically without to change any configuration).
- After all done, just click Refresh and your device will synchronized with Evolution.
I have a problem with synchronizing from my device. I could changed the data (Contacts or Tasks) in my Evolution and synchronized well to my device, but didn’t work in reverse!
The problem is caused by a bug in opensync.py just apply this patch if you have a same problem:
--- opensync.py.orig 2010-05-06 11:39:27.990099056 +0800 +++ opensync.py.new 2010-05-06 11:39:27.968098490 +0800 @@ -163,7 +163,11 @@ class OSyncChange(object): thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr def __init__(self, obj = None): - this = _opensync.new_OSyncChange(obj) + # this = _opensync.new_OSyncChange(obj) + if obj: + this = _opensync.new_OSyncChange(obj) + else: + this = _opensync.new_OSyncChange() try: self.this.append(this) except: self.this = this __swig_destroy__ = _opensync.delete_OSyncChange