Navio2 GPS solution rate issues

Hi everybody,

I am running a modified version of from the Emlid’s Github example repository and I want to store data from GPS and IMU at 5 Hz.

While I am receiving data from the Navio2 GPS, if I store and substract 2 consecutive iTow fields, the elapsed time is not constant. Moreover, it is generally 400 ms, in spite that in the code I set the GPS solution rate to 200 ms.

Yesterday I found out that lowering the SPI baud rate from 5000000 to 200000 improves the situation (at 5000000 I got GPS readings at about 1Hz and sometimes even lower).

The Python code is available in

and the modified file in order to support PVT messages can be found in the following fork

Thanks in advance!

I am experiencing the same situation. What is more strange, even though the elapsed time is not constant, it’s always a multiple of the configured frequency. I.e., if I set the rate to 5 Hz, sometimes I get 200ms, and sometimes 400ms or 600ms, but never something like 260ms. And the fact that lowering the baud rate from 5000000 to 200000 improves the situation is also very strange. Does anyone have any idea about what could be causing this behavior?

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.