본문 바로가기

IoT HomeNet

Domoticz DB 파일 복구 Domoticz DB 파일 복구 domoticz 는 sqlite3 로 데이터를 저장한다. domoticz 를 사용하는 큰이유중에 하나는 장기적으로 저장된 (몇년치) 데이터를 그래프로 보여주는 부분이 훌륭한데 간혹 domoticz DB 가 날아가는 경우가 있다. 데시보드 페이지에 접속했는데 등록해놓은 Device 들이 몽땅 날아가서 없는 허탈한 경우가 있다. 라즈베리파이가 리눅스이다 보니 정전에 취약할 수 있다. 정기적인 백업 스크립트를 이용해서 백업되고 있다 하더라도 백업된 db 파일 모두가 복구불능인 상태일 때가 있다.이럴때 몇년에 걸처 쌓여있는 센서 데이터가 날아가면 조금 속상한 상황이 된다. 이럴때 DB 를 살리는 방법을 기록해 둔다. 먼저 sqlite3 가 없다면 설치apt-get install ..
Raspberry pi 로 TV on/off Raspberry pi 로 TV on/off Raspberry pi 는 GPIO 가 있다.GPIO 에 ir led 를 달아서 TV 리모컨 신호를 보내면 TV 를 켜거나 끌 수 있다.물론 볼륨을 조절하거나 mute 를 시킬 수도 있겠다. 라즈베리파이로 TV 를 컨트롤 할 수 있는 것 외에도 리모컨으로 동작하는 선풍기나 에어컨을 조작 할 수도 있다. TV 만 조작 할 거라면 HDMI 를 통해서 TV 를 조작 할 수 있는 방법도 있는데 연결된 TV 가 해당 기능이 있어야 하는 것 같다. 실패 TT 실패 사례는 나중에 성공하면 포스트 하겠다.대신 적외선 LED 를 이용하면 범용적이라는 장점이 있겠다. Rasp 로 TV 를 조작하는 방법은 인터넷에 많이 올라와 있다. 간단히 내용을 다시 언급하고 제작과정과 주의사..
Domoticz Raspberrypi 설치 Domoticz 설치 Domoticz 를 몇 년 관찰해 보았는데 가끔 업데이트도 되고 버려질만한 프로젝트는 아닌듯 하여주력으로 써보기로 했다. 설치가 가능한 플랫폼은 윈도우를 비롯해서 상당히 있지만 Homekit 도 돌려야하고 해서 라즈베리파이에 설치해서 사용중이다. 설치관련 linkhttp://www.domoticz.com/downloads/https://www.domoticz.com/wiki/Windows 설치sudo curl -L install.domoticz.com | sudo bash Domoticz API testhttp://www.domoticz.com/wiki/Domoticz_API/JSON_URL%27s#Temperature.2Fhumidity 가상 Device 를 추가해서 이용할 수 있..
AppleTV HomeHub 구축 위에 HomeApp 자동화 화면 처럼 자동화 설정을 하려면 HomeHub 가 필요하다. 홈허브는 Apple HomeApp을 통해 HomeKit 악세서리를 자동화 할 수 있게 해준다. 일정시간이 되면 불을 자동으로 끄거나 집을 떠났을때 보일러를 외출로 바꾸거나 하는 일을 자동으로 할 수 있게 된다. HomeHub 설정 이전에 HomeBridge 설치나 HomeKit 악세서리 테스트가 끝나 있는 상태에서 시작하는게 좋다. 연결이 되더라도 테스트 할 방법이 없기 때문이다. 뭐 쓸모도 없고. 아래는 애플에서 제공하는 HomeHub 설정 방법이다. https://support.apple.com/ko-kr/HT207057 Step 1 : 자동화를 위해서는 집에 고정적으로 위치하는 iOS 장비가 있어야 한다.보통 휴..
Homebridge 설치 HomeBridge 는 node.js 네트워크 플랫폼상에서 작동하는 Apple HomeKit API 지원 서버 프로그램 이다. 이 서버를 이용하면 기성 HomeKit 호환 제품을 구입하지 않고도 Apple Home App 을 통해서 홈오토메이션을 구축할수 있다.리눅스 상에 올릴 수 있는 오픈프로젝트이기 때문에 라즈베리파이 정도에 가벼운 리눅스 머신이 필요한 부분은 감안하자.라즈베리파이에 HomeBridge 서버를 올리면 다른 기기들 (전등, 보일러, 온도계, 도어락) 을 연결해서 조작 할 수 있도록 할 수 있다.물론 HomeBridge 와 집에 있는 기기들을 연결하기 위해서는 또 별도에 장비들이 필요할 수 있으나, 이 역시 열정만 있다면 꼭 구입하지 않고도 집에서 제작 할 수 있다. 기본 Home App..
ESP8266 Online Update 구현 Arduino IDE 로 ESP8266 에 OTA 를 구현하는 방법ESP8266 OTA (arduinoIDE) 온라인으로 펌웨어 업데이트가 가능하면 여러모로 편한게 많다. 케이스를 뜯지 않고도 간단하게 변경이 가능해지기 때문에 손발이 편해지고, 왠지 멋저 보인다. ^^ OTA 를 구현하기 위해 알아두어야 하는 사항당연하지만 최초에 펌웨어를 올릴때는 시리얼포트를 이용해서 올려야 한다.Air(WIFI)로 펌웨어를 받아두기위한 저장공간이 필요하므로 펌웨어의 크기는 ESP8266 플래시 공간의 반만 사용해야 한다.온라인 업데이트를 하는 방법은 Arduino IDE 를 이용, Web Server 를 구축하고 브라우저를 통해 플래시 파일을 upload, 별도로 다른 방법으로 짜는 길이 있다. ESP8266 모듈의 ..
ESP8266 를 보일러에 붙여보기 (4/4) RRD(Round Robin Database) 를 이용해서 보일러에 부착한 ESP8266 에서 온도 값을 정기적으로 가져와 저장하고 그 값을 그래프로 찍어 보았다. 수치를 기록하고 보여주는데는 이만큼 간단한 방법이 없는거 같다. windows 와 linux 모두 지원하고, DB 가 한개의 파일로 관리되기 때문에 백업도 간단하다. 이름에서 알 수 있듯이 생성시 만들어진 DB 파일에 끝까지 쓰고 나면 처음으로 다시 돌아가 앞에 데이터를 날리면서 재활용 하기 때문에 DB 파일의 용량이 늘어나지 않는 장점이 있다. 이런 장점은 아주 많은 로그를 IP 별로 저장해야 하는 네트워크 모니터링에서 유용하게 사용되고, 라즈베리 같이 저용량 시스템에서 간단하게 데이터를 모니터링 하는 용도로도 유용하다. Step 1 : 우..
ESP8266 를 보일러에 붙여보기 (3/4) ESP8266에 올릴 소스코드 이다. 보일러의 상태값을 읽어오고 실내온도를 착각하도록 조작해서 난방을 시작하거나 중단하게 만들 수 있다.추가로 부착한 온도센서에서도 상태값을 읽어와야 하기때문에 복잡할것 같지만 Arduino 를 이용해서 간단하게 제작할 수 있다.HTTP 로 ESP8266 으로 부터 값을 읽어 오거나 명령을 내리도록 할 생각이기 때문에 Arduino IDE 예제중에 WebServer HelloServer 소스코드를 수정하였다. HelloServer.ino #include #include #include #include #include AM2320 th; const char* ssid = "공유기ssid"; const char* password = "공유기접속비밀번호"; ESP8266WebS..