Guntamatic

The Guntamatic integration allows you to monitor your Guntamatic wood or pellet heater from Home Assistant.

Supported devices

This integration has been tested with the Guntamatic BMK 20 kW running firmware 32a. Other Guntamatic heaters may work if they provide the same local web interface.

To check whether your heater provides this interface:

  1. In a web browser, open http://<ip>/daqdata.cgi, and replace <ip> with the IP address of your heater.
  2. Confirm that the response contains the current values reported by the heater.

The exact data points and their names can vary depending on the heater model and firmware version.

Prerequisites

Your Guntamatic heater must be connected to your local network and accessible via its IP address or hostname. Check the screen on the Guntamatic: Customer Level, Detailed Display, scroll down to network.

Configuration

To add the Guntamatic device to your Home Assistant instance, use this My button:

Guntamatic can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.

Manual configuration steps

If it wasn’t discovered automatically, don’t worry! You can set up a manual integration entry:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select Guntamatic.

  • Follow the instructions on screen to complete the setup.

Host

The IP address or resolvable hostname of your Guntamatic heater. For example, 192.168.1.42 or kessel001.internal

Data updates

The integration polls the Guntamatic heater every 30 seconds. The heater does not support push updates. All sensors, including those of the heating circuit devices, are refreshed in this single poll.

The heater exposes a small embedded web interface that may also serve other tools or dashboards. Polling the same endpoints from multiple clients at once can affect response times, so avoid adding additional integrations or scripts that read these endpoints at a high rate.

Devices

The heater itself is represented as one device. Each connected heating circuit is represented as an additional device (“Heating circuit N”), so its entities can easily be assigned to the area of the room it heats. Only heating circuits that report data are created.

Sensors

The integration creates a sensor for each data point provided by the heater. The available sensors depend on the heater model and firmware version. Example sensors include boiler temperature, outside temperature, and buffer load. Note that sensors with a value of -20.00 °C or -9.00 °C are not returned.

The following sensors are available for a Guntamatic BMK 20 heater:

  • Boiler temperature:

    • Description: Current temperature of the hot water in the boiler itself
    • Example value: 14.09
    • Unit: °C
  • Buffer load:

    • Description: Current load percentage of the thermal buffer tank
    • Example value: 22
  • Buffer bottom temperature:

    • Description: Temperature measured at the bottom of the buffer tank
    • Example value: 34.01
    • Unit: °C
  • Buffer center temperature:

    • Description: Temperature measured in the middle of the buffer tank
    • Example value: 43.48
    • Unit: °C
  • Buffer top temperature:

    • Description: Temperature measured at the top of the buffer tank
    • Example value: 44.56
    • Unit: °C
  • Domestic hot water circuit 0 temperature:

    • Description: Temperature of domestic hot water circuit 0
    • Example value: 44.50
    • Unit: °C
  • Outdoor temperature:

    • Description: Outside ambient temperature measured by the external sensor
    • Example value: 16.15
    • Unit: °C
  • Program:

    • Description: Current global operating program mode
    • Possible values:
      • Away mode
      • Domestic hot water
      • Domestic hot water boost
      • Heat
      • Off
      • Setback mode
      • Timer
    • Unit: None
  • Status:

    • Description: Current operating state of the system.
    • Example value: Service Ign.
    • Unit: None

Heating circuit devices

Each connected heating circuit device provides the following sensors:

  • Room temperature:

    • Description: Room temperature sensor reading for this heating circuit.
    • Unit: °C
  • Flow temperature (diagnostic):

    • Description: Temperature of the water flowing towards this circuit.
    • Unit: °C
  • Pump (diagnostic):

    • Description: Operating mode of the circulation pump.
    • Possible values: Auto, Non-stop, Off
  • Program:

    • Description: Active program of this heating circuit.
    • Possible values: Off, Timer, Heat, Setback mode, Setback mode until

Additional sensors

Additional sensors are disabled by default and can be enabled in the entity settings. These include buffer stage temperatures (top/bottom 0–2), auxiliary and extra domestic hot water pumps, extra domestic hot water temperatures, boiler shunt pump, suction fan, primary and secondary air, CO₂ content, interruptions, operating time (in hours) and service date (next service as an ISO date).

Examples

Low buffer load notification

Get a notification when the buffer load drops below a chosen percentage, so you know it is time to refuel.

Prefer to configure this automation manually? Use the YAML below.

Automation YAML

Replace the placeholder values with values from your Home Assistant instance.

alias: Guntamatic low buffer load
trigger:
  - platform: numeric_state
    entity_id: YOUR_BUFFER_LOAD_ENTITY
    below: 20
variables:
  threshold: 20
actions:
  - action: notify.notify
    data:
      title: "Guntamatic: buffer load low"
      message: >-
        The buffer load dropped below {{ threshold }}%.
        Time to refill the fuel storage.

Maintenance reminder

Get a notification when the ash box needs emptying or the periodic service is due soon.

Prefer to configure this automation manually? Use the YAML below.

Automation YAML

Replace the placeholder values with values from your Home Assistant instance.

alias: Guntamatic maintenance reminder
variables:
  service_date_entity: YOUR_SERVICE_DATE_ENTITY
  service_threshold: 14
  ash_empty_in_entity: YOUR_ASH_EMPTY_IN_ENTITY
mode: parallel
trigger:
  - platform: numeric_state
    id: ash
    entity_id: YOUR_ASH_EMPTY_IN_ENTITY
    below: 48
  - platform: template
    id: service
    value_template: >-
      {% set svc = states(service_date_entity) %}
      {% set thr = service_threshold | int(0) %}
      {{ thr > 0 and svc not in ['unknown', 'unavailable', 'none', '']
         and (strptime(svc, '%Y-%m-%d') | as_datetime | as_local - now()).days < thr }}
actions:
  - action: notify.notify
    data:
      title: >-
        Guntamatic: {% if trigger.id == 'ash' %}ash box{% else %}service{% endif %} due soon
      message: >-
        {% if trigger.id == 'ash' %}
        Empty the ash box within the next
        {{ states(ash_empty_in_entity) }} hours.
        {% else %}
        Schedule the periodic service for {{ states(service_date_entity) }}
        (within the next {{ ((strptime(states(service_date_entity), '%Y-%m-%d') | as_datetime | as_local - now()).days) }} days).
        {% endif %}

Removing the integration

This integration follows standard integration removal. No extra steps are required.

To remove an integration instance from Home Assistant

  1. Go to Settings > Devices & services and select the integration card.
  2. From the list of devices, select the integration instance you want to remove.
  3. Next to the entry, select the three dots menu. Then, select Delete.