ハンズオン講師の一人反省会 - JAWS DAYS 2016 - HackDayを終えて -

  • 4
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

tl;dr

JAWS DAYS 2016 - HackDayトラックでSORACOM Air+AWS IoTでデータ可視化 〜OpenBlocks IoTハンズオン初級編〜をやりました

  • 49名参加で完走率30%程度と大爆死
  • 原因はBX1のセットアップに使うWi-Fi環境の劣悪さでしたが、5GHzに逃げるって方法を思いつかなかった私の負けです
  • AWS Lambdaは、まだWindowsの人には早い(?)
  • 物理世界はつらいよ。でも、台数が多くても短時間に簡単にセットアップできるべき
  • BLEセンサーのメーカーは、MAC Addressを外装に記して欲しい

経緯

それはAWS Samurai 2015の辻さんからのお誘いから始まりました

Screenshot from 2016-03-15 08-59-36.png

突然の50台!
30台程度のハンズオンは経験済みでしたが、50台は未踏です

そして岡崎さんから

Screenshot from 2016-03-15 09-00-12.png

合計5時間の超大作!
※結局私はランチ1時間を挟んだ3時間を担当しました

反省点1: Wi-Fi環境

5GHzの有効活用

JAWS DAYS 2016の来場者は1,100名、昨年度同様Wi-Fi環境が劣悪になることはわかっていました
そんな中でOpenBlocks IoT BX1との接続はWi-Fiとなるため、セットアップができるのか?AWS Consoleを表示することができるのか?そんな不安がスタッフ全員の心配事としてありました

結果、やはりダメ

しかし午後に5GHzのAPを急遽設置していただいたところ改善がみられ次回につながるアイデアとなったと思います
具体的にはハンズオン会場のWi-FiやBX1との接続に使用するWi-Fiを5GHzにする、といったところです

要望:

  • BX1の出荷初期状態は2.4GHzの1ch固定であるため、このへんの改善が期待されます

個人的には2.4GHzでなく、5GHzを初期にしても全く問題ないと思います。理由は下記の通り

  • スマホ等、昨今の機器がすでに5GHz ready
  • 5GHzのほうが遮蔽物の影響を受けやすいので、むしろ近距離セットアップする場合には使い勝手が良い

反省点2: AWS LambdaをWindowsな人に使ってもらう

詳細はこっちに書きました

しかし、npmやpipが必要なものを動かすときには、zipで固めてアップロードする必要があります
OSXやLinuxな方はいいのですが、Windowsな方にはまだまだハードルが高いようですね

急いで書き直しましたけど、おかげでトラブルがなかったようで良かったです!

要望:

  • AWS IoTからESにDirectで流し込めればいいのにね

反省点3: BX1 50台のセットアップ

  • 電波干渉が予想されていたため、BX1の初期起動状態のWi-Fi周波数を散らす
  • 初級編と中級編で人が入れ替わるため、ソフトウェア的なリセットが必要

以上2点を実施するため、Ansibleを使いました

といっても、メーカ出荷時点ではAnsibleを走らすことはできないため、標準のファームウェア(というかUserland)にAnsibleが自動起動するように仕立て上げたオレオレファームウェアを作り、それを50台にインストールしてもらいました

一度作っちゃえば、Wi-Fi経由でplaybook.ymlをダウンロードして自身を構成してくれるようになるため、個体差があるデバイスを生成するのも苦になりません

※このファームウェアをつくるスクリプトは公開してもいいのかちょっとわからないので、個別にご相談ください

要望:

  • こういう自動化できる仕組みが標準で提供されて欲しい

反省点4: BLEデバイスを見つける方法

スクリーンショット撮り忘れましたけど、50台近くもBLEデバイスが検出されるのは、ちょっと笑えます

ただ、この中から自分のデバイスを探すとなると、笑いも止まります

結局、電波的に隔離された部屋でBLEデバイスの電源をON → ラベリングという、タンポポお刺身ワークロードが発生しました

要望:

  • 最初からMAC Addressはラベリングされてて欲しい

さいごに: BX1のWebUIの改善希望

メーカへの報告と不具合(?)の回避方法を兼ねて記しておきます

ネットワークセットアップについて

初期出荷状態がフォームに表示して欲しい

最初にネットワークのセットアップを促されるのですが、下記のとおりフォームに何も表示されません
そのため再入力の手間があります

Screenshot from 2016-03-15 10-08-03.png

とくに認証方式がWPA-PSKがデフォルト表示になっており、気づかずに設定してしまうと「WPA2-PSKでつなげる(初期はWPA2-PSK)→セットアップ完了して再起動→WPA-PSKになる」
このようなシーケンスになるのですが、特にWindowsは認証方式が変更されると再接続してくれません。これにより「接続できないんだけど」トラブルが大発生しました

回避方法

しっかり入力しましょう。とくに認証の部分は確認が必要です

初期状態はOpenBlocks IoT Family向けWEB UIセットアップガイド 2-3. WEBクライアントの準備(PDF)にSSIDとパスフレーズのみ記載されています

独自調査では下記のとおりです

  • SSID = iotfamily_本体シリアル番号
  • パスフレーズ = openblocks
  • 周波数 = 2.4GHz / 1ch
  • 暗号化方式 = WPA2-PSK

Internet Explorer 9,10,11 での検証不足?

ネットワークのセットアップにIEの古いやつ(9? 10? 11?)を使うと、必要項目を埋めているはずなのに「ネットワーク設定を入力してください」表示され、セットアップを完了させることができませんでした

正確な条件やスクリーンショットを撮り忘れました、すみません

回避方法

IE EdgeかChrome等、モダンなやつでやりましょう

あとがき

チューターの皆さんに助けてもらいながらのハンズオンでした。完走者も出て、ほんとよかった!
でもやっぱり、私は夏休みの宿題的パワーで押し切るしかできないのだと、思いましたよ