Raspberry Piをリモートから制御する第一歩として、
ネットワーク越しに、AndroidアプリからLチカさせてみる、をやってみた。
いまのところ実にしょうもないレベルであるが、最初は誰もがしょうもなかったと言い聞かせつつ、
やったことを公開しつつ、どんなあんばいだったか記録しておこうと思う。
ちなみに、ここでいっているLEDとは、Raspberry Piボード上のLED “ACT” を指している。
ブレッドボードやらそういった類の何かは使っていない。
構成
- Raspberry Pi (OSはArch Linux) 有線LAN接続
- Railsが動いていて、REST APIを公開している。
- REST APIを叩くことで、LEDのON/OFFを制御するスクリプトが動作し、Lチカを実現する。
- Androidアプリ
- ボタンが2個ついてるだけの超絶シンプルアプリ
- ONボタンを押すとLEDを点けるほうのREST APIを叩きにいく。
- 同様に、OFFボタンを押すとLEDを消すREST APIを叩きにいく。
- 対向機のIPアドレスはまさかのハードコーディング。
ソースコード
- Raspberry Pi側のソースコードはこちら。Railsアプリ。
- Android側のアプリは後ほどアップロード(手元になかった)。
今後に向けてメモ
- Railsアプリは、スクリプトへのパスがハードコードされていたりしてだいぶ恥ずかしいので、そのうち直す。
- というかファイルI/OすればLチカできることがわかったので、もはやスクリプトを使う必要はなかった。そのうち直す。
- 応用して、自動草花への水やり機の作成を目論んでおく。できたら画像と共にアップロードしよう。
- カメラと合わせて、水やりしつつ、草の成長記録をツイッターに投稿する、というのもいいかもしれない。
- ツイッター越しに命令(水やり、写真撮影、等)を発行できるようにしてもいいかもしれない。