The following instructions are not meant to be a 'how to' but a 'how I did' and is based on Arjan van de Ven's website
http://www.fenrus.org/tomtom/ I have added a couple extra steps including modifying rfcomm.conf, registering the DUN service and specifying the bluetooth channel for DUN.
These notes assume you have bluetooth already present and operational as was the case with my Ubuntu 7.10 system.
Install bluetooth support and confirm you can see your Bluetooth device.
# hcitool dev
Devices:
hci0 00:02:5B:01:0D:CB
Confirm you can see your TomTom
# hcitool scan
Scanning ...
00:13:6C:9C:A0:5A TomTom ONE XL
Change your bluetooth device's class to report itself as a mobile phone offering Telephony services and confirm settings.
# hciconfig hci0 class 0x500204 (I borrowed this class from my Nokia phone)
# hciconfig hci0 class
hci0: Type: USB
BD Address: 00:02:5B:01:0D:CB ACL MTU: 384:8 SCO MTU: 64:8
Class: 0x500204
Service Classes: Telephony
Device Class: Phone, Cellular
To have the device class retained as the default HCI configuration edit the file '/etc/bluetooth/hcid.conf'
Write this file into '/etc/ppp/tomtom.sh' and ensure it has execute permissions.
#!/bin/sh
/usr/sbin/chat -e -f /etc/ppp/tomtom.chat
Write this file into '/etc/ppp/peers/tomtom'
noauth # Don't require authentication
local # This is needed because it's not a real serial line
noipdefault # Don't use the local hostname to determine the local IP used
proxyarp # Proxy ARP connections
nodefaultroute # Don't use the default route
noipx # Don't use the IPX protocol
idle 0 # Set an unlimited disconnect timeout
# Change the next three lines for your setup
#
:
#The first ip needs to be your computer, the second ip needs to be a non-used ip in your network
192.168.10.204:192.168.10.214
# ms-dns
# this needs to be a real dns server, look in /etc/resolv.conf
ms-dns 192.231.203.132
# netmask
netmask 255.255.255.0
Write this file into '/etc/ppp/tomtom.chat'
ATZ OK
ATD CONNECT
Write/Edit the file '/etc/bluetooth/rfcomm.conf'
#
# RFCOMM configuration file.
#
rfcomm0 {
# Automatically bind the device at startup
bind no;
# Bluetooth address of the device
# This is the address of my TomTom, put your own here!
device 00:13:6C:9C:A0:5A;
# RFCOMM channel for the connection
# This is appears to be the channel used for DUN
channel 2;
# Description of the connection
comment "Example Bluetooth device";
}
Start the Dial-Up Networking daemon. I found I needed to add the channel option.
# dund --dialup --listen --channel 2 call tomtom connect /etc/ppp/tomtom.sh
Register Dial-Up Networking service with bluetooth.
# sdptool add dun
Dial-Up Networking service registered
You can use '# sdptool records local' to see all local bluetooth services now registered.
You will need to add these commands to turn your PC into a router for the connection.
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Now you are ready to connect with your TomTom, this is the tedious part as it has to be done manually.
Manage Phones -> Yes (search for phones) -> (select you linux machine) -> Continue -> Yes
Select your phone model: -> Other
Select your country: -> Other
Do you want to set up your wireless data connection manually? -> YES
Access point name: -> OK
Username: -> OK
Password: -> OK
Do you want to obtain your IP address automatically (DHCP) or do you want to set up your IP address manually? -> Automatic
Do you want to obtain your DNS server address automatically or do you want to set up your DNS server address manually? -> Automatic
Dial: -> OK
Login script: -> OK
Yes to all ensuing prompts and you are done!!!!