   // --- RELAY
   hw.present(CHILD_ID_RELAY, S_LIGHT);
   hw.present(CHILD_ID_RELAY_AC, S_LIGHT);
+  hw.present(CHILD_ID_MODE, S_LIGHT);
+  
+  // Set last mode 
+  MODE = hw.loadState(CHILD_ID_MODE);
 
   // Then set relay pins in output mode
   pinMode(RELAY_PIN, OUTPUT);

// ----- GLOBAL
MySensor hw;
static char outstr[15];

void setup()
{

void incomingMessage(const MyMessage &message) {
  processHeatingMessage(message);
  processACMessage(message);
  processModeMessage(message);
}

void processHeatingMessage(const MyMessage &message) {
  // We only expect one type of message from controller. But we better check anyway.
  if (!MODE && message.sensor == CHILD_ID_RELAY && message.type == V_LIGHT) {
    // Change relay state
    digitalWrite(RELAY_PIN, message.getBool() ? RELAY_ON : RELAY_OFF);
    // Store state in eeprom
