まずは始めの一歩。 OpenECHOってナンジャラホイ?
OpenECHOは、家電やセンサーデバイスなど、スマートハウスで用いられる機器のための通信プロトコルであるECHONET LiteをJavaで実装したドライバライブラリです(C++版もあります)。 詳細規定が存在する全ての機器+コントローラの制御が可能です。ネットワーク上の機器を認識して通信することができるのみならず、機器クラスを継承することでオリジナルの機器ノードを作成することもできます。分電盤・コントローラ・エアコン・照明・蓄電池・エコキュート・電動ブラインドなどの実動実績があります(とりあえず動いたレベルですが)。
要するに、OpenECHOを使うと ECHONET Lite対応機器を自作できるということです。
もちろん実際には言うほど簡単ではないのですが、既に先人が道を開いてくれています。
Raspberry Pi + OpenECHOでECHOENT Lite機器を自作する【完全版】その① | MUDAなことをしよう。
同じような取り組みは過去に2回ほど取り組んでいるのですが、いずれも中途半端に終わってしまっていたので、ちゃんと最後までやりきって、『使えるもの』を作ってみたいと思います。具体的には、
Raspberry Piの電源を入れると、自動的にECHONET Lite機器として認識されるもの
を作ります。進め方としては、およそ以下の順でいこうと考えています。
1.普段使いのPCで、PCをECHONET Lite機器として認識させるためのJavaプログラムを作成
2.1.で作成したプログラムをRaspberry Piに移植、GPIO動作確認
3.Raspberry Piで起動時に2.のプログラムが自動で立ち上がるように設定
という訳で、自分もやってみました。
まず Eclipseのインストールです。 昔から知ってるけど、あまりに重くて使ったことないんだよな。
『Pleiades All in One』の Eclipse 4.5 Mars for JAVA 64bit Full Editionをダウンロードしてインストールしました。
あとは上記の記事通りに進めればよいのですが、Main.java と LightEmulator.java は記事からコピーして、Eclipseのパッケージ・エクスプローラー内の srcの上で右クリックしてペーストすればOKです。
Main.javaでエラーが数個指摘されるかもしれませんが、プロジェクトを保存すれば消えます。
実行してみると、スマホに入れた「Kadecotアプリ」から認識されましたし、ミルエネからも認識されました。
人がやったことをそのままなぞって記事に書いてある通りにやっただけですが、実際に動いているのを見ると楽しいですね。 Javaは全くやったことがないんですが、精進したいと思います。