= TOPPERS/μKadecot = TOPPERS/μKadecotは、ECHONET Lite 通信ミドルウェアTOPPERS/ECNLのサンプル アプリケーションです。[[BR]] GR-SAKURAにECHONET Lite コントローラをWebアプリケーションとして実装しています。[[BR]] Webアプリケーションは、WebサーバとWebブラウザの間で通信が必要になりますが、[http://kadecot.net/ Kadecot]^[#kadecotlicense ※]^のWebAPIと互換性を持たせているので、Kadecotアプリが使用できます。[[BR]] また、GR-SAKURAのGPIOを操作するWebAPIも追加し、WebアプリケーションからGPIOを操作できるようになっています。 = ダウンロード = ソースコードは[http://dev.toppers.jp/trac/contrib/browser/uKadecot こちら]にあります。trunkの行の「Size」列にある↓をクリックすると、zipファイルでダウンロードできます。[[BR]] 書き込みイメージは[http://dev.toppers.jp/trac/contrib/browser/uKadecot/trunk/csp/flash/ こちら]にある「ukadecot_YYMMDDhhmmss.mod」をダウンロードしてください。 = ソフトウェアについて = 一般公開しているTOPPERS/ECNLは、TOPPERS/ASPとTINETを使用していますが、このアプリケーションはTOPPERS/SSPと[https://github.com/adamdunkels/uip μIP]を使用しています。[[BR]] また、このアプリケーションではDHCPクライアントを実装し、起動時にIPアドレスを取得します。 Kadecot APIはWebSocketを使用しJSONでメッセージをやり取りする[http://wamp.ws/ WAMP]が使われていますので、μIPのサンプルのWebサーバにWebSocketを必要最小限ですが実装しています。[[BR]] HTTPメッセージヘッダを解釈するため[https://github.com/joyent/http-parser http-parser]を使用し、WebSocketのヘッダ情報を取得しています。[[BR]] Webサーバのファイルシステムに[http://elm-chan.org/fsw/ff/00index_p.html FatFS]を使用し、GR-SAKURAの1MByteのROMの一部にファイルシステムのデータを持つように実装しています。[[BR]] WebSocketで通信されるのはJSONフォーマットなので、[https://github.com/mnunberg/jsonsl JSONSL]を使用しWAMP形式のメッセージを解釈しています。[[BR]] WebAPIからの要求はECHONET Lite電文に置き換えられUDPで送信します。また、応答のECHONET Lite電文はKadecot APIで置き換えられWebアプリケーションに応答するようになっています。 GR-SAKURAの4つのLEDは以下のように使用しています。 * D1:LANのリンク処理時に点灯します。 * D2:LANで送受信があった時に点灯します。 * D3:DHCPサーバからIPアドレスを取得している時に点灯します。 * D4:ECHONET Lite機器としての動作状態プロパティがONの時に点灯します。 ---- ※[=#kadecotlicense]「Kadecot」は株式会社ソニーコンピュータサイエンス研究所の商標です。