A different direction for Ubuntu



Lets step back from Conduit vs OpenSync for now because they are not the
same thing and that makes comparison potentially flamey. Every bit of
time I can manage is split between Conduit and SynCE (mainly SynCE
support...). And I know the same is true of dgollub and
opensync/libsyncml. I am keen for convergence, and I know dgollub is. So
lets see what happens. Right now I feel both opensync and Conduit have
momentum so i'd expect good things.

High on my list - as in as soon as i've finished up some infrastructure
changes that i need for opensync and gconf sync (hopefully with results
to show at Linux Conf AU) is opensync phase 1 and 2. So for now, lets
look at parts of the problem that are debate free.

There is one place where Ubuntu can really help. I think the important
thing is to help out projects like SynCE. Cos even if you make
conduit/opensync rock you still have a major problem because it is *NOT*
a case that if you plug in your phone then the opensync provider can
just work. Lots of manual plumbing starting connections is often needed.
This is not something that either conduit or opensync have really
catered for.

So this email applies to SynCE mostly, but I know other similar magic is
needed elsewhere (I have no idea how to get my P900 to sync.. *growls at
PPP manual foo* i really do not want to set up PPP chat stuff by
hand!!).

Jonnylamb has packaged a large chunk of the current SynCE release which
should aid you in the task. This plea is more about integration work.


usb-rndis-lite is a kernel driver that supports WM5 and WM6 windows
phones. Its also available as a kernel patch. This patch has no known
regressions, and works for all but our Samsung users. A patch for them
is available but I really need help from a real kernel hacker 'cos a
kernel dev i am not and i know i made a complete mess of it :) Until we
get wider testing we can't upstream it :-(

This is needed if you want this stuff to just plug and play. Sadly, if
you plug and play right after installing the driver your NetworkManager
will disconnect your wifi and connect to the phone instead.


For WM2003 and WM5/6 devices in legacy mode, a ttyUSB* should appear. A
PPP connection is needed for the duration of the connection. Note that a
patch is needed for WM2003 smartphones. If i recall correctly, the patch
doesn't work for both kinds of device so will need work...


For bluetooth, a variety of magic is needed. See:
http://synce.sourceforge.net/synce/bluetooth.php
I fear it is somewhat.. old fashioned. And how do we integrate that with
the desktop?


Once a network connection is established, odccm is needed. This sends
various proprietary commands to the device so it knows it is connected
and also sends keep-alive packets. Ideally odccm should only run when
needed, but can't be added to startup.


Sync-Engine is needed to actually support the AirSync and various other
proprietary sync protocols. Ideally it should be dbus activated, but
right now it might just need to be running all the time the device is
connected.


Sync-Engine needs custom patches to a wbxml support lib and provides
python bindings to said lib. Those patches have been sent upstream but
the project seems quite stuck at the moment. Ubuntu will either need to
carry our changes or help us speak WBXML some other way.


DTPT.py is a script which enables the device to access the internet via
your PC's internet connection. It's not needed for syncing, but
auto-starting this for the duration that your PDA is plugged in should
be considered as we get *lots* of requests about it.


As discussed, C-code that uses libsynce/librapi to probe the device and
update HAL via a callout is needed. A lot of this could perhaps be
lifted from odccm (and part of odccm deprecated...).


There are various other tools that should be considered for inclusion,
including a GnomeVFS module for browsing your device in nautilus.


If we could work to get all this working in a nice integrated way then
there will be a lot of happy users - SynCE, Ubuntu, Opensync and Conduit
alike. 

And some parts, like establishing PPP connections while a relevant
ttyUSB0 is present, will help support SyncML and other devices. Dgollub
- perhaps you can make suggestions. Like the bluetooth stuff, which i'm
not really familiar with.

John




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]