Connecting a bluetooth cellphone to your Linux desktop

Part of these instructions were taken from this tutorial over at Guru Labs. Thanks guys!

Make sure you have the following packages installed on your Fedora Core machine (I'm actually not positive you need all of these, but I have them all installed on my machine and I know it works for me):
gnome-bluetooth-libs-0.5.1-12
gnome-bluetooth-0.5.1-12
bluez-utils-2.15-7
bluez-libs-2.15-1
bluez-utils-cups-2.15-7
bluez-hcidump-1.18-1
bluez-pin-0.24-2

Plug in your bluetooth adapter into a spare USB port on your FC4 box (I'm using a Belkin F8T001v -- 100 meter Bluetooth USB Adapter)
Open a terminal window
Now enter the following, one at a time:
su root
hcitool dev
This should display something like this:
Devices:
hci0 XX:XX:XX:XX:XX:XX
If the above line doesn't display, your USB Bluetooth Adapter isn't being recognized by the system. You need to fix this before you go further.

You'll need to edit your /etc/bluetooth/hcid.conf file.
1) Edit the pin_helper line to look like this:
pin_helper /etc/bluetooth/feed-pin.sh

2) Remove the comments from the auth and encrypt lines at the bottom of the file:
auth enable;
encrypt enable;

Create the /etc/bluetooth/feed-pin.sh file, with this content:
#!/bin/sh
echo "PIN:XXXX" (Replace XXXX with any 4 digit number you like)

chmod 700 /etc/bluetooth/feed-pin.sh

Restart Bluetooth services
service bluetooth restart

Enable Bluetooth on your V550, or if it's already enabled, turn on "Find Me" in the Bluetooth area of the "Connection" Settings area.

Now run the following command while your phone is in "Find Me" mode:
hcitool scan
This will, hopefully, return the Bluetooth ID of your cellphone. Copy down this ID, you'll need it again.

Now run the following command to establish a connection between your Linux box and your cell phone. You can view active connections with the hcitool con command.
hcitool cc XX:XX:XX:XX:XX:XX
At this point, your Motorola V550 cellphone should ask you if you wish to accept an incoming Bluetooth connection from your Linux box. Accept, and enter the same PIN number you entered in the /etc/bluetooth/feed-pin.sh file on your Motorola phone.

In order to allow incoming connections from the phone to the USB adapter on your Linux box, you should use the bluez-pin application:
bluez-pin in XX:XX:XX:XX:XX:XX (Substitute the X's for your phone's ID)
I also ran the bluez-pin application for outgoing connections as well
bluez-pin out XX:XX:XX:XX:XX:XX (Substitute the X's for your phone's ID)

If all that worked, you can celebrate, because the difficult part is done.

Now it's time to copy a picture off of your cellphone and onto your Linux desktop. Use your cellphone to browse to a saved picture.

On your Linux box, under the "System Tools" menu, there should be a Bluetooth File Sharing option. Select this, and you should see a small icon in your taskbar, indicating that your computer is ready to recieve a file. The icon on the taskbar will say "Ready for Bluetooth file transfers" when you hover your mouse over it. If you don't have this option, you can manually start the process by running /usr/bin/gnome-obex-server. Note that you don't need to run this manually if the "Bluetooth File Sharing" option was visible in your menu, and executed properly.

From the saved pictures area on your cellphone, select the "Copy" option by pressing the function button on the V550 (middle button at very top of phone) when you have the picture you wish to send highlighted. If you don't see your Linux box already listed in the "Object Exchange" menu, you can select Look for Devices. Hopefully your Linux box will come up when you do this. You may need to restart the Bluetooth File Sharing application if your machine doesn't get picked up.

After you select your Linux box, just follow the prompts on your desktop and your image should show up on your computer.

Finished!

As always, I didn't document this process as I went along, so this is mostly just from memory. If something above isn't required, or you have an easier way to accomplish this same task, please post a comment below to help everyone out. Thanks...