GoogleHome with RaspberryPiと<br>その日暮らし === > [name=phigasui] > [time=Sat, Jan 13, 2018] --- 自己紹介 ---- @phigasui a.k.a ガーシー phigasui.com ---- Julia, Python あたりが好き --- 2017年末にGoogle Home mini をGET ---- みなさん、GoogleHomeしてますか? --- 準備するもの - (Google Home( mini)?|Amazon Echo( dot)?) - Raspberry Pi (zero W がおすすめ) - 周辺のもの(SD,USB-microUSB等) - 赤外線LED([OSI5FU5111C-40](http://akizukidenshi.com/catalog/g/gI-03261/)) - 赤外線受信モジュール([OSRB38C9AA](http://akizukidenshi.com/catalog/g/gI-04659/)) - 抵抗([MFS25F51RB](http://akizukidenshi.com/catalog/g/gR-08519/)) --- Raspbery Pi zero W をセットアップ zero W 優秀 wifi, bluetooth, usb接続で電源&ssh化 ただピンヘッダがついていない:sob: ---- まずはピンヘッダをハンダづけ ---- SDにOS入れる かつてよりかなり入れやすい [ダウンロードページ](https://www.raspberrypi.org/downloads/raspbian/)より raspbian stretch liteをダウンロード --- リモコンの信号を読み込ませる ---- コードはCで書かれたものを利用します。 (Python等ではμsec単位の処理ができないため信号を扱いきれない...) ```shell sudo apt install git git clone https://github.com/WiringPi/WiringPi.git cd WiringPi ./build ``` ---- scanir.cを編集してコンパイル ```shell gcc scanir.c -o scanir -lwiringPi ``` ---- ピンを確認 ```shell gpio readall ``` ---- ```shell $ ./scanir tv/power 1 ``` ---- ![](https://i.imgur.com/d53znGY.jpg) ---- ![](https://i.imgur.com/VlHVfBM.jpg) --- httpサーバの設置 ---- ```shell sudo apt install python3-pip pip3 install flask ``` ---- コードをラズパイの中に忘れてきた:sob: こんな感じ ```python= @app.route('/tv/power) def tv_power: try: subprocess.run(["./sendir", "tv/power.data", REPEAT, PIN]) except: return 'fail' else: return 'success' ``` ---- ``` ./server.py ``` --- いざ設置 ---- ![](https://i.imgur.com/UqOVAbn.jpg) ---- 作業PCからアクセスして動作確認 ```shell curl localhost:8000/tv/power success ``` --- ローカルのラズパイにグローバルアクセスできるようにする ---- ```shell wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip unzip ngrok-stable-linux-arm.zip ``` ---- ちょちょいとサインupしてtokenをGET https://ngrok.com/ (サブドメイン指定で固定にしたければ有償化) ---- ```shell ./ngrok authtoken aBd2B8M4oHV4qSnFRBpm_83esBmgqG2c1dxgNFeKwp ./ngrok http 8000 ``` ---- ```shell ngrok by @inconshreveable (Ctrl+C to quit) Session Status online Account yuta oohigashi (ガ ー シ ー ) (Plan: Free) Version 2.2.8 Region United States (us) Web Interface http://127.0.0.1:4040 Forwarding http://a7f63957.ngrok.io -> localhost:8000 Forwarding https://a7f63957.ngrok.io -> localhost:8000 ``` --- あとはらくらくIFTTTでアプレットを作成 ---- ![](https://i.imgur.com/VU1xLMh.png) ---- ![](https://i.imgur.com/jL1YtC1.png) ---- ![](https://i.imgur.com/SoSxvCW.png) --- それでは動画を御覧ください。 https://drive.google.com/open?id=1B7_3T33PaGuUq9CkrArVTheAX20i9rjHYA --- 展望 ---- - TVさんの認識が弱い(エアコンもやったけど、てんで認識してくんない) - トランジスタ用意してなかったのでパワーを得られなかった - 元データ何回か読み込んで最適化する - LEDちゃんと選ぶ必要があった(max電流大きいやつ) - 照明、カーテンを扱う - 如何にして照明を赤外線で扱うか - 如何にしてカーテンを操るか
{"metaMigratedAt":"2023-06-14T15:25:04.361Z","metaMigratedFrom":"YAML","title":"GoogleHome with RaspberryPiと<br>その日暮らし","breaks":true,"slideOptions":"{\"transition\":\"slide\",\"theme\":\"black\"}","contributors":"[]"}
    649 views