def METHOD_NAME(self, value):
    """Set device to value
    Args:
        value (str, int, float or enum): Value to be set.
    """
    # NB Workaround beacuse diffractomer does not send event on
    # change of actuators (light, scintillator, cryostream...)
    self.update_state(self.STATES.BUSY)
    if isinstance(value, Enum):
        if isinstance(value.value, (tuple, list)):
            value = value.value[0]
        else:
            value = value.value
    self.value_channel.set_value(value)
    # wait until the hardware returns value set
    if self.use_value_as_state:
        self._wait_hardware(value, 120)
    self._wait_ready(120)
    self.update_state(self.STATES.READY)