diff --git a/src/SingleShotAO.cpp b/src/SingleShotAO.cpp
index 5bce0009e2bb83b5940b147b07ec4b6e80ca7781..b5ed3f35a87f544e3c35beef359f834b40cd4356 100755
--- a/src/SingleShotAO.cpp
+++ b/src/SingleShotAO.cpp
@@ -601,6 +601,7 @@ void SingleShotAO::get_device_property()
 	if (Tango::Util::instance()->_UseDb==true) {
 		get_db_device()->get_property(dev_prop);
 	}
+
 	Tango::DbDatum def_prop, cl_prop;
 	SingleShotAOClass *ds_class = (static_cast<SingleShotAOClass *>(get_device_class()));
 	int	i = -1;
@@ -616,6 +617,7 @@ void SingleShotAO::get_device_property()
 	}
 	// And try to extract BoardNum value from database
 	if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  boardNum;
+	INFO_STREAM << "Raw BoardNum parsed: " << boardNum << endl;
 
 	//- <BoardType> -----------------------
 	// Try to initialize BoardType from class property
@@ -628,39 +630,37 @@ void SingleShotAO::get_device_property()
 	}
 	// And try to extract BoardType value from database
 	if (dev_prop[i].is_empty()==false)	dev_prop[i]  >>  boardType;
+	INFO_STREAM << "Raw BoardType parsed: " << boardType << endl;
 
 	//- <EnableRamps> -----------------------
 	//	Try to initialize EnableRamps from class property
 	cl_prop = ds_class->get_class_property(dev_prop[++i].name);
 	if (cl_prop.is_empty() == false) cl_prop >> enableRamps;
-	else
-	{
+	else {
 		//	Try to initialize EnableRamps from default device value
 		def_prop = ds_class->get_default_device_property(dev_prop[i].name);
 		if (def_prop.is_empty() == false) def_prop >> enableRamps;
 	}
 	//	And try to extract EnableRamps value from database
 	if (dev_prop[i].is_empty() == false) dev_prop[i] >> enableRamps;
+	INFO_STREAM << "EnableRamps parsed: " << (enableRamps ? "true" : "false") << endl;
 
 	//- <WriteMemorizedValuesAtInit> -----------------------
 	//	Try to initialize WriteMemorizedValuesAtInit from class property
 	cl_prop = ds_class->get_class_property(dev_prop[++i].name);
 	if (cl_prop.is_empty() == false) cl_prop >> writeMemorizedValuesAtInit;
-	else
-	{
+	else {
 		//	Try to initialize WriteMemorizedValuesAtInit from default device value
 		def_prop = ds_class->get_default_device_property(dev_prop[i].name);
 		if (def_prop.is_empty() == false) def_prop >> writeMemorizedValuesAtInit;
 	}
 	//	And try to extract WriteMemorizedValuesAtInit value from database
 	if (dev_prop[i].is_empty() == false) dev_prop[i] >> writeMemorizedValuesAtInit;
-
+	INFO_STREAM << "WriteMemorizedValuesAtInit parsed: " << (writeMemorizedValuesAtInit ? "true" : "false") << endl;
 
 	// Check critical properties being present
 	//--------------------------------------------
-
 	critical_properties_missing = false;
-
 	if (dev_prop[0].is_empty())
 	{
 		ERROR_STREAM << "Required device property <BoardNum> is missing" << endl;
@@ -671,20 +671,20 @@ void SingleShotAO::get_device_property()
 		ERROR_STREAM << "Required device property <BoardType> is missing" << endl;
 		critical_properties_missing = true;
 	}
-
 	if (critical_properties_missing) {
 		return;
 	}
 
 	// Check critical properties being valid
 	//--------------------------------------------
-
 	//- <BoardNum> -----------------------
 	if (boardNum < 0 || boardNum > 7)
 	{
 		boardNum = 0;
 		ERROR_STREAM << "device property <BoardNum> is invalid. Valid range is [0..7]" << endl;
 		critical_properties_missing = true;
+	} else {
+		INFO_STREAM << "BoardNum resolved to " << boardNum << endl;
 	}
 
 	//- <BoardType> -----------------------
@@ -692,11 +692,13 @@ void SingleShotAO::get_device_property()
 	{
 		boardType = k6208_BOARD_TYPE;
 		boardTypeId = adl::PCI6208;
+		INFO_STREAM << "BoardType resolved to PCI6208" << endl;
 	}
 	else if (boardType == "MAO_6216")
 	{
 		boardType = k6216_BOARD_TYPE;
 		boardTypeId = adl::PCI6216;
+		INFO_STREAM << "BoardType resolved to PCI6216" << endl;
 	}
 	else
 	{