diff --git a/src/MetadataExporter.cpp b/src/MetadataExporter.cpp
index fbd27d036afb51883e56af35b25148e96fa86b6d..125baec0a451646b3b0dc6f7386785e5b13f7dbb 100644
--- a/src/MetadataExporter.cpp
+++ b/src/MetadataExporter.cpp
@@ -159,6 +159,13 @@ void MetadataExporter::init_device()
                 m_server_sp = SSLServer::create(this, m_configuration_sp);
             else
                 m_server_sp = PlainServer::create(this, m_configuration_sp);
+
+            //Start device if auto start enabled
+            if(autoStart)
+            {
+                INFO_STREAM << "FitsImporter::init_device() auto start enabled " << endl;
+                on();
+            }
         }
         catch(std::exception& ex)
         {
@@ -212,6 +219,7 @@ void MetadataExporter::get_device_property()
 	dev_prop.push_back(Tango::DbDatum("DatabaseConnectionNumber"));
 	dev_prop.push_back(Tango::DbDatum("ExportedTables"));
 	dev_prop.push_back(Tango::DbDatum("AuthorisedUsers"));
+	dev_prop.push_back(Tango::DbDatum("AutoStart"));
 
 	//	is there at least one property to be read ?
 	if (dev_prop.size()>0)
@@ -380,6 +388,17 @@ void MetadataExporter::get_device_property()
 		//	And try to extract AuthorisedUsers value from database
 		if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  authorisedUsers;
 
+		//	Try to initialize AutoStart from class property
+		cl_prop = ds_class->get_class_property(dev_prop[++i].name);
+		if (cl_prop.is_empty()==false)	cl_prop  >>  autoStart;
+		else {
+			//	Try to initialize AutoStart from default device value
+			def_prop = ds_class->get_default_device_property(dev_prop[i].name);
+			if (def_prop.is_empty()==false)	def_prop  >>  autoStart;
+		}
+		//	And try to extract AutoStart value from database
+		if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  autoStart;
+
 	}
 
 	/*----- PROTECTED REGION ID(MetadataExporter::get_device_property_after) ENABLED START -----*/
diff --git a/src/MetadataExporter.h b/src/MetadataExporter.h
index 04a1d28493947d0dc92097e7622f91d1e7bc189e..859652c93e2b3b258a8cc2bba51e6cfefdeeb45e 100644
--- a/src/MetadataExporter.h
+++ b/src/MetadataExporter.h
@@ -121,6 +121,8 @@ public:
 	//	AuthorisedUsers:	Authorised user list: one user per row
 	//  [username password]
 	vector<string>	authorisedUsers;
+	//	AutoStart:	Exec On command after init if state is not fault
+	Tango::DevBoolean	autoStart;
 
 
 //	Constructors and destructors
diff --git a/src/MetadataExporter.xmi b/src/MetadataExporter.xmi
index 41c3c6b6d1db2f7ff7f0341d37edd8868789be92..e6e2621255a132684e19540c9539166dec4ceb49 100644
--- a/src/MetadataExporter.xmi
+++ b/src/MetadataExporter.xmi
@@ -84,6 +84,11 @@
       <type xsi:type="pogoDsl:StringVectorType"/>
       <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
     </deviceProperties>
+    <deviceProperties name="AutoStart" description="Exec On command after init if state is not fault">
+      <type xsi:type="pogoDsl:BooleanType"/>
+      <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
+      <DefaultPropValue>false</DefaultPropValue>
+    </deviceProperties>
     <commands name="State" description="This command gets the device state (stored in its device_state data member) and returns it to the caller." execMethod="dev_state" displayLevel="OPERATOR" polledPeriod="0">
       <argin description="none">
         <type xsi:type="pogoDsl:VoidType"/>
diff --git a/src/MetadataExporterClass.cpp b/src/MetadataExporterClass.cpp
index f633b588485c0f0b1c80fc1f5e597d69d8613a95..923b000e2ab6deacbd10409109d424062b53f306 100644
--- a/src/MetadataExporterClass.cpp
+++ b/src/MetadataExporterClass.cpp
@@ -606,6 +606,20 @@ void MetadataExporterClass::set_default_property()
 	}
 	else
 		add_wiz_dev_prop(prop_name, prop_desc);
+	prop_name = "AutoStart";
+	prop_desc = "Exec On command after init if state is not fault";
+	prop_def  = "false";
+	vect_data.clear();
+	vect_data.push_back("false");
+	if (prop_def.length()>0)
+	{
+		Tango::DbDatum	data(prop_name);
+		data << vect_data ;
+		dev_def_prop.push_back(data);
+		add_wiz_dev_prop(prop_name, prop_desc,  prop_def);
+	}
+	else
+		add_wiz_dev_prop(prop_name, prop_desc);
 }
 
 //--------------------------------------------------------