본문 바로가기

esp826628

온풍기용 스마트 콘센트 업그레이드 - WebSocket으로 동적 제어 및 센서값 기록하기 배경 ESP8266 모듈을 사용하는 데 있어서, 제 수준에서는 나름 끝판왕 프로젝트라고 할 수 있을 것 같습니다. 얼마 전에 캠핑장에서 사용하는 온풍기를 온도에 따라 자동으로 끄고 켜주기 위해서 릴레이를 ESP8266 모듈 중 하나인 wemos d1 mini에 연결하고 온습도 센서도 연결해서 온도 값에 따라서 온풍기가 연결될 릴레이를 컨트롤하는 프로젝트를 했던 적이 있었습니다. 프로젝트에 대한 상세는 아래 링크를 참고해 주세요. 온풍기 자동 온도조절용 스마트 콘센트 DIY 2021-06-03 update log: 캠핑장 실 사용 후기 추가 ESP8266 모듈을 활용한 새로운 프로젝트 캠핑용 온풍기를 온도조절이 가능하도록 하는 스마트 플러그를 만들어볼까 합니다. 지난번에 캠핑용 온풍기를 kwonkyo.ti.. 2021. 9. 18.
온풍기 자동 온도조절용 스마트 콘센트 DIY 2021-06-03 update log: 캠핑장 실 사용 후기 추가 ESP8266 모듈을 활용한 새로운 프로젝트 캠핑용 온풍기를 온도조절이 가능하도록 하는 스마트 플러그를 만들어볼까 합니다. 지난번에 캠핑용 온풍기를 리뷰한 적이 있었는데 이 온풍기의 단점은 전원 스위치 외에는 아무것도 없어서 주변 온도에 관계없이 전원이 켜져 있으면 따뜻한 바람이 계속 나온다는 겁니다. 온풍기를 사용하면 공기가 건조해지기 때문에 어느 정도 공기가 따뜻해지면 온풍기를 끄고 싶은데 그럴 수 없어서, 온도에 따라 온풍기의 전원을 제어할 수 있는 방법을 찾아보게 되었습니다. 캠핑 필수아이템 미니 온풍기, 툴콘 CODE26 후기 코로나 사태가 장기화되면서 캠핑 다니시는 분들 많으시죠? 저도 작년부터 캠핑을 시작한 캠린이입니다. 하.. 2021. 5. 28.
ESPHome 디바이스와 다른 Home Assistant entity 연결하기 (Node-RED, homeassistant.service) 예전에 주방에 있는 2 갱 일반 스위치를 3 갱짜리 Wifi 스위치로 교체를 한 적이 있었습니다. 실제로 필요한 스위치는 주방과 식탁 조명 2가지였지만 3 갱 스위치를 설치해서 3개의 스위치가 여유가 있는 상황이죠. Zemismart WIFI 스위치 KS-811 펌웨어 수정 및 설치 & Home Assistant 연동(feat. 중성선 매립) Home Assistant(HA)를 서버로 두고 Wifi스위치에 보조등을 달아서 원격 컨트롤하며 사용하고 있고 그리고 아파트 홈네트워크의 RS485 인터페이스로 거실 및 복도 등을 연동해서 컨트롤하고 있습니다. kwonkyo.tistory.com 그래서 남는 스위치 1개를 Home Assistant(HA)를 통해서 다른 ESPHome 디바이스를 컨트롤할 수 있도록 .. 2021. 3. 16.
ESP8266, Watchdog (wdt reset error) Watchdog은 esp8266 시스템을 모니터링하는 도구로써 정해진 시간이 지나면 시스템을 리셋하는 기능을 합니다. 그래서 의도치 않은 에러가 발생하거나 무한루프에 빠져서 시스템 로직이 멈추게 되면 watchdog이 개입을 해서 esp8266 전체 시스템을 리부팅하게 됩니다. 반대로 말하면 시간이 오래 걸리는 로직을 수행할 때 시스템이 정상적으로 계속 작동하기 위해서는 watchdog이 발동하기 전에 watchdog timer(wdt)를 계속 리셋해주어야 합니다. ESP8266에는 두 가지 종류의 wahtchdog이 있는데 Software와 Hardware watchdog입니다. Software watchdog Software watchdog은 다음과 같이 무한루프에 빠지게 되면 발동이 되는데요. 꼭 .. 2020. 12. 9.
Home Assistant(HA) + ESPHome + Sonoff Basic R2, 침대 취침등 개조 침대에 달려있는 LED취침등을 Home Assistnat(HA)와 연동해 보겠습니다. 약 8년전인가? 에몬스가구에서 구입한 침대이고 이렇게 머리맡에 작은 물건을 놓을 수 있는 자리가 있는데 그 위에 LED 조명이 내장되어 있는 모델입니다. 누워서 손을 뻗으면 닫을 수 있는 거리에 스위치가 있긴하지만 그냥 잠들어 버렸을 때 저절로 꺼지게 한다던가 아니면 자다가 화장실을 갈 때 동작센서를 사용해서 저절로 켜질 수 있게 HA에 연동해 주려합니다. 취침등의 구조는 220V 전원 2가닥 중 하나가 위 사진에 있는 똑딱 스위치를 거치도록 되어있고 220V 전원은 220-12V 컨버터로 들어갑니다. 그리고 이 컨버터가 LED에 연결되어 있습니다. 침대 뒷면에 배선이 있기 때문에 자세가 불편해서 처음엔 선이 뭐이리 복.. 2020. 12. 6.
Home Assistant, 더샵 아파트 월패드 연동 3편 - ESPHome(RS485) 중계 모듈 설치 더샵 아파트 월패드(홈네트워크) 연동의 마무리를 지어보도록 하겠습니다. HomeAssistant, 더샵 아파트 월패드 연동 2편 - EW11로 RS485 패킷 분석 더샵 아파트 월패드를 Home Assistant(HA)에 연결하기 두 번째 포스팅입니다. 아파트 홈네트워크가 어떻게 구성되어 있는지 지난 포스팅에서 아주 가볍게 알아봤었죠. 이제 방법을 알아버렸기 때문 kwonkyo.tistory.com 지난 포스팅까지 연동할 RS485 통신 패킷까지 확인을 했었는데요. 이제 이 패킷을 네이버 Home Assistant 카페에 까꿍tm님께서 공유해주신 방법에 적용하기만 하면 됩니다. 이 방법은 ESP8266 보드에 RS485-TTL 변환 모듈을 연결하고 ESPHome을 이용해서 ESP8266 보드를 RS485.. 2020. 11. 25.
ESP8266 모듈로 무선(WiFi) 시리얼 모니터링 http://blog.daum.net/pg365/276 아두이노, ESP8266 등 MCU를 이용한 프로젝트를 할 때 디버깅의 중요한 툴 중 하나가 바로 시리얼 모니터입니다. 결과도 확인하고 컨트롤도 하고 여러 방면으로 많이 쓰이죠. 그런데 기본적으로 시리얼 연결은 USB를 통하는 방법을 가장 많이 사용하는데 유선으로 연결해야 하니 여러 가지 제약이 많습니다. 그래서 WiFi로 거리의 제약 없이 연결할 수 있는 방법을 찾아봤습니다. 무선 연결 방법으로는 BT나 WiFi를 이용하는 방법이 있을 수 있는데 BT를 이용하는 방법은 매우 간단합니다. BT에는 SPP(Serial Port Profile)란 프로파일이 있어서 Rx, Tx를 서로 연결만 해주면 간단하게 데이터를 주고받을 수 있기 때문에 BT모듈의 기.. 2020. 11. 23.
HomeAssistant, 더샵 아파트 월패드 연동 2편 - EW11로 RS485 패킷 분석 더샵 아파트 월패드를 Home Assistant(HA)에 연결하기 두 번째 포스팅입니다. 아파트 홈네트워크가 어떻게 구성되어 있는지 지난 포스팅에서 아주 가볍게 알아봤었죠. 이제 방법을 알아버렸기 때문에 쭉쭉 진도를 뺄 수 있을 것 같네요. 아래 링크의 글에 이어서 계속 진도 나가보겠습니다. Home Assistant, 더샵 아파트 월패드 연동 1편 - 설치환경 확인 및 홈오토메이션 관련 자료 수집 지금 살고 있는 아파트는 2014년도에 완공된 더샵 아파트입니다. 홈 네트워킹이 설치되어 있어서 월패드에서 전등을 켜고 끄거나 각방의 난방과 냉방을 조절하는 등 기본적인 기능이 가능합니다 kwonkyo.tistory.com EW11 사용 준비 홈네트워크의 연동 가능성을 보기 위해서 EW11이라는 장비를 하나 .. 2020. 11. 18.
Home Assistant, 더샵 아파트 월패드 연동 1편 - 설치환경 확인 및 홈오토메이션 관련 자료 수집 지금 살고 있는 아파트는 2014년도에 완공된 더샵 아파트입니다. 홈 네트워킹이 설치되어 있어서 월패드에서 전등을 켜고 끄거나 각방의 난방과 냉방을 조절하는 등 기본적인 기능이 가능합니다. 그런데 이게 흉내만 내다 말아서 편리하게 활용하기에는 너무 부족하고 그렇다고 아주 안 쓰자니 아쉽고 완전 계륵이라고 볼 수 있습니다. 어떤 식이냐면 제가 주로 취미생활을 하는 방에 전등 스위치는 이런 식으로 생겼습니다. 터치로 천장 형광등을 켜고 끌 수 있는 스위치가 하나 있고 그리고 방 좌우 벽에 설치된 콘센트를 차단하거나 연결하는 스위치 2개가 있습니다. 벽 콘센트는 사용 중인 전력량까지 표시가 되는 나름 스마트한 스위치입니다. 그런데 문제는 이 스위치는 홈네트워크에 연결되어 있지 않습니다. 그리고 원격으로도 집 .. 2020. 11. 16.
wemos D1 mini 기본사양 개요 wemos D1 mini는 ESP8266칩(ESP12) 기반의 4MB 플래시 메모리를 가진 보드입니다. 특징이라면 소형의 보드이지만 micro USB가 내장되어 있어 펌웨어를 올리기 편하도록 구성되어 있습니다. 기본사양 Operating Voltage 3.3V Digital IO Pins 11 Analog Input Pin 1 (최대 3.2V) Clock speed 80 / 160 MHz Flash size 4MB Pin Map Digital IO pinMode GPIO0~15: OUTPUT(default), INPUT, INPUT_PULLUP GPIO16: OUTPUT(default), INPUT, INPUT_PULLDOWN_16 Digital Input Level Low: < Vcc x 25% .. 2020. 11. 10.
DIY IoT 부품 - Sonoff pow r2 개봉기 및 펌웨어 백업 DIY IoT 환경을 꾸미는데 가장 기본적인 부품은 바로 스마트 스위치인데요. ESP8266 모듈에 릴레이를 붙여서 간단한 스마트 스위치를 만들어 사용해보기도 했습니다만, Sonoff라는 기성품이 있어서 몇 가지 모델 구매해 봤습니다. Sonoff 제품은 ESP8266 칩셋을 사용하기 때문에 기존 개발 모듈과 거의 동일한 구성을 하고 있습니다. 그리고 제품 내부에 UART 단자도 노출되어 있기 때문에 쉽게 나만의 펌웨어로 교체하고 디버깅이 가능한 장점을 가진 그런 제품입니다. 부품을 하나씩 사서 DIY 스위치를 만들어도 되지만 이미 직접 만드는 것보다 훨씬 높은 수준으로 만들어져 있는 제품이기 때문에 귀찮은 납땜이나 케이스 제작 같은 일을 피하는 대신 몇 천원만 더 쓰면 되기 때문에 나쁘지 않은 옵션이라.. 2020. 11. 6.
Home Assistant - ESPHome 연동 IoT, 스마트 가전 등등 이런 키워드로 깊이 들어가면 결국은 집안의 모든 가전기기를 묶어서 모니터링하고 컨트롤하는 홈오토메이션으로 귀결되기 때문에 저도 최근에 "Home Assistant(HA)"라는 오픈소스 홈오토메이션 솔루션에 발을 들이게 되었고 이것저것 눈이 보이는 건 다 연결하고 싶어서 부품들을 알아보고 있는 중입니다. 이전 포스팅에서 없는 실력에 이것저것 알아보며 힘겹게 ESP01 모듈을 활용해서 WiFi로 켜고 끌 수 있는 전등 스위치를 제작했었는데요. 웹소켓도 적용하고 타이머 기능도 넣어서 나름 쓸만한 정도가 되었다고 생각하고 한동안 유용하게 사용을 했었습니다. ESP01 모듈로 만드는 IoT 웹서버 2.0 - 웹소켓, 타이머 적용 오늘은 기존 프로젝트의 업그레이 후기입니다. ESP01 모.. 2020. 10. 29.
ESP8266 웹서버+웹소켓+파일시스템(SPIFFS) 예제 ESP8266 모듈을 사용해서 전등을 컨트롤하는 프로젝트를 진행했었습니다. 컨트롤 인터페이스를 위해서 ESP8266 모듈을 웹서버로 활용할 수 있는 기능을 사용했었는데요. HTML 코드를 문자열로 저장하고 있다가 요청이 오면 그 문자열을 반환해서 웹페이지를 보여주는 방식이었습니다. 하지만 이런 방법으로는 웹페이지를 디자인하는데 제한사항이 너무 많습니다. 일단 웹페이지 디자인 수정이 필요한 경우 펌웨어 자체를 다시 올려야 하기 문제가 있습니다. 물론 OTA를 이용해서 나름 편리하게 수정을 할 수 있지만 업데이트 때마다 서버가 중단되어야 하는 문제는 해결하지 못합니다. 그리고 웹페이지에서 사용할 수 있는 소스에도 한계가 있습니다. 물론 ESP8266 모듈의 용량이 코딱지 만하기 때문에 물리적인 한계는 있지만.. 2020. 10. 24.
ESP01 모듈로 만드는 IoT 웹서버 2.0 - 웹소켓, 타이머 적용 오늘은 기존 프로젝트의 업그레이 후기입니다. ESP01 모듈과 릴레이를 활용해서 거실에서 사용하는 보조등을 와이파이로 켜고 끌 수 있는 컨트롤러를 만들어 봤었는데요. ESP01 모듈로 만드는 IoT 웹서버 - WIFI로 전등 켜기 요즘은 ESP8266 보드를 아두이노 보다 더 많이 사용하고 있습니다. USB 포트가 없어서 별도로 USB-UART 변환 도구가 있어야 하는 불편함이 있지만 크기도 작고 와이파이도 사용할 수 있기 때문에 실생 kwonkyo.tistory.com 내용을 보면 아시겠지만 기존의 방법은 웹서버를 구성하는 HTML 코드에 치환자를 넣어두고 HTTP 요청에 따라 치환자를 교체해 가면서 버튼이 눌려지는 효과를 흉내 내고 기능을 구현해 봤습니다. 그래서 일반적으로 우리가 인터넷을 사용하면서.. 2020. 10. 23.
ESP8266, NTP로 인터넷 시간 동기화 (feat. UDP, NTP 패킷 구조) NTP를 이용해서 현재시간을 동기화하는 예제입니다. 시간에 따라 동작 조건을 다르게 적용하고 싶은 프로젝트가 있을 때 현재시간 확인이 필요한데요. 그럴 때 사용할 수 있는 여러 가지 방법 중 하나입니다. 예제 코드는 이전 포스팅에서 소개한 적 있었던 "Beginners guide of esp8266"에서 가져왔고 가이드북에서 설명이 생략되어 있는 부분에 약간의 살을 더해서 NTP를 처음 접했던 제가 이해한 내용을 정리하였습니다. 시작하기 전에 먼저 알아두면 도움이 될 내용 코드에 상세하게 주석을 달아두어서 바로 코드를 보면서 이해해도 되겠지만 몇 가지 알아두면 이해하는데 도움이 될 내용부터 먼저 건들어 보겠습니다. UTC(협정 세계시) UTC는 쉽게 말하면 우리가 사용하는 시간의 표준으로 국제 기준입니다.. 2020. 10. 20.