InertialSense as RTK-enabled GPS

Hey, I’ve got an InertialSense RTK-enabled GPS/INS module that I want to interface with the PX4 firmware. It’s got a custom serial protocol, and I’m thinking of extending the GPSHelper class with this protocol.

Before I go full bore into this, I just want to ask if that’s all I have to do to make it work. Are there any gotchas that I should be careful of?


Hi @superjax,

That could work, but I’m wondering if a standalone InertialSense driver might also make sense depending on how you’d want to use it. You could have it act like a regular GPS that’s fed into the estimator, or even bypass the entire thing and directly publish position and attitude estimates into the system.

The other piece is RTK. Will the base station be sending RTCM through mavlink?

Hey @dagar, thanks!

I actually want to use the RTCM inject feature of Qgroundcontrol/PX4, using an InertialSense on the GCS, and a second InertialSense in the air. It looks to me like the driver is duplicated in both, so I figured that it would make sense to just add it to the driver layer.

For starters, I just want to use it as a low-cost RTK GPS, but I’ve thought about bypassing the estimator and supplying full-state estimates as you suggested. That seems like a lot more than I’m willing to bite off right now, because I’m worried that I’m going to need the SPI interface to get sufficient throughput for that kind of high-rate data, but I honestly haven’t looked at it too much.

Are there any extra considerations I have to take for RTK beyond just extending the GPS driver?

In that case it sounds like the right approach. Nothing else really comes to mind other than extending the GPS driver. EKF2 has some defaults that are set for a ublox m8n, but it should be fine to start.