User Tools

Site Tools


projects:virtualmachine:index

This is an old revision of the document!


Bitcraze Virtual Machine

In order to easily get going with the development of Bitcraze projects we have pre-configured a virtual machine that can be imported into Oracle VirtualBox. It contains all the pre-requisites needed for development and usage of the projects at Bitcraze.

Note The virtual machine can also be imported into WM Player however you will then have to install the guest tools by yourself.

If you would like to create your own virtual machine instead of downloading ours, then have a look at these intructions.

Please note: All the instructions here (and on sub-pages) are always updated to match the latest available version of the VM and might not be valid for earlier versions.

Download

You can download the VM using one of the link below:

Please note that direct downloads are hosted at MEGA, so it's limited to 6 downloads at a time. Using torrents are preferred.

VM info

The latest available version of the VM is 0.6 and is created from scratch (i.e not updated from 0.5).

OS  : Xubuntu 14.10
HDD : ~29 GB (dynamically sized)
RAM : 1 GB
User: bitcraze
Pass: crazyflie

Configuration

The VM comes pre-configured with the following:

  • udev rules for Crazyradio, Crazyradio bootloader and Crazyflie 2.0
  • Pre-configured USB filters for passing Crazyradio, the NRF BOOT and the Crazyflie 2.0 to the VM (not enabled by default)

NOTE: The USB filters in the 0.3 version of the VM specify a serial number for the radio dongle. This means the pre-configured filter cannot be used as is. Create your own filter by plugging in the radio and then choosing “Add Filter”, the dongle should appear in the provided list. You can also edit and remove the serial number from the Filter which will make it work for all Crazyradio dongles.

Installed software

Below is a overview of what's installed in the virtual machine:

  • VirtualBox guest additions (for network sharing, screen resize, etc)
  • gnu-arm-none-eabi toolchain and build tools
  • Git and gitg
  • pyusb, pysdl2 and pyqt
  • Qt4 and QtDesigner
  • PyQtGraph
  • PyCharm
  • Oracle Java JRE (for PyCharm)
  • KiCad
  • Eclipse with compiling/debugging/flashing configured (for use with STLink v2)
  • SDCC

Projects

The following projects are cloned into the VM:

  • crazyflie-firmware
  • crazyflie-bootloader
  • crazyflie-pc-client
  • crazyradio-firmware
  • crazyradio-electronics
  • crazyflie-android-client
  • crazyflie2-exp-template-electronics
  • crazyflie2-stm-bootloader
  • crazyflie2-nrf-bootloader
  • crazyflie2-nrf-firmware

There are also short-cuts on the desktop to easily run the Crazyflie PC client and also to update all the projects to the latest version available on GitHub.

Development

The VM comes pre-installed and pre-configured for development. Here's what you can do:

HOW-TOs

Update all the projects

If you would like to update to the latest version from GitHub for all the projects you can either use the short-cut on the desktop (Update all projects) or run the following command:

/home/bitcraze/bin/update_all_projects.sh

Run the Crazyflie PC client

If you would like to fly the Crazyflie then you should to the following:

  • Insert the controller and Crazyradio and pass them to the VM. In VirtualBox this is done by right-clicking on the USB icon in the bottom left hand of the screen and selecting the Crazyradio and the controller
  • Start the cfclient either by using the short-cut on the desktop (Crazyflie PC client latest) or by running the following command:
    /home/bitcraze/projects/crazyflie-pc-client/cfclient
  • Press the Connect button and select the URI starting with radio and then press Connect

PLEASE NOTE: If no controller is passed to VirtualBox the default controller will be the VirtualBox USB Tablet. This device together with the default controller mapping will set the thrust depending on where the mouse-pointer is on the screen. Make sure to check that there's no thrust before connecting to the Crazyflie.

Build the Crazyflie firmware

Running the following commands will build the firmware which can be flashed with the wireless bootloader. For updating the Crazyflie use the resulting cflie.bin.

cd ~/projects/crazyflie-firmware
make CLOAD=1 DEBUG=0

Tutorials

projects/virtualmachine/index.1455798365.txt.gz · Last modified: 2016-02-18 13:26 by kristoffer