ガラケー・ガラホ・スマホの充電忘れを音で通知する

現在我が家では祖母に携帯電話(ガラケー)を持たせています。
某社のプリペイド携帯ですが、受話専用で年額3000円程度とお安く、また、条件によりこちらからの通話料が無料となる優れものです。
ところが、祖母は普段携帯電話を使う習慣が無いため、出かける際に充電器を外した後、充電器に戻すのを忘れてしまい、その後鞄の中で電池が切れた状態で放置…という事が多いです。
結局、こちらからの通話は家の固定電話宛に行うことになってしまいます。
そこで、充電忘れを音で通知するシステムをRaspberry Pi Zero(以下、RPI Zero)を使って実現してみました。

構成は以下の通りです。

スピーカー ⇔ (イヤホンジャック接続) ⇔ RPI Zero ⇔ (USB接続) ⇔ 携帯端末

スピーカーはダイソーの300円スピーカーを用いました。また、RPI Zeroはイヤホンジャック端子がないため、Amazonで150円程度で売っているUSBオーディオ変換アダプタを用いました。
やったこと自体は単純で、以下のpythonプログラムをcrontabで毎時0分に動かす設定をしただけです。


  1. import commands
  2. import time
  3. from mutagen.mp3 import MP3 as mp3
  4. import pygame
  5. filename = 'test.mp3'
  6. pygame.mixer.init()
  7. pygame.mixer.music.load(filename)
  8. mp3_length = mp3(filename).info.length
  9. while 1:
  10.     usb = commands.getoutput('lsusb -d 04dd:9141')
  11.     if len(usb) == 0:
  12.         print('not connected')
  13.         pygame.mixer.music.play(1)
  14.         time.sleep(mp3_length+0.25)
  15.         pygame.mixer.music.stop()
  16.     else:
  17.         print('connected')
  18.         break


このプログラムはlsusbコマンドというUSB接続している機器を表示するコマンドを用いて、対象の端末が接続されていれば何もせず、接続されていなければmp3ファイルを再生するものとなっています。
lausbコマンドを使う都合上、充電専用ケーブルではなく、通信対応のケーブルを使う必要があります。
再生するmp3ファイルは6行目で指定しています。また、端末のvender IDとproduct IDは12行目で指定しています。

参考:





コメント

このブログの人気の投稿

湾岸ミッドナイトの聖地についてまとめてみる

MakeMKVでリッピングに失敗する時の対処方法

中華タブレットのバッテリー交換に挑戦した話