diff --git a/pps_ws/src/d_fall_pps/param/Crazyflie.db b/pps_ws/src/d_fall_pps/param/Crazyflie.db
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..537875bc5a6513574ea5aa2ca02f35e1c3796e58 100644
--- a/pps_ws/src/d_fall_pps/param/Crazyflie.db
+++ b/pps_ws/src/d_fall_pps/param/Crazyflie.db
@@ -0,0 +1 @@
+1,CF2,123,0,0.04,0.24,-0.2,1.14,1.81,2
diff --git a/pps_ws/src/d_fall_pps/src/ViconDataPublisher.cpp b/pps_ws/src/d_fall_pps/src/ViconDataPublisher.cpp
index 9058b60ea1c592ee7799890705ac91b2670dae9c..ec636e50ddc891f6d9902bfa795e610250946e97 100755
--- a/pps_ws/src/d_fall_pps/src/ViconDataPublisher.cpp
+++ b/pps_ws/src/d_fall_pps/src/ViconDataPublisher.cpp
@@ -20,6 +20,8 @@
 #include "d_fall_pps/ViconData.h"
 #include "d_fall_pps/UnlabeledMarker.h"
 
+#define TESTING_FAKE_DATA
+
 // notice that unit here are in milimeters
 using namespace ViconDataStreamSDK::CPP;
 using namespace d_fall_pps;
@@ -33,6 +35,88 @@ int main(int argc, char* argv[]) {
     ros::Publisher viconDataPublisher =
         nodeHandle.advertise<ViconData>("ViconData", 1);
 
+
+    #ifdef TESTING_FAKE_DATA
+    // Test faking data part
+    float f = 0;
+    int i = 0;
+
+    ROS_INFO("TESTING_FAKE_DATA.................................");
+    while(ros::ok())
+    {
+        if(i % 1000 == 0)
+        {
+        	ROS_INFO("iteration #%d",i);
+    	}
+
+        // Testing piece of code
+        ViconData viconData;
+        UnlabeledMarker marker;
+
+        marker.index = 0;
+        marker.x = f;
+        marker.y = 0;
+        marker.z = 0;
+
+        viconData.markers.push_back(marker);
+
+
+        marker.index = 1;
+        marker.x = 0;
+        marker.y = f;
+        marker.z = 0;
+
+        viconData.markers.push_back(marker);
+
+        if(i > 50 && i < 100)
+        {
+            marker.index = 2;
+            marker.x = f;
+            marker.y = f;
+            marker.z = 0;
+            viconData.markers.push_back(marker);
+        }
+
+        ros::Duration(0.1).sleep();
+        f += 10/1000.0f;
+        i++;
+        // TODO: Fake CF data
+        CrazyflieData crazyfly;
+
+        crazyfly.occluded = false;
+
+        crazyfly.crazyflieName = "CF1";
+        crazyfly.x = 0;
+        crazyfly.y = 0;
+        crazyfly.z = 0;
+        crazyfly.yaw = 3.14159 * f;
+        viconData.crazyflies.push_back(crazyfly);
+
+        crazyfly.crazyflieName = "CF2";
+        crazyfly.x = 1;
+        crazyfly.y = 1;
+        crazyfly.z = 0;
+        crazyfly.yaw = -3.14159 * f;
+        viconData.crazyflies.push_back(crazyfly);
+
+        crazyfly.crazyflieName = "CF3";
+        crazyfly.x = 1;
+        crazyfly.y = -1;
+        crazyfly.z = 0;
+        crazyfly.yaw = -3.14159 * f;
+
+
+        if(i > 50 && i < 200)
+        {
+            crazyfly.occluded = true;
+        }
+
+        viconData.crazyflies.push_back(crazyfly);
+
+        viconDataPublisher.publish(viconData); // testing data
+    }
+    #else
+
     Client client;
 
     std::string hostName;
@@ -152,4 +236,6 @@ int main(int argc, char* argv[]) {
     client.DisableDeviceData();
 
     client.Disconnect();
+    #endif
+
 }