diff --git a/RCUSCC/RCUSCC/RCUSCC.py b/RCUSCC/RCUSCC/RCUSCC.py
index 1b770b832e282a83cf1500cc3bd8ab78af4c0b14..93b25c3ca4c49e17337f01d62e070d0bf8f2f55d 100644
--- a/RCUSCC/RCUSCC/RCUSCC.py
+++ b/RCUSCC/RCUSCC/RCUSCC.py
@@ -32,6 +32,22 @@ from threading import Thread
 from functools import wraps
 import socket
 
+def only_when_on(func):
+    """
+      Wrapper to return None when the device isn't in ON state.
+
+      If in ON state, calls & returns the wrapped function.
+    """
+
+    @wraps(func)
+    def when_on_wrapper(self, *args, **kwargs):
+        if self.get_state() != DevState.ON:
+            return None
+
+        return func(self, *args, **kwargs)
+
+    return when_on_wrapper
+
 def fault_on_opcua_error(func):
     """
       Wrapper to catch exceptions generated by the OPC-UA connection.
@@ -435,6 +451,7 @@ class RCUSCC(Device):
     # Attributes methods
     # ------------------
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Attenuator_R(self):
         # PROTECTED REGION ID(RCUSCC.Attenuator_R_read) ENABLED START #
@@ -443,6 +460,7 @@ class RCUSCC(Device):
         return self._Attenuator_R
         # PROTECTED REGION END #    //  RCUSCC.Attenuator_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Attenuator_RW(self):
         # PROTECTED REGION ID(RCUSCC.Attenuator_RW_read) ENABLED START #
@@ -451,6 +469,7 @@ class RCUSCC(Device):
         return self._Attenuator_RW
         # PROTECTED REGION END #    //  RCUSCC.Attenuator_RW_read
 
+    @only_when_on
     @fault_on_opcua_error
     def write_Attenuator_RW(self, value):
         # PROTECTED REGION ID(RCUSCC.Attenuator_RW_write) ENABLED START #
@@ -461,6 +480,7 @@ class RCUSCC(Device):
         self._Attenuator_RW = value
         # PROTECTED REGION END #    //  RCUSCC.Attenuator_RW_write
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Band_R(self):
         # PROTECTED REGION ID(RCUSCC.Band_R_read) ENABLED START #
@@ -469,6 +489,7 @@ class RCUSCC(Device):
         return self._Band_R
         # PROTECTED REGION END #    //  RCUSCC.Band_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Band_RW(self):
         # PROTECTED REGION ID(RCUSCC.Band_RW_read) ENABLED START #
@@ -477,6 +498,7 @@ class RCUSCC(Device):
         return self._Band_RW
         # PROTECTED REGION END #    //  RCUSCC.Band_RW_read
 
+    @only_when_on
     @fault_on_opcua_error
     def write_Band_RW(self, value):
         # PROTECTED REGION ID(RCUSCC.Band_RW_write) ENABLED START #
@@ -487,6 +509,7 @@ class RCUSCC(Device):
         self._Band_RW = value
         # PROTECTED REGION END #    //  RCUSCC.Band_RW_write
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Dither_Frequency_R(self):
         # PROTECTED REGION ID(RCUSCC.Dither_Frequency_R_read) ENABLED START #
@@ -495,6 +518,7 @@ class RCUSCC(Device):
         return self._Dither_Frequency_R
         # PROTECTED REGION END #    //  RCUSCC.Dither_Frequency_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Dither_Frequency_RW(self):
         # PROTECTED REGION ID(RCUSCC.Dither_Frequency_RW_read) ENABLED START #
@@ -503,6 +527,7 @@ class RCUSCC(Device):
         return self._Dither_Frequency_RW
         # PROTECTED REGION END #    //  RCUSCC.Dither_Frequency_RW_read
 
+    @only_when_on
     @fault_on_opcua_error
     def write_Dither_Frequency_RW(self, value):
         # PROTECTED REGION ID(RCUSCC.Dither_Frequency_RW_write) ENABLED START #
@@ -512,6 +537,7 @@ class RCUSCC(Device):
         self._Dither_Frequency_RW = value
         # PROTECTED REGION END #    //  RCUSCC.Dither_Frequency_RW_write
 
+    @only_when_on
     @fault_on_opcua_error
     def read_LED_R(self):
         # PROTECTED REGION ID(RCUSCC.LED_R_read) ENABLED START #
@@ -520,6 +546,7 @@ class RCUSCC(Device):
         return self._LED_R
         # PROTECTED REGION END #    //  RCUSCC.LED_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_LED_RW(self):
         # PROTECTED REGION ID(RCUSCC.LED_RW_read) ENABLED START #
@@ -528,6 +555,7 @@ class RCUSCC(Device):
         return self._LED_RW
         # PROTECTED REGION END #    //  RCUSCC.LED_RW_read
 
+    @only_when_on
     @fault_on_opcua_error
     def write_LED_RW(self, value):
         # PROTECTED REGION ID(RCUSCC.LED_RW_write) ENABLED START #
@@ -536,6 +564,7 @@ class RCUSCC(Device):
         self._LED_RW = value
         # PROTECTED REGION END #    //  RCUSCC.LED_RW_write
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Pwr_dig_R(self):
         # PROTECTED REGION ID(RCUSCC.Pwr_dig_R_read) ENABLED START #
@@ -544,6 +573,7 @@ class RCUSCC(Device):
         return self._Pwr_dig_R
         # PROTECTED REGION END #    //  RCUSCC.Pwr_dig_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_Temperature_R(self):
         # PROTECTED REGION ID(RCUSCC.Temperature_R_read) ENABLED START #
@@ -552,6 +582,7 @@ class RCUSCC(Device):
         return self._Temperature_R
         # PROTECTED REGION END #    //  RCUSCC.Temperature_R_read
 
+    @only_when_on
     @fault_on_opcua_error
     def read_CLK_PLL_locked_R(self):
         # PROTECTED REGION ID(RCUSCC.CLK_PLL_locked_R_read) ENABLED START #