Tuxas home pageThis is an example, how to get an Internet connection up on a SHARP SL-C700 Linux PDA, using a GSM/GPRS mobile phone with a Bluetooth interface. It is quick and dirty approach here, as the the OpenZaurus C700 software is still in an experimental stage anyway.
The example is based on a GSM mobile phone (Ericsson T68) and the Anycom Compact PCMCIA Bluetooth card. The installation is on top of the experimental Openzaurus.org C700 operating system. The Bluetooth driver has been taken from two other sources, see references below.
References:
- Bluetooth
http://homepage.mac.com/mokjpn/Zaurus/BT.html
http://bluez.sourceforge.net
- OZ:
http://www.openzaurus.org/official/experimental/c700/
http://papillon.ex.nii.ac.jp/zaurus/Members/Laurent/OZ_Migration
- GPRS Data account settings:
http://www.taniwha.org.uk/gprs.html
http://www.psg.com/~randy/gprs-ppp.html
Flash your C700 with Openzaurus/Opie. Copy all files in this directory to /mnt/card or /tmp on your C700 and insert the Anycom Bluetooth card into the compact pcmcia card slot. Chang to this directory and execute:
ipkg remove bluez-libs bluez-sdp bluez-pan bluez-utils ipkg install bluez-zaurus_2.3b_arm.ipk cp /etc/modules.conf /etc/modules.conf.save ipkg -force-overwrite install bluez-slc700_2.3-1_arm.ipk cat /etc/modules.conf.save >> /etc/modules.conf rm -r /etc/rc.d cp btstart /etc/init.d cp bluetooth /etc/init.d chmod +x /etc/init.d/btstart chmod +x /etc/init.d/bluetooth cp bluepin /usr/bin cp hcid.conf /etc/bluetooth cp rfcomm.conf /etc/bluetooth echo "0000" > /etc/bluetooth/pin rm -r /lib/modules/2.4.6-rmk1-np2-embedix/ chown -R root.root /lib/modules/2.4.18-rmk7-pxa3-embedix/kernel/ /sbin/depmod -a
preinstall basic PPP scripts
[ ! -d /etc/ppp/peers ] && mkdir /etc/ppp/peers [ ! -d /etc/chatscripts ] && mkdir /etc/chatscripts cp btgprs /etc/ppp/peers cp t68igprs /etc/chatscripts /etc/init.d/pcmcia restart # or reboot ##################################### /etc/init.d/btstart
Bluetooth should work now. To test, enable Bluetooth recognition mode on your phone and execute:
hcitool scan
This should return the Bluetooth hardware address and the name of your phone, for example: "00:80:37:B1:AF:6D T68i"
Now configure the phone and ISP specific settings:
Edit the GPRS profile in your phone, and remember the CID number of the profile. On my phone the APN is web.vodafone.de and it has CID=3. Edit /etc/chatscripts/t68igprs if you have a different CID. To make the T68i known to the C700, edit /etc/init.d/btstart: Un-comment rfcomm line and insert your phones hardware address.
Fix a bug in /etc/ppp/options: Comment in the "noipx" option.
Note: With OZ, this does not always work for some reasons yet unclear to me. After scanning with the Bluetooth Manager Opie application in the Settings menu, it usually works:
rfcomm 0 00:80:37:B1:AF:6D 1
Enter PIN "0000" on the phone and connect to the Internet:
pon btgprs
use an application:
ping your_favourite_server
Note: suspend/restore of the C700 Bluetooth interface does not work right now as this to my understanding requires device driver support, which seems to have been implemented beginning in 2.4.20, but not in the current C700 2.4.18 kernel. You must physically remove and insert the Anycom card after a resume from the suspend mode as a workaround.