ZED-F9R - Application note 
UBX-22035176 - R01  Contents  Page 20 of 30 
C1-Public   
6.1.4  UBX-ESF-MEAS sample code 
u-blox has collaborated with the OpenMower project to provide an example of integrating the ZED-
F9R in a robotic application. The u-blox driver source code can be found here. 
In the OpenMower project, wheel ticks from two individual wheels are provided to the receiver. The 
data is sent to the receiver with the 
GpsInterface::send_wheel_ticks function. The function takes in 
the sensor timestamp, and the direction and wheel tick value from the two wheels. These are put into 
an array, together with the UBX-ESF-MEAS message class and identifier bytes. Next, the 
GpsInterface::send_packet function completes the message with the two-byte UBX protocol header 
in the beginning and the two-byte checksum in the end. The complete message is sent to the receiver 
with the 
GpsInterface::send_raw function. 
When wheel tick messages are being delivered to the receiver, use the UBX-ESF-MEAS graph view in 
u-center to monitor the wheel tick data. The graphs below show two systems. In the top picture the 
wheel ticks are combined into a single tick with CFG-SFODO-COMBINE_TICKS = 1. In the bottom 
picture both  left and right wheel ticks are being used.  Both pictures show the vehicle moving at a 
constant velocity. 
 
 
Figure 16: u-center UBX-ESF-MEAS graph view of single tick (top) and left/right (bottom) wheel tick systems 
 
 
 
6.2  Sensor fusion configuration 
The sensor fusion configuration of the receiver depends on several different aspects of the entire 
setup, including  the  used vehicle, how the receiver is mounted on the vehicle, and what type of 
odometer data is used. Thus, the configuration needs to be modified if the setup is changed.