Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

u-blox: reduce update rate for M9N to 5Hz (instead of 10Hz) #57

Merged
merged 1 commit into from
Apr 27, 2020

Conversation

bkueng
Copy link
Member

@bkueng bkueng commented Apr 24, 2020

Apparently a 10Hz update rate restricts the number of used satellites to 16, and as soon as the update rate is reduced, the number of used satellites increases.

The datasheet only mentions that the navigation rate can go up to 25Hz.

Cross-tested on an F9P.

Apparently a 10Hz update rate restricts the number of used satellites to
16, and as soon as the update rate is reduced, the number of used
satellites increases.

The datasheet only mentions that the navigation rate can go up to 25Hz.
@julianoes
Copy link
Contributor

@bkueng and this has nothing to do with baudrate or number of messages configured?

@ryanjAA
Copy link

ryanjAA commented Apr 25, 2020

That’s too bad about the 16 sat limitation.

This commit breaks functionality on the m9n reverted to previous submodule fix and changed hz to 5 and another to 20.

I have one unit sitting at 5hz and one at 20hz (for good measure although the 20hz was an accident but it’s sitting logging so will look anyway). Will report back on max sats.

@ryanjAA
Copy link

ryanjAA commented Apr 25, 2020

16 sats on 25hz (changed it to max to try) and >20 sats at 5hz so it’s strange that at anything 10hz and above it drops it to 16 sats no matter what but still needed to use your previous driver change for it to work (with amendments to the ubx.cpp file to test sat vs hz).

@bkueng
Copy link
Member Author

bkueng commented Apr 27, 2020

@bkueng and this has nothing to do with baudrate or number of messages configured?

No, I played around in u-center with different settings.

That’s too bad about the 16 sat limitation.

Yes that's unfotunate. It makes sense though as the ZED-F9P has the larger form factor and thus more compute.

@bkueng bkueng merged commit 4d51e53 into master Apr 27, 2020
@bkueng bkueng deleted the m9n_5hz branch April 27, 2020 07:44
@ryanjAA
Copy link

ryanjAA commented Apr 27, 2020

This breaks m9n functionality though completely.

@bkueng
Copy link
Member Author

bkueng commented Apr 28, 2020

How?

@ryanjAA
Copy link

ryanjAA commented Apr 28, 2020

It never finds the device. Just keeps cycling through the GPS probe at different bauds. Tried also changing to 115200 and still no go but using the exact hardware and just flashing a build with the previous driver change and it finds it immediately (was wanting to remove this exact piece of hardware as a variable).

Screen Shot 2020-04-28 at 11 06 00 AM

Screen Shot 2020-04-28 at 11 05 45 AM

@bkueng
Copy link
Member Author

bkueng commented Apr 29, 2020

Which exact gps device is that?

And just that we use the same code, can you test with PX4/PX4-Autopilot#14785?

And to further debug can you enable debug output in https://github.com/PX4/GpsDrivers/blob/master/src/ubx.cpp#L80, and either start the gps driver from the shell or use dmesg to get the output?

@ryanjAA
Copy link

ryanjAA commented Apr 29, 2020

Devices were made in house, the M8N modules work fine and these work fine with the other PR changes, just not this one.

Tried with PX4/PX4-Autopilot#14785

GPS Debug enabled. It is timing out after receiving UBX msg 0x068a (see attached).

Screen Shot 2020-04-29 at 11 58 30 AM

@bkueng
Copy link
Member Author

bkueng commented Apr 30, 2020

Thanks. So it's timing out on the first UBX_MSG_CFG_VALSET. And you say reverting cdee27f makes it work?
Just want to double-check, because that would be really strange, as cdee27f only affects code happening after the first UBX_MSG_CFG_VALSET.

@ryanjAA
Copy link

ryanjAA commented Apr 30, 2020

No problem. No, cdee27f doesn’t work. It’s the initial m9n addition that works, 4cc28b8 That as we know has the 16 sat limit so then changing the update rate in the cpp file from 100 to 200 manually (10hz to 5hz) in 4cc28b8 has full functionality and unrestricted sat usage.

@ryanjAA
Copy link

ryanjAA commented May 3, 2020

Whats the difference between this and master? If i flash master as of right now from QGC, it works. If i pull cdee27f in as i did from ~2 days ago, it does not. Normally is wouldn't matter but if this is trying to be put into 11 release this needs to work with that and not master.

@cturvey
Copy link

cturvey commented Feb 10, 2021

The ceiling looks to be 8 Hz (125ms), not 5 Hz
FW SPG 4.03 using 28-30 satellites at 8 Hz
-Clive

https://portal.u-blox.com/s/question/0D52p0000AOK91vCQD/can-neom9n-only-use-16-satellites-with-nav-update-rate-5hz

@bkueng
Copy link
Member Author

bkueng commented Feb 11, 2021

Thanks @cturvey. Did you test that already with this driver? If so we can update it to 8 Hz.

@cturvey
Copy link

cturvey commented Feb 11, 2021

This is a receiver level observation, I'm not using this driver.
The threshold condition to 16 satellites used is 100 ms or lower rate. It continues to track a fuller complement of satellites, it just doesn't use these in the solution.
Testing indicated 101 ms (9.9 Hz) was also workable for higher satellite counts, but 125 ms (8 Hz) and 200 ms (5 Hz) are definitely usabled. The benefit of 125 ms being it is still divisible into 1 second.
I can't speak to the knock-on effect of these speeds with other aspects of the drivers.
I will push the issue into uBlox to document better (ceiling, choice of satellites, etc), or move the threshold.
-Clive

@bkueng
Copy link
Member Author

bkueng commented Feb 12, 2021

Ok, I'll do the testing then and adjust accordingly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants