FlashAirと対応機器の開発
FlashAir 世代ごとの違い
| 世代 | FlashAir W-04 | FlashAir W-03 | FlashAir-W02 | FlashAir-W-01 |
|---|---|---|---|---|
| 型番 | SD-WUA | SD-WE | SD-WD/WC | SD-WB/WL |
| 読み書き最大速度 | 読み出し:90MB/s 書き出し:70MB/s | |||
| 無線転送速度 | 約31.4Mbps | 約10.8Mbps | ||
| UHS | UHS-I UHS Speed Class3 | |||
| SDスピードクラス | Class10 | Class6 | ||
| 無線対応規格仕様 | IEEE802.11b/g/n (2.4GHz SISO, HT20/HT40) | IEEE802.11b/g/n (2.4GHz SISO, 20MHz) |
||
| 無線セキュリティ | WEP,TKIP,AES(WPA/WPA2) | |||
| 対応ファームウェア | 4.00系列 | 3.00系列 | 2.00系列 | 1.00系列 |
| Eyefi Connected | 〇 | × | × | × |
| FlashAirドライブ (WebDAV) | 〇 | 〇 | × | × |
| インターネット 同時接続モード | 〇 | 〇 | 〇 | × |
| Luaスクリプトサポート | 〇 | 〇 | × | × |
| ブラウザユーティリティ のカスタマイズ | 〇 | 〇 | 〇 | 〇 |
| iSDIOサポート | 〇 | 〇 | 〇 | 〇 |
| GPIOサポート | 〇 | 〇 | 〇 | × |
| ロングファイルネーム | 〇 | 〇 | 〇 | × |
| 日本語ファイル名 | 〇 | 〇 | 〇 | × |
FlashAirのGPIO機能
FlashAirは、端子を汎用入出力(General Purpose Input/Output, GPIO)として利用する機能があります。GPIOを利用することで、FlashAirに接続された外部機器のスイッチON/OFFを行ったり、機器の状態を所得することができます。
GPIO機能を利用するための条件
GPIOは、FlashAirに電源が供給されていてかつFlashAirがSDホスト機器と接続されていない状態でのみ有効です。また、CONFIGファイルにIFMODE=1が設定されている必要があります。
GPIO状態の操作方法(CGIからの操作)
command.cgiを利用して、GPIOの入出力方向と、出力ピンのH/Lを設定できます。また、CGIの戻り値には、各ピンのH/L状態が返されます。DAT0からHを出力するには次のようにします。
http://flashair/command.cgi?op=190&CTRL=0x02&DATA=0x02
GPIO状態の操作方法(Luaスクリプトからの操作)
Luaスクリプトを利用してDAT0からHを出力するには次のようにします。
fa.pio(0x02,0x02)
また、Luaスクリプトを利用することで、SPIやI^2Cのデバイスを操作することができます。
FlashAir IoT Hub (BETA)
FlashAir IoT Hubでできること
- FlashAirを遠隔操作
GPIO入出力、スクリプトの実行、画像や動画ファイルのアップロードやダウンロードなど、FlashAirが行う様々な処理を画面上で設定し、実行させることができます。 - クラウドとの連携
IFTTTのWebhooksを使用・設定することで、Googleドライブ、Instagram、Twitterなどの約180ものクラウドサービスやSNSなどに対してFlashAirのデータをアップロードすることができます。 - 外部システムとのデータ共有
無料で公開されているASPIを使うことで、外部システムからのFlashAir IoT Hubを介して、FlashAirのデータをダウンロードしたり遠隔操作したりすることが出来るようになります。 - データをアップロードして可視化
FlashAirから送られた計測値をグラフに表示します。計測値は最大5つまで、CVS形式の場合は最大100個まで使用可能で、ダウンロードすることもできます。
FlashAir IoT Hub API
FlashAir IoT Hub APIを使えば、FlashAirからアップロードされた計測データやマルチメディアデータを所得することができます。APIへのアクセスには、OAuth2.0によって発行されるアクセストークンが必要です。
ベースURL:https://iot-hub-api.flashair-developers.com/
| API | 説明 |
|---|---|
| Authorization API | OAuth2.0(RFC6749他)の認可サーバ機能を提供するAPI |
| User API | ユーザ情報を扱うAPI |
| FlashAir Device API | FlashAirのデバイス情報を扱うAPI |
| Job API | FlashAirに対する遠隔操作・制御命令(ジョブ)を扱うAPI |
| Measurement API | 計測データを扱うAPI |
| PIO API | FlashAirのPIOのHigh/Low情報を所得するAPI |
| Image API | FlashAirからアップロードされた画像を扱うAPI |
| File API | FlashAirからアップロードされたファイルを扱うAPI |
| Logging API | FlashAirからアップロードされたログを扱うAPI |
Luaリファレンス
FlashAir W-03からLuaスクリプト実行をサポートしています。Lua機能によりFlashAirに様々な新しいプログラマビリティがもたらされます。例えば、外部サーバへのファイルアップロード、データのダウンロード、HTMLの動的生成などの高度な機能が実現できます。
詳しくはFlashAir DevelopersのLua機能APIガイドをご覧ください。
Luaスクリプト実行方法
FlashAir起動時に実行する
- 作成したLuaスクリプトをFlashAirに保存します。
- \SD_WLAN\CONFIGファイルに、LUA_RUN_SCRIPTパラメータを追加します。スクリプトのファイルパスを指定します。引数には、スクリプトのファイルパスを絶対パスで指定します。
LUA_RUN_SCRIPT=/bootscript.lua
- FlashAirをSDメモリカードスロットから一旦取り出し、再度挿入します。
- 以降、起動5秒後に指定したLuaスクリプトが実行されます。