Arduino Altherma UDP Controller
Arduino Altherma Controller is an open-source project that enables monitoring and custom control of Daikin Altherma heat pumps using Arduino-based hardware.
🧩 Project Overview
Arduino Altherma Controller는
Daikin Altherma 히트펌프 시스템을 Arduino 기반 하드웨어로 모니터링하고 제어하기 위한 오픈소스 프로젝트다.
- 이 프로젝트의 핵심 목표는 다음 두 가지다.
- 👉 제조사 전용 컨트롤러나 폐쇄적인 인터페이스에 의존하지 않고
- 👉 히트펌프의 상태 정보와 제어 기능을 사용자가 직접 다룰 수 있도록 하는 것
시스템은 Daikin 내부 통신에 사용되는 P1/P2 시리얼 버스 프레임을 직접 읽고 쓰며,
이를 이더넷 기반 UDP 패킷으로 변환해 외부 시스템(홈 오토메이션, 서버, 데이터 로거 등)으로 전달한다.
특히 난방·급탕 시스템을 사용하는 주거 환경에서
에너지 사용을 보다 투명하게 가시화하고,
사용자 맞춤형 제어 로직을 직접 구현할 수 있다는 점이 큰 장점이다.
이 프로젝트는 Loxone(록손) 홈 자동화 시스템과의 연동을 주요 활용 시나리오 중 하나로 한다.
🏠 Loxone(록손) 홈 자동화 시스템이란?
Loxone은 오스트리아에서 시작된 통합형 홈·빌딩 자동화 시스템으로,
조명·난방·냉방·차양·보안·에너지·오디오를
중앙 컨트롤러(Miniserver) 하나로 자동 제어하는 것이 목적이다.
Loxone의 주요 인터페이스
- Digital / Analog I/O
- UDP / TCP / Modbus
- KNX, DALI, 1-Wire
- 에너지 미터 연동
이러한 구조 덕분에 Arduino + WIZnet 기반 UDP 장치와의 연동이 매우 자연스럽다.
🔥 왜 Loxone은 히트펌프·에너지 시스템과 잘 맞을까?
Loxone의 강점은 단순한 ON/OFF 제어가 아니라
에너지 흐름 전체를 하나의 시스템으로 관리한다는 점이다.
히트펌프 연동 시 장점
- 실내·외 온도 기반 자동 운전
- 태양광(PV) 발전량에 따른 운전 최적화
- 전기 요금 시간대 기반 제어
- 난방 + 급탕 + 환기 통합 로직
👉 그래서 유럽에서는
Daikin / Vaillant / NIBE 히트펌프 + Loxone 조합이 매우 흔하다.
🌐실제 연동 구조
핵심 포인트
- P1/P2는 극성 없음
- 기존 컨트롤러와 병렬 연결 가능
- 전압 레벨 차이 존재
→ 저항, 트랜지스터, 옵토커플러 등 보호 회로 필수
⚠️ 직접 연결 시 히트펌프 또는 Arduino 손상 위험 있음
🧩 Tools
It is explained in great detail in the readme.md file, so I think it would be good to refer to it.
🧠 Engineering – Focused Insights
✔ Open Interface Approach
- 제조사 전용 UI를 우회하지 않고
- 시스템 내부 데이터에 직접 접근
- 사용자 정의 제어 및 분석 가능
✔ Arduino-Friendly Design
- 복잡한 산업용 컨트롤러가 아닌
- Arduino 기반으로 접근 장벽을 낮춤
- 학습·확장·수정이 용이
✔ Energy-Aware Control
- 히트펌프의 실제 동작 상태를 기반으로
- 에너지 효율 분석 및 최적화 로직 구현 가능
- 장기적인 운전 데이터 수집에 적합
🧪 Use Cases
- 주거용 히트펌프 모니터링 시스템
- 홈 오토메이션(스마트홈) 연동
- 난방/급탕 에너지 사용 분석
- DIY 에너지 관리 시스템(EMS)
- 히트펌프 동작 로직 연구 및 실험
FAQ (WIZnet 중심)
1. 왜 Wi-Fi가 아니라 WIZnet W5500을 사용하나요?
W5500은 TCP/IP를 하드웨어에서 처리해 Arduino 자원을 거의 소모하지 않는다. HVAC 제어에서는 응답 지연과 통신 불확실성이 치명적이므로, RF 환경에 영향을 받는 Wi-Fi보다 유선 Ethernet 기반 W5500이 훨씬 안정적이다.
2. WIZnet 칩은 이 프로젝트에서 어떤 역할을 하나요?
WIZnet는 네트워크 전담 프로세서로 동작하며, Ethernet 프레임, IP, UDP, TCP, ARP 처리를 모두 수행한다. 덕분에 Arduino는 P1/P2 버스 타이밍과 제어 로직에만 집중할 수 있다.
3. 이 프로젝트는 초보자도 시도할 수 있나요?
Arduino 자체는 접근성이 높지만, P1/P2 통신과 UDP 구조 이해가 필요하므로 중급 이상 사용자에게 적합하다. 대신 실전 산업 시스템과 매우 유사한 구조를 경험할 수 있는 좋은 학습 사례다.
4. ENC28J60과 W5500의 가장 큰 차이는 무엇인가요?
ENC28J60은 MAC/PHY만 제공해 TCP/IP 스택을 MCU에서 처리해야 한다. 반면 W5500은 전체 네트워크 스택을 하드웨어로 제공해 성능, 안정성, 구현 난이도 모두에서 압도적인 이점을 가진다.
5. 이 프로젝트를 W55RP20으로 확장할 수 있나요?
가능하다. RP2040 + W5500이 통합된 W55RP20을 사용하면 BOM을 줄이고 성능을 향상시킬 수 있으며, 산업용 IoT 게이트웨이로 확장하기에도 적합하다.
