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