Slide 1

Slide 1 text

#IoTLT FlashAirガジェット is 何 IoT縛りの勉強会! IoTLT vol.58 @ソフトバンク あおいさや ~ 年の瀬スペシャル IoTでもスタンドアローンでも使えるこの一枚 ~

Slide 2

Slide 2 text

#IoTLT 自己紹介 Handle name:あおいさや Occupation : システムLSIの研究開発 基板の上の部品屋 Twitter :@La_zlo (ラズロ) facebook :masaki.nishikawa.1276 GitHub :AoiSaya こころの赴くままに豆をまきます。 発表内容は趣味と煩悩に基づいており、無保証です。 また、所属団体を代表するものではありません。

Slide 3

Slide 3 text

#IoTLT FlashAir is 何 • 東芝が発売した無線LAN搭載のSDメモリカードの名称 • Wi-Fi機能と内蔵マイコンをIoT向けに使う方法が開示されている • 開発言語は Luaスクリプト • Webサーバを内蔵しており、スマホやPCとHTMLやJSで連携できる • 企業向けビジネスは終了したが、購入したカードは今まで通り使える

Slide 4

Slide 4 text

#IoTLT カメラ画像をスマホでシェア 3DプリンタWi-Fi化 自作プログラムをカメラ内で実行 例えば撮影した写真をメール送信 他のマイコンボードからコントロール (Wi-Fi機能つき外部メモリ) 単体でガジェットを動かす FlashAirの4通りの使い方

Slide 5

Slide 5 text

#IoTLT カメラ画像をスマホでシェア 3DプリンタWi-Fi化 自作プログラムをカメラ内で実行 例えば撮影した写真をメール送信 他のマイコンボードからコントロール (Wi-Fi機能つき外部メモリ) 単体でガジェットを動かす FlashAirの4通りの使い方(実例) カード内のデータをWi-Fi経由で書き換え 使い方を紹介した同人誌 カード内のプログラムで画像をクラウドに転送 定点撮影サービス「AirLapse」 mbedからコントロール 学習型アルコールガジェット「TISPY」 郵便物が届くとスマホに通知 ドアポストセンサー (AKIBA PC Hotline)

Slide 6

Slide 6 text

#IoTLT 世代別FlashAirの機能 機能 要素 W-04 W-03 W-02 無印 SDカード インタフェース UHS-I HS HS HS SDスピードクラス CLASS10 CLASS10 CLASS10 CLASS6 UHSスピードクラス U3 - - - iSDIO SD, SPI ✔ ✔ ✔ ✔ Wi-Fi IEEE802.11b/g/n ✔(40MHz) ✔ ✔ ✔ WebDAV Read. Write ✔ ✔ command.cgi GPIO ✔ ✔ ✔ Lua Script Version 5.2.1 ✔ ✔ CJSON ✔ ✔ 数学関数 ✔ GPIO, SPI ✔ ✔ I2C,UART,PWM ✔

Slide 7

Slide 7 text

#IoTLT FlashAirの開発環境 FlashTools Lua Editor (FTLE) Browser上で動くLuaスクリプトエディタ。 インストール不要でPCを汚さない。 統合開発環境としての側面を持っており、 デバッグ実行、ブレイクポイント、ファイラ ーなどの機能が充実している。 Luaで開発する際の定番ソフト。 Airio-Base(えありお・べーす) Arduino互換形状のNXP LPC11U35マイコ ンボード(Arduino互換機ではありません) SDカード配線引出基板(AE-SD) SDカードの配線をブレッドボードや ユニバーサル基板等で使いやすい よう2.54mmピッチで引き出すボード

Slide 8

Slide 8 text

#IoTLT ガジェット視点でのFlashAir Pros (W-04) Cons  軽い、薄い、小さい  世界中の国や地域で使用可能  普通の大型電気屋さんで買える  資料が日本語  電源だけでWebサーバになる  WebDAVでファイルサーバにもなる  WebSocketに対応  WPA2エンタープライズに対応  APモード、STAモードに対応  CGIが使える(Lua)  電源投入時、ファイル更新時に実行できる  GPIO、I2C、SPI、UART、PWMが使える  フォントや画像などが入れ放題  単三乾電池2本でも動く(非公式)  汎用端子が5本  参考になる作例が少ない  BT製品より消費電流が多い (Wi-Fi製品としては少ない方だが)  部品ライブラリを作ってる人が少ない (カラー液晶、マトリクスLED、温湿度 気圧センサ、日本語ライブラリなどは あります)

Slide 9

Slide 9 text

#IoTLT ガジェットをつくってみた 汎用端子は5本 機能: GPIO, SPI, I2C, UART, PWM

Slide 10

Slide 10 text

#IoTLT ケースサイズガジェット そらまめ18号の接続例 光る・奏でる・センスする +3.3V

Slide 11

Slide 11 text

#IoTLT LUAスクリプト ■スイッチの状態を読む ■ ブザーを鳴らす ■LEDテープを光らせる

Slide 12

Slide 12 text

#IoTLT スイッチの状態を読む PIO機能でスイッチを確認 s, t = fa.pio(0x07,0x04) k = bit32.btest(t,0x10) 0: SW ON 1: SW OFF

Slide 13

Slide 13 text

#IoTLT ブザーを鳴らす SPI機能で圧電サウンダを振動 “L”を出力 s=string.rep( "¥xAA", <音の長さ>) fa.spi("mode",0) fa.spi("bit",8) fa.spi("init",<音程>) fa.pio(0x0F,0x04) fa.spi("write",s) 0x00000000を 送信しなければ LEDは反応しない

Slide 14

Slide 14 text

#IoTLT APA102C (SPIタイプ) LEDテープを光らせる SPI機能でフルカラーLEDを点灯 入力に設定すれば 音は鳴らない SPI制御 s={} s[1] = 0x00000000 for i=1, 5 do s[i+1] = <輝度+BGR> end s[7] = 0xFFFFFFFF fa.spi("mode",0) fa.spi("bit",32) fa.spi("init",1) fa.pio(0x07,0x04) fa.spi("write",s)

Slide 15

Slide 15 text

#IoTLT 動作デモ https://twitter.com/La_zlo/status/941957599833997312 https://twitter.com/i/status/1122399883116204034 https://twitter.com/i/status/1186262874890485762

Slide 16

Slide 16 text

#IoTLT FlashAirの便利サイト FlashAir Developersクローン https://flashair-developers.github.io/website/ FlashAir開発者向け非公式wiki https://seesaawiki.jp/flashair-dev/ FlashTools Lua Editor (FTLE) https://seesaawiki.jp/flashair- dev/d/Tool%3aFlashTools%20Lua%20Editor%20%28FTLE%29 FlashAir用ペリフェラルライブラリ https://github.com/AoiSaya/

Slide 17

Slide 17 text

#IoTLT ご清聴ありがとうございました Handle name:あおいさや Twitter :@La_zlo 参加させていただいた同人誌は 以下のサイトでダウンロードできます https://flashair- developers.github.io/website/docs/books.html