{'fraction_non_alphanumeric': 0.02112454845296058, 'fraction_numerical': 0.007067692790953354, 'mean_word_length': 4.682730923694779, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
UBLOX F9P FOR GEODETIC MEASUREMENT

This article brings knowledge of the settings of the Ublox ZED-F9P device, which will allow to use this receiver to build-up a simple low-cost GNSS device. The settings for the rover and base station functions are different and need to be done very accurately. A wiring schema of the Ublox receiver with the Arduino system is presented, which as a whole device will enable the full functionality of the GNSS receiver as it is known from commonly used commercial devices. Ublox receiver was tested for accuracy and solution stability, results are shown in the article. The goal of this is to create devices usable for teaching students of our department as users or developers of applications using GNSS technologies.


INTRODUCTION
GNSS receivers are often used while teaching the field of geodesy and geoinformatics, either for the purpose of training the operator or as a source of data for other terrestrial measurements and other applications. GNSS technology is evolving rapidly in both the user and space segments. Receivers (the brand is not intentionally mentioned here) purchased fourteen years ago still work (after replacing GSM modems), but are technologically obsolete, cannot receive signals from Galileo or Beidou and generally have only few channels.
The motivation for creating our own GNSS equipment is the obvious possibility of operating a functional receiver for a fraction of the price at which a professional instrument can be purchased from a commercial seller of surveying equipment. The benefit is, of course, the uninhabited knowhow that entails the assembly of the device. These instruments are created as a part of graduate projects at our department in cooperation of students and teachers. Assembling our own receivers on the basis of functioning GNSS boards is therefore a challenge for our research potential and at the same time an opportunity to keep the instrumentation for teaching at a functional and modern state.
This paper aims to bring the key information for users from the ranks of surveyors and surveyors who have decided to go their own way and build their receiver whether for economic or other reasons. We have an ambition to provide instructions for important settings but we do not create step-by step instructions since it is possible to find procedures on forums, YouTube, etc.
Many research teams are involved in the development of devices based on low-budget platforms. The closest to our activity is testing of RTK solution of two Ublox Zed F9P on short baseline [1]. Ublox modules are mostly used for solving position of cars and drones. Data from Ublox module are inputs for Kalman filter beside data from IMU [2], [3], [4] and [5].
In the article there is tested a Ublox ZED-F9P with ANN-BN-00 antenna by position accuracy, signal-to-noise ratio and position confidence. Low-cost GNSS receivers as Ublox achieve the same position accuracy as professional receiver outside urban area. Position accuracy 1cm + 1ppm mentioned by the manufacturer was proved in RTK mode, see [6].
Multiple antenna with Ublox F9P was tested on the roof without multipath error. Low-cost antennas are comparable to professional geodetic antennas. Position accuracy by testing is less than 5mm for 40 min session, see [7].
One of the goals was to test the Ublox ZED-F9P GNSS module in various ways so that it can be confirmed that it is a receiver with centimetre accuracy. Comparison test was performed with a commercial GNSS receiver. Low-cost GNSS receivers have been analyzed and tested in various applications [8], [9], [10], [11], [12] and [13].
Our motivation for this paper is construction low-cost GNSS for teaching purposes. Students will be able to fully understand the functionality of GNSS receiver. Also, user will have full control over GNSS receiver so the black box problem will be dismissed.

METHODS AND MATERIAL
Two GNSS receivers were built for easy usage, because each type of GNSS measurement needs specific setting of Ublox module. The type of GNSS receiver comes from needs of a measurement. First GNSS receiver RTK was created for a land measuring and control points for areal photogrammetry. Second GNSS receiver is for long time observation. It will be used for landscape monitoring in places, where there is a risk of thievery or damage so the expensive professional receiver is excluded.

Construction of receiver RTK
GNSS receiver RTK is built for fast terrestric measurement and getting coordinates of control points for areal photogrammetry. The item will be used by students on practical work in terrain. GNSS receiver will be also used on drone or balloon for measuring in a forest, so the receiver must be almost weightless. The idea is to put receiver above the trees so the fix solution will be compute. Together with the measuring device, a smartphone application was developed for store measurements (RTK, Static), stakeout points and display of the current state of reception of satellite signals [14].
GNSS receiver RTK contains Ublox ZED-F9P, Bluetooth module HC-05, GSM module Arduino MRK 1400 and radio module Xbee PRO SS. Each component except Ublox F9P works as an input device of RTCM correction. Bluetooth module transfers data between the mobile device and the GNSS module. GSM module communicates with NTRIP client to send RTCM correction to GNSS module. Setup of the GSM module is by default prepared for the Czech permanent station network CZEPOS and it uses the nearest permanent station service RSM-RTK (valuable). For this service is it needed to send GGA message to NTRIP caster. Service must know approximate position of GNSS receiver for finding nearest permanent station. When GNSS receiver is turned on, it doesn't know its position. GSM module must wait until the GNSS receiver estimates an approximate position.
Radio module is for long distance usage, where Bluetooth module fails. Radio module can also communicate with own GNSS base station for a long baseline. All communication channels use the UART and 115 200 baudrate. High value of baudrate is better for the fastest communication between devices. Lower value of baudrate caused error buffer communication. GSM module does not contain two UART ports, which is resolved by using the SoftwareSerial library that replicates this functionality on other digital pins.
A power bank or Li-pol battery is used for the power supply. Input must be 5V and at least 2A. High current is needed by GSM module while connecting to network. After successful connection the high level of current decrease to few milliamperes.
RGB led serves as a visual control of GNSS status. It is connected to GSM module. Colour is changing by separate information from GGA message. Ublox ZED-F9P is configurable through Ublox software u-center. Modul is connected to PC with USB. The proper configuration can be seen in Table 1 and it is done on "View-Configuration View" application window.

Construction of receiver STATIC
GNSS receiver for static method is based on Ublox ZED-F9P and simple minicomputer Raspberry Pi (4th generation computer used). Those are connected via USB since the Ublox appears in the Raspbian linux system as a COM port. The Ublox output is setup according the Table  2 and so the Raspberry receives just raw measurement from the GNSS module. The data are converted to RINEX every hour using rtklib convertor and then stored to proper directory. One hour data file (separates by GNSS time) with measurement rate 1HZ containing observation of four GNSS systems has about 10MB according to the number of satellites in view.
The same time when the RINEX file is store to SD card of the Raspberry, it is also sent to all connected data storage peripheries (USB discs). The second variant of the control software is to push the data file to ftp server. The setup of ftp and also all possible setup (conversion frequency etc.) are in control software python file script. Receiver for static method is generally prepared for 12V power supply from car battery, it has DC step-down convertor which provides stabile 5V power supply for Raspberry and also Ublox. In the variant of the receiver connected to Ethernet, there is a USB cable for direct 5V power supply from the phone charger. This variant has no USB connector on the box but RJ45 for connection to the ethernet.

Testing STATIC receiver
The test verified the position of the antenna phase center. The test consisted of observing the change in the position of the antenna coordinates when the antenna was rotating around the vertical axis. A rotating device was designed, which allows automatic rotation with the antenna at a set time. The device consisted of a stepper motor and control unit, the motor was controlled by an Arduino Nano microcontroller with real-time module data (see Figure 4). The test itself lasted 24 hours, the measurement was divided into 24 stages after one hour of observation.  The data were processed like static GNSS method in the Leica Infinity software using data from the nearest permanent station -CZEPOS CPRG. The results were 24 coordinates, the plot of which can be seen in Figure 5. It is visible that there is no trend of phase centre shift, the resulting coordinates are completely random. It can therefore be concluded that the phase centre is in the material centre of the antenna. The resulting mean position error was 14 mm [15].  [15] Testing RTK receiver The following parameters were determined during testing, the average time to find a fixed solution and the mean position error of all successive measurements were determined. The receiver antenna was fixed in the same position during the test to prevent accidental displacement. Then 50 measurements with 10-second observation were performed, in which the time of finding a fixed solution and the coordinates of the antenna were recorded. Between measurements, the antenna was covered with aluminium foil to prevent the input of all signals to the antenna, thus making it impossible to determine a fixed solution. After exposing the antenna, the time of finding a fixed measurement was measured. The result is an average time to find a fixed solution of 5 seconds and a mean position error 5 mm between measurements.

CONCLUSION
When testing the Ublox ZED-F9P module and the ANN-BN antenna, the accuracy of the device declared by the manufacturer was verified. The module can be used in surveying. The mean position error is 1 cm + 1ppm, when measured with Ublox ZED-F9P and ANN-BN antenna.
The Ublox ZED-F9P can be configured in various ways. The module can be used as a base and as well as a rover. The module supports RTK method measurements. The whole system is small and therefore inconspicuous. Therefore, it allows continuous measurement without the supervision of an authorized person, for example when measuring slope displacements. The module can be covered with a camouflage tarpaulin to make it as unobtrusive as possible. If someone stole the module, it would not be a big finantial loss. The price of the module and its accessories is about 500 USD.
We currently want to replace previously used GNSS receivers with the Ublox modules. Current GNSS receivers (Topcon HiPer Plus) are outdated and do not support data collection from Galileo and Beidou navigation systems. At the same time, the user interface does not allow complete control over the management of the receiver. This makes it a bit impossible to explain to students the principle of operation of the GNSS receiver in teaching.
With the Ublox module, the measurement principle with a GNSS receiver can be explained with a live demonstration. Students can configure the Ublox measurement module themselves and understand the process flow. Thanks to this, they can work with any GNSS receiver in practice. If the basic principle of setting up a base or NTRIP client is understood, they can deal with a lot of problems with electronics without the help of service. These devices are functional prototypes, but they do not aim to replace commercial devices from brands such as Leica, Trimble, etc. Their advantage lies in the low price and compact dimensions, and thanks to this they can be used in various applications.
The main disadvantage of these modules is that there are only few applications with which the module can be configured, or record measured data and most of them are only available on a PC. It is for these reasons that the GNSS controller application was developed at the department, which enables static measurement, RTK measurement (NTRIP client) and also stakeout imported or measured points. This application was further supplemented with measurement support in the national reference system S-JTSK.