部屋のライトのON/OFFにSwitchBotを活用しているのですが、目覚ましのタイミングで電気を付けて強制的に起きられたらいいですよね。IoT的な諸々の連携はSwitchBot専用ハブがあれば簡単にその辺り設定できるらしいんですが、地味にお高い...
ですが、公式のPythonスクリプトを使えばラズパイ経由で操作可能という記事が!
https://chasuke.com/switchbot-raspi/
これを使って早速目覚まし時計を作っていきます。
ライブラリを指定された通りにインストール。
$ sudo apt-get update
$ sudo apt-get install python-pexpect
$ sudo apt-get install libusb-dev libdbus-1-dev libglib2.0-dev
$ sudo apt-get install libudev-dev libical-dev libreadline-dev
$ sudo pip install bluepy
$ git clone https://github.com/OpenWonderLabs/python-host.git
$ cd python-host
スマホアプリからSwitchBotのMACアドレスを調べて
$ sudo python switchbot.py "MACアドレス" Turn On
$ sudo python switchbot.py "MACアドレス" Turn Off
こんな風にコマンドをたたくとSwitchBotがその通りに動いてくれます!
あとは目覚まし時計的に時間に応じて実行できるように処理を加えます。
datetimeを使って得た時間が6時半のときサブプロセスで先ほどのプログラムを実行するというシンプルな構造。
auto_switch.py
import subprocess
import datetime
import time
try:
while True:
dt_now = datetime.datetime.now()
if dt_now.hour == 6 and dt_now.minute == 30:
subprocess.call(['sudo','python','/home/pi/python-host/switchbot.py','\'MACアドレス\'','Trun On'])
time.sleep(60)
except KeyboardInterrupt:
sys.exit(0)
無事動いてくれて、毎朝寝起きの目に強烈な光を届けてくれるようになりました。
めでたしめでたし。
投稿者の人気記事
-
myaon
さんが
2021/02/28
に
編集
をしました。
(メッセージ: 初版)
-
myaon
さんが
2021/02/28
に
編集
をしました。
-
myaon
さんが
2021/12/23
に
編集
をしました。
ログインしてコメントを投稿する