Difference between revisions of "GPS (GP-20U7) + Raspberry Pi 2"

From ESE205 Wiki
Jump to: navigation, search
Line 1: Line 1:
 
=Wiring GPS=
 
=Wiring GPS=
 +
[[File:13740-02.jpg|200px|thumb|left|Timeline]]
 
#'''Voltage and Ground''' - There will be 3 wires, one for voltage usually indicated by VCC which is red and one for ground indicated by GND which is black. Connect the VCC to the 3.3V pin and the GND to the GND pin.
 
#'''Voltage and Ground''' - There will be 3 wires, one for voltage usually indicated by VCC which is red and one for ground indicated by GND which is black. Connect the VCC to the 3.3V pin and the GND to the GND pin.
 
#'''Locate serial pin on GPS''' - As with any GPS we need to locate the serial connection for the GPS. There should be one more serial wire connected to the rx or tx pin of the GPS, it should be tx if you wish to receive GPS data on the Raspberry Pi.  
 
#'''Locate serial pin on GPS''' - As with any GPS we need to locate the serial connection for the GPS. There should be one more serial wire connected to the rx or tx pin of the GPS, it should be tx if you wish to receive GPS data on the Raspberry Pi.  
 
#'''Connect to corresponding serial pin on Raspberry Pi''' - Once you know which GPS serial lead you have, connect it to the opposite serial pin on the Raspberry Pi so they may communicate data. (rx to tx,  tx to rx)
 
#'''Connect to corresponding serial pin on Raspberry Pi''' - Once you know which GPS serial lead you have, connect it to the opposite serial pin on the Raspberry Pi so they may communicate data. (rx to tx,  tx to rx)
 +
[[File:RP2 Pinout.png|200px|thumb|left|Raspberry Pi 2 Model B pin layout]]
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 +
<br>
 
=Connecting GPS to Serial Port=
 
=Connecting GPS to Serial Port=
#'''Open Serial Port''' - Using a series of terminal commands disable the serial port and restart the Raspberry Pi.
+
'''Open Serial Port using terminal commands below:'''
#'''Configure for GPS and connect''' - Match the baud rate, parity, stop bits, and bit size to the data sheet values provided using python code.
+
<blockquote>
 +
<code>sudo rasps-config</code><br>
 +
Select 8, A8, no, ok, finish<br>
 +
Reboot<br>
 +
<code>dmesg | grep tty</code><br>
 +
</blockquote>
 +
'''Configure for GPS by matching the baud rate, parity, stop bits, and bit size to the <span class="plainlinks"> [https://cdn.sparkfun.com/datasheets/GPS/GP-20U7.pdf data sheet]</span> values provided.'''
 +
<source lang="python">
 +
def set_up_gps():
 +
    ser = serial.Serial(
 +
        port = '/dev/ttyAMA0',
 +
        baudrate = 9600,
 +
        parity = serial.PARITY_NONE,
 +
        stopbits = serial.STOPBITS_ONE,
 +
        bytesize = serial.EIGHTBITS,
 +
        timeout=1
 +
        )
 +
    counter=0
 +
    return ser
 +
</source>
  
  

Revision as of 17:31, 3 May 2016

Wiring GPS

Timeline
  1. Voltage and Ground - There will be 3 wires, one for voltage usually indicated by VCC which is red and one for ground indicated by GND which is black. Connect the VCC to the 3.3V pin and the GND to the GND pin.
  2. Locate serial pin on GPS - As with any GPS we need to locate the serial connection for the GPS. There should be one more serial wire connected to the rx or tx pin of the GPS, it should be tx if you wish to receive GPS data on the Raspberry Pi.
  3. Connect to corresponding serial pin on Raspberry Pi - Once you know which GPS serial lead you have, connect it to the opposite serial pin on the Raspberry Pi so they may communicate data. (rx to tx, tx to rx)
Raspberry Pi 2 Model B pin layout

















Connecting GPS to Serial Port

Open Serial Port using terminal commands below:

sudo rasps-config
Select 8, A8, no, ok, finish
Reboot
dmesg | grep tty

Configure for GPS by matching the baud rate, parity, stop bits, and bit size to the data sheet values provided.

def set_up_gps():
     ser = serial.Serial(
        port = '/dev/ttyAMA0',
        baudrate = 9600,
        parity = serial.PARITY_NONE,
        stopbits = serial.STOPBITS_ONE,
        bytesize = serial.EIGHTBITS,
        timeout=1
        )
     counter=0
     return ser