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)
do i use 3.3v or 5v logic levels if i'm updating via an ftdi adaptor?
When using my FTDI, i always use 5V, because i am too lazy to swap the solder jumper on my ftdi. 5V is the max voltage spec for the MTK3329. Some external multiwii I2C GPS run on 5V all the time. So i just tested 5V, but 3.3V should do the job as well.
With an external FTDI adapter it should be a piece of cake :). The wiring is described in the original wiki (link from my first post). You will basically need 4 wires: + / - / RX / TX . The rx from ftdi goes to tx of your gps. So rx and tx are crossed. As long as GND (-) and plus are connected correctly you can not fry the module. With winNT/7 i always suspect some firewall/administrator thing or perhaps some 3rd party viruskiller (norton or some of that sort) to mess with the com port.
ok so i've tried with both an ftdi cable connected to the gps uart and using the arduino sketches on the apm (and connecting the reset pin to +5v) but i'm unable to update the firmware. In both instances I can connect to the gps and see nmea info but the firmware flash tool just gives me that error.
I updated the initial post with the FTDI procedure. It works, I tested it. If not, there might be a driver/win firewall/administrator/viruskiller thing going on?
ok thanks Rob, I repeated the ftdi process and used 5v logic levels, it took a couple of tries but it worked in the end.
just go straight to upload(firmwere-your configuration image...) without hitting connect button and it will work..
THANK YOU VERY MUCH...softwere update (no FDTI) works like a charm,no problem..this is how all manuals about arducopter should look alike,step by step indeed...KRAUT ROB FOR ARDUCOPTER WIKI PRESIDENT!!
Yes, mavlink is a function of the arducopter software, wich is replaced by the "ftdi"-program. So fireup missionplaner and just click on "Firmware" to load your suitable apm software again. Than you can connect with mp like usual again.
I am glad that the manual helped you! Thank you for your feedback!