There are two possibilities to flash the board: using the default ARM DAPLink
or you can flash the board using Segger's JLink.
### DAPLink
The [DAPLink interface](https://www.mbed.com/en/development/hardware/prototyping-production/daplink/daplink-on-kl26z/) is the default way to flash the board and
works out of the box. When you plug the board to your host computer, it shows up
as a flash drive. To flash the board, you can simply copy your compiled `.hex`
The `micro:bit` port comes with a little script that does this automatically,
so you can flash the board as usual with
```
bash
make flash
```
The DAPLink interface provides however not means for debugging the board.
### JLink
Recently, Segger released a JLink firmware for the interface MCU on the
`micro:bit`. You have to follow [these instructions](https://www.segger.com/bbc-micro-bit.html) to flash the JLink firmware on your `micro:bit`. Don't worry,
the process is very simple and you can revert the firmware back to the DAPLink
default anytime ([as described here](https://www.mbed.com/en/development/hardware/prototyping-production/daplink/daplink-on-kl26z/)).
Once you have flashed the JLink firmware, you can flash the board like this:
```
bash
FLASHTOOL=jlink make flash
```
With the JLink firmware, you can now also do in-circuit debugging etc.
**Note: The current version of the JLink firmware
(JLink_OB_BBC_microbit_16-07-29.hex) does not support any serial port over USB,
so you can not use the RIOT shell with this firmware.**