Today
-
Yesterday
-
Total
-
  • [Homebridge] Tuya 스마트 벽 스위치 Id, Key 추출 및 Homebridge 연결
    Programing/Home IoT 2021. 4. 5. 22:39

    개요

    애플 홈과 시리를 통해 집의 IoT 디바이스를 조작하기 위해서, 시놀로지 NAS를 구매하고, Homebridge 서버를 돌리고 있습니다.

    처음에는 구글링으로 찾아 Docker와 Homebridge를 설치 한 뒤, 디바이스를 연결 하였습니다. 하지만 최근 공유기를 바꾸며, Homebridge의 모든 기기를 재설정 해야 되었는데, 하는 겸 연결 하는 법에 대한 글을 작성하게 되었습니다.

     

    이번 글에서는 NAS에 Homebridge 서버가 구축되어 있는 환경을 가정하고, 진행하였습니다.


    스마트 벽 스위치 제품

    3구 스위치 약 2만원정도 주고 구입

    스마트 벽 스위치 제품은 Girier사의 3구 제품을 알리 익스프레스에서 구매하여 사용하였습니다.
    설치할 위치의 환경에 중성선이 없어, 전등 전원선으로 작동하는 제품을 찾았습니다.
    완벽하게 작동하는 것은 아니고 불안정한 상태를 유지하며 1년 정도 사용 중입니다.
    센서 등(센서 감지 시 켜졌다가 꺼지는 전등)의 경우 꺼질 때, 스마트 벽 스위치도 같이 꺼져서 사용하지 않고 있습니다.
    그리고 같이 구매한 1구 스위치 제품은 벽에 설치하여도, 작동하지 않았습니다. 제품 구매 시 본인 집에서 잘 작동할지 확인한 후 구매 결정 추천해 드립니다.

     

    다양한 스마트 스위치 제품

     

    Tuya WiFi 스마트 스위치 EU/US 1/2/3/4 Gang Wall 조명 Alexa Google 홈과 호환되는 터치/음성/APP 원격

    COUPANG

    www.coupang.com

    국내 오픈마켓이나 알리 익스프레스에서 Tuya를 지원하는 스마트 스위치를 판매하고 있으니 다른 제품을 사용 하여도 Tuya 생태계에 있으면 사용 가능할 것으로 보입니다. Wi-Fi 연결이 가능하고, Tuya Smart 또는 Smart Life 라는 이름의 애플리케이션을 지원하는 제품을 추천해 드립니다.

     


    Homebridge 플러그인

    https://github.com/iRayanKhan/homebridge-tuya

     

    iRayanKhan/homebridge-tuya

    🏠 Offical Homebridge plugin for TuyAPI . Contribute to iRayanKhan/homebridge-tuya development by creating an account on GitHub.

    github.com

    저는 homebridge-tuya라는 이름의 플러그인을 사용하였습니다.

    시놀로지 Homebridge UI 프로그램을 사용하면, 설치 및 관리에 편리합니다.

    Homebridge UI

    Homebridge에 디바이스를 연결 하려면 config.json 파일을 수정해야 되며, tuya의 코드는 아래와 같습니다.

    코드에 디바이스 ID와 Key값을 입력해야 합니다. 아래에서 ID와 Key값을 추출하는 방법을 작성하겠습니다.

    3구 벽 스위치 관련 옵션이 없어 유사한 3구 MultiOutlet으로 타입을 설정하니 정상 작동하여, 여기서도 이렇게 설정하였습니다. 하지만 이렇게 설정하면 애플 홈 어플에서 콘센트로 인식하고, 시리에서도 명칭이 달라질 수도 있는 부작용이 존재합니다. 혹시 해당 이슈를 해결하는 법을 아시면 댓글 부탁드립니다.

    {
      "platform": "TuyaLan",
      "devices": [
        {
          "name": "{{Device Name}}",
          "type": "MultiOutlet",
          "manufacturer": "GeekBee",
          "model": "Smart Wifi Power Strip",
          "id": "{{Device Id}}",
          "key": "{{Device Key}}",
          "outletCount": 3
        }
      ]
    }
    

     


    디바이스 ID, Key값 추출

    1. SmartLife 어플 설치 후 디바이스 등록

    어플을 설치하여 안내에 따라 구매한 디바이스를 등록합니다.

    Smart Life App

    Google Play Smart Life Link

     

    Smart Life - Smart Living - Google Play 앱

    Smart Life is a smart device management App for you to control and manage your intelligent home products easier and to live smarter.

    play.google.com

    Apple Appstore Smart Life Link

     

    ‎Smart Life - Smart Living

    ‎Smart Life is a smart device management App for you to control and manage your intelligent home products easier and to live smarter. Smart Life has integrated with HealthKit. It allows you to seamlessly connect your health records using the body fat sca

    apps.apple.com

     

    2. Tuya IoT 플랫폼 가입

    Tuya IoT 플랫폼 Link

     

    Tuya Smart Developer Center

     

    auth.tuya.com

    플랫폼에 가입하여 Cloud - Project를 누릅니다. 계정을 이제 만들었으면, 요금제를 선택하라는 창이 뜹니다. Free Trial로도 할 수 있습니다.

    Free Trial 선택

     

    다시 돌아와서 우측 상단의 Create 버튼으로 프로젝트를 생성해줍니다. 정보는 Smart Home으로 적당히 입력해줍니다.

    프로젝트가 생성되었으면, 프로젝트 개요에 있는 Access Id와 Secret을 기억해 주십시오. 나중에 필요한 값입니다. Secret은 옆의 Show 버튼을 누르면 보입니다.

    Project Overview 탭

    그리고 어플과 연결시켜줘야 합니다. Link Devices - Link devices by App Account - Add App Account 를 눌러줍니다. 버튼을 누르면 팝업으로 QR코드가 노출되고, 어플에서 QR코드를 인식해야합니다. Smart Life 어플에서 맨 오른쪽 설정 탭으로 가면 스캔을 할 수 있는 기능이 있습니다. 해당 기능으로 QR코드를 스캔해 주십시오.

    Link Device 탭

    스캔을 한 이후, Device List 탭으로 들어가면 오른쪽 상단에 등록된 디바이스 숫자가 노출됩니다. 저같은 경우 디바이스 숫자는 1이였는데, 아래 테이블에 디바이스가 노출되지 않았습니다. 그런 경우 나라 셀렉트 폼을 다른 것으로 수정하면 확인 가능합니다. 저 같은 경우에 America로 되어 있었습니니다.

    디바이스의 이름 아래에 있는 ID값을 기억해 줍니다.

    3. Tuyapi cli를 사용해 Key 값 추출

    터미널을 켜서 @tuyapi/cli를 설치해 줍니다.

    npm i @tuyapi/cli -g

    @tuyapi/cli Link

     

    @tuyapi/cli

    🔧 A CLI for Tuya devices

    www.npmjs.com

    이후 아래의 커맨드를 입력하고, 아까 확인하였던 정보를 순서대로 입력해줘야 합니다.

    The API Key from tuya.com -> 프로젝트 개요에 있었던 Access ID

    The API secret from tuya.com -> 프로젝트 개요에 있었던 Access secret

    virtual ID -> 디바이스 리스트에서 확인했던 디바이스 ID값

    모든 값을 정확히 입력하면 아래에 ID와 Key값이 출력됩니다.

    터미널에서 해당 커맨드를 실행한 결과

    위의 터미널에서 추출된 id와 key값을 homebridge config에 입력해줍니다. homebridge를 재시작 하면 정상적으로 디바이스가 등록되는 것을 확인할 수 있습니다.

     

    디바이스의 ID와 Key를 추출하는 방법은 해당 영상을 참고하였고, 상세한 설명이 필요하신 분은 영상을 확인해주세요.

    참고로 영상에서는 Smart Life가 아닌 다른 어플을 사용하였으나, 동일한 기능이라 무시하였습니다.

     


    결론

    Tuya 벽 스위치의 디바이스 ID와 Key값을 추출하는 법과 연결하는 법을 작성해 보았습니다. Home IoT관련은 경험이 많지 않고, 많은 시간을 할애하지 못하는 분야라 완벽한 글은 아닌 것 같습니다. 혹시 수정할 부분을 발견하신다면 댓글로 알려주세요.

    감사합니다.


    이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

    반응형

    댓글

Designed by Tistory. Customed by MJ.