The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →ESPAltherma lets compatible Daikin Altherma-based heat pumps expose local operating data to an ESP32, MQTT, and Home Assistant. Depending on the model and firmware path, you can monitor temperatures, flow, pressure, electrical values, operating states, and faults. The original project also supports optional relay-based on/off or thermostat-style control—but it is not a universal replacement for the heat pump’s controller or a guarantee of direct access to every setpoint and operating mode.
Compatibility must come first. Confirm the complete indoor- and outdoor-unit model numbers, the presence of the X10A connector, and the supported protocol before buying hardware or opening the unit.
As an Amazon Associate I earn from qualifying purchases.
What ESPAltherma does
ESPAltherma is an open-source project for communicating with compatible Daikin Altherma systems through the heat pump’s X10A serial connector. It uses an ESP32—or, in some original configurations, an ESP8266—to read registers and publish selected values as JSON over Wi-Fi.
Daikin Altherma X10A connector
↓ serial connection
ESP32 or ESP8266
↓ Wi-Fi
MQTT broker
↓ MQTT discovery
Home Assistant
The original project documents MQTT publishing, Home Assistant MQTT auto-discovery, serial and MQTT logging, optional displays, OTA updates, and optional on/off control. It is a local data path, not Daikin’s cloud service. Home Assistant itself is free and open source, although the ESP board, wiring, host computer, and optional cloud services are separate considerations. See the ESPAltherma repository, the original Hackster project, and Home Assistant’s cost guidance.
#1 Best Overall
- 2.4GHz Dual Mode WiFi + Bluetooth Development Board
- Support LWIP protocol, Freertos
- SupportThree Modes: AP, STA, and AP+STA
- Ultra-Low power consumption, Compatible with Arduino IDE
- ESP32 is a safe, reliable, and scalable to a variety of applications
Check compatibility before buying anything
“Daikin heat pump” is not specific enough. ESPAltherma targets Daikin Altherma systems using the supported Altherma serial protocol, plus some compatible ROTEX and HOVAL Belaria units. Other Daikin HVAC products can use different protocols and are not automatically compatible.
- Record the complete indoor-unit model number.
- Record the complete outdoor-unit model number.
- Check the manufacturer documentation or control board for an accessible X10A connector.
- Compare the model with the live project documentation and model mappings.
- Check whether your unit uses the expected protocol. Older Altherma systems may use an older “S protocol.”
The original repository identifies an 0x15 0xEA response as a possible indication that the unit does not understand the expected protocol. This is a diagnostic clue, not a guaranteed age cutoff; do not assume that every older or newer unit behaves identically.
The newer ESPHome Altherma component currently documents mappings for selected ERGA-D, ERLA-D EBSH-X, and Altherma LT CA/CB families. Other models may need additional register mapping. Verify current support in the live repository; the project information was checked on August 18, 2026.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11What you can monitor
Available registers and labels vary by model. A successful connection can expose some combination of:
| Category | Examples |
|---|---|
| Temperatures | Indoor and outdoor air, leaving water, inlet water, and domestic-hot-water tank temperature |
| Hydronic data | Flow rate and, where exposed, water or refrigerant pressure |
| Electrical data | Inverter or compressor current and supply voltage |
| Operating state | Operating mode, fan and pump status, defrost, and freeze protection |
| Targets and faults | Target temperatures, status registers, and fault information |
| Energy-related values | Model-dependent runtime or energy registers |
These are not guaranteed universal entities. Register names can be cryptic, and definitions can differ between model files. Missing sensors may therefore indicate an incomplete model mapping rather than faulty wiring. The project’s register information is the appropriate reference for interpreting values.
Separate raw data from calculated data. Leaving-water temperature, inlet temperature, and flow are raw readings. Delta-T, estimated thermal output, runtime summaries, and COP are derived in Home Assistant and inherit every limitation of the underlying readings.
Rank #2
- Dual-Core Performance Up to 240 MHz: Run sensor processing, wireless communication, automation logic and connected-device tasks on a 32-bit dual-core ESP32 platform designed for responsive embedded and IoT projects
- Built-in Wi-Fi and Bluetooth 4.2: Connect to 2.4 GHz Wi-Fi networks or use Bluetooth Classic and BLE for wireless sensors, smart devices, remote controls, home automation and other connected projects
- Flexible Power-Saving Modes: ESP32 power-management features support dynamic clock scaling and low-power operating modes, helping developers reduce energy use in compatible sensing, monitoring and connected-device applications, suitable for battery-powered Internet of Things (IoT) devices.
- USB-C Programming with CP2102: Connect through USB-C for power, sketch uploads and serial monitoring, while GPIO, UART, SPI and I2C interfaces support sensors, displays, motor drivers and other modules (USB-C cable not included)
- Over-the-Air Update Support: Configure OTA functionality through a compatible ESP-32 software framework to update deployed firmware over Wi-Fi without reconnecting the board by USB for every revision
What “control” means
The documented control capability of the original project is narrower than the title may suggest. An optional relay can be connected to PIN_THERM, exposing a Home Assistant switch named switch.altherma. Home Assistant can then use that switch in a generic thermostat configuration.
That is best understood as enable/disable or thermostat-style demand control. It does not automatically provide complete write access to Altherma flow-temperature curves, domestic-hot-water schedules, operating modes, compressor parameters, or every internal setpoint. The ESPHome alternative is primarily documented for monitoring; its experimental query_register action reads registers and should not be treated as general write support.
Use the heat pump’s native controller for safety interlocks, weather compensation, defrost behavior, anti-short-cycle logic, and domestic-hot-water priorities unless your exact model and integration have been verified. Aggressive on/off cycling can reduce efficiency, increase wear, and conflict with the manufacturer’s control logic. Never connect a project relay to mains or compressor wiring, and never treat this DIY system as a replacement for factory safety controls.
Hardware and safe installation
- Compatible ESP32 development board. The original project recommends an M5StickC, while other ESP32 boards may work. The current ESPHome project documents generic ESP32 DevKit, ESP32-S3 DevKit, and M5Stack AtomS3 Lite configurations.
- 5-pin JST EH 2.5 mm connector, or four suitable Dupont male-female wires, depending on the documented connection method.
- Local Wi-Fi.
- MQTT broker for the original ESPAltherma route.
- Home Assistant if you want dashboards, history, and automations.
- Enclosure, strain relief, and appropriately routed cable.
- Optional relay or thermostat interface only if you have a verified control requirement.
Safety: Isolate power before opening the heat-pump enclosure. Use the manufacturer’s service documentation and verify connector orientation and pin numbering from the unit—not wire colour alone. A low-voltage connector is not automatically harmless. Avoid loose Dupont leads in a vibrating, humid, or electrically noisy equipment compartment. If you are not comfortable working inside HVAC equipment, use a qualified installer.
X10A wiring
The current ESPHome Altherma documentation gives this wiring for the listed boards:
Free tools Windows power users keep installed
One-click scans. No signup required.
| X10A pin | Signal | Generic ESP32 DevKit | ESP32-S3 / AtomS3 Lite |
|---|---|---|---|
| 1 | 5 V | 5 V / VIN | 5 V |
| 2 | Heat-pump TX → ESP | RX, GPIO 16 | RX, GPIO 2 |
| 3 | ESP TX → heat pump | TX, GPIO 17 | TX, GPIO 1 |
| 4 | Not connected | — | — |
| 5 | Ground | GND | GND |
The transmit and receive lines cross: heat-pump TX goes to ESP RX, and heat-pump RX goes to ESP TX. Do not apply this table blindly to a different board, firmware revision, or heat-pump connector. Check the current wiring guide and the selected firmware configuration.
Rank #3
- Powerful ESP-32 Board: Unlock the world of Internet of Things (IoT) and advanced electronics with the heart of this kit: the ESP-32 board. It features a powerful dual-core processor, integrated Wi-Fi and Bluetooth 4.2, making it perfect for building connected, smart devices that communicate with your phone or the cloud. It's fully compatible with the Arduino IDE for easy programming.
- Super Starter Kit: This kit contains over 35 different modules and electronic components, including sensors, displays, motors, and input devices. From LEDs and buttons to an OLED screen, servo motor, and keypad, you have everything needed to explore a vast range of projects in one box.
- Step by Step Online Tutorial: Jump right in with our detailed, beginner-friendly tutorial. Access 30+ projects with complete code, clear circuit diagrams, and step-by-step instructions. Learn the fundamentals of electronics, coding, and how to utilize the ESP-32's unique capabilities without any prior experience.
- Hands-on Learning for All Skill Levels: Perfect for students, makers, engineers, and hobbyists. Start with basic circuits and coding, then progress to intermediate and advanced IoT applications. Build practical projects like weather stations, smart home controllers, remote-controlled devices, and interactive gadgets. The skills you learn are the foundation for real-world innovation.
- Quality & Great Support: Elegoo is committed to quality. We provide a clear, detailed tutorial guide, refined code, and a well-organized component kit. All modules are carefully selected for reliability and ease of use. Our dedicated technical support team and active online community are ready to help you succeed in your learning journey.
Installation option 1: original ESPAltherma with MQTT
- Confirm the model, protocol, X10A connector, and board pin configuration.
- Build the ESP32/X10A cable and inspect every connection before powering it.
- Download the current source and follow the repository’s PlatformIO instructions.
- Configure Wi-Fi, MQTT host, port, credentials, board environment, serial pins, and model-specific sensor definitions.
- Flash the board over USB.
- Connect it to the heat pump and power the system safely.
- Watch the serial output and MQTT logs before adding automations.
- Confirm that telemetry is being published and that Home Assistant discovers the device.
- Run monitoring reliably before considering control.
The project documents the low-level entity sensor.althermasensors and the optional switch.altherma. Home Assistant discovery uses:
homeassistant/device/espaltherma-mqtt-discovery/config
For separate value topics, the repository documents:
#define ONEVAL_ONETOPIC
#define MQTT_OneTopic "espaltherma/OneATTR/"
The trailing slash is required by the project’s instructions. Retain configuration backups, selected sensor definitions, and MQTT settings so the installation can be rebuilt after a board failure.
Installation option 2: ESPHome Altherma
For a documented board and supported model, the current ESPHome route is generally the easiest path for a Home Assistant user. It uses the native Home Assistant API rather than requiring MQTT configuration.
Browser installer
- Open the project installer at jjohnsen.github.io/esphome-altherma in Chrome or Edge.
- Connect the ESP32 to USB.
- Click Connect and flash the firmware.
- Configure Wi-Fi.
- Add the device to Home Assistant.
- Confirm that the expected model-specific sensors appear.
- Select the appropriate model configuration if automatic setup does not identify the unit.
“Plug and play” applies only to compatible board and model combinations. It is not a guarantee for every Altherma installation.
Command-line installation
git clone https://github.com/jjohnsen/esphome-altherma.git
cd esphome-altherma
Configure secrets.yaml:
wifi_ssid: "YourWiFiSSID"
wifi_password: "YourWiFiPassword"
Then flash a generic ESP32 board:
esphome run esphome-altherma-esp32.yaml
Use the matching YAML file for ESP32-S3 or AtomS3 Lite. Perform the first flash over USB. Later ESPHome updates can normally be performed wirelessly once the device is online.
Rank #4
- 2.4GHz Dual Mode WiFi + Bluetooth Development Board
- Support LWIP protocol, Freertos;ESP32 is a safe, reliable, and scalable to a variety of applications
- SupportThree Modes: AP, STA, and AP+STA
- Ultra-Low power consumption, Compatible with Arduino IDE
- 1PCS 30Pin ESP32 Development Board 2.4GHz WiFi Dual Cores Microcontroller Integrated with Antenna RF Low Noise Amplifiers Filters
Home Assistant setup and useful monitoring
With the original route, confirm that Home Assistant’s MQTT integration and the ESPAltherma device use the same broker. With ESPHome, add the device through the native API and verify that its entities have sensible names, units, availability, and update timestamps.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesBuild the dashboard around:
- Current operating mode and availability.
- Outdoor, leaving-water, and inlet-water temperature.
- Domestic-hot-water temperature.
- Flow and pressure where available.
- Fault state and last-update time.
- Compressor, pump, fan, defrost, and backup-heater status where exposed.
Add an alert when the device becomes unavailable or its values stop updating. A dashboard that displays the last received value without showing freshness can conceal a Wi-Fi, MQTT, or serial failure.
Delta-T, thermal output, and estimated COP
Useful derived metrics include:
- Delta-T: leaving-water temperature minus inlet-water temperature.
- Runtime: time spent in a selected operating state.
- Estimated thermal output: derived from water flow, water temperature difference, and the heat capacity of water.
- Estimated COP: estimated heat output divided by electrical input.
The original repository includes a Home Assistant COP template based on flow, water-temperature difference, inverter current, and voltage. Treat this as an operational estimate, not revenue-grade measurement. It can be misleading when flow is inaccurate, the current value excludes pumps or immersion heaters, backup heat is active, defrost cycles are included, domestic hot water is mixed with space heating, sensors are stale, or delta-T is zero or invalid.
For dependable energy and cost accounting, install a separate whole-system electricity meter and clearly distinguish its readings from ESPAltherma-derived estimates.
Control safeguards
If you enable the optional relay or thermostat-style control:
- Keep a manual fallback through the manufacturer’s controller.
- Use minimum on and off times to prevent rapid cycling.
- Do not override defrost, freeze protection, domestic-hot-water priority, or safety logic.
- Start with monitoring-only operation and test the automation under supervision.
- Define what happens when Wi-Fi, MQTT, Home Assistant, or the ESP board goes offline.
- Disable the control automation while troubleshooting communications or updating firmware.
Troubleshooting by symptom
No data
- Confirm the X10A connector and pin orientation.
- Check the TX/RX crossover and common ground.
- Verify board power, Wi-Fi credentials, MQTT hostname, port, username, and password.
- Check the configured serial pins and model-specific sensor file.
- Inspect serial output and the project’s
espaltherma/logMQTT topic.
0x15 0xEA or “Timeout on register”
This can mean the heat pump does not understand the expected protocol. Investigate whether the unit uses an older protocol and whether the selected model mapping is correct. Do not infer compatibility from the brand name alone.
Best Value
- 2.4GHz Dual Mode WiFi + Bluetooth Development Board
- Ultra-Low power consumption, works perfectly with the Arduino IDE
- Support LWIP protocol, Freertos
- SupportThree Modes: AP, STA, and AP+STA
- ESP32 is a safe, reliable, and scalable to a variety of applications
The device appears, but entities are missing
Check that the desired sensors are defined or uncommented, confirm the selected model file exposes those registers, clear stale retained discovery data, and restart Home Assistant.
MQTT works, but Home Assistant does not discover the device
Confirm that Home Assistant is connected to the same broker, verify the discovery topic exactly, check that the discovery payload is retained, and listen to the topic using Home Assistant’s MQTT tools. If definitions changed, clear and republish the retained discovery message.
The original project documents clearing the retained message by publishing an empty retained message to:
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →homeassistant/device/espaltherma-mqtt-discovery/config
M5StickC or M5Stack upload problems
Select the correct PlatformIO environment for the specific M5 board. The repository warns that default serial-port settings can conflict with PSRAM or board-specific behavior.
OTA update failure
Confirm that the device is online, resolve ESPAltherma.local on the local network, check firewall rules, and retry the update. Keep USB access available for recovery. The original repository specifically notes that local firewall rules can prevent OTA updates.
Maintenance, privacy, and reliability
The local architecture avoids dependence on a manufacturer cloud API for basic telemetry and lets you retain data in MQTT and Home Assistant. The trade-off is responsibility for wiring, firmware, model mappings, Wi-Fi, broker availability, backups, and updates.
Use availability sensors, last-update timestamps, offline alerts, and a manual fallback. Back up firmware configuration, YAML, MQTT settings, and Home Assistant. Review changes and issues in the live repositories before updating; firmware changes can alter builds, mappings, or entity names.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Alternatives
| Option | Best fit | Trade-off |
|---|---|---|
| Original ESPAltherma + MQTT | Users wanting broad MQTT compatibility with OpenHAB, Node-RED, Grafana, or Home Assistant | Requires a broker and more manual configuration |
| ESPHome Altherma | Home Assistant users with a documented model and board | Newer project with narrower documented model coverage |
| Official Daikin gateway or cloud service | Warranty, installer support, official alarms, and vendor-supported access | May offer less local register detail and more cloud dependence |
| P1P2MQTT | Users whose model is better suited to the P1/P2 thermostat interface | Compatibility, wiring, and features vary by model |
| Separate electricity meter | Accurate consumption, cost, and COP analysis | Additional hardware and installation |
See P1P2MQTT for the separate local interface project. Home Assistant’s myUplink integration is another cloud/API route for systems that support that service, but it does not replace checking ESPAltherma compatibility.
Which route should you choose?
- Choose original ESPAltherma if your model is supported, you already run MQTT, and you want flexible access from multiple systems.
- Choose ESPHome Altherma if you mainly use Home Assistant, your model is documented, and you prefer the browser installer and native API.
- Choose official connectivity if installer support, warranty considerations, remote access, or manufacturer alarms matter more than local experimentation.
- Choose separate metering as well if accurate whole-system consumption or COP is important.
Verdict
ESPAltherma remains a strong local telemetry solution for compatible Daikin Altherma-based heat pumps, especially for technically capable Home Assistant users. The ESP32 board is rarely the difficult part: exact model compatibility, protocol generation, register mapping, safe X10A wiring, and disciplined control design matter more. For a new Home Assistant installation, check the current ESPHome Altherma mappings first; choose the original MQTT project when its broader integration flexibility is more valuable.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

