I am currently messing around with MTK GPS stuff and the binary protocol.
Assuming my APM2.0 GPS has the 1.6 loaded, i want to upgrade the GPS FW. Since the gps is directly mounted to the mainboard i don't know how to do it.
The APM wiki http://code.google.com/p/ardupilot/wiki/MediaTek gives no hints.
EDIT: SOLUTION FOUND:
I included a zip file with all the needed files and a complete guide below.
It contains basically the same files than the previous version but an extended guide and the source code.
Added German guide.
FTDI Hardwareflash on APM 2.0 (Set your FTDI to 5V, if you have one of these Breakoutboards)
1. Download the zip below to have all the files needed - and a flashguide.
2. Load MP and save all your parameters to a file (if desired).
3. Do Arduino / eeprom clear on your main CPU so that no serial traffic can disturb the process. Do not omit this step. It won't work with the arduino still talking on the serial line - i tested it. P.s. You can also use the precompiled hex from my post here: https://diydrones.ning.com/xn/detail/705844:Comment:1094234
4. Unpower APM for soldering. If FTDI connection is already established, powercycle to reset GPS to its' default state.
5. Locate the external GPS port (UART1). If you have not the right plug (like me) you have some solder pads right behind it. You will need GND/RX/TX. Look at this picture for the right connection: http://diydrones.com/forum/attachment/download?id=705844%3AUploaded...
Note: I labeled RX and TX relative to the GPS not the CPU (like printed on the PCB). I showed 3 points where you can get access to the important datalines, besides the obvious connectionport (that would be number 4:)).
6. Power APM Board, fire up the flashing soft and follow the documentation -> Point 8 in MTKFlashGuide2.pdf or point 7 in MTKFlashGuide2German.pdf. Reading the complete pdf is also ok.
7. Reload Arducopter FW on mainboard and reload your saved settings (if desired). Perhaps recheck calibrations (ACC etc.)
UPDATE 21/01/2013 - 02/03/2013
Here is a Must Try List - if you have a persisting flash problem (Thanks Anton for the idea)
- https://diydrones.ning.com/xn/detail/705844:Comment:1094071 (Thanks Anton)
- https://diydrones.ning.com/xn/detail/705844:Comment:1094290 (Thanks William Stoner)
- http://diydrones.com/xn/detail/705844:Comment:1097033 (Thanks Isaac)
- http://www.diydrones.com/xn/detail/705844:Comment:1097725 (Thanks Chris Webb // Mac running VMWare WinXP)
- https://diydrones.ning.com/xn/detail/705844:Comment:1140259 (Thanks "exaustgas" // Win serial port)
- http://diydrones.com/xn/detail/705844:Comment:1146635 (Thanks Cody // serial port in flashutil config)
- Try to rule out a driver/win firewall/administrator/viruskiller thing
Due to the outstanding work of Perecastor here: https://diydrones.ning.com/xn/detail/705844:Comment:1149155
We have a French guide now as well !!
I took the liberty to put it here as well.
Hardware - "Hack":
Use your PC - RC Transmitter Adaptercable as FTDI:
http://diydrones.com/xn/detail/705844:Comment:1252901 (Thanks Jan Boermans)
You did it !!!!!!!!!
Is the 1.9 FW !!
Perhaps a developer can comment on this, but i don't see how your apm 2.0 can be harmed by the update process in any way. It is also very strange that you can connect to your CLI. When you have Arduino IDE running anyway, did you try the Arduino eeprom_clear and upload 2.9 with arduino directly?
I keep my fingers crossed for you!
Just in any case, did you reset your computer and powercycle your apm?
not sure how to do a eeprom_clear?
I tried typing it in the term window but got
Invalid Command, Type 'help' etc
in the CLI, type setup, then erase.
yeah, I fumbled thru it, same thing, stops mid way trying to load 2.9 :(
@Edgar: How could you get to the CLI when you couldn't load the apm main software?
With eeprom clear i meant arduino IDE 1.0.2 examples/eeprom/eeprom_clear .
I attached the hexfile that will wipe your apm.
Sorry for the misunderstanding. It was loaded, but I was trying to load "again"
Anyhow I think we got it, I was able to "load on top of current" with my Windows 8 machine, I took it out to the field and it flew GEAT. I am sure its a lot better than before and its pretty windy here today.
The only thing the landing was pretty fast decent, I looked in the Standard Parm but not sure what to adjust to make it land "slower". Ill start another thread on that since its not related.
Thanks agin for everything I feel better about this GPS now.
Found the LAND_SPEED parm :)
set it to 20 it Ill try later.
I think I have all the latest now.
Thanks, again, Ed
I did try clearing eeprom and doing the uploads directly through arduino...so I'm stumped. For the record, I don't get the feeling that the pass-through program "harmed" anything as you put it...I really think I'm just doing something dumb with a setting somewhere that I'm overlooking!
Perhaps you have a cable still attached or forgot to set/remove a jumper??