I am currently using the rainy days to setup my APM2.5. Now, I got a Mediatek MTK3329 GPS from flytron.com quite some while ago (used it with MultiWii via I2C at that time).
this GPS also provides serial interface and since I switched over from MultiWii to APM now, I would like to reuse this GPS.
I updated it with http://code.google.com/p/ardupilot/wiki/MediaTek version 1.6
next i set with the GPS Config Tool 1.7.1 the refresh-rate to 10Hz.
verifying that with a terminal program such as Putty confirms, that coordinates are getting updated now with 10 per second which looks great.
Also verified to disconnect GPS from power, reconnect again and still the refresh rate is 10Hz.
Then I connect the GPS to my APM2.5. I get fix even indoors with no problem.
I just want to make sure, it really uses the higher refresh rate of 10 Hz.
However, when connecting to the APM2.5 CLI the coordinates I get there seem to be updated much slower. I would estimate approx. 3 Hz or so.
When I connect the GPS again to the GPSConfigTool the refresh rate seems to be reset back to 5Hz...
Any idea, how I can get APM2.5 to use 10Hz refresh rate and how to verify that properly?
thanks a lot and best regards from vienna,
The mediatek gps refresh rate is reset by the arduplane or arducopter code. Look in the AP_GPS library, file AP_GPS-MTK16.cpp. There you'll find the init function :
AP_GPS_MTK16::init(enum GPS_Engine_Setting nav_setting)
// initialize serial port for binary protocol use
// XXX should assume binary, let GPS_AUTO handle dynamic config?
// set 5Hz update rate
// set SBAS on
// set WAAS on
// set initial epoch code
_epoch = TIME_OF_DAY;
_time_offset = 0;
_offset_calculated = false;
idleTimeout = 1200;
There is a reason for this however. Tridge found that at 10hz the gps would sometimes loose sync, but this was not generally confirmed and I think someone else found no such problem.
Just be carefull and watch for gps loss of sync when using it at 10hz.