> For the complete documentation index, see [llms.txt](https://docs.datacake.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.datacake.de/cake-red/datacake-nodes/smart-heating-controller.md).

# Smart Heating Controller

## Overview

The Room Controller Node combines data from your sensors and actuators to manage temperature automatically. It can handle heating and cooling, apply protective limits (frost and overheat), and even react to occupancy or window status.

This makes it ideal for **smart heating and cooling automation**, enabling energy savings by heating or cooling rooms only when needed.

<figure><img src="/files/LaYDcYVuR1th7cc5Ta6y" alt=""><figcaption></figcaption></figure>

### Key Features

* **Customizable Setpoints** – Define target temperatures for each room.
* **Heating and Cooling Logic** – Automatically control both heating and cooling within defined thresholds.
* **Hysteresis Control** – Avoid frequent switching by defining upper and lower bounds for heating and cooling.
* **Protection Modes** – Built-in frost and overheat protection to keep systems safe.
* **Occupancy Awareness** – Heat or cool only when rooms are occupied.
* **Window Detection** – Optionally pause heating when windows are open.
* **Retrigger Control** – Limit downlink repetition to reduce network load.
* **Dashboard View** – Monitor all room controllers in real-time with a password-protected dashboard.
* **Scalable Configuration** – Export and replicate configurations easily for large installations.

## Basic Setup

<figure><img src="/files/dopmmycA4gJCLVTRhE3c" alt=""><figcaption></figcaption></figure>

1. **Add the Node**\
   Drag the **Room Controller** node from the Datacake section into your Node-RED flow.
2. **Configure Room Settings**\
   Double-click the node to open the configuration panel.
   * **Room Name**: For example, “London Main Station Ticket Office 01”
   * **Location Path**: Hierarchical dot notation (e.g. `Germany.Main Station.Main Office`)
   * **Target Temperature**: Default 21°C
   * **Hysteresis**: Default ±2°C
   * **Cooling Offset**: Define offset above the heating threshold (e.g. +5°C)
3. **Connect Sensors**\
   Use MQTT or Datacake MQTT Sensor nodes to provide:
   * **Temperature** readings
   * **Occupancy** status
   * Optional: **Window state**, **external thermostat**, **humidity sensor**
4. **Assign Actuators**\
   Use **Downlink Nodes** to control heating or cooling devices.\
   You can add multiple downlinks (for example, “Heater 01 On”, “Heater 01 Off”) and assign each to your devices.
5. **Deploy and Monitor**\
   Deploy the flow, then open the **Room Controller Dashboard** node.\
   It provides an overview of all configured rooms, including:
   * Room name and location
   * Current and target temperature
   * Occupancy state
   * Active heating or cooling state

***

### Advanced Configuration

* **Occupancy Control**: When enabled, heating and cooling operate only when the room is occupied.
* **Humidity Control**: Optional feature to activate cooling or disable heating at high humidity levels.
* **Retrigger Count**: Controls how many times a state change will trigger downlinks (default: 3).
* **Offline Timeout**: Define how long the controller waits before marking a room as offline.
* **Export and Scale**: Once a room is configured, export the setup as JSON and reuse it across multiple rooms. This allows easy deployment in larger buildings or networks.

***

### Dashboard

The Room Controller Dashboard offers real-time monitoring of all configured rooms.\
You can filter by location (using the same dot-notation hierarchy), view room states, and soon even adjust settings directly through the dashboard interface.

***

### Benefits

* Optimizes heating and cooling based on real usage
* Reduces energy costs by only activating when needed
* Works seamlessly with Datacake devices and data
* Scales easily across many rooms or buildings
* Provides full transparency with real-time monitoring


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.datacake.de/cake-red/datacake-nodes/smart-heating-controller.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
