After some frustration I got some great help from HanishKVC on getting things going. It seems a lot depends on gnome, and figuring out how to do bluetooth in XFCE, etc., proves difficult.
First I enabled bluetooth on my phone (via Settings -> Connectivity) and enabled it on my laptop:
magnum:~# echo enable > /proc/acpi/ibm/bluetooth
I was able to see the phone:
gsf@magnum:~$ hcitool scan
Scanning ...
00:1B:AF:D5:CA:1C Nokia 6555b
gsf@magnum:~$
I installed obexftp and tried to check some files, but failed:
gsf@magnum:~$ obexftp -b 00:1B:AF:D5:CA:1C -l
Browsing 00:1B:AF:D5:CA:1C ...
Channel: 10
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect
gsf@magnum:~$
Each time, the phone asked for a passcode/passkey and I put in the one I had in
/etc/bluetooth/hcid.conf ("1234"), but it failed to pair. I was finally able
to get past it by building passkey-agent (note that on a really stripped-down
machine I had to install libdbus-1-dev for the make to work):
magnum:~# cd /usr/share/doc/bluez-utils/examples/
magnum:/usr/share/doc/bluez-utils/examples# gunzip passkey-agent.c.gz
magnum:/usr/share/doc/bluez-utils/examples# make
cc `pkg-config --libs --cflags dbus-1` -DDBUS_API_SUBJECT_TO_CHANGE
-DVERSION="\"unknown\"" -o passkey-agent passkey-agent.c
magnum:/usr/share/doc/bluez-utils/examples# mv passkey-agent /usr/bin/
magnum:/usr/share/doc/bluez-utils/examples#
I also had to set a default key:
gsf@magnum:~$ passkey-agent --default 1234 &
[1] 18890
gsf@magnum:~$
When I tried again, the passcode worked:
gsf@magnum:~$ obexftp -b 00:1B:AF:D5:CA:1C -l
Browsing 00:1B:AF:D5:CA:1C ...
Channel: 10
Connecting...Passkey request for device 00:1B:AF:D5:CA:1C
done
Receiving "(null)"...\<?xml version="1.0"?>
<!DOCTYPE folder-listing SYSTEM "obex-folder-listing.dtd"
[ <!ATTLIST folder mem-type CDATA #IMPLIED> ]>
<folder-listing version="1.0">
<folder name="Graphics" created="20060101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Themes" created="20060101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Tones" created="20060101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Video clips" created="20060101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Music files" created="20060101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Images" created="20070101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Audio" created="20070101T000000" user-perm="R" mem-type="DEV"/>
<folder name="Received files" created="20070101T000000" user-perm="R" mem-type="DEV"/>
</folder-listing>
done
Disconnecting...done
gsf@magnum:~$
Once the device is paired, I no longer need the passkey-agent to be running to connect.
To pull down multiple files from my phone, I use a bash command such as this:
gsf@magnum:~$ for a in `seq 10 38`; do obexftp -b 00:1B:AF:D5:CA:1C -g \
Images/Image0$a.jpg; done