diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..7d355b72b8ba8750d44b455ae53ee2ed82c5faeb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.settings
+.vscode/
+build/
diff --git a/launch/demo_bodydynamics.launch b/launch/demo_bodydynamics.launch
new file mode 100644
index 0000000000000000000000000000000000000000..a4d3a6623a2c12e34c794c9574ac4d01ce14a396
--- /dev/null
+++ b/launch/demo_bodydynamics.launch
@@ -0,0 +1,38 @@
+<!-- -->
+<launch>
+    <!--USER ARGS-->
+    <arg name="rviz" default="true" /> 
+    <arg name="speed" default="1" />
+    <arg name="sec" default="0" />
+    <arg name="sim_time" default="true" />
+    
+    <arg name="profiling" default="false" />
+    <arg name="gdb" default="false" />
+    <arg name="launch_pref" default="" unless="$(eval profiling or gdb)"/>
+    <arg name="launch_pref" value="valgrind --tool=callgrind --callgrind-out-file='callgrind.wolf.%p'" if="$(arg profiling)" />
+    <arg name="launch_pref" value="gdb -ex run --args" if="$(arg gdb)" />
+
+    <arg name="bag" default="rosbag_hovering"/>
+    
+    
+    <!--VISUALIZATION-->
+    <group if="$(arg rviz)">
+        <node name="rviz"
+             pkg="rviz"
+             type="rviz" 
+             args="-d $(find wolf_demo_uav_identification)/rviz/online.rviz" />
+    </group>
+
+    <!--WOLF-->
+    <node type="wolf_ros_node" 
+          name="wolf_ros_node" 
+          pkg="wolf_ros_node"
+          output="screen"
+          required="true"
+          launch-prefix="$(arg launch_pref)">
+        <param name="~yaml_file_path" value="$(find wolf_demo_uav_identification)/yaml/problem_force_torque_inertial_dynamics_simulation.yaml" />
+        <remap from="/wrench_accel" to="/fmu/sensor_accel/out"/>
+        <remap from="/wrench_gyro" to="/fmu/sensor_gyro/out"/>
+        <remap from="/wrench_actuators" to="/fmu/actuator_outputs/out"/>
+    </node>
+</launch>