How to add the GPS/GNSS-receiver to Raspberry Pi

Making your Raspberry Pi work as Stratum One requires some kind of reference clock like GPS/GNSS. You can either buy a HAT or find your solder iron and modify a GPS-drone puck yourself.

Your GPS-puck MUST be able to convert from 5.0 Volt to 3.3. in this setup as we want 3 Volt on the TXD and RXD pins only.

How to wire the RasPi?

From the very start I never had any smart connections but i big pile of old RS-232 serial interfaces from a PC. I simply cut the cable in two half and the sockets goes nearly directly into my RasPi pins 1 to 2 to 10.
On some connectors, pin 10 is blocked by plastic. This means you can’t make it fit on a RasPi.

Install your physical GPS-unit on cabling as something like this:
RasPi Pins

  • Pin 2  = Power +5V  (or Pin 4) (red on GPS-puck)
    (UART pin 9).   (if you need 3.3V go for pin 1 or pin 17 But you cannot use the rs-232 9 wire as your ether loose 3.3 VOlt or on pin1 or RXD on pin 10.
  • Pin 9 = GND (or pin 6) (black on GPS-puck
    (UART pin 2).
  • Pin 7 = PPS input from GPS-receiver (GPIO4 GPCLK0, max 3.3. Volt) (white on GPS-puck)
    (UART pin 4)
  • Pin 10 = NMEA input from GPS receiver (UART RXD GPIO 15) (Yellow from GPS-puck)
    (UART pin 1)
  • Pin 8 =  Programming (UART TXD GPIO 14)  (Green from GPS-Puck) – I use it now and then for soft-reset or programming via the util #gpsctl

RaspberryPi-pin-conncetors

 

(Assumed UART connector pin 1 red wire at RasPi pin 10)
Ref: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html

Puck wire and GNSS pin layout

Original Puck:

  • Black GND
  • Red VCC
  • Yellow TXD
  • Green RXD
  • Blue SCL
  • White SDA

 

Modified to:

NEO-M8N RASPI

  • Black GND Pin 9 (or 6) (GND)
  • Red VCC Pin 2 (+5 Volt)
  • Yellow TXD Pin 10 (UART RXD)
  • Green RXD (not in use) Pin 8 (UART TXD)
  • Blue SCL (not in use) Pin 5 (?SCL1)
  • White ORG Modified to PPS by resoldering the wire to NEO-M8N pin 3 Pin 7 (GPIO4)
  • White New SDA (on this model soldered extra wire. Not in use) Pin 3 (?SDA1)

NEO M8N N-M8030 2019 model RASPI

  • Red VCC Pin 2 (+5 Volt)
  • Black GND Pin 9 (GND)
  • Orange SCL
  • White SDA
  • Green TXD Pin 10 (UART RXD)
  • Yellow RXD Pin 8 (UART TXD)
  • White NEW PPS Pin 7 (GPIO 4)

Wirring on NAZE mini GPS

  • Black GND Pin 9 or 6
  • Red VCC Pin 1 (x3.3 Volt)
  • Blue RXD Pin 8 (UARS TXD)
  • Orange TXD Pin 10 (UART RXD)
  • Yellow PPS (self soldered) Pin 7 (GPIO4

This is all on your own responsibility and you have to control the colours and pins of the GNSS-reciever. I have seen two of the same pucks that should fit directly to a drone but the colours of wiring was reversed. Disaster if you power on such receiver as it will burn it up due to 5 Volt reverse on 3.3 Volt ttl pins. It have the same effect like a surge.

Starting your GPS might requires long time for very first fix as its needs to read-in a complete almanac telling where the receiver can find a specific GNSS satellite at a specific time. Up to 30-40 min on very poor satellite connection is seen. Speed up by making sure you free visibility to the sky from all compass directions.

Overview of time satellite GNSS

GNSS = Global Navbigation Satellite System is the officiel umbralley term for positions satellites and more and more used for Stratumn One time servers with satellite reference.
GPS = Global Position system. American.
GAL =   Galileo, European GNSS. The name derives from the Italian astronomer Galileo Galilei.
BDS = BeiDou Navigation Satellite System, Republic of China.
GLONASS =  Globalnaya Navigazionnaya Sputnikovaya Sistema, or Global Navigation Satellite System, Russia.
IRNSS = Indian Regional Navigation Satellite System, Indian.
QZSS = Quasi-Zenith Satellite System, Japan.

On modern GNSS-receivers like uBlox 8 and forward you might be capable to receive signal for these constellations.

If you got no smoke and LED-are flashing the right way its time to add Chrony and GPSD software if haven’t done that.

Leave a Comment

Your email address will not be published. Required fields are marked *

18 − six =

indiana jez