I'm trying to connect a SONY DSCFX77 (Bluetooth capable) camera to a daemon running on a linux box. Using the OpenOBEX and a modified OBEX_test found in openobex-apps-1.0.0
Using HCIdump I find out that the following packet is sent to the camera:
< ACL data: handle 41 flags 0x02 dlen 15
L2CAP(d): cid 0x0042 len 11 [psm 3]
RFCOMM(d): UIH: cr 1 dlci 2 pf 0 ilen 7 fcs 0x9a
80 00 07 11 00 04 00
And then the following received:
> ACL data: handle 41 flags 0x02 dlen 15
L2CAP(d): cid 0x0040 len 11 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 2 pf 0 ilen 7 fcs 0x40
D3 00 07 10 00 00 00
D3 stands for "ServiceNotAvailable" (but is unknown in OpenOBEX) and ALSO, note the difference in the fourth byte: 11 in my connect packet, and 10 in the response packet.
The way I see it, is that OpenOBEX tries to connect with OBEX version 1.1, while the camera runs 1.0 and thus replies with a D3.
Now my question is this, how likely is it that I am correct about this, I can imagine the camera is not forwards compatible. I have tried hardcoding the fields value to 0x10 in stead of 0x11 but strange enought this didn't change a thing ????
Has anyone had similar problems, because I really can't get this thing to successfully connect!
Thanks in advance
Ok, I have been trying to fix this for a while now, up to the level where I removed anything OpenOBEX from my computer, took the source, altered 0x11 in 0x10, compiled and installed.
Now it sends packets with the version byte set to 10, but still the camera responds with 0xD3 (ServiceUnavailable).
I give up.