diff --git a/CMakeLists.txt b/CMakeLists.txt
index 81a3e78efbcc8cb875a00173a48838f9c7d82154..27938ddc12c037f3c177d99e40fead59cdee165f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,9 +11,7 @@ include(${ArmarXCore_USE_FILE})
 armarx_project("RobotAPI")
 
 add_subdirectory(source)
-add_subdirectory(interface)
 
 install_project()
 
-
 add_subdirectory(scenarios)
diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt
deleted file mode 100644
index 0c47b575be2866337362dffefeb5724d3c3951e5..0000000000000000000000000000000000000000
--- a/interface/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-###
-### CMakeLists.txt file for ArmarX Interfaces
-###
-
-set(ROBOTAPI_INTERFACE_DEPEND ArmarXCore)
-# generate the interface library
-armarx_interfaces_generate_library(RobotAPI 0.1.0 0 "${ROBOTAPI_INTERFACE_DEPEND}")
diff --git a/interface/slice/.gitkeep b/interface/slice/.gitkeep
deleted file mode 100644
index 65df063943986e0bdf4c4ecf5e822d953a402fd7..0000000000000000000000000000000000000000
--- a/interface/slice/.gitkeep
+++ /dev/null
@@ -1,4 +0,0 @@
-Git can only track files and not directory.
-
-Therefore this file is added to all empty directories
-which need to be available after a Git clone.
diff --git a/source/RobotAPI/CMakeLists.txt b/source/RobotAPI/CMakeLists.txt
index 928669e4b4bbbbf4dbbf12d6bbd79138aa6bfaa5..4c0666de8719de23cd140205a2f3bc9948fd3e80 100644
--- a/source/RobotAPI/CMakeLists.txt
+++ b/source/RobotAPI/CMakeLists.txt
@@ -1,3 +1,4 @@
+add_subdirectory(interface)
 add_subdirectory(core)
 add_subdirectory(motioncontrol)
 add_subdirectory(applications)
diff --git a/source/RobotAPI/interface/CMakeLists.txt b/source/RobotAPI/interface/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..4fa3f1ba89d44f53b52ddfceee7786afec483ca9
--- /dev/null
+++ b/source/RobotAPI/interface/CMakeLists.txt
@@ -0,0 +1,32 @@
+###
+### CMakeLists.txt file for ArmarX Interfaces
+###
+
+set(ROBOTAPI_INTERFACE_DEPEND ArmarXCore)
+
+set(SLICE_FILES
+	hardware/HardwareInterface.ice
+	
+	observers/KinematicUnitObserverInterface.ice
+	observers/PlatformUnitObserverInterface.ice
+
+	robotstate/LinkedPoseBase.ice
+	robotstate/PoseBase.ice
+	robotstate/RobotState.ice
+	robotstate/RobotStateObserverInterface.ice
+	
+    selflocalisation/SelfLocalisationProcess.ice
+
+	units/ForceTorqueUnit.ice
+	units/HandUnitInterface.ice
+	units/HapticUnit.ice
+	units/HeadIKUnit.ice
+	units/KinematicUnitInterface.ice
+	units/PlatformUnitInterface.ice
+	units/TCPControlUnit.ice
+	units/TCPMoverUnitInterface.ice
+	units/UnitInterface.ice
+)
+
+# generate the interface library
+armarx_interfaces_generate_library(RobotAPI 0.1.0 0 "${ROBOTAPI_INTERFACE_DEPEND}")
diff --git a/interface/slice/hardware/HardwareInterface.ice b/source/RobotAPI/interface/hardware/HardwareInterface.ice
similarity index 100%
rename from interface/slice/hardware/HardwareInterface.ice
rename to source/RobotAPI/interface/hardware/HardwareInterface.ice
diff --git a/interface/slice/observers/KinematicUnitObserverInterface.ice b/source/RobotAPI/interface/observers/KinematicUnitObserverInterface.ice
similarity index 100%
rename from interface/slice/observers/KinematicUnitObserverInterface.ice
rename to source/RobotAPI/interface/observers/KinematicUnitObserverInterface.ice
diff --git a/interface/slice/observers/PlatformUnitObserverInterface.ice b/source/RobotAPI/interface/observers/PlatformUnitObserverInterface.ice
similarity index 100%
rename from interface/slice/observers/PlatformUnitObserverInterface.ice
rename to source/RobotAPI/interface/observers/PlatformUnitObserverInterface.ice
diff --git a/interface/slice/robotstate/LinkedPoseBase.ice b/source/RobotAPI/interface/robotstate/LinkedPoseBase.ice
similarity index 100%
rename from interface/slice/robotstate/LinkedPoseBase.ice
rename to source/RobotAPI/interface/robotstate/LinkedPoseBase.ice
diff --git a/interface/slice/robotstate/PoseBase.ice b/source/RobotAPI/interface/robotstate/PoseBase.ice
similarity index 100%
rename from interface/slice/robotstate/PoseBase.ice
rename to source/RobotAPI/interface/robotstate/PoseBase.ice
diff --git a/interface/slice/robotstate/RobotState.ice b/source/RobotAPI/interface/robotstate/RobotState.ice
similarity index 100%
rename from interface/slice/robotstate/RobotState.ice
rename to source/RobotAPI/interface/robotstate/RobotState.ice
diff --git a/interface/slice/robotstate/RobotStateObserverInterface.ice b/source/RobotAPI/interface/robotstate/RobotStateObserverInterface.ice
similarity index 100%
rename from interface/slice/robotstate/RobotStateObserverInterface.ice
rename to source/RobotAPI/interface/robotstate/RobotStateObserverInterface.ice
diff --git a/interface/slice/selflocalisation/SelfLocalisationProcess.ice b/source/RobotAPI/interface/selflocalisation/SelfLocalisationProcess.ice
similarity index 100%
rename from interface/slice/selflocalisation/SelfLocalisationProcess.ice
rename to source/RobotAPI/interface/selflocalisation/SelfLocalisationProcess.ice
diff --git a/interface/slice/units/ForceTorqueUnit.ice b/source/RobotAPI/interface/units/ForceTorqueUnit.ice
similarity index 100%
rename from interface/slice/units/ForceTorqueUnit.ice
rename to source/RobotAPI/interface/units/ForceTorqueUnit.ice
diff --git a/interface/slice/units/HandUnitInterface.ice b/source/RobotAPI/interface/units/HandUnitInterface.ice
similarity index 100%
rename from interface/slice/units/HandUnitInterface.ice
rename to source/RobotAPI/interface/units/HandUnitInterface.ice
diff --git a/interface/slice/units/HapticUnit.ice b/source/RobotAPI/interface/units/HapticUnit.ice
similarity index 100%
rename from interface/slice/units/HapticUnit.ice
rename to source/RobotAPI/interface/units/HapticUnit.ice
diff --git a/interface/slice/units/HeadIKUnit.ice b/source/RobotAPI/interface/units/HeadIKUnit.ice
similarity index 100%
rename from interface/slice/units/HeadIKUnit.ice
rename to source/RobotAPI/interface/units/HeadIKUnit.ice
diff --git a/interface/slice/units/KinematicUnitInterface.ice b/source/RobotAPI/interface/units/KinematicUnitInterface.ice
similarity index 100%
rename from interface/slice/units/KinematicUnitInterface.ice
rename to source/RobotAPI/interface/units/KinematicUnitInterface.ice
diff --git a/interface/slice/units/PlatformUnitInterface.ice b/source/RobotAPI/interface/units/PlatformUnitInterface.ice
similarity index 100%
rename from interface/slice/units/PlatformUnitInterface.ice
rename to source/RobotAPI/interface/units/PlatformUnitInterface.ice
diff --git a/interface/slice/units/TCPControlUnit.ice b/source/RobotAPI/interface/units/TCPControlUnit.ice
similarity index 100%
rename from interface/slice/units/TCPControlUnit.ice
rename to source/RobotAPI/interface/units/TCPControlUnit.ice
diff --git a/interface/slice/units/TCPMoverUnitInterface.ice b/source/RobotAPI/interface/units/TCPMoverUnitInterface.ice
similarity index 100%
rename from interface/slice/units/TCPMoverUnitInterface.ice
rename to source/RobotAPI/interface/units/TCPMoverUnitInterface.ice
diff --git a/interface/slice/units/UnitInterface.ice b/source/RobotAPI/interface/units/UnitInterface.ice
similarity index 100%
rename from interface/slice/units/UnitInterface.ice
rename to source/RobotAPI/interface/units/UnitInterface.ice