한국에서 NEST로 가정용 에어콘과 가스 보일러 제어

Contents

개요

  • mqtt/tls, esp8266를 이용하여 NEST와 연동용 브리지 구성
  • 초기엔 NEST API로 구성
  • 필요부품 구비되면 NEST 백플레이트의 신호를 감지하여 API에 의존하지 않고 제어
  • 온도 설정은 API로 확인 필요

장치

  • 에어콘 : LG WHISEN + esp8266 ir tx/rx
  • 가스보일러 : 귀뚜라미(귀뚜라미 IOT 제어기 구매후 적용 예정)
  • 홈서버(GW) : RPI(mqtt/tls-mosquitto, nodered)
  • WIFI : WPA2 personal
  • 24V AC 아답터

nest wiring

The 2nd and 3rd generation Nest Learning Thermostats can control the following types of HVAC systems:
Heating: one, two and three stages (W1, W2, W3)
Cooling: one and two stages (Y1, Y2)
Heat pump: with auxiliary and emergency heat (O/B, AUX, E)
Fan (G)
Power (C, Rh, Rc)
Humidifier or dehumidifier (HUM, DEHUM)
The Nest Thermostat's connector can accept only one of these wires: W3, E, HUM or DEHUM.
The Nest Learning Thermostat is designed to work even if your home doesn’t have a common “C” wire, but installing a new C wire may be required in rare cases.

케이블연결

24V AC 아답터 백플레이트
image image
24V IN Cool off(0.8V with 5KR) Cool on(24V with 5KR)
image image image
esp8266 ir tx nest
image image
bridge stand back plate bridge with hcpl-3700 and esp8266 hcpl-3700
image image image image

Slack Incoming WebHooks

NEST API

  • Create product with read permission
  • use Python script to get access token and device_id of thermostat
  • remove following
#include "/usr/local/src/ap_setting.h"
#include "/usr/local/src/nest_setting.h"
#include "/usr/local/src/slack_setting.h"
  • change following
#define WIFI_SSID "xxxxxxx"
#define WIFI_PASSWORD "xxxxxxxx"
#define NEST_API_TOKEN "c.xxxxxxxx"
#define NEST_DEVICE_ID "xxxxxx_xxxxxxx-xxxxxx"
#define SLACK_IN_WEBHOOK "xxxx/xxxx/xxxxx"