node.js

GoogleHomeとRaspberryPi3で赤外線リモコンを操作する〜ADRSIR

投稿日:

ADRSIR

ADRSIRは、ラズベリーパイ専用の学習リモコン基盤.

動画のとおり、基板上のスイッチでLEARNモードに切り替えて、覚えさせたいボタンを押して、覚えさせたいリモコンのボタンを押せば登録できる.

コマンドラインから操作するには、「ラズパイ赤外線学習リモコン」ソフトウェア アップデートのお知らせからソフトウェアをダウンロードする.

コマンドは3つ.1が対話コマンド型、2がコマンド、3がまとめて操作するコマンド.

まず、raspi-configから、I2Cをenableにする. 参考:PythonでI2Cを使う際のコマンドをまとめた

次に、i2c-toolsをインストールする.

最後に、ライブラリsmbusをインストールする.ソフトウェアはpython3を使うので.

1の対話型コマンドを実行してみる.

rを選択して、memoから対応するボタン番号を選んで、保存するファイル名を指定すれば対応するボタンの赤外線データをファイルに保存できる.

tを選択して、対応するデータを選択すれば、ADRSIRから対応する家電を操作できる.

これを2のコマンドラインで実行するには、こんな感じで.

なお、tokieng/adrsirlibという有志のライブラリもある.

IFTTTとfirebase

IFTTT(If that then this)は、何かのイベント(that)に対して、何か(this)を実行してくれるウェブサービス.
firebaseはgoogle製のデータベースとかのサービス.今回はリアルタイムデータベースとしてだけ使う.
ここでは、Google Assistantのイベントが発火したら、Webhooksを叩く.
そして、Webhooksからfirebaseのリアルタイムデータベースを叩き、RaspberryPiからfirebaseを監視して、firebaseの変更があったら上のコマンドを実行する.

IFTTTとfirebaseの設定は、次のページをそのまま参考にした.
Google Home、IFTTT、Firebase、Node.js、irMagicianを使ってシーリングライトを音声操作する

誰でもfirebaseを書き換えられるのでセキュリティー的にはちょっと問題.

node.js

そして、RaspberryPi3からfirebaseを監視して、必要に応じてADRSIRのコマンドを実行する.

上のページのindex.jsの部分でコマンドを適当に書き換える.ついでにエアコンのオンオフも登録.

pm2

pm2はnode.jsを永続的にサービス化することができるnode.jsのライブラリ.
foreverよりいろいろ機能があるらしい.

pm2をスタートアップに登録するには、次のとおりにすれば、やるべきコマンドを表示してくれる.

Google Home かわいい

-node.js
-, , , , ,

執筆者:

関連記事

Electronでmaterialize

By: Vancouver Film School – CC BY 2.0 目次1 Materialize2 bower3 sass4 browserify5 できた Materializ …

Electronでsql.js

By: Dmitry Baranovskiy – CC BY 2.0 目次1 sql.js2 準備3 インストール4 main.coffee5 index.coffee6 index.ht …

RaspberryPI3のNode-REDでHello World

By: Harry Rose – CC BY 2.0 目次1 Node-RED2 インストール3 Hello World Node-RED Node-REDはハードウェアデバイス/APIお …

GoogleHomeに好きな言葉をしゃべらせる〜google-home-notifier

By: Sabrina Eras – CC BY 2.0 目次1 Google Home2 google-home-notifier Google Home Google Homeは言わず …

Electron + CoffeeScript + Backbone.js + EcoでTodolistをつくってみた

By: Purple Slog – CC BY 2.0 目次1 はじめに2 gulpの準備3 Hello electron4 Hello Backbone.js & eco5 Ba …