diff --git a/conanfile.py b/conanfile.py
index 8324d9a938bb738e12a4a7bc386adecc80d65b41..0858b7dcdcd97de90d969dc6fb417857df799b44 100644
--- a/conanfile.py
+++ b/conanfile.py
@@ -1,6 +1,4 @@
 from conan import ConanFile
-from conan.tools.cmake import CMakeToolchain, CMake, cmake_layout, CMakeDeps
-
 
 class ContinuousAORecipe(ConanFile):
     name = "continuousao"
@@ -8,8 +6,10 @@ class ContinuousAORecipe(ConanFile):
     version = "1.0.5"
     package_type = "application"
     user = "soleil"
+    python_requires = "base/[>=1.0]@soleil/stable"
+    python_requires_extend = "base.Device"
 
-    license = "GPL-3.0-or-later"
+    license = "GPL-3.0-or-later"    
     author = "Gwenaelle Abeille"
     url = "https://gitlab.synchrotron-soleil.fr/software-control-system/tango-devices/inputoutput/adlink/continuousao.git"
     description = "ContinuousAO device"
@@ -25,24 +25,3 @@ class ContinuousAORecipe(ConanFile):
         self.requires("asl/[>=1.0]@soleil/stable")
         if self.settings.os == "Linux":
             self.requires("crashreporting2/[>=1.0]@soleil/stable")
-    
-    def layout(self):
-        cmake_layout(self)
-
-    def generate(self):
-        deps = CMakeDeps(self)
-        deps.generate()
-        tc = CMakeToolchain(self)
-        tc.variables["PROJECT_NAME"] = self.name
-        tc.variables["PROJECT_VERSION"] = self.version
-        tc.variables["EXECUTABLE_NAME"] = self.executable
-        tc.generate()
-
-    def build(self):
-        cmake = CMake(self)
-        cmake.configure()
-        cmake.build()
-
-    def package(self):
-        cmake = CMake(self)
-        cmake.install()