Solar Activity

Firmware Upgrades

Overview:

Firmware is the fixed programs and/or data structures that resides on each board processing chip to control various board functions. The MK will not operate without correctly installed firmware as it is essentially the brains of the board.
While Firmware upgrading may seem overwhelming at first, take your time and follow these instructions carefully and you should have no problems.

Info: What is a HEX file?

HEX is a file format for conveying binary information for applications like programming microcontrollers, EPROMs, and other kinds of chips. It is one of the oldest file formats available for this purpose, having been in use since the 1970s

Note: BL-Ctrl Firmware

An update of the BL-Ctrl is seldom needed and not part of a typical Firmware update!
For an update or to control the BL software , the BL-Ctrl must be connected directly to the MK-USB.
  (see: http://www.mikrokopter.de/ucwiki/en/SoftwareUpdate) if you need to update or check BL-Ctrl Firmware)

Warning

WARNING: The connection to MKTools should be via the USB cable (NOT WIRELESS)
If you missed this warning and tried upgrading with wireless Xbee and now cannot connect to the Navi board, all is not lost--- see this post
Note: It is recommended to use a regulated power supply that is set to a low mA limit for this process.

WARNING: Props should be removed as a software glitch could cause motor start. (at least tie the MK down and stay clear)

Update Steps:

1) Confirm in MKTools, which firmware versions you have.

2) Download all of the latest firmware versions for Navi Ctrl, Flight Ctrl, MK3Mag (
MK3Mag is integrated into NC 2.0 board - also, MK3Mag firmware is not updated after FC V.086/NC.86). Also, download the latest MKTools  (you will need to use this once the upgrades are done) Place the files into a separate folder in your PC and remember where you put them. (Alternatively, you can get the latest firmware from within MK-Tools - See these instructions)

Note: Save your old values

  • In MKTools, make screen captures or write down of all of your settings for future reference. Major upgrades will reset all of the software values to original settings and any changes that you have made will be lost. Note: The newest version of Firefox (4.0) has a screen capture feature built in.
  • It is recommended that you re-check and manually re-enter all of your software changes for any upgrade. You should never import settings of previous versions via the KopterTool. The settings should be done manually!
  • The compass must be re-calibrated using the new version of the calibration procedure. It would also be a good idea to do a sensor calibration at this time also.


3) Close down all unnecessary programs and processes you have running. If you are doing this on a laptop, make sure the battery is charged.

4) Click Firmware update & Terminal  
Note: Use your existing version of MKTools not the latest download.

5) The terminal window pops up


6) Click Update Software (serial)

Note: Where are the Hex Files?

The current software of the individual components can be downloaded easily over the KopterTool.
This describes how to download the files via the KopterTool: Software Download


7) Navigate to the folder where you downloaded the latest firmware. 
 

The firmware should be updated in the following order:

    a) Navi-Ctrl
    b) MK3Mag (skip this step if you are upgrading from FCV0.84 to FC V 0.86)
    c) Flight-Ctrl

8) The process takes about a minute or so per firmware update. At the end each of the updates there is a verification and confirmation beep from the mikrokopter.   


Note: If you get a failure at this point  -
see this info

Note:

If you open a updatefile, the KopterTool detects automatically (on the file name) which file it is and for what this board is used.
So for example if you try to program the NaviCtrl firmware into the FlightCtrl, it will give you an error message.

9) Check all the settings as they will all be the defaults of the new firmware. For example, the default model is for a Quad, If you have an Okto (the configuration file for the different setups are within the directory you extracted MKtools to).

10) You'll need to re-due the ACC calibration (left stick up and to the right) with the kopter level.


11) Recalibrate the compass. (This Process is new for FC version .084)


12) Install and open the newest version of MKTools and verify that the boards are communicating with each other, all settings are still there, and the correct versions of firmware is being displayed.


13) Enter page by page your custom settings.


After the update an automatic reset is performed and the unit restarts. In the Terminal Window you can see now the initialization of the module.

The initialization looks like as shown in the pictures above.


Trouble Shooting Firmware Updates

File corrupted

It can be that way that the download of the software file was corrupted and therefore the file itself is damaged.
In review of the file is in the terminal window the update to see from the program path of the file:
http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90293&g2_serialNumber=1

Here must after the Reading File... a OK been displayed and the respective program size (e.g. Program Size: 63 070 bytes ) should be displayed.
Is there a bug or a too small number (eg 130 bytes / 0 bytes) or Unexpected character ..... FILE damaged! appears the file must be downloaded again.

Or:

Connection problem

Is e.g. the MK3Mag after an update over the NaviCtrl without function, a transmission problem is indicated.
Here the MK3Mag should be connected directly to the MK-USB and the update will run again (Connection see upper picture).

If the MK3Mag is directly connected to the MK-USB you need to take care that the connection between the pin-header and the MK3Mag connector on the ribbon cable
is correct. Here it is perhaps possible due to a short 10-pin male connector on the MK3Mag that you will have poor contact.

It may be also that the module is not detected. The reason for this is possibly an improperly soldered plug connector of the MK-USB or the ribbon cable is plugged in upside down
(red side of the cable shows each of the pin 1 of the module / MK-USB), or the sockets on the ribbon cable have not a good connection.

Here a Timeout will be displayed:
http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90297&g2_serialNumber=2

Or:

Manual reset

The connection is fine but the automatic update does not work anyway?
If after "Connecting (try to reset hardware and start bootloader)..." is not an "OK" coming up after ~3 to 4 dots than you can do as follows:

  • connect the PCB (i.e. FC) over the ribbon cable direct to the MK-USB (not over a wireless connection!). For the BL-Ctrl use the connector on the side of the MK-USB!

  • remove jumper from MK-USB
  • In the KopterTool select the appropriate file and start the update

  • place the jumper while the dots been displayed
    http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90325&g2_serialNumber=2

  • Now a OK should be behind the dots.
    http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90328&g2_serialNumber=2
    (After switching on the board always the bootloader starts first - then detects the update from the KopterTool and performs the update.)

  • Repeat if it don't work. Timing is the matter of fact.

If it comes to frequent interruptions with error-messages the computer can be also the problem.

If a laptop is used and the power for the modules is supplied over the MK-USB the power can be not sufficient.
Here you should either provide the module with an external power supply or a lipo. Or a PC is used for the update.

Following is a helpful tutorial from Quadrocopter.com

Quadrocopter Tutorial - Upgrading Firmware with MKTools from Quadrocopter on Vimeo.

Comments