Difference between revisions of "GPS"

From Pandora Wiki
Jump to: navigation, search
(USB GPS)
(formating)
Line 1: Line 1:
 
== Setting up your GPS ==
 
== Setting up your GPS ==
 
=== Bluetooth GPS ===
 
=== Bluetooth GPS ===
First, turn on Bluetooth on your Pandora. Now, open up terminal and do:
+
First, turn on [[Bluetooth]] on your Pandora. Now, open up terminal and do:
<pre>hcitool scan</pre>
+
<source lang="bash">hcitool scan</source>
 
This scans for bluetooth devices. Find your GPS device on the list and make a note of its MAC address (it is in the form xx:xx:xx:xx:xx:xx).  
 
This scans for bluetooth devices. Find your GPS device on the list and make a note of its MAC address (it is in the form xx:xx:xx:xx:xx:xx).  
  
 
Now you want to find the channel for your bluetooth GPS, run the command (replacing the example MAC address with your own):
 
Now you want to find the channel for your bluetooth GPS, run the command (replacing the example MAC address with your own):
<pre>sdptool browse xx:xx:xx:xx:xx:xx</pre>
+
<source lang="bash">sdptool browse xx:xx:xx:xx:xx:xx</source>
  
 
Now you need to edit ''/etc/bluetooth/rfcomm.conf''. In this example I use nano, but you can use whatever editor you like. Do:
 
Now you need to edit ''/etc/bluetooth/rfcomm.conf''. In this example I use nano, but you can use whatever editor you like. Do:
<pre>sudo nano /etc/bluetooth/rfcomm.conf</pre>
+
<source lang="bash">sudo nano /etc/bluetooth/rfcomm.conf</source>
  
 
Fill in ''rfcomm.conf'' using the following template and the information you found using the steps listed above:
 
Fill in ''rfcomm.conf'' using the following template and the information you found using the steps listed above:
  
<pre>
+
<source lang="apache">
 
rfcomm0 {
 
rfcomm0 {
 
bind no;
 
bind no;
Line 20: Line 20:
 
comment “GPS”;
 
comment “GPS”;
 
}
 
}
</pre>
+
</source>
  
 
Now connecting to your GPS is as simple as running the command:
 
Now connecting to your GPS is as simple as running the command:
<pre>sudo rfcomm connect 0</pre>
+
<source lang="bash">sudo rfcomm connect 0</source>
  
 
=== USB GPS ===
 
=== USB GPS ===
Line 31: Line 31:
  
 
The Linux kernel shipped with the pandora dosn't properly recognize some bluetooth/usb gps's that have buggy usb descriptors, if you see something like this in dmesg:
 
The Linux kernel shipped with the pandora dosn't properly recognize some bluetooth/usb gps's that have buggy usb descriptors, if you see something like this in dmesg:
 
+
<pre>
cdc_acm: Zero length descriptor references
+
cdc_acm: Zero length descriptor references
cdc_acm: probe of 2-1:1.0 failed with error -22
+
cdc_acm: probe of 2-1:1.0 failed with error -22
 +
</pre>
  
 
and you do not get a /dev/ttyACM0, then you have a buggy gps. There is a kernel patch to work around this, which can be found [http://www.mail-archive.com/debian-kernel@lists.debian.org/msg44773.html here].
 
and you do not get a /dev/ttyACM0, then you have a buggy gps. There is a kernel patch to work around this, which can be found [http://www.mail-archive.com/debian-kernel@lists.debian.org/msg44773.html here].
Line 42: Line 43:
 
=== Verify that you are receiving data ===
 
=== Verify that you are receiving data ===
 
You can check this by opening up the terminal and running (for example):
 
You can check this by opening up the terminal and running (for example):
<pre>
+
<source lang="bash">
 
cat /dev/rfcomm0
 
cat /dev/rfcomm0
</pre>
+
</source>
  
 
== Software ==
 
== Software ==
Line 51: Line 52:
 
===== Installation =====
 
===== Installation =====
 
Installing gpsd is a requirement for using many GPS related programs. It can be installed through opkg, however the version currently in the Angstrom repos is too new for some applications (specifically tangoGPS). However if you want to install it this way you can by running:
 
Installing gpsd is a requirement for using many GPS related programs. It can be installed through opkg, however the version currently in the Angstrom repos is too new for some applications (specifically tangoGPS). However if you want to install it this way you can by running:
<pre>sudo opkg install gpsd</pre>
+
<source lang="bash">sudo opkg install gpsd</source>
  
 
Now if you do want the older version which does work with tangoGPS, you must download it from [http://www.angstrom-distribution.org/feeds/2008/ipk/glibc/armv7a/base/gpsd_2.38-r0.1_armv7a.ipk here]. Put that file somewhere convenient, like the root of an SD card. You can still use opkg to install it, for example if you have it on the root of the right hand side SD card:
 
Now if you do want the older version which does work with tangoGPS, you must download it from [http://www.angstrom-distribution.org/feeds/2008/ipk/glibc/armv7a/base/gpsd_2.38-r0.1_armv7a.ipk here]. Put that file somewhere convenient, like the root of an SD card. You can still use opkg to install it, for example if you have it on the root of the right hand side SD card:
<pre>sudo opkg install /media/mmcblk1p1/gpsd_2.38-r0.1_armv7a.ipk</pre>
+
<source lang="bash">sudo opkg install /media/mmcblk1p1/gpsd_2.38-r0.1_armv7a.ipk</source>
  
 
=== TangoGPS ===
 
=== TangoGPS ===
Line 61: Line 62:
 
===== Installation =====
 
===== Installation =====
 
Until someone makes a PND, you can use opkg:
 
Until someone makes a PND, you can use opkg:
<pre>sudo opkg install tangogps</pre>
+
<source lang="bash">sudo opkg install tangogps</source>
  
 
You should now find TangoGPS in the "other" category of the menu.
 
You should now find TangoGPS in the "other" category of the menu.

Revision as of 15:36, 20 April 2011

Setting up your GPS

Bluetooth GPS

First, turn on Bluetooth on your Pandora. Now, open up terminal and do:

hcitool scan

This scans for bluetooth devices. Find your GPS device on the list and make a note of its MAC address (it is in the form xx:xx:xx:xx:xx:xx).

Now you want to find the channel for your bluetooth GPS, run the command (replacing the example MAC address with your own):

sdptool browse xx:xx:xx:xx:xx:xx

Now you need to edit /etc/bluetooth/rfcomm.conf. In this example I use nano, but you can use whatever editor you like. Do:

sudo nano /etc/bluetooth/rfcomm.conf

Fill in rfcomm.conf using the following template and the information you found using the steps listed above:

rfcomm0 {
bind no;
device xx:xx:xx:xx:xx:xx;
channel 1;
comment “GPS”;
}

Now connecting to your GPS is as simple as running the command:

sudo rfcomm connect 0

USB GPS

Someone with a USB GPS will need to fill in this section

A usb gps will use '/dev/ttyUSB0' or '/dev/ttyACM0' instead of '/dev/rfcomm0', apart from that it's the same.

The Linux kernel shipped with the pandora dosn't properly recognize some bluetooth/usb gps's that have buggy usb descriptors, if you see something like this in dmesg:

cdc_acm: Zero length descriptor references
cdc_acm: probe of 2-1:1.0 failed with error -22

and you do not get a /dev/ttyACM0, then you have a buggy gps. There is a kernel patch to work around this, which can be found here.

Verify that you are receiving data

You can check this by opening up the terminal and running (for example):

cat /dev/rfcomm0

Software

gpsd

Installation

Installing gpsd is a requirement for using many GPS related programs. It can be installed through opkg, however the version currently in the Angstrom repos is too new for some applications (specifically tangoGPS). However if you want to install it this way you can by running:

sudo opkg install gpsd

Now if you do want the older version which does work with tangoGPS, you must download it from here. Put that file somewhere convenient, like the root of an SD card. You can still use opkg to install it, for example if you have it on the root of the right hand side SD card:

sudo opkg install /media/mmcblk1p1/gpsd_2.38-r0.1_armv7a.ipk

TangoGPS

tangoGPS running on a Pandora

Be aware that by default data for the maps are stored into your home directory (on the NAND if you're not running off an SD card).

Installation

Until someone makes a PND, you can use opkg:

sudo opkg install tangogps

You should now find TangoGPS in the "other" category of the menu.