This is a open source software of a touchscreen GUI for RTKlib made for a Rasperry Pi 2 and the 5 inch HDMI touchscreen, the software is done with QT 4.5 on a Raspian OS.(can work on any linux machine too)

This project was developped by a student of the master PPMD of ENSG (geographic science highschool in France) and now maintain in open source on Github.

It was made for a easy use of Rtklib on the field, you can use it as a Basestation to send RTCM3 data to a rover to RTK positionning, you can also use it in rover mode to get initial base position or as a real RTK rover to get position of target or objects on the field.


Actually it can do :

- A Basestation for your RTK rover

- A RTK Rover if you have a Basestation, or a standalone GNSS

- Do all configuration setting for Rtklib connectivity and data stream in Base mode

- Choose betwen automatic or manual input for base position (automatic is the last position recorded in rover mode)

- Choosing between 6 preset solution  type in rover mode : Single/SBAS/DGPS/PPP-Static/RTK-Static/RTK-Kinematic

- Loging data for post processing

- Display actual solution and various data about it ( sats number and level, streams, track, etc... )

- Save actual Position in rover mode with a button, files wil be logged in a separate folder, just press the save button to record the actual position

So on the field you will get this

All 3D printing files for the box are included in the Github folder, you can find all installation instructions in the Wiki here:


The projects files are in teh Github here:


For a easy installation for non linux users , a pré-installed disk image can be download and copy to the SD card with Rufus on windows 

  • Copy this image on a SD card, you can use Rufus for that : https://rufus.akeo.ie/
  • Insert the SD card in your Raspberry Pi and start it.

.Pré-installed image for raspberry pi is here :


To build the base you will need:

  • Raspberry pi 2 and a 8gb SD

After 3D printing and assembly it will look like this

Wartch for updates, a small multirotor rover RTK module will be made this summer...

Views: 17894

Reply to This

Replies to This Discussion


Lors de l'utilisation de RTKLIB_Touchscreen sur un Raspberry3 sous l'OS raspbian jessie, cette application plante (ainsi que le raspberry) après deux à trois passages du mode "rover" vers "basestation". L'application plante précisément lors du clic sur le bouton "basestation".

J'ai en vain passé beaucoup de temps pour trouver l'origine de ce plantage

Quelqu'un a t-il rencontré ce problème? Quelle peut-être l'origine de ce problème?

Merci par avance.


Ps: La procédure d'installation et de compilation utilisée est la suivante:
sudo apt-get install libqt4-dev

sudo apt-get install libqt4-core

sudo apt-get install libqt4-gui

sudo apt-get install libqt4-xml

sudo apt-get install libqt4-opengl

sudo apt-get upgrade

git clone https://github.com/Francklin2/RTKLIB_Touchscreen_GUI

cd RTKLIB_Touchscreen_GUI/RTKBASE/

chmod u+x build_rtkbase.sh



Hello, Just wondering if you were able to get around to building the rover RTK module. Thanks!

Started building the base station last year but ended up with the launch of Reach RS. Still this seems to be the most cost-effective RTK solution, will be great to see the drone version


A new Beta version is there, I add a link in the wiki ( https://github.com/Francklin2/RTKLIB_Touchscreen_GUI/wiki ) to a preinstalled .iso for raspberry pi 3 and the beta version.

I update in the beta:

  • added you can record "raw" data from the GNSS for post processing, just choose file in output of the basestation, a path for the outpiy file and it's done
  • added save position option, you are able to save X points ypu want to record with choosen timing, the buttons are in the rover mode status windows
  • added 8 custom configuration files to the original preset, in rover mode choose custom configuration
  • added you can edit most of the RTKlib parameter with the gui for the 8 custom config, choose create/edit configuration in rover mode then edit configuration to edit a custom configuration or new configuration to create a custom configuration copied from one of the 6 preset configuration
  • added display of system Time and date and GNSS time and date in solution status windows
  • added button to set PI system date and time with GPS date and time in rover mode status window, you have to run a rover mode to get and set the GNSS date and time data
  • bug : position button gives less position information than before (lost RTCM stream info)
  • bug : return button in edit interface may freeze the software sometimes, allway lauch a configuration after you edited one then stop to avoid that
  • Using latest RTKlib 2.43 (august 2017)
    The beta can also be installed on a Raspberry Pi 2

Is there a way to use rtkexplorer's demo5 version of rtklib with this?


Also how would I install this on a pi2? Is the source updated, or is it just the new image you have for the pi3?

To install on a Pi 2 you can use the preinstalled image for Pi2 , the source is still the same on the master, I just add a Beta1.1 branch on the Github . If you use the RPI2 image you may have to update the RTKlib library to latest 2.43, the beta already use 2.43.

For RTKexplorer it's a windows version, anyway we can  look in the ini file to see how they set RTKlib to run better on M8T

To Glrnn

I didn't saw the source code on the page, in fact yes you can try to copy the src directory from demo5 source to RTKbase then rebuild the library.

Tell me if it worked for you

So I've done  git pull of the RTKBASE Beta-1.1 branch, then I rename the RTKBASE/lib/rtklib/src folder to src.bak, then I copied the src folder from Rtkexplorer Demo 5 into there. Then its back to the RTKBASE folder where I run ./build_rtkbase.sh which completes successfully.

However when I try to run RTKBASE via ./RTKBASE I get the error './RTKBASE: cannot execute binary file'

I have made sure that RTKBASE has +x permissions.

Perhaps you have to do it without the build script, go to the folder RTKBASE/lib/RTKLIB the run make_library.sh , then go to the RTKBASE folder and try make clean and make to see in the console if the build goes well

Tried that but it still didn't seem to build a binary that could be executed.. I got it to build and run just using your supplied version of rtklib in the beta 1.1 branch.

Francklin said:

Perhaps you have to do it without the build script, go to the folder RTKBASE/lib/RTKLIB the run make_library.sh , then go to the RTKBASE folder and try make clean and make to see in the console if the build goes well

Glenn M said:

However when I try to run RTKBASE via ./RTKBASE I get the error './RTKBASE: cannot execute binary file'
you need to run :
make clean
If you don't have RTKBASE at the end of make, there should be a problem. I tried to build this morning with one error and with rtklib update provided by Francklin. Same with rtklib source from rtklibexplorer

I tried too on the raspberry pi 3 with the master updated in 2.43. It didn't work at first try with build script and make clean/qmake/make then I copy the whole lib folder from version beta,  there was still some "unused declared value" in library and RTKBASE build but you have a executable RTKBASE. I have to check what was the change between 2.4.2 and 2.4.3    

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service