プッシュ通知を備えたホームアシスタント用の DIY スマートドアベルを構築する

プッシュ通知を備えたホームアシスタント用の DIY スマートドアベルを構築する
あなたのような読者が MUO をサポートします。当社サイトのリンクを使用して商品を購入すると、アフィリエイト手数料が発生する場合があります。 続きを読む。

スマート ドアベルは、利便性と家のセキュリティを強化し、家にいないときでも玄関に誰がいるかを確認できる便利で革新的な方法です。





今日のMUOビデオ スクロールしてコンテンツを続けてください

2 つの ESP8266 ボードを使用して、Home Assistant スマート ホーム オートメーション ソフトウェアと統合し、誰かがドアベルを鳴らすたびにスマートフォンにプッシュ通知を送信する、完全に機能する Wi-Fi スマート ドアベルを構築します。これはローカルでもリモートでも機能します。





必要なもの

DIY Wi-Fi スマート ドアベルを構築するには、次のコンポーネントが必要です。





  • NodeMCU や D1 Mini などの 2 つの ESP8266 マイクロコントローラー ボードは、ドアホンの頭脳として機能します。
  • ドアベルスイッチ
  • マイクロUSB電源
  • DFPlayer Mini (MP3 プレーヤー モジュール)
  • microSDカード(512MB以上)
  • サウンド出力用の 2W または 3W (幅 1 インチまたは 2 インチ) スピーカー
  • 2.4GHz Wi-Fiネットワーク
  • Raspberry Pi 上で実行されるホーム アシスタント サーバー、 あるいは、あなたは ホーム アシスタントを x86 PC にインストールする 。
  • すべてのコンポーネントを接続するためのジャンパー線

ステップ 1: ファームウェアをコンパイルする

2 つの異なるファームウェアをコンパイルします。

  • スマートベルスピーカーファームウェア(受信機)
  • スマートベルスイッチファームウェア(送信機)

スマート ベル スピーカーおよびスマート ベル スイッチのファームウェアをコンパイルするには、次の手順に従います。



  1. まだインストールされていない場合は、Home Assistant に ESPHome をインストールします。 設定 > 追加 - 私たちは そしてクリックしてください ESPホーム  dfplayerスピーカーを接続してスマートベルスピーカーを作る
    ラビによるスクリーンショット。 NAR
  2. クリック オープンWeb UI そしてクリックしてください 新しいデバイス
  3. デバイスに任意の名前を付けます。このチュートリアルでは、これを「スマートベルスピーカー」と呼びました。クリック 次へ > このステップをスキップします
  4. 次に選択します ESP8266 オプションからボードを選択し、クリックします スキップ  従来のプッシュスイッチとスマートベルesp8266モジュールの接続
  5. これにより、という名前の新しい構成が表示されます。 スマートベルスピーカー
  6. 同様に、もう 1 つの構成を作成し、名前を付けます スマートベルスイッチ
  7. 構成が作成されたら、 スマートベルスピーカー をクリックして設定を行います。 編集 ボタン。
  8. 次に、次のコードを キャプティブポータル: text.
     uart: 
      tx_pin: GPIO3
      rx_pin: GPIO1
      baud_rate: 9600

    dfplayer:
      on_finished_playback:
        then:
          logger.log: 'Playback finished event'

    api:
      encryption:
        key: "kQ5tP73N1pOl6XDYtq5RY15IaPsXjTg2A9g5nzHPejE="
      services:
      - service: dfplayer_next
        then:
          - dfplayer.play_next:
      - service: dfplayer_previous
        then:
          - dfplayer.play_previous:
      - service: dfplayer_play
        variables:
          file: int
        then:
          - dfplayer.play: !lambda 'return file;'
      - service: dfplayer_play_loop
        variables:
          file: int
          loop_: bool
        then:
          - dfplayer.play:
              file: !lambda 'return file;'
              loop: !lambda 'return loop_;'
      - service: dfplayer_play_folder
        variables:
          folder: int
          file: int
        then:
          - dfplayer.play_folder:
              folder: !lambda 'return folder;'
              file: !lambda 'return file;'

      - service: dfplayer_play_loop_folder
        variables:
          folder: int
        then:
          - dfplayer.play_folder:
              folder: !lambda 'return folder;'
              loop: true

      - service: dfplayer_set_device_tf
        then:
          - dfplayer.set_device: TF_CARD

      - service: dfplayer_set_device_usb
        then:
          - dfplayer.set_device: USB

      - service: dfplayer_set_volume
        variables:
          volume: int
        then:
          - dfplayer.set_volume: !lambda 'return volume;'
      - service: dfplayer_set_eq
        variables:
          preset: int
        then:
          - dfplayer.set_eq: !lambda 'return static_cast<dfplayer::EqPreset>(preset);'

      - service: dfplayer_sleep
        then:
          - dfplayer.sleep

      - service: dfplayer_reset
        then:
          - dfplayer.reset

      - service: dfplayer_start
        then:
          - dfplayer.start

      - service: dfplayer_pause
        then:
          - dfplayer.pause

      - service: dfplayer_stop
        then:
          - dfplayer.stop

      - service: dfplayer_random
        then:
          - dfplayer.random

      - service: dfplayer_volume_up
        then:
          - dfplayer.volume_up

      - service: dfplayer_volume_down
        then:
          - dfplayer.volume_down
  9. また、Wi-Fi 名とパスワードを使用して Wi-Fi SSID とパスワードのシークレットを編集します。どこに設置するかを確認してください スマートベルスピーカー そして スマートベルスイッチ Wi-Fi ネットワークが十分にカバーされています。
     wifi:  
        ssid: "MyWiFiName"
        password: "MyWiFiPassword"
  10. クリック 保存 そしてクリックしてください インストール
  11. 選ぶ マニュアルダウンロード 。これにより、ファームウェアのコンパイルが開始されます。コンパイルが完了したら、ファームウェアをダウンロードしてシステムに保存します。   ログを確認して問題のトラブルシューティングと修正を行う
  12. ここで、smart-bell-switch プロジェクトを開き、Wi-Fi シークレットを変更して、次のコードを キャプティブポータル:
     binary_sensor: 
      - platform: gpio
        name: "Smart Bell Switch"
        pin:
          number: 4
          mode: INPUT_PULLUP
          inverted: True
        on_press:
          - switch.toggle: relay1
        internal: True

    switch:
      - platform: gpio
        name: "Smart Door Bell"
        icon: 'mdi:bell'
        id: relay1
        pin:
          number: 2
          mode: OUTPUT
          inverted: True
  13. クリック 保存 そしてクリックしてください インストール
  14. 選ぶ マニュアルダウンロード 。コンパイル後、ファームウェアのダウンロードが自動的に開始されます。両方のファームウェアを デスクトップ

ステップ 2: MP3 サウンド ファイルを MicroSD カードにアップロードする

小容量の microSD カードを使用します (512MB 程度でも機能します)。 PC に接続します。インターネットからお気に入りのベルの音をダウンロードしたり、自分の声や自分の声を録音して、MP3 ファイルとして microSD カードに保存することもできます。これらのファイルには必ず次のような名前を付けてください 1.mp3 2.mp3 、など。

ステップ 3: ファームウェアを ESP8266 マイクロコントローラーにフラッシュする

ファームウェアをフラッシュするには、マイクロ USB ケーブルを使用して NodeMCU または D1 Mini を PC に接続し、次の手順に従います。





  1. ダウンロードして起動する ESPホームフラッシャー 道具。
  2. を選択してください ポートを選択してクリックします ブラウズ をクリックして、前の手順でダウンロードしたファームウェア ファイルを選択します。
  3. クリック フラッシュESP 。ファームウェアがフラッシュするまで待ちます。
  4. 完了すると、デバイスは自動的に Wi-Fi ネットワークに接続します。

同じ手順に従って、2 つの ESP8266 ボードにファームウェアをフラッシュします。

ステップ 4: ESP8266 ボードと DFPlayer およびスピーカーの配線

次の図を参照して、DFPlayer をフラッシュした ESP8266 に配線します。 スマートベルスピーカー ファームウェア。





Windows10のタッチスクリーンが機能しない

ジャンパー ワイヤを使用してこれらの接続を行い、はんだごてを使用してスピーカーを DFPlayer (MP3 プレーヤー モジュール) に接続できます。

すべてが接続されたら、2 本のジャンパー線 (オスからメス) を使用して、 スマートベルスイッチ ESP8266ボード。 1本のワイヤーを接続する必要があります D2 NodeMCU または D1 Mini ESP8266 ボード上のピンと、別のピン 3V または 3.3V ピン。次に、下の図に示すように、残りの 2 つの端を従来の押しボタン ベル スイッチに接続します。

作業を進める前に、必ず配線を再確認してください。

ステップ 5: ホーム アシスタントにデバイスを追加する

両方のデバイスをホーム アシスタントに追加する必要があります。これを行うには、次の手順に従います。

  1. に行く 設定 > デバイスとサービス
  2. が表示されます。 スマートベルスイッチ そして スマートベルスピーカー (電源が入っている場合) 検出されたデバイス リスト。
  3. クリック 構成、設定 > 提出する
  4. ドロップダウンからエリアを選択し、クリックします。 仕上げる
  5. 同様に、電源をオンにして追加します。 スマートベルスピーカー デバイスをホーム アシスタントに送信します。

ステップ 6: カスタムのベル音とプッシュ通知のオートメーションを作成する

スマート DIY Wi-Fi スマート ドアベルのプッシュ通知を有効にするには、ホーム アシスタントでオートメーションを作成する必要があります。作成するには、次の手順に従います。

  1. ホームアシスタント 、に行きます 設定 > オートメーションとシーン
  2. クリック オートメーションの作成 > 新しいオートメーションを作成する
  3. クリック トリガーの追加 そして選択します デバイス
  4. 選ぶ スマートベルスイッチ そして選択します スマートドアベルがオンになりました の中に 引き金 落ちる。
  5. クリック アクションの追加 そして選択します コールサービス
  6. 選ぶ ESPホーム:smart_speaker_dfplayer_play ドロップダウンから。
  7. の中に ファイル 、再生したい MP3 ベル音の 1、2、または 3 を入力します。
  8. 次にクリックします 保存
  9. オートメーションに名前を付けて、 保存 また。
  10. スマートフォンにプッシュ通知を送信するには、スマートフォンにホーム アシスタント アプリをインストールし、ホーム アシスタントにサインインして、 アクションの追加 オートメーションウィンドウで。
  11. 選択する コールサービス そして選択してください 通知: mobile_app_YourPhone 経由で通知を送信します
  12. 通知で受け取りたいメッセージを入力し、 をクリックします。 保存

ここでドアホンのボタンを押すと、ドアホンからベル音が再生されます。 スマートベルスピーカー 。自動化が機能している場合は、ログで詳細を確認できます。

スマートドアベルをよりスマートに

ESP8266 マイクロコントローラー ボードとホーム アシスタントを使用して独自の DIY Wi-Fi スマート ドアベルを構築することは、やりがいがあり、費用対効果の高いプロジェクトです。

DIY Wi-Fi スマート ドアベルの基本機能が正しく動作すると、CCTV IP カメラを追加し、Frigate NVR を使用してホーム アシスタントと統合して、高度なホーム オートメーションを作成し、ホーム セキュリティを向上させることができます。従来のドアベル スイッチの代わりに、PIR センサーまたはタッチ容量性センサーを統合することもできます。ホーム アシスタントの可能性は無限です。