Some compatibility issues with u-blox NEO-M9N GPS

I am testing this GPS that use this u-blox module (NEO-M9N) with Pixracer and ArduCopter V4.1.0-dev.

It is recognized and I see this msgs:
[MAV 001:1] GPS 1: detected as u-blox at 230400 baud
[MAV 001:1] EKF3 waiting for GPS config data
[MAV 001:1] u-blox 1 HW: 00190000 SW: EXT CORE 4.03 (6c5018)

But the configuration is not saved even with GPS_SAVE_CFG=1 and I have the following repeated msgs:

PreArm: GPS 1 failing configuration checks
GPS 1: u-blox solution rate configuration 0x10008

I cannot takeoff in LOITER but I was able to take off in ALTHOLD and then switch in LOITER with success.

The number of seen GPS was 16, that I think is low for this kind of GPS but it could be related to unsuccessful configuration.

Here the log:
https://drive.google.com/file/d/17pOy13ih4HvFz3kv3uj_pgOPlL2dC7gO/view?usp=sharing

1 Like

Interesting. I’ve been using the mRo m9n module without any issues, so it definitely can work. I’ll have to look at my logs and see if anything pops up.

1 Like

The mRo module is connected via CAN port the Drotek one via Serial port, maybe this cause the strange behaviour of my module.

1 Like

The problem should be here

F9 and M9 have the same hwVersion, Ardupilot try to config the M9 as an F9 and fails.

If I comment line from 1182 to 1185 and change 1186 in:
_hardware_generation = UBLOX_M8;
the M9 is configured as an M8, the configuration succeeds and it is saved.

Obviously this is not a fix, it serves only to point were the problem should be.

1 Like

I opened an issues about that:

1 Like

I have the same issue, commented out the version check and forced it to M8.
Now I get 25+ satellites. Will there be a fix for this?

Does the problem still exist? We tested it a while back, worked great, but always to disable the gps check, which is not an ideal solution.