The Nokia E65 is a Symbian phone (Series 60 v9.1 3rd Edition) and has Bluetooth v1.2, so chances are these instructions would apply to just about any Symbian phone under Ubuntu. In fact, I'm told that this at least partially works for some non-symbian phones.
The directions for other linux distributions would be different regarding getting bluetooth working and getting/installing all the required software, but are otherwise conceptually the same.
Here are the steps:
Then you need to construct the Data Comm account for the internet. T-Mobile can send this to your phone if you have the unlimited internet plan.
On phone: Main Menu -> Tools -> Settings -> Connection -> Access points Options -> New access point Connection name: "T-Mobile Internet" or some such Data bearer: Packet data Access point name: internet2.voicestream.com other APN to try is: wap.voicestream.com (non-EDGE!) User name: none Prompt password: no Password: (none needed) - if that doesn't work try user/pass=guest/guest Authentication: Normal Homepage: None
% apt-get install bluez-utils % /etc/init.d/bluetooth restart % lsusb | grep -i bluetooth (should show the bluetooth device) % hcitool dev (also lists bluetooth devices)
% hcitool scan % hidd --searchOr just type "*#2820#" on your phone. For the rest of this document we'll assume we're given a bluetooth ID of "11:22:BE:EF:44:33". Either way, you need to pair the phone. I had some problems here initiating the connection from the linux box. This command should work:
% hidd --connect 11:22:BE:EF:44:33But unfortunately it wouldn't work on my system. So I initiated the connection on my phone:
Bluetooth -> right arrow (Paired devices) -gt; Options -gt; New paired devices (search) Choose your linux box and then type the pairing keys.If you have the bluetooth-applet installed and running, it should handle everything for you, showing the connection and asking for the pin. If not:
% apt-get install bluez-gnomeIt might be worth getting bluez-pin as another method for handling bluetooth PINs. Here's the unfortunate bit. If the pairing ever gets disconnected, I can't simply reconnect in the bluetooth menu. This may be a problem with my bluetooth adaptor, so your mileage may vary. My "solution" for now is to delete the pairing in the phone and create a new one each time. If anyone comes up with a better solution, I'd love to hear it.
% sdptool search dun Service Name: Dial-Up Networking Service RecHandle: 0x1001e Service Class ID List: "Dialup Networking" (0x1103) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 2 Language Base Attr List: code_ISO639: 0x454e encoding: 0x6a base_offset: 0x100 Profile Descriptor List: "Dialup Networking" (0x1103) Version: 0x0100Note the "Channel: 2" which tells us what channel to bind. You can also avoid browsing
% sdptool browse 11:22:BE:EF:44:33 ....Then to bind the channel (in this case #2) to one of the rfcomm devices (we'll pick 0 here):
% rfcomm bind 0 11:22:BE:EF:44:33 2We can see the binding with:
% rfcomm rfcomm0: 11:22:BE:EF:44:33 channel 2 cleanHere I'm having another unfortunate problem. After each connection attempt, I sometimes see the rfcomm close (it says "closed" instead of "clean" in the above output. I find that releasing the bind and restarting it fixes the problem:
% rfcomm release 0 % rfcomm bind 0 11:22:BE:EF:44:33 2If you want, you can edit the settings in "/etc/bluetooth/rfcomm.conf," set bind to "yes" and give the device and channel for rfcomm0. Then you can put these commands into /etc/init.d/bluetooth and it will automatically bind and release the rfcomm device:
# At the end of the "start)" section rfcomm bind all # At the beginning of the "stop)" section rfcomm release all
% ifconfig eth0 down % ifconfig eth1 down etc..There's probably a better way to handle this routing, but I don't know what it is. Make sure to bring the interfaces back up as needed after shutting down pppd. Now startup pppd:
% pppd call gprsYou should now have a ppp0 interface in your 'ifconfig' output that is up and running. The output should look something like this:
# pppd call gprs Press CTRL-C to close the connection at any stage! defining PDP context... rAT OK ATH OK ATE1 OK AT+CGDCONT=1,"IP","internet2.voicestream.com","",0,0 OK waiting for connect... ATD*99# CONNECT Connected. If the following ppp negotiations fail, try restarting the phone. Serial connection established. using channel 1 Using interface ppp0 Connect: ppp0 <--> /dev/rfcomm0 etc....You can hit control-c on the pppd process and it will shut down the connection, then you can release the rfcomm binding.
obexfs#-b11-22-BE-EF-44-33\040-B11 /mnt/e65 fuse user,noauto 0 0In this case we change the address to use '-' and put it after the -b and before the \040, and then put the channel (in this case 11) after the -B. The use of whitespace is important
root% obexfs -b11:22:BE:EF:44:33 -B11 /tmp/e65 root% fusermount -u /tmp/e65
Back to Solutions.