This page has deprecated and moved to the new documentation framework of the main Bitcraze website. Please go to [[https://www.bitcraze.io/documentation/system/]] ==== ROS ==== The ROS module for positioning with the LPS is available on Github: https://github.com/bitcraze/lps-ros. It is developed and tested on ROS Kinetic running on Ubuntu 16.04. As of now ROS is the only software environment in which the system has been tested. To get started from a newly installed Ubuntu 16.04: - Install ROS (full desktop): http://wiki.ros.org/kinetic/Installation/Ubuntu - Install the ros joystick node with sudo apt-get install ros-kinetic-joy - Create your workspace: http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment#Create_a_ROS_Workspace - Clone https://github.com/bitcraze/lps-ros and https://github.com/whoenig/crazyflie_ros in the workspace src folder - Run //catkin_make// to build the packages - Source the workspace //devel/setup.bash// again - Run //rosdep install bitcraze_lps_estimator// to install dependencies The positions of the anchors has to be entered in a configuration file. Create a file at //catkin_ws/src/lps-ros/data/anchor_pos.yaml// and enter your anchor coordinates. An example is present in the data folder: n_anchors: 6 anchor0_pos: [ 0, 0, 1.85] anchor1_pos: [ 0, 2, 1.85] anchor2_pos: [ 4, 2, 1.85] anchor3_pos: [ 4, 0, 1.85] anchor4_pos: [1.3, 1, 1.85] anchor5_pos: [2.6, 1, 1.85] The positions are in meters, [x, y, z], from the origin. When this file is configured, connect an XBox 360 (or compatible) gamepad, start the Crazyflie 2.0 and launch: $ roslaunch bitcraze_lps_estimator dwm_loc_ekf_hover.launch uri:=radio://0/80/250K x:=3 y:=2.3 z:=1.0 Change the URI with your copter radio configuration. You will see the anchor position in RED so that you can verify there position make sense. The Crazyflie position will be shown in green, before flying you can verify that the position is roughly correct. The X,Y,Z parameter will be the hovering point, make sure they make sense in your setup and it is better to place the Crazyflie just under this first setpoint to start with. The gamepad mapping is (this is for an X-Box gamepad): | **Button** | **Action** | | X | Take-off | | A | Land | | B | Emergency stop (this is the red button ;) | | Left joystick | X/Y position | | Right joystick | Altitude/Yaw setpoint | Note that the YAW setpoint is not handled yet.