Jeti GPS-Sensor

Something I always wanted to do, a versatile but really affordable GPS-sensor. So let’s take a crack on it!

Jeti GPS-Sensor

Once again, jump to the Ebay-world, components needed:

  • Arduino Pro Mini 3.3V 8Mhz (Or equivalent) Example link to Ebay here.
  • NEO-6M GPS module Example link to Ebay here. (NEO-M8N maybe preferred, look below)
  • Little wire and shrink-wrap.

Nothing else is needed, total cost just over 10€, not bad at all! If you want you can also use a NEO-6M with external antenna for those carbon-fuselages. Remember that the better “view” to sky GPS-module has the better it responds.

If you want a bit more precise GPS-values you can also use NEO-M8N, I have tested this one from Ebay and it works excellent. Note that VCC, GND, TX and RX pins might be on different locations!

I have found the NEO-M8N to be quite more sensitive, takes satellites better than NEO-6M so NEO-M8N is highly recommended.

Features amd operating modes

I wanted some extra functionality and possibility for user to choose the working mode so I made two operating modes, basic and extended.

Basic mode

  • Latitude
  • Longitude
  • Groundspeed
  • Relative altitude
  • Altitude
  • Possibility to use “US” or “EU” units (km/h & meter vs. mph & feet)

Extended mode

  • Latitude
  • Longitude
  • Groundspeed
  • Relative altitude
  • Altitude
  • Variometer (Vertical speed indicator)
  • Distance to model from start point
  • Heading (Model flying heading)
  • Course (Direction to model from start point)
  • Satellites count
  • HDOP (Horisontal dilution of precision)
  • Possibility to use “US” or “EU” units (km/h & meter vs. mph & feet)

Connections

Connection are simple, do note that I have changed the Jeti EX protocol library so the orange wire to receiver is in another location than on previous sensors.

  • NEO-6M VCC -> Arduino VCC
  • NEO-6M GND -> Arduino GND
  • NEO-6M RX -> Arduino 9
  • NEO-6M TX -> Arduino 8

You also need the connection to Jeti receiver:

  • Arduino TX0 -> 2.4kΩ to 4.7kΩ resistor AND receiver signal
  • Arduino RX1 -> 2.4kΩ to 4.7kΩ resistor
  • Arduino RAW -> Receiver positive
  • Arduino GND -> Receiver negative

NOTE: Some boards have GRN where my boards have GND. Do NOT use GRN, use GND!

Schematic

Connection schematic below says it all, really simple:

Physical dimensions

The whole setup is not that big at all, here’s a comparison between Arduino Pro Mini and NEO-6M:

That “disc” is the antenna and should not be covered with the Arduino-board. One neat feature of this NEO-6M board I chose is the USB-connector:

The USB can be used to connect NEO-6M module to PC and change settings like update speed etc with UBlox U-Center application. Do note that if you change the serial port speed of NEO-6M you need to change sensor-code accordingly!

You can also see a tiny battery on the NEO-6M module, this is for the module to remember last position, helps for faster start when it’s been unpowered for a while, nice.

Here’s an idea of final installation (Not yet soldered) little heat-shrink and it’s perfect:

Update speed?

Refresh interval is just over once per second, approximately 2 times per 3 seconds. This can be tweaked if you need via the U-Center.

Programming Jeti GPS-Sensor

Go and get the suitable .hex or .ino (Named RCT-GPS_Sensor) file from my Github here. Easiest method is XLoader + .hex-file. With Arduino and .ino you need to use the libraries included in Github repository. For info on how to use these look in RFID-sensor how-to here.

Using GPS-Sensor with Jeti

Setup is a bit different than usually with my sensors due the different working modes.

After connecting Jeti GPS-Sensor to your receiver you will find the Jeti GPS-Sensor in metric and basic mode. This means you have four values with metric units km/h and meters. If this is what you want’, fine, no need to do any setup.

Changing sensor settings

Go to Jetibox in your transmitter (Hardware Jetibox or transmitters Jetibox, both work), here we have a few options:

Pressing right will take you to “EU-screen”:

Press right again for the “US-screen”:

Next is basic mode:

Next setting is the extended mode:

And the last option is the sometimes needed “Reset to defaults”:

Here’s how they work:

When you are for example in “US-screen” pressing DOWN button stores that setting to sensors memory. After storing the desired values senors restarts itself. If you need to change several settings just go to Jetibox and the desired screen and press DOWN again.

Every time you have changed a settings and pressed down sensor needs to restart to activate new settings, when reboot is done (automatically) you will see the start screen in Jetibox:

IMPORTANT: If you have changed units or operating mode (Basic/Extended) you HAVE TO go to sensor-settings and do a re-scan of sensors. Jeti does not change these automatically!

Using Jeti GPS-Sensor with your transmitter

Using is simple: You have some new sensors, picture is from extended mode, basic has the five first sensors.

  

After this you can use them on your transmitter just as any other telemetry-values, here is the Basic mode values:

And here is the added values in Extended mode:

About altitude

There is two altitude-values available. “Altitude” is absolute altitude, this is the altitude GPS is sending. The “Rel. Altit” is relative altitude and is automatically set to zero after a GPS fix is got. This is the altitude you want to know when you ask “how high above ground my model is.”

Using voice announcement on these are also different, Jeti announces “Altitude” as “Absolute altitude nn meters” and “Relative Altitude” as “Altitude nn meters”.

There it is, simple and affordable GPS-Sensor for Jeti :)

What is HDOP?

HDOP is short of “Horizontal Dilution Of Precision”, meaning it’s horizontal accuracy. The value given by module is a multiplicator of sensor manufacturers announced accuracy. For NEO-6M it’s 2.5 meters. So, if you have a HDOP of 1.75 the accuracy of position is 1.75 x 2.5 and this results to 4.375 meters. This was the short explanation, there’s ton of this stuff in world wide wait if you are interested. (If i was wrong let me know!)

Version history

  • 1.0 Initial release
  • 1.1 Fixed wrong display of HDOP-value (Thanks to Martin!)
  • 1.2 Fixed value formatting from “ft” to “ft.” (Thanks to HarryC!)
  • 1.3 Implemented automatic restart after changing settings
  • 1.4 Added variometer & redefined altitudes

Disclaimer

Always make sure everything works as it should. Do not use faulty devices. neither RC-Thoughts and/or me are in any way liable or responsible for anything you do with your equipment or to others with equipment used as described here. You should never use LUA-apps for operation-critical functions.

If you find something that is not working or is behaving strangely please let me know. I’m a car-mechanic by training, not a programmer-geek :)

Most important thing

Is to have fun building and using, this will not bankrupt you in any way :)