Tutorial: how to create an iSync plugin

After realising the popularity of the Nokia 3720 Classic iSync plugin that we recently made available, I thought that there might be some interest in a tutorial on how to create your own plugin for other phones.

I therefore decided that I would make a generic developers’ version of the plugin available that may be used for building plugins for other Series 40 Nokia phones (find out which developer platform your phone uses) along with a short tutorial on how to modify it.

Install Apple’s iSync Plug-in Maker

The first thing you need to do is to install Apple’s iSync Plug-in Maker application. It is a part of Apple’s development tools which are included on your Mac OS X install disc (for Mac OS X 10.6 Snow Leopard they are installed by clicking on the Xcode installation package in the “Optional Installs” folder).

Build your iSync plugin

Now you’re ready to start experimenting with creating an iSync plugin for your phone. Open the generic plugin (downloadable below) in the iSync Plug-in Maker application and start by clicking on “Device” in the Settings pane. Make sure that you have paired the phone and computer over bluetooth and click on “Get Device Info”. This will automatically fill out some of the Device identification fields. You need to complete the “Device model name” and “Model identifier” manually however: the Device model name and Model Identifier that we used for the Nokia 3720 Classic plugin was “3720c” and “com.nokia.3720c” respectively so I would recommend that you stick with a similar format.

Most of the settings in the generic plugin should be correct for your Series 40 Nokia phone so you can start by testing the plugin: you can try to run some tests under the “Test” tab in the iSync Plug-in Maker application (but don’t be discouraged if it fails on these tests) and export the plugin to iSync to see how it works in practice. The plugin needs to be installed in the /Library/PhonePlugins folder on your computer (create one if it doesn’t exist). Then launch iSync (you need to quit iSync Plug-in Maker) and add the phone by clicking “Add Device…” under “Devices” in the menubar. I strongly recommend that you backup all your calendar and address book data before syncing to prevent any loss.

Once iSync has successfully synced, check that everything is as it should be on both the phone and computer. If iSync doesn’t sync properly or you discover some errors with the synced data, then you have to go back to the iSync Plug-in Maker application and go through the settings to see what might be wrong. This is the “fumbling in the dark” bit. Go through and experiment with the Settings that you think may be relevant to the error (and there are a lot of basic settings under the “Advanced Options” so don’t leave that out). This is a trial-and-error process so don’t hesitate to experiment!

Create an icon

When you have a plugin that works as you want it to, you you may want to create an icon. The easiest way is to download a photo for your phone from Nokia and convert the image to an icon by using this service. Before doing so though, you may want to make the background of the image transparent. This can easily be done by opening the image in Preview, chose the “Instant Alpha” select tool, select the white background, delete/cut, and save the modified image. Once you have converted the image to an icon, just drop it into the boxes under “Icon” in the Settings pane of the iSync Plug-in Maker application.

And you’re done!

Downloads:

If you wish to share the plugin that you have created with other users, feel free to send an email with your plugin (and name for the credit) and I would be happy to post it here. You can also upload your plugin directly through this form:

Or if you have any questions, feedback, solved some problem/bug or wish to discuss the implementation of some syncing feature, feel free to leave your thoughts as comments below. Hopefully we can learn something from each other and improve the functioning of the iSync plugins.