Best product to determine bearing

I am after the best option to determine bearing on a ground vehicle.

The vehicle will have a ZED-F9P. I require a magnetometer or IMU that can reliably determine bearing with minimal calibration.

Thank you for your help.


Hi Alex
Doesn’t the ZED-F9P provide that information or have you got to be moving to get a direction. My car SatNav does but maybe it is the direction I am travelling not where I am pointing. I haven’t taken much notice really.
A magnetometer will probably provide a Magnetic bearing and SatNav a True bearing. The 2 are different and the actual difference will depend on where the device is. The difference where I live on the Central Coast NSW is 12.5º.

Someone else with experience in this might chime in here. I am interested.
Cheers Bob
PS. I have an app on my phone which establishes my actual position (GPS) and knows the difference at that position and displays Magnetic or True, selectable.


Hi Alex,

Welcome to the forum!!

What kind of device were you going to connect the ZED module to?

In Sparkfun’s guide they mention that you are able to access the heading using their Arduino Libraries: GPS-RTK2 Hookup Guide -

PS: I’d also take a look at the PiicoDev Magnetometer, out of the box there is a Micropython library capable of handling the calibration and bearing estimation.

Bob makes an excellent point about declination, you’ll need a connection to the internet to determine what that value will be at any given location.
Re: the bearing from the phone, it’s very likely the chip from the PiicoDev Magnetometer(QMC6310) (or another similar one) is used inside everyones smartphones, without the user knowing it, the phone runs calibration routines throughout the day (the figure 8 pattern is another calibration routine), calibration is a must!


1 Like