diff --git a/TODO b/TODO
index 2972583d743f96a4282b461cc53d3a1d732dcdb7..4aa68f8d0ada102431161695e5b7d943a0c4b44a 100644
--- a/TODO
+++ b/TODO
@@ -1,2 +1 @@
-check and fix ResonanceStrength handling
 fix units
\ No newline at end of file
diff --git a/src/E2Sextupole.cpp b/src/E2Sextupole.cpp
index 4be02d1bf6c121717534230e5e9091b7d8ced7de..b29f69fdb94ce551b3b52416fbcb3f3081558c80 100644
--- a/src/E2Sextupole.cpp
+++ b/src/E2Sextupole.cpp
@@ -617,7 +617,7 @@ void E2Sextupole::write_ResonanceStrength(Tango::WAttribute &attr)
 	Tango::DeviceAttribute watt("Current", curr_out[0]);
 	current_dev->write_attribute(watt);
 	wValResStrength = w_val;
-	//*attr_ResonanceStrength_read = w_val;
+	*attr_ResonanceStrength_read = w_val;
 	set_strength[0] = newStrength;
 	strengthAtt->set_write_value(set_strength[0]);
 	/*----- PROTECTED REGION END -----*/	//	E2Sextupole::write_ResonanceStrength
@@ -793,7 +793,7 @@ void E2Sextupole::reset()
 //--------------------------------------------------------
 /**
  *	Command ResetResonanceStrength related method
- *	Description: Reset ResonanceStrength to 0
+ *	Description: Transfer ResonanceStranght to CorrectionStrength and set ResonanceStrength to 0. Strngth is not modified
  *
  */
 //--------------------------------------------------------
@@ -806,24 +806,16 @@ void E2Sextupole::reset_resonance_strength()
 	//	Add your own code
 
 	/* clang-format off */
-	//force to 0 resonance strength
+	//transfer resonance strength to correction strength and than force to 0 resonance strength
 	omni_mutex_lock guardio(iomutex);
-	/*
-	Tango::DevDouble newStrength;
-	newStrength = wValCorrStrength;
-	std::vector<double> req_strength;
-	std::vector<double> curr_out;
-	req_strength.push_back(newStrength);
-	sextupole->compute_currents(magnet_rigidity, req_strength, curr_out);
-	Tango::DeviceAttribute watt("Current", curr_out[0]);
-	current_dev->write_attribute(watt);
-	*/
+
 	wValCorrStrength +=  wValResStrength;
 	wValResStrength = 0.0;
-	//set_strength[0] = newStrength;
-	//strengthAtt->set_write_value(set_strength[0]);
+
 	correctionAtt->set_write_value(wValCorrStrength);
+	*attr_CorrectionStrength_read = wValCorrStrength;
 	resonanceAtt->set_write_value(0.0);
+	*attr_ResonanceStrength_read = 0.0;
 	/*----- PROTECTED REGION END -----*/	//	E2Sextupole::reset_resonance_strength
 }
 //--------------------------------------------------------
diff --git a/src/E2Sextupole.h b/src/E2Sextupole.h
index a938bdaeebd950813fbe518dead032bded3ca1ee..3b12b3a003f4e7a47ab174aef1d6267024740d83 100644
--- a/src/E2Sextupole.h
+++ b/src/E2Sextupole.h
@@ -286,7 +286,7 @@ public:
 	virtual bool is_Reset_allowed(const CORBA::Any &any);
 	/**
 	 *	Command ResetResonanceStrength related method
-	 *	Description: Reset ResonanceStrength to 0
+	 *	Description: Transfer ResonanceStranght to CorrectionStrength and set ResonanceStrength to 0. Strngth is not modified
 	 *
 	 */
 	virtual void reset_resonance_strength();
diff --git a/src/E2Sextupole.xmi b/src/E2Sextupole.xmi
index 0a7dfe914fd0c109d56e5a22eb8e6dfe51bef2e4..9ea46d0f50cf05efb5d2b7d62ad10aedb10915fd 100644
--- a/src/E2Sextupole.xmi
+++ b/src/E2Sextupole.xmi
@@ -75,7 +75,7 @@
       </argout>
       <status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
     </commands>
-    <commands name="ResetResonanceStrength" description="Reset ResonanceStrength to 0" execMethod="reset_resonance_strength" displayLevel="OPERATOR" polledPeriod="0" isDynamic="false">
+    <commands name="ResetResonanceStrength" description="Transfer ResonanceStranght to CorrectionStrength and set ResonanceStrength to 0. Strngth is not modified" execMethod="reset_resonance_strength" displayLevel="OPERATOR" polledPeriod="0" isDynamic="false">
       <argin description="">
         <type xsi:type="pogoDsl:VoidType"/>
       </argin>
diff --git a/src/main.cpp b/src/main.cpp
index 745a89e4d39780533364e9ac7fec1b125fc2a83a..f5f721e774cb354d051d6ff56f44ea2f400327cd 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -48,7 +48,7 @@ DECLARE_CRASH_HANDLER
 int main(int argc,char *argv[])
 {
 	INSTALL_CRASH_HANDLER
-	Tango::Util *tg;
+	Tango::Util *tg = nullptr;
 	try
 	{
 		// Initialise the device server