일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 해외주식
- Python
- cluster
- 애플
- 월패드
- MQTT
- Home Assistant
- 코스피
- 홈네트워크
- 현대통신
- 공모주
- 나스닥
- 매터
- 오블완
- esp32
- Bestin
- 배당
- matter
- RS-485
- SK텔레콤
- 힐스테이트 광교산
- 미국주식
- homebridge
- ConnectedHomeIP
- Apple
- Espressif
- 국내주식
- 파이썬
- 티스토리챌린지
- raspberry pi
- Today
- Total
목록파이썬 (16)
YOGYUI
Create Multi-platform Docker Images for Home Network Python Application 내가 만든 힐스테이트 광교산용 RS-485 연동 홈네트워크 파이썬 코드를 Home Assistant OS(HAOS)에서 구동하는 방법을 포스팅한 뒤, 이에 관해 사용법이나 문제 보고하는 유저들이 조금씩 늘어나고 있다 HAOS에서 현대통신 RS485 연동 GitHub python 코드 실행하기 HAOS에서 현대통신 RS485 연동 GitHub python 코드 실행하기 2023년 막바지에 HAOS에서 내가 깃허브(GitHub)에 올려둔 힐스테이트 광교산 소스코드(현대통신 HDHN-2000 월패드 RS485 연동)를 HAOS가 설치된 SBC/NUC에서 실행하는 방법에 대한 문의가 ..
Improve RS-485 packet recv buffer parser 2023년 12월 무렵, 내가 힐스테이트의 현대통신 RS-485 홈네트워크 관련 작업을 하면서 깃허브에 올려둔 코드를 사용하고자 하는 유저가 종종 문의를 해 답변을 하고 원격 지원을 하는 와중에 짬을 내 코드를 리뷰하는 시간도 가졌다 이래저래 디버깅하는 와중에 ew11 무선 RS485 컨버터로부터 데이터를 수신할 때 버퍼링을 통해 여러개의 패킷을 한꺼번에 받는데, 내가 짠 코드는 여러개의 패킷 중 최초로 받은 단 1개의 패킷만 해석하는 크리티컬한 개선 필요 사항을 발견했다! 대충대충 동작한 어거지로 하게 짠 코드라 그런가.. 시간이 지나서 돌아보니 상당히 민망한 부분 ㅋㅋ 지금 실제로 사용하는데 큰 문제는 없지만, 이제 내 코드를 ..
2024년 공휴일 크롤링 (OpenAPI) 2024년 갑진년(甲辰年) 새해가 밝았다 올해도 어김없이 새해맞이 공휴일을 크롤링해보자 OpenAPI: 공공데이터포털의 "한국천문연구원_특일 정보" API 활용법 포스팅 링크 공공데이터포털::공휴일 데이터 조회 (REST API) 회사에서 사원별 공수(Man Hour) 관리 프로그램을 하나 만들었는데, 공휴일에는 입력이 안되게 만드는 기능이 필요하게 됐다 파이썬 써드파티 라이브러리 종류도 몇 개 있어 찾아봤는데, 중국의 yogyui.tistory.com 아래와 같이 Python(파이썬) 스크립트 실행 ※ API 키 획득 방법은 위의 링크 글 참고 import datetime import requests import pandas as pd from bs4 impo..
지난 3월 20일, 현대통신 RS-485 코드가 적용된 HA 애드온 베타 버전을 출시하였으니, 편하게 애드온으로 사용하고자 하는 유저는 아래 링크 참고 Home Assistant add-on 베타버전 릴리즈 (이 글이 생각보다 유입이 많네...) 2023년 막바지에 HAOS에서 내가 깃허브(GitHub)에 올려둔 힐스테이트 광교산 소스코드(현대통신 HDHN-2000 월패드 RS485 연동)를 HAOS가 설치된 SBC/NUC에서 실행하는 방법에 대한 문의가 3건 가량 들어왔다 (간간히 블로그 방문자분들께서 직접 시도해보는 경우가 있는 것 같다~ wow) HAOS는 거의 사용해본 적이 없기 때문에, 이번 기회에 직접 설치하고 다뤄보면서 내 코드를 설정하고 실행하는 방법에 대해 간략히 정리해 포스팅하도록 한다..
LG ThinQ REST API - Control Air Purifier 1년전 LG전자 로봇청소기의 가동 상태를 얻기 위해 ThinQ API(AWS IoT, MQTT)를 Python으로 연동한 바 있다 LG ThinQ REST API::파이썬 연동 LG ThinQ REST API::파이썬 연동 Access LG ThinQ API using Python 지난 글에서 Homebridge에 LG ThinQ 디바이스를 연동하는 방법에 대해 알아본 바 있다 Homebridge - LG ThinQ 연동하기 (애플 홈 연동) Homebridge - LG ThinQ 연동하기 (애플 홈 연동) Homebr yogyui.tistory.com 별 문제없이 잘 쓰고 있었는데, 최근 해당 글에 다음과 같은 댓글이 달렸다 나도..
Hyundai HT Wallpad - Automatic discover RS-485 devices and support Home Assistant MQTT discovery 지난주, 현대통신 월패드의 RS-485 연동 소스코드의 패킷 파서 클래스를 일원화하는 작업을 진행했다 현대통신 월패드 RS-485 연동 소스코드(python) 개선 작업 현대통신 월패드 RS-485 연동 소스코드(python) 개선 작업 Hyundai Wallpad RS-485 Python Source Code Enhancement 지난주 목요일 (6월 15일) 힐스테이트 소스코드 관련 지원 요청 이메일을 받았다 소스코드가 워낙에 조악하게 기능 구현에만 충실하게 짜놨다보니 디버 yogyui.tistory.com 지원 요청하신 유저분께..
2023년 공휴일 크롤링 (OpenAPI) 2022년이 저물어간다 매년 새해가 밝아오면 가장 먼저 하는 일은 역시 공휴일 확인 (직장인의 유일한 낙이랄까) 공공데이터포털의 "한국천문연구원_특일 정보" Open API를 사용해서 다가오는 2023년의 공휴일 정보를 가져와보자 (원래 노는 토/일 주말은 제외~) API 활용 포스트 링크 공공데이터포털::공휴일 데이터 조회 (REST API) 회사에서 사원별 공수(Man Hour) 관리 프로그램을 하나 만들었는데, 공휴일에는 입력이 안되게 만드는 기능이 필요하게 됐다 파이썬 써드파티 라이브러리 종류도 몇 개 있어 찾아봤는데, 중국의 yogyui.tistory.com 파이썬 코드로 매년 초 한번씩 정보를 가져와서 DB에 저장하는 자동화 코드를 개발해두면 여기저기..
저번 주말에 폭설이 오더니, 요 며칠사이 엄청 추워졌다 글을 작성하고 있는 12월 17일 오전에도 눈이 내리고 있었다.. 당분간 추위가 계속될 거라고 한다 ㅠ (추운게 더운것보다 훨씬 싫다) https://www.delighti.co.kr/news/articleView.html?idxno=43181 [오늘날씨] 주말에도 냉동고...18일까지 서해안·제주에 폭설 - 딜라이트닷넷 [딜라이트닷넷 정호원 기자] 토요일인 17일 아침 최저기온이 영하 15도까지 떨어지는 등 동장군이 좀처럼 물러서지 않은 가운데 충남서해안과 전라권서부, 제주도를 중심으로 18일까지 매우 많은 www.delighti.co.kr 난방비가 급격하게 올랐다는 기사들을 접하면 난방을 켜는게 약간 두렵기도 한데... https://imnews..
이전에 라즈베리파이에 RS485-USB 컨버터를 유선으로 라즈베리파이에 연결했는데, 홈네트워크 게이트웨이가 별도로 신발장 등에 존재하지 않아 거실 월패드에 직접 연결할 수 밖에 없어 미관(?)을 많이 해치고 있었다 거실 월패드 뒤쪽 공간이 좁아 라즈베리파이랑 컨버터 등을 쑤셔넣기가 곤란해 esp32 칩을 사용한 별도의 게이트웨이 하드웨어 설계를 고려하고 있는 와중에, 집들이같이 손님을 맞이할 약속이 슬슬 생겨서 부랴부랴 일단 RS485 통신 모듈이라도 무선 방식으로 바꿔야겠다고 마음먹었다 어떤 걸 써볼까나... 이래저래 고민해보다가 알리 익스프레스에서 RS485 - WiFi 컨버터로 널리 사용되고 있는 Elfin-EW11A 디바이스를 2개 구매했다 (국내에 정식으로 수입되고 있진 않지만 워낙에 가성비가 ..
한동안 1일 1디바이스씩 조지다가(?) 21일~23일 거제도 출장 일정으로 잠깐 휴식을 가졌다 ㅎㅎ 다시 열심히 달려보자.. 거실 월패드랑 복도 쪽 제어패드에는 엘리베이터 호출 기능이 있다 월패드에서는 상향, 하향 양방향으로 호출이 가능한데 반해, 복도 제어패드에서는 하향으로만 호출이 된다는 차이가 있다 (Hi-oT 앱에서도 하향으로만 호출된다는 점은 약간 특이하다) 월패드로 엘리베이터를 호출하면서 패킷 변화를 캡쳐해보자 1. 엘리베이터 호출 시 패킷 분석 class ParserVarious(SerialParser): def interpretPacket(self, packet: bytearray): try: if packet[3] == 0x18: # 난방 self.handleThermostat(packe..
분양받을 때 옵션으로 거실이랑 방3개 모두 천장형 시스템에어컨 (공기청정 미적용) 설치하기로 계약했다 원래 가지고 있던 에어컨이 없었을 뿐더러 이제껏 천장에 달린 시스템에어컨이 있는 집에서만 살아왔기 때문에 이게 익숙해서 별고민없이 설치할 수 있는 공간엔 죄다 설치했다 (에어컨 옵션 금액만 638만원 부들부들... 돈이 이렇게 많이 들줄은 몰랐지 ㅠㅠ) 거실에 있는 월패드로 각 방별로 에어컨 4가지의 상태를 설정할 수 있다 가동상태: On/Off 희망온도: 1도 단위, 최소 18도 ~ 최대 30도 풍량: 자동/미풍/약풍/강풍 모드: 자동/냉방/제습/공기청정 공기청정은 미적용 옵션으로 했는데, 월패드에서는 설정할 수 있는 점이 신기했다 (물론 Hi-oT 앱으로도 가능한데, 앱에서는 여러 상태에 대한 명령을..
지난번 도시가스차단기(밸브)쪽 포트의 RS-485 패킷 분석 시 (링크), 4번째 바이트가 0x1B인 패킷은 가스밸브와 관련된 패킷인 것을 알아냈다 그 외에도 4번째 바이트가 0x18, 0x1C, 0x2A, 0x2B, 0x34, 0x48인 패킷 종류가 있는 것을 확인했는데, 이제 힐스테이트 Hi-oT 앱으로 제어 가능한 디바이스들을 하나하나 건드려보면서 각각이 어떤 기기와 관련있는지 알아내보자 1. 난방 가동 및 온도 변경 패킷 분석 class ParserGas(SerialParser): def interpretPacket(self, packet: bytearray): if packet[2:4] == bytearray([0x01, 0x1B]): # 가스차단기 if packet[4] == 0x01: # 상..
지난번 월패드의 조명 관련 RS-485 포트를 후킹하여 집안의 조명 제어와 아울렛(콘센트) 제어를 Homebridge 및 Home Assistant와 연동하여 애플 및 안드로이드 모바일 기기를 통해 제어할 수 있게 만들었다 이제 조명 말고 다른 RS-485 포트도 후킹해볼 차례~ 1. RS-485포트 연결 터미널 블록의 조명 RS-485 포트 왼쪽에 '가스', '일괄', 그리고 라벨이 붙여지지 않은 2개의 케이블의 선이 다발로 묶여서 연결되어 있는데, 선의 색(청색과 흰색+청색)이 조명과 동일하길래 RS-485 결선을 똑같이 해서 USB to RS485 컨버터 하나를 더 달아봤다 ※ 가스 외에 다양한 디바이스를 이 포트로 제어할 수 있는듯? 갈수록 보기 싫어지고 있지만 뭐... 아직은 개발단계니 ㅎㅎ 결..
5. 외부 제어 (앱) 설치 외부에서 홈네트워크 명령을 주는 용도로 사용하기 위해 SMARTHOME Hi-OT (힐스테이트 스마트홈) 앱을 설치했다 스마트폰 앱으로 제어 연동할 수 있는건 나름 노력해서 잘 만든것 같은데, 단점이 한두개가 아닌 것 같다 ㅋㅋ 방 이름 변경을 할 수가 없다 (설정 창에서 방이름 변경 시 키보드 레이아웃이 안뜬다... 블루투스 키보드 사용자만 변경하라는건가? ㅋㅋㅋ 제어 반응성이 썩 좋지않다 (변경사항이 적용될 때까지 메시지박스가 서버로부터 응답을 기다리는 동안 다른 작업을 할 수가 없다) 아무래도 안드로이드랑 아이폰 둘 다 동일한 인터페이스로 만들다보니 발생한 문제같은데... (UI가 iOS에 특화된 컨트롤들이 아니다) 기업 입장에서야 인건비 아끼는건 뭐라 할게 아니지만 사..
이사짐 정리도 대충 끝났겠다, 이제 본격적으로 홈네트워크 작업을 해보자! 1. 월패드 제어 통신 포트 살펴보기 며칠전에 거실 월패드를 뜯어본 뒤 대충 구조는 파악했고, 이번엔 케이블에 부착된 라벨을 따라 신호선을 좀 더 면밀히 분석해봤다 벽면 안쪽 깊숙히 박혀있는 릴레이모듈(거실 천장 조명 제어)에서도 통신선이 빠져나와있는 것을 확인! 릴레이 모듈에서 시작된 회색 UTP 케이블이 '조명' 라벨이 붙은 UTP 케이블 중 일부와 엮여서 터미널 블록에 체결되어 있는 것을 확인! 시간 단축을 위해 릴레이모듈의 정보를 취합해보기로 했다 2. 릴레이 모듈 정보 취합 릴레이 모듈은 '중앙제어주식회사'에서 만든 JC-2883(J-Type) 모델인 것으로 확인되었다 구글링으로 JC-2883을 검색하니 첫페이지에 한국에너..