I tried to get the very same phone working with Opensync some time ago.
After introducing a lot of hacks, I got some communication working but I
couldn't proceed due to lack of time.
There are several issues with the SGH-D600:
1) Like Stefan reported, an AT-Command has to be sent before a
syncml-session can be started ("AT+CPROT=0\r" did the job for me).
2) The Teleca client (which the SGH-D600 is using internally) has some
non-standard behaviour in the OBEX protocol. If I remember correctly, it
requires an empty put final OBEX packet which is incompatible with e.g.
with Nokia mobile phones.
My solution was to add an empty OBEX header (type OBEX_HDR_EMPTY) to the
OBEX packet in function smlTransportObexClientSend().
3) Only syncml version 1.1 is supported. That means that the
syncronization cannot be triggered by sending a SAN-Notification.
Instead, a server alert (type SML_ALERT_TWO_WAY_BY_SERVER) needs to be
sent in client_connect() (syncml-plugin.c).
I don't know the current status of the code base, but back in February I
needed to change the whole logic of how a sycml session is started in
opensync.
4) Furthermore, there are some weird restrictions in the xml protocol.
Some headers are needed or forbidden - I don't remember the details and
gave up somewhere at that point.
I'm sorry that I never managed to get a patch ready. The problem is that
basically all the changes are work-arounds for this obscure
OBEX/syncml-client. As such they must only get active if this client is
identified. In order to avoid contamination of the codebase with a bunch
of hacks, opensync needs some mechanisms to guess the sycml client and
to activate such workarounds on demand.
Regards,
Martin
Am Dienstag, den 20.06.2006, 22:41 +0200 schrieb Stefan Schmidt:
> Hallo,
>
> lately I did some experiments on using opensync with the Samsung SGH-D500,
> which I suppose uses the same syncml protocol as your mobile.
>
> According to
http://www.traud.de/gsm/samsung.htm , the device is capable of
> SyncML over Obex, but as I understood you can't use Obex over Bluetooth
> directly to talk syncml. Rather you need to start a syncml-session via the
> Bluetooth Dialup-Profile (maybe also IRDA or cable connection possible) by
> giving the AT-Command
> AT+CPROT=0
>
>
> I tried hacking the necessary changes for such a connection into libsyncml and
> the syncml-plugin of opensync, but I did not succeed in exchanging data. I
> got a CONNECT message from the phone and then some obex failures (which I
> have not been able to interpret so far).
>
> Due to lack of time I have not yet continued to try some harder, but I'm still
> very interested in getting the phone synchronized... Let me know if you'd
> like my piece of code as a starting point.
>
> With kind regards,
> Stefan Schmidt
>
> Am Dienstag, 20. Juni 2006 20:01 schrieb Markus Wagner:
> > Hi List, hi devs!
> >
> > I just followed the
http://www.opensync.org/wiki/syncml-guide SyncML Guide
> > and I am trying to sync the phone via the syncml-obex-client plugin.
> >
> > When trying to sync, I get the following:
> >
> > markus@swordfish ~/opensync/log $ msynctool --sync syncmlfile
> > Synchronizing group "syncmlfile"
> > The previous synchronization was unclean. Slow-syncing
> > Member 1 of type file-sync just connected
> > Member 2 of type syncml-obex-client had an error while connecting: Request
> > not successfull: 83
> > Member 1 of type file-sync just disconnected
> > All clients have disconnected
> > The sync failed: Unable to connect one of the members
> > Error synchronizing: Unable to connect one of the members
> [...]
>
>
> _______________________________________________
> Opensync-users mailing list
>
Opensync-users@...
>
https://lists.sourceforge.net/lists/listinfo/opensync-users_______________________________________________
Opensync-users mailing list
Opensync-users@...
https://lists.sourceforge.net/lists/listinfo/opensync-users