ラズパイで「絶対に起きれるIoT目覚まし時計」を作ってみた

寝坊に定評のある友達がいます。

目覚ましはかけているけど、いつのまにか止めてしまっているとのこと。

つまり、二度寝またはアラームが鳴り終わるまで寝てしまう、ということですね。


その問題、解決しましょう。


◾️要件

・起きるまで鳴り止まない

・起きていれば簡単に止められる


■コンセプト

1.朝になると10分周期で目覚ましが鳴る

2.一時的に止めるために、部屋を出てiPhoneのNFCをタッチしに行く

3.ちゃんと起きて、出かける準備ができたら、Suicaカードをタッチして仕事にゴーする


!音を止める仕組みがベッド付近にないから、いつの間にか止めてる、という事が発生しない!

!音を止めに行くために歩くことで、脳を活性化させる!

◾️準備

・Raspberry Pi 3 Model B(¥4,970)

・3ple Decker ケース(¥1,000)

・Bluetoothスピーカー YBS-32(秋葉原の露店で¥1,200)

・SONY PaSoRi RC-S380(¥2,415)


◾️使ったライブラリ

nfcpy

■参考にしたURL

◾️構成イメージ

reset.py:フラグを落とす

alerm.py:フラグが立ってなければsuica.pyを実行

suica.py:音楽を再生

                suicaを待ち受け

                idmによって①一時停止

                                   ②音楽を停止してフラグを立てる


crontabでalerm.pyを10分ごとに実行し、フラグが立つまでは何度でも鳴り続ける

フラグが立った後は鳴らないが、crontabで毎朝7:59にフラグを落とす


■なぜか音が鳴らなくなる

自分はこれの開発を自宅で行っておらず、家まで持ち運んでいました。

家に持ち帰ってセットアップし、動作確認をしようとしたら…鳴らない。

テストサウンドの再生もできない。


要は再起動時にpulseaudio -Dをしてあげないと、うまくいかないみたいです。

なので再起動後のセットアップは


①pulseaudio -D

②bluetoothctlでペアリング&接続&trust

③テストサウンド再生

④reset.pyでフラグ値リセット


になりそうです。


■Bluetoothスピーカーがスリープになって再生されない

これも最初わからなくて、テストしながら何度も音が鳴らないな~接続が切れるな~と思ってました。

これを見て、無音のサウンド再生して接続を維持することにしました。

■動作確認

初期モデルはできたので、今は外装をどうしようか考えるのが楽しいです。

自動改札機に似せようと思っています。


また、外出先でフラグ値を確認したり、フラグ値を変更できたらいいなーと思って、調べてみています。

Slackbotでどうにかできそうな気がする…


まあなんにせよ、自分で作りたいと思ったものを予定通りの形で実現できたので、楽しかったです。

ほねでざいん honesty-to-desire.inc

あれもしたいこれもほしい、欲求に正直なホモサピエンスのチラシの裏 I live honesty to my desire.

0コメント

  • 1000 / 1000