Yotta¶
The micro:bit DAL is built on top of ARM mbed and hence uses yotta as an offline build system.
When using yotta
to build micro:bit projects there are currently two supported toolchains:
- GCC
- ARMCC
Installation on Windows¶
Install yotta and dependencies¶
The first step is to get yotta
and its dependencies onto your machine, to do this follow the install guide here.
For the micro:bit targets you currently still need the srecord
tools, which can be installed on Windows from sourceforge.
srecord
is used to create the final binaries for the micro:bit so is an essential dependency.
Fetch the example project¶
git clone https://github.com/lancaster-university/microbit-samples
cd microbit-samples
Set your yotta target¶
A yotta
target contains the information required by yotta
in order to build a project for a specific combination of hardware. This includes the type of compiler. The microbit projects can build with both armcc
and gcc
, but as it gets installed with the yotta
installer, we'll use gcc
by default and choose a micro:bit specific target that knows about the hardware on the board.
You can use either yotta
or yt
, which is far easier to type!
yt target bbc-microbit-classic-gcc
Note
In microbit-samples this target will be configured by default.
You only need to set the target once per project. All future yotta
commands will use this target information (for example, when resolving dependencies).
Build the project¶
yt build
Flash your micro:bit¶
The final step is to check your hex works.
The yt build
command will place files in /build/<TARGET_NAME>/source
. The file you will need to flash will be microbit-combined.hex. Simply drag and drop the hex onto the MICROBIT usb device.
In the case of our example, using bbc-microbit-classic-gcc
we could flash the micro:bit (assuming it is plugged in and mounted at E:
) as follows:
copy build\bbc-microbit-classic-gcc\source\microbit-samples-combined.hex E:
The expected result will be that the micro:bit will scroll HELLO WORLD! :)
on its display.
Installation on Mac OSX¶
Install yotta and dependencies¶
The first step is to get yotta
and its dependencies onto your machine, to do this follow the install guide here.
For the micro:bit targets you currently still need the srecord
tools, which can be installed on Mac OSX using
brew:
brew install srecord
You can also install it manually from sourceforge.
srecord
is used to create the final binaries for the micro:bit so is an essential dependency.
Fetch the example project¶
git clone https://github.com/lancaster-university/microbit-samples
cd microbit-samples
Set your yotta target¶
A yotta
target contains the information required by yotta
in order to build a project for a specific combination of hardware. This includes the type of compiler. The microbit projects can build with both armcc
and gcc
, but as it gets installed with the yotta
installer, we'll use gcc
by default and choose a micro:bit specific target that knows about the hardware on the board.
You can use either yotta
or yt
, which is far easier to type!
yt target bbc-microbit-classic-gcc
Note
In microbit-samples this target will be configured by default.
You only need to set the target once per project. All future yotta
commands will use this target information (for example, when resolving dependencies).
Build the project¶
yt build
Flash your micro:bit¶
The final step is to check your hex works.
The yt build
command will place files in /build/<TARGET_NAME>/source
. The file you will need to flash will be microbit-samples-combined.hex
. Simply drag and drop the hex onto the MICROBIT usb device.
In the case of our example, using bbc-microbit-classic-gcc
we could flash the micro:bit (assuming it is plugged in and mounted at /Volumes/"MICROBIT"
) as follows:
cp ./build/bbc-microbit-classic-gcc/source/microbit-samples-combined.hex /Volumes/"MICROBIT"
The expected result will be that the micro:bit will scroll HELLO WORLD! :)
on its display.
Note
Note that if you'd like to copy the file from the command line, you can use the following command in any yotta
project to do so, though it assumes you have only one micro:bit plugged in:
cp build/$(yt --plain target | head -n 1 | cut -f 1 -d' ')/source/$(yt --plain ls | head -n 1 | cut -f 1 -d' ')-combined.hex /Volumes/"MICROBIT"
Installation on Linux¶
Install yotta and dependencies¶
The first step is to get yotta
and its dependencies onto your machine, to do this follow the install guide here.
For the micro:bit targets you currently still need the srecord
tools, which can be installed on Ubuntu using
sudo apt-get install srecord
You can also install it manually from sourceforge.
srecord
is used to create the final binaries for the micro:bit so is an essential dependency.
Fetch the example project¶
git clone https://github.com/lancaster-university/microbit-samples
cd microbit-samples
Set your yotta target¶
A yotta
target contains the information required by yotta
in order to build a project for a specific combination of hardware. This includes the type of compiler. The microbit projects can build with both armcc
and gcc
, but as it gets installed with the yotta
installer, we'll use gcc
by default and choose a micro:bit specific target that knows about the hardware on the board.
You can use either yotta
or yt
, which is far easier to type!
yt target bbc-microbit-classic-gcc
Note
In microbit-samples this target will be configured by default.
You only need to set the target once per project. All future yotta
commands will use this target information (for example, when resolving dependencies).
Build the project¶
yt build
Flash your micro:bit¶
The final step is to check your hex works.
The yt build
command will place files in /build/<TARGET_NAME>/source
. The file you will need to flash will be microbit-samples-combined.hex
. Simply drag and drop the hex onto the MICROBIT usb device.
In the case of our example, using bbc-microbit-classic-gcc
we could flash the micro:bit (assuming it is plugged in and mounted at /media/MICROBIT
) as follows:
cp ./build/bbc-microbit-classic-gcc/source/microbit-samples-combined.hex /media/MICROBIT
The expected result will be that the micro:bit will scroll HELLO WORLD! :)
on its display.
Note
Note that if you'd like to copy the file from the command line, you can use the following command in any yotta
project to do so, though it assumes you have only one micro:bit plugged in:
cp build/$(yt --plain target | head -n 1 | cut -f 1 -d' ')/source/$(yt --plain ls | head -n 1 | cut -f 1 -d' ')-combined.hex /media/MICROBIT/