This page as an PDF-Document? Click on that Symbol and wait a little moment... --->

MikroKopter-Software

Software Update




Software-Update

On all MikroKopter boards (FlightCtrl, NaviCtrl, etc.) there is a boot loader. This make's it simple to update the software.

You only need a MK-USB (or for older PC's the SerCon) for the update.
So you can update easy all the boards (like FlightCtrl, NaviCtrl, MK3Mag, ...).
How to set up and connect the MK-USB it is described here: MK-USB

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.

Important

If you use a Micro SD-Card in your NaviCtrl, clear after an Update of the NaviCtrl the SETTINGS.INI on the SD-Card.
This .ini contains some needed values. The new Software will set a new file with the needed values automatically after a restart.

Here a Video who show's you the update:

Where to get 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

Connecting the modules

To provide the individual boards with new software, there are two possibilities:

  • Either the MK-USB is attached to the Kopter/MK-Tower.

  • Or the MK-USB is connected directly to the relevant board.

Connection example at MikroKopter / MK-Tower

Is only the FlightCtrl installed, the MK-USB is plugged into the 10-pin interface "EXT/SV1" of the FlightCtrl.

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=89949&g2_serialNumber=2

However, if the MK-Tower is used at the MikroKopter (FlightCtrl, NaviCtrl, MK3Mag, MK-GPS), the FlightCtrl and the NaviCtrl are connected over
a 6-pin and one 10-pin cable.
The MK-USB is plugged into the 10 pole interface "Debug" at the NaviCtrl.

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=89954&g2_serialNumber=2

The jumper on the MK-USB is still open. To power the MikroKopter, please use the lipo
or a power supply.
A regulated power supply is particularly recommended for the first start of the MikroKopter to avoid damage to the Kopter
which could occur due to a soldering / assembly error.

{i} If the jumper on the MK-USB is closed and no power supply (Lipo / AC adapter) is applied, the modules can
be detected but it can lead to errors in the KopterTool (e.g. a I2C error) or to programming interruptions.

/!\ Attention: An update of the BL-Ctrl is over the MikroKopter/MK-Tower NOT possible!
For an update or to control the software version, the BL-Ctrl must be connected directly to the MK-USB.
Even if you have an error on a BL-Ctrl. To read the error code from the BL-Ctrl, the BL-Ctrl must be connected directly to the MK-USB.
(see: Connecting individual modules)

Examples for connecting individual modules

Each module can also be updated if you connecting it directly to the MK-USB.
Here are some examples of how the modules can be connected to the MK-USB:

/!\ The 10pole ribbon cable must be hooked up with the connector "1" (red marked side) to the connector "1" of the individual module board!
The connecting pin "1" is marked on the board.
http://gallery.mikrokopter.de/main.php/v/tech/IMG_5010.JPG.html

The red arrows are marking pin "1"

FlightCtrl:

NaviCtrl:

BL-Ctrl:

MK3Mag:

http://gallery.mikrokopter.de/main.php/v/tech/MKUSB-FlightCtrl.jpg.html

http://gallery.mikrokopter.de/main.php/v/tech/MKUSB-NaviCtrl.jpg.html

http://gallery.mikrokopter.de/main.php/v/tech/MKUSB-BL-Ctrl.jpg.html

http://gallery.mikrokopter.de/main.php/v/tech/MKUSB-MK3Mag.jpg.html


{i} If the boards, as shown in the pictures, are individually connected, the voltage supply is supported by the MK-USB.
Therefor the jumper on the MK-USB has to be closed.

The Updates

FlightCtrl / NaviCtrl / MK3Mag

After the Kopter / the modules are connected over the the MK-Tower (or Sercon) to the KopterTool, everything is ready for an update.

  • {i} If the MK3Mag is directly connected to the MK-USB, take care that the connection between the jack of the ribbon cable and

the MK3Mag connector is correctly.
If the 10-pin plug connector of the MK3Mag is to short, you doesn't have a connection and you can't update it.

After you power on the board, you see this in the terminal window of the KopterTool:

Display Tower
(FlightCtrl + NaviCtrl + Compass + GPS)

Display FlightCtrl
(single connected)

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90176&g2_serialNumber=2

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90164&g2_serialNumber=2


Display NaviCtrl
(single connected)

Display MK3Mag
(single connected)

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90168&g2_serialNumber=2

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90200&g2_serialNumber=4



Through a "click" on the button Update Software (serial)... the selection window will open up.

There you can chose the software for your unit:

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=77571&g2_serialNumber=2

With a "click" on open the update will start:

Display Update FlightCtrl

Display Update NaviCtrl

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90192&g2_serialNumber=2

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90196&g2_serialNumber=2

Display Update MK3Mag

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90204&g2_serialNumber=2



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.

{i} It may be that after running the initialization characters like (# D ===== rwerEW == == fesf etc.) are displayed in the terminal. This is normal and not an error.

BL-Ctrl

For an update (or the display of any error messages at the BL-Ctrl), the BL-Ctrl must be connected right on the side of the MK-USB (or at the Sercon).
For this purpose a Slot-connector can be used or a pin-connector built by yourself. (See also: Connect BL-Ctrl to MK-USB).
It could look like in this way:

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90278&g2_serialNumber=2

{i} The upper bar contains the odd numbers, the lower the even numbers.

Another possibility:
The four required lines, for Rx (Pin 8), Tx (pin 3) Gnd (Pin 10) and +5 V (pin 2) can temporarily soldered directly to the regulator.
The power will be supplied via the MK-USB and a closed jumper.

/!\ ATTENTION: If the BL-Ctrl is still mounted in the Kopter, power can be supplied with the lipo or an external power supply. In this case the jumper on the MK-USB must be open.
Please Note: You have to disconnect the FlightCtrl if the BL-Ctrl are still mounted on the Kopter.

Is the BL-Ctrl over the MK-USB (or Sercon) connected with the KopterTool, everything is ready for an update.
After powering the BL-Ctrl you will see this in the terminal window of the KopterTool:

Display BL-Ctrl 1.2

Display BL-Ctrl 2.0

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90260&g2_serialNumber=2

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90264&g2_serialNumber=2


Through a "click" on the button Update Software (serial)... the selection window will open up.

There you can chose the software for your unit:

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=77571&g2_serialNumber=2

With a "click" on Open the update will start:

Display Update BL-Ctrl 1.2

Display Update BL-Ctrl 2.0

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90268&g2_serialNumber=2

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90272&g2_serialNumber=2



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.

Update failed - what now?

If an update failed or is cancelled during the transfer, the software on the processor is cleared or useless.
Thereafter, the board has maybe no function anymore and the lights are off.
Also it can happen, that the buzzer (if connected) will continuous beeping.

{i} BUT DON'T PANIC!: The Bootloader is still there.

When reconnecting the module (or immediately after a failed update) the bootloader will be displayed instead of the initialization of the software:
(In rare cases, the bootloader is not displayed, although this is still available!)

Display Bootloader - Example: FlightCtrl

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90172&g2_serialNumber=2



A faulty update usually looks something like this:

Example of failed updates:

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90188&g2_serialNumber=4

http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=90180&g2_serialNumber=4



What can be checked first? The following can be the cause:

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).

{i} 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 this does not work, please take a look at the info-box below.


Important

  • The manual reset is easier and faster if you connect the PCB directly to the Kopter or a power supply and not with a closed jumper on the MK-USB.
    Instead of the jumper on the MK-USB, you can disconnect/connect the power supply to get the needed "OK".


    {i} 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.


    If you use a MAC or a other operation system, you can have problems too.
    In most cases only a "real" Windows-PC will then help if an update fails.

Bootloader

Information for Expert function Import Bootloader you can read here: Bootloader