OpenSync

What is OpenSync?

A great introduction in the form of a presentation from FOSDEM 2007

Example: Syncing a Nokia 5500 phone to filesystem trough SyncML, OBEX and a USB-cable

First, backup you phone data using a Windows machine and Nokia's PC Suite. The make a new sync profile in your phone: Main menu > Connections > Syncing > Menu > New profile. Set its settings to name: Linux, Server: Linux.

Connect you phone to the computer using a USB cable and choose "PC Suite mode".

Open a terminal and run:

  • sudo apt-get install opensync-plugin-evolution opensync-plugin-file opensync-plugin-syncml opensyncutils multisync-tools multisync0.90

Check what user group the USB device is

 ls -la /dev/ttyA*
 crw-rw---- 1 root dialout 166, 0 2008-02-02 16:11 /dev/ttyACM0

..and check that your username is in the group, so that your user can write to the device.

 cat /etc/group | grep dial
 dialout:x:20:cupsys,otto,hannele

Also you need to grant access based on the USB device ID:

$ lsusb
Bus 004 Device 003: ID 13fe:1a00  
Bus 004 Device 001: ID 0000:0000  
Bus 003 Device 002: ID 046d:c016 Logitech, Inc. M-UV69a Optical Wheel Mouse
Bus 003 Device 001: ID 0000:0000  
Bus 001 Device 002: ID 0421:043f Nokia Mobile Phones 

To add the udev rule by running sudo nano /etc/udev/rules.d/40-permissions.rules and adding to the last line:

BUS=="usb", SYSFS{idVendor}=="0421", SYSFS{idProduct}=="043f", MODE="0660", GROUP="users"

Then run sudo udevcontrol reload_rules (if command udevcontrol is not found, try sudo udevadm control --reload-rules)

make directory for sync files:

 cd ~
 mkdir sync

Run multisync (GTK-gui for syncing):

  • multisync0.90

Using the gui, add groupd "phone2nokia". Then add member "syncml-obex-client" and set its conf to:

 <config>
  <interface>0</interface>
  <identifier>Linux</identifier>
  <version>2</version>
  <wbxml>1</wbxml>
  <username></username>
  <password></password>
  <type>5</type>
  <usestringtable>1</usestringtable>
  <onlyreplace>0</onlyreplace>
  <recvLimit>10000</recvLimit>
  <contact_db>Contacts</contact_db>
  <calendar_db>Calendar</calendar_db>
  <note_db>Notes</note_db>
 </config>

Then add member file-sync

 <config>
  <path>/home/'''USER'''/sync/</path>
  <recursive>FALSE</recursive>
 </config>

On the group main page disable syncing of notes and data, since they do not exist.

Finally run "refresh" to sync.

See also

OpenSync (last edited 2010-09-15 12:47:38 by gacq)