■昨年からほそぼそと作っていた制御デバイスの新型ですが、赤外線リモコン用のライブラリも組み込みました。回路はすでに組んでいて、制御用のソフトもリンクしていたのですが、コマンドから呼び出せる実装がまだでした。今回コマンドから呼び出せるようにして、機能的には予定していたフルセットが揃ったことになります。あとは今回追加したストアドプログラムやアナログセンサのイベントと組み合わせやすくなるように、シェルを試します。部品としてはあとはXBeeを取り付けて無線通信できるようにするだけなのですが、今それをやってしまうとデバッグがやりにくくなるので、まだ組み付けてはいません。
アナログセンサとの組み合わせは、ある機器の電源が入ったことをトリガとして、別の機器をリモコン制御したり、連動して電源を入れたりすることが目的です。今まではセンサデバイスと操作デバイスが分離していて、一旦サーバーを経由しなければならなかったので応答性に限界がありました。それが1つのデバイス内部で処理できるようになるので、これまでより使いやすくなることが期待できます。
ストアドプログラム機能は、コマンド実行のシーケンスを一つにまとめてEEPROMに書き込んでおき、それを適時呼び出せるようにするものです。これでだいぶ使いやすくなりました。ATMegaに書き込んだファームウェアと違って外部から変更できるので、ファームウェア本体は基本機能だけで済ませられるし、赤外線リモコン操作などの実行タイミングも粒度を小さくできるようになりました。効果が大きかったのはエアコンのリモコン操作で、エアコンのリーダコマンドと機能コマンドの分割実行がやりやすくなりました。今まではリーダとコマンドをそれぞれ別のリモコン操作としてサーバから送信していたのですが、それを分割しなくてもよくなりました。低速なのでプログラムのワーキングには使えませんが、EEPROMでフリーなRAMエリアが増えるだけで柔軟性が増えたので、もっと早くから使うようにすれば良かったと思っています。
それはそれとして、そろそろケースのことを考えないといけないようです。