diff --git a/src/Agilent4uhv.cpp b/src/Agilent4uhv.cpp
index 7f39cb193f529a6c34d8b610b9e6f89537e80547..f7a76ad8659b63b311b7c3974c49ffcebc79cb76 100644
--- a/src/Agilent4uhv.cpp
+++ b/src/Agilent4uhv.cpp
@@ -249,6 +249,15 @@ void Agilent4uhv::init_device()
 		attr_Model_read[0] = new char[MAX_DEVSTRING_LENGTH];
 		attr_SerialNumber_read[0] = new char[MAX_DEVSTRING_LENGTH];
 
+		/* Che if the mBar is pressure unit used */
+		int pressure_unit;
+		read_window(600, pressure_unit);
+		if (pressure_unit != 1) {
+			Tango::Except::throw_exception( "",
+					"mBar is not the pressure unit used",
+					"Agilent4uhv::init_device()");
+		}
+
 		/* Identify model:
 		* 9299200/1 con 2 canali x 80W  --> attivi canali 1 e 2
 		* 9299020   con 2 canali x 200W --> attivi canali 1 e 3
@@ -279,16 +288,8 @@ void Agilent4uhv::init_device()
 		read_window(323, serial);
 		strncpy(attr_SerialNumber_read[0], serial.c_str(), MAX_DEVSTRING_LENGTH);
 
-		// Set the mode
-//		int mode = 0; /* Serial */
-//		write_window(8, mode);
-
-		/* Setup mBar as pressure unit used */
-		int pressure_unit = 1 /* mBar */;
-		write_window(600, pressure_unit);
-
 		/* Read all the device data */
-		static const int nw[] = { 8, /*, 108, 320, 323, 503, 504, 600 */
+		static const int nw[] = { 8, /*, 108, 205, 320, 319, 323, 503, 504, 600 */
 			601, 602, 603, 800, 801, 802, 803, 804, 808, 809, 810, 811};
 		vector<int> normal_windows(nw, nw + sizeof(nw) / sizeof(nw[0]));
 		for (size_t i=0; i<channels.size(); ++i) {