Back to overview Smart Home

Integrate a Truma heater into Home Assistant — a guide over MQTT

Reading time: 8 min
CampMatic

Anyone who has worked with Home Assistant does not want to go back: central visualisation, freely built automations, voice control and data history for every sensor. The obvious question for motorhome owners: can the Truma Combi also be integrated into Home Assistant — and if so, how?

The short answer: yes. With CampMatic your Truma Combi 4 or 6 becomes a native MQTT device that Home Assistant detects instantly via auto-discovery — as a fully-fledged climate entity, with all sensors as separate entities. No ESPHome flashing, no soldering into the LIN bus, no manual YAML.

Why Truma + Home Assistant at all?

Truma ships its own app with the iNet X system — solid, but a closed island. Anyone who uses Home Assistant has different expectations:

  • One dashboard for everything: heating, inverter, solar, water tanks, door sensors — all on one surface instead of five apps.
  • Automations across devices: "If outdoor temperature below 5 °C and location = pitch, set Truma to 19 °C." — that only works if the heater is in Home Assistant.
  • Data history: How cold was it really at night? How much gas does the Combi use per hour of heating? Home Assistant logs it automatically.
  • Voice control: Via Home Assistant Cloud you get Alexa and Google Assistant for the Truma "for free" — without Truma publishing a skill.
  • No cloud dependency: MQTT runs locally. If you want, you can keep your heating data entirely inside your own network.

The three ways to bring Truma into Home Assistant

Way 1: ESPHome + solder the LIN bus yourself

The tinkerer's route. There are open-source projects on GitHub that read the Truma directly on the LIN bus with an ESP32 and a LIN transceiver IC. It works — if you bring a soldering iron, a logic analyzer and a few weekends of time. Problems:

  • Intervention in the vehicle wiring — a warranty and safety topic
  • The protocol is not officially documented, and any Truma firmware can break it
  • No write access to all functions; depending on the project, read-only

Way 2: Mirror the Truma iNet X via an unofficial API

There are custom components that query the Truma cloud API and pass it to Home Assistant. Works as long as Truma does not change the API. Big drawback: you still need the iNet X system (€250–350), and everything runs over Truma's servers — so no local control, higher latency and an extra account.

Way 3: CampMatic with native MQTT

CampMatic speaks the Truma LIN bus out of the box and exposes all values as MQTT topics. Via Home Assistant MQTT discovery, the climate entity, sensors and switches appear automatically in the UI — without a single line of YAML.

Plug & play at the CP Plus, configured over a web UI, MQTT broker of your choice (your own Mosquitto, a Home Assistant add-on, or an external broker). More on the hardware: campmatic.de.

What you get in Home Assistant — the entities in detail

As soon as CampMatic is connected to your MQTT broker and Home Assistant subscribes to the same broker, the following entities appear automatically:

Climate entity: climate.truma_combi

  • Modes: off, heat, auto (equivalent to ECO on the CP Plus)
  • Target temperature in 1 °C steps
  • Current indoor temperature (the CP Plus sensor)
  • Fan level as fan_mode
  • Hot water mode as an additional preset

That makes the Lovelace thermostat card work immediately — including slider, mode buttons and history chart.

Sensor entities

  • sensor.truma_indoor_temperature — current room temperature
  • sensor.truma_target_temperature — currently set target
  • sensor.truma_hot_water_temperature — boiler temperature (if present)
  • sensor.truma_status — e.g. heating, warming up, standby, error
  • sensor.truma_gas_consumption — if a gas scale is paired
  • binary_sensor.truma_error — reports Truma error codes

Switches and control values

  • switch.truma_hot_water — hot water on/off separately
  • select.truma_heating_mode — air, water, both
  • number.truma_target_temperature — target as a number entity for finer automations

Step by step: set up CampMatic in Home Assistant

1. Provide an MQTT broker

If you run Home Assistant OS or Supervised, install the Mosquitto broker add-on from the add-on store. Assign a user/password, leave port 1883. If you already have an external broker, keep using it — CampMatic is broker-agnostic.

2. Enable the MQTT integration in Home Assistant

Settings → Devices & Services → Add integration → MQTT. Enter the broker address, user and password, keep "Enable MQTT discovery" on. The discovery prefix stays at homeassistant.

3. Connect CampMatic to the broker

Open the CampMatic web UI (locally over its own hotspot or on your home WiFi), under MQTT:

  • Broker host: IP of the Home Assistant host
  • Port: 1883
  • User / password as set in the Mosquitto add-on
  • Discovery: enabled
  • Topic prefix: leave the default (campmatic/) unless two devices run in parallel

Save. After a few seconds a new device "CampMatic – Truma Combi" appears in Home Assistant with all the entities listed above.

4. Build a dashboard

A thermostat card for climate.truma_combi, a history-graph card for indoor and target temperature, plus an entities card for hot water, mode and status — and the heating dashboard is done. If you like it prettier, work with mushroom-cards or button-card.

Three automations that pay off immediately

Preheat before arrival

With the mobile app integration, Home Assistant knows your location. As soon as you come within a 10 km radius of the pitch, the heater starts:

alias: Preheat Truma on approach
trigger:
  - platform: zone
    entity_id: person.you
    zone: zone.pitch
    event: enter
condition:
  - condition: numeric_state
    entity_id: sensor.truma_indoor_temperature
    below: 18
action:
  - service: climate.set_temperature
    target:
      entity_id: climate.truma_combi
    data:
      temperature: 21
      hvac_mode: heat

Night setback with weather logic

A classic night setback has a catch: on very cold nights the camper cools down too much, and warming up in the morning takes forever. With Home Assistant you combine time and outdoor temperature:

alias: Truma smart night setback
trigger:
  - platform: time
    at: "23:00:00"
action:
  - service: climate.set_temperature
    target:
      entity_id: climate.truma_combi
    data:
      temperature: >-
        {% raw %}{% if states('sensor.outdoor_temperature') | float < -5 %}
          18
        {% else %}
          15
        {% endif %}{% endraw %}

Error push straight to your phone

Truma reports errors on the CP Plus — but who gets up at night to check? An automation on binary_sensor.truma_error sends a push notification with the error code to your phone as soon as the heater faults. Invaluable especially when winter camping.

Voice control via Home Assistant Cloud

With a Nabu Casa subscription (or by setting up the manual Alexa/Google integration) you get voice control on top automatically: "Alexa, set the Truma to 20 degrees." — it works because climate.truma_combi is exposed as a standard climate entity. No extra skill, no Truma cloud in the path.

Frequently asked questions

Does this also work without internet at the pitch?

Yes. MQTT is local. If your Home Assistant host and CampMatic are on the same WiFi/hotspot, everything works without internet. Practically relevant if you run Home Assistant on a Raspberry Pi or mini PC in the camper.

Does the CP Plus stay usable?

Yes, always. CampMatic hooks onto the LIN bus in parallel, it replaces nothing. You can turn the CP Plus dial at any time — Home Assistant picks up the new values over MQTT and updates the UI. No getting used to a new control panel like with the iNet X panel.

Which Truma models are supported?

Truma Combi 4, Combi 4E, Combi 6, Combi 6E, Combi D6 (diesel) and Vario Heat — all models with a CP Plus from firmware C4.00.00.

What does the setup cost compared to iNet X?

CampMatic is plug-and-play and installed in under 10 minutes, without touching the control panel. The Truma iNet X system costs €250–350 and replaces the CP Plus — with installation effort. Detailed comparison: Truma iNet Box alternative.

Conclusion: Home Assistant + Truma is trivial today — if the hardware plays along

Two years ago, Truma in Home Assistant meant: soldering iron, ESP32, hacked-together YAML templates and a weekend of debugging. Today that is no longer necessary. With native MQTT support and auto-discovery, the Truma Combi is set up in Home Assistant in ten minutes — including climate entity, history, automations and voice control.

For anyone who thinks of their camper as a rolling smart home, this is the only solution that is truly open, local and free of cloud lock-in. And for anyone who later wants to integrate more — inverter, solar, door sensors, GPS tracker — Home Assistant is the platform that grows with you.

See CampMatic — Truma in Home Assistant over MQTT, ready in 10 minutes

Further reading: