Hello,
Im trying to write my own code in order to do gps position hold to my quadcopter and later waypoint navigation. Im using the MediaTek MT3329 gps set to output NMEA and im decoding it with the tinygps library but i have some issues that i hope somebody help me.
First i had a problem with the speed threshold that the MT3329 has in default.
So i was locking in a lat/log but the quad was drifting away from this point and the gps didnt update its position. I managed to "somehow" overcome this by setting the threshold to 0.2m/s (port.print("$PMTK397,0.2*3F\r\n"); and also change the update rate to 10hz and the baud to 115200 port.print("$PMTK220,100*2F\r\n"); port.print("$PMTK251,115200*1F\r\n"); )
Now the gps hold is somehow working but the lon/lat output of the gps jumps all the time. So if i hold in a position the quad stays there for some time and after some seconds locks in another position maybe 10 meters away, after this in a position 8 meters away and so on..
I saw some videos from arducopter doing gps position hold using the same module as i, and they didnt face the problem that i describe, so there must be a way to do it with that gps module.
Any suggestions and help in order to fully understand why i face this behavor would be very helpfull.
Thanks,
Thanos
Replies
Lucky13,
I was having problems with my GPS not updating and accidentally came across the posting above regarding setting the threshold. I added the string to the code and it fixed my problem. A BIG THANK you!!!
The static position accuracy is a statitical value based on the Cep that will vary around the true position with variations
Of as much as 20m.Standard Gps is no good for navigation at slow speeds or stationary positioning.