Install dependencies

To use some features, and depending on what is already installed on your system, you may have to add some additional packages to your system.

Run the following command to make sure these are installed, now.

$ sudo apt install build-essential python-pip $ pip install apriltag

In addition, if you want to use the multimedia elements (client_gui and client_stream), you'll need these also.

$ sudo apt install python-matplotlib python-tk ffmpeg
Versions of the MDK from August 2020 onwards will target Python3 (Python2 is being sunset in 2020)—the commands above should be used with the python3- prefix, accordingly.

Install MDK

First, download the latest version of the MDK[1].

Next, unzip the MDK to a location of your choice.

Finally, perform the following commands to install the MDK.

$ cd ~/mdk-190211/bin/deb64 $ ./install_mdk.sh ...
Here we have assumed you are storing your MDK at ~/mdk-190211—you should replace this with the actual path you have chosen.
If you are running on 32-bit Debian, here and throughout the documentation, replace the token deb64 with the token deb32, wherever it appears.

[1] If your robot does not have the latest MDK installed, you can either install a matching version on your workstation, or update the software on your robot to the latest MDK by following this procedure.

Test MDK

Open a new bash terminal, and you should see text similar to that shown below.

________________________________________________________________ Sourcing mdk/setup.bash... MIRO edition: 2 MDK path: ~/mdk MDK release: R190518 User setup: ~/.miro2/config/user_setup.bash Local network address: 192.168.1.100 (set from miro_get_dynamic_address()) Robot network address: (not set) ROS master address: http://localhost:11311 (not set, assumed running locally) Type "miro_info" to see your environment ________________________________________________________________

Gotchas

Please check the FAQ section "MDK" for a list of common MDK installation gotchas if you find you have immediate problems.

What did that do?

The install script performs the following tasks.

Add symbolic link
A link is placed at ~/mdk that points at the newly-installed MDK.
Initialise automatically
A command is added to the bottom of ~/.bashrc to run setup.bash and initialise the MDK whenever you start a new bash terminal (you will see the output above when you do).
Configure network automatically
The network address of the local machine is recovered automatically when setup.bash is run, and is indicated as "Local network address" in the output above.
Create configuration directory
A configuration directory is created at ~/.miro2 and default configuration files are written there.
Build catkin workspace
If required, the catkin workspace at ~/mdk/catkin_ws is built.

Configuration

If you are happy with all of the above, particularly that "Local network address" is correct, then please proceed to Install ROS.

If you want to change any of these defaults, read the page Configure MDK for advice on doing so.

If "Local network address" is not correct, you must follow the instructions at Configure MDK to correct this before you can use the MDK.
"Robot network address" is "(not set)"—this is not needed if you are using the simulator, and the Off-board profile will walk you through configuring this, in due course, if you need to communicate with the robot.
If you anticipate that your system's network configuration may change in future, you may want to read through Configure MDK now so that you are aware of what may break if your network changes.