Getting started with tiny rtk and RPi 3

I have a feeling I’m going to get crushed with ridicule but here it goes. I am just trying to talk with the tiny rtk module (rover) from a raspberry pi 3. Ultimately I will set up rover, base with radio links to get cm level accuracy but first thing is first… Previously I had a single GPS module (Gumstick) that has a UBLOX NEO-7P module on it that I could talk to no problem over UART (so I got all of the RPi things working). I could interface with it to get NMEA messages and UBX messages. I figured I could use similar code to talk with the NEO-8MP, but when I hook the tiny rtk module up over the uart connection … I don’t get anything over the uart. I tried the ucenter with usb but that doesn’t seem to work either (note I did get the USB driver installed). I am almost positive I’m doing something completely knuckleheaded but I just am not seeing the light. Ideally I would have some C, python, whatever code that I could try out just to make sure I am connecting as expected. I thought the tiny rtk interface would just be based on the u-blox /u-blox M8 receiver description which in terms of UBX and NMEA seems to be the same operation as the NEO-7P.

1 Like


Is the solder bridge activated in your rover module? :slight_smile:

I ordered a rover that has the case on it and I was trying to avoid opening it up… I guess I need to ?

Unfortunately yes… We are releasing a new edition replacing the solder bridge by a switch in order to avoid this.

Kevin, thanks for the information. I’m going to try it but is there a user manual /pdf somewhere that describes the options for the board level changes. I only see one potential solder bridge on the version I have so that seems straight forward. I assume it just enables the I2C on the board. I assume there are no other board level changes I would need to consider changing… true?

Actually the solder bridge only has to do with the RX part of UART connection to M8P. Logic levels are all 3.3V, the solder bridge will not change anything to that and ther is no I2C connector in Tiny RTK.

Meant to say uart not i2c. Ok. I tried it and I still get nothing. Played with speeds but still get nothing (even if speed was wrong I would expect to get garbage back at least). I continue to play with it but difficult to debug when I get nothing back. I don’t have a scope but trying to get some idea of activity with a meter (not ideal to say the least)

Is the uart speed on the tiny RTK defaulting to 38400 ( I saw that somewhere else). Is there a way to set it to something different (like 9600) so I can test at that rate first?

Ok, in your case make sure you have the bridge soldered (otherwise you will have no connection between your Raspberry TX and TinyRTK RX). The default baudrate is 9600 bauds. Can you check you get messages over USB?

OK I’m a little confused… Maybe I was expecting something different than I should. The Rover I have (it was labelled as the Rover when I got it) seems to be spitting out nmea messages on the telemetry interface. I’m surprised by this because I was really expecting that the telemetry would be an input to the GPS module from the base (using the 433 MHZ radio module) and the rover output would be the one that had telemetry output on it. I am using the following diagram as my basis of thinking this: Note the UART on the same side as the SMA connector is the supposed to be an input to the GPS module attached to the Rover. I expected the GPS module attached to the rover would spit out uncorrect telemetry on the rover interface if it was not receiving telemetry on the “telemetry interface”. could I have two bases instead of a rover and base? My base does the same thing… but I expect that for the base.

Also I have connected up the full up BaseTinyRTK->433 Mhz radio AND 433 Mhz radio->RoverTinyRTK-> RPi but don’t get anything on the receiving RPi… not surprised since I don’t get anything with just the tinyRTK on the RPi but just thought I should try it out!

Actually the UART interface in TELEM port is also connected to GPS chip TX, this is why you see some messages coming back to the base, it is not an issue. Base has both base/rover capabilities, while rover is only rover. If you want to make sure look at your chips, one should be marked M8P-2 (base + rover) and the other M8P-0 (rover only). It is also normal for both modules to behave the same way because they have the same default configuration. Have you tried following this tutorial :