Check! WiFiモジュール RedBearLab WiFi Micro (CC3200) を使い始める 

遅ればせながら、明けましておめでとうございます！

[cloudpack][] の @dz_ こと[大平かづみ][]です。

Prologue - はじめに
====
WiFiモジュールが気になって仕方がないお年頃です。

新しい WiFiモジュール [RedBearLab WiFi Micro](https://www.switch-science.com/catalog/2361/ "RedBearLab WiFi Microキット - スイッチサイエンス") を買ったので遊んでみます！

![20160117_redbear-wifi-micro_001.png](https://qiita-image-store.s3.amazonaws.com/0/3812/9634c469-999f-fa01-efbe-27295f537a26.png)

RedBearLab WiFi Micro (CC3200) とは？
====
RedBearlab WiFi Micro は、**工事設計認証（いわゆる技適）**を取得済みの CC3200 を利用した WiFi モジュールです。

この WiFi Micro には、私が使ってきている [ESP-WROOM-02](https://www.switch-science.com/catalog/2347/ "ESP-WROOM-02ピッチ変換済みモジュール《フル版》 - スイッチサイエンス")  にはない便利そうな特徴があるので気になった次第です。

- **SSL** による通信が可能（ESP-WROOM-02は、<del>現時点はパッチ適用が必要</del> 使えるっぽいです、確認中です！）
- [SmartConfig](https://itunes.apple.com/us/app/ti-wifi-smartconfig/id580969322 "TI WiFi SMARTCONFIG on the App Store") というスマートフォンアプリでアクセスポイントを設定可能
    - なぜか WiFi Micro では、[サンプル](https://github.com/energia/Energia/tree/master/hardware/cc3200/libraries/WiFi/examples/SmartConfig "Energia/hardware/cc3200/libraries/WiFi/examples/SmartConfig at master · energia/Energia")を動かしてみても認識せず？手順が違うのかもしれないので、もう少し調査します。

また、 [RedBearLab](http://redbear.cc/ "RedBearLab") は、他に Bluetooth モジュールも出してたり、WiFi を Bluetooth を合体させた [RedBear Duo](https://www.kickstarter.com/projects/1991736672/redbear-duo-a-small-and-powerful-wi-fi-ble-iot-boa "RedBear Duo: A small and powerful Wi-Fi + BLE IoT board by RedBear — Kickstarter") の出資を募集中だったりと、興味深い会社さんです。

作業環境
====
それではさっそく使ってみましょう！

作業環境は以下の通りです。

|名称|用途|
|---|----|
|RedBearLab WiFi Micro v1.0|WiFiモジュール|
|RedBearLab MK20 USB v1.0|USBドングル|
|Windows 10|開発機|
|[Energia](http://energia.nu/ "Energia")|IDE(Arduino互換)|

※ピンヘッダが付いていない RedBearLab WiFi Micro の場合は、はんだ付けをするための資材、道具が別途必要です。

セットアップ手順
====
WiFi Micro は、前代(WiFi Mini)の資料はあるものの、Micro 自体の資料はまだ少ないようです。今回は、 [Seeed Studio](http://www.seeedstudio.com/ "Seeed Studio Bazaar, Boost ideas, Extend the Reach") の [WiFi Micro GettingStartedGuide.pdf](http://www.seeedstudio.com/document/pdf/WiFi%20Micro%20GettingStartedGuide.pdf) を参考に進めます。

ピンヘッダをはんだ付けする
----
ピンヘッダをそれぞれ **まっすぐに固定** して、はんだ付けします。
![20160117_redbear-wifi-micro_002.jpg](https://qiita-image-store.s3.amazonaws.com/0/3812/f68a2faf-e6fe-c836-ef33-9f9967d55151.jpeg)

できました。はんだごては、[白光(HAKKO) のFX600](http://amzn.to/1P7Bidv "白光(HAKKO) の 白光 ダイヤル式温度制御はんだこて FX600") を購入して、使いました。
![20160117_redbear-wifi-micro_003.jpg](https://qiita-image-store.s3.amazonaws.com/0/3812/42ad0a71-0f30-85cd-5b89-ace3a5af37b8.jpeg)



USBドングル (MK20) の準備
----
### USBドングル (MK20) のドライバをインストール(Windows のみ)

Windows に接続する場合は、ドライバが必要とのことです。どうやら、[mbed](https://mbed.org/ "mbed") のドライバのようです。

1. [インストーラー](https://developer.mbed.org/handbook/Windows-serial-configuration "Windows serial configuration - Handbook | mbed")をダウンロードします。
2. Wifiモジュール(RedBear WiFi Micro) は外した状態で、USBドングルをPCに接続します。
3. インストーラーを起動して、指示に従いインストールします。

![20160109_redbear_wifi_micro_001.png](https://qiita-image-store.s3.amazonaws.com/0/3812/6f2e7a6b-2193-7971-67a3-01071394fa1a.png)

![20160109_redbear_wifi_micro_002.png](https://qiita-image-store.s3.amazonaws.com/0/3812/11899467-5fca-a4ee-5756-bf50d5f15710.png)

![20160109_redbear_wifi_micro_003.png](https://qiita-image-store.s3.amazonaws.com/0/3812/530c130f-9183-eda4-351e-75950c416150.png)


### USBドングルのファームウェアを更新する
つぎに、USBドングルのファームウェアを更新します。

1. ファームウェア [WiFi-Micro_MK20.bin](https://github.com/RedBearLab/RBL_CC3200/blob/master/MK20/WiFi-Micro_MK20.bin "WiFi-Micro_MK20.bin") をダウンロードしておきます。
2. 図に示したUSBドングルの横の「RST」ボタンを **押したまま**、PCのUSB端子に挿します。
![20160117_redbear-wifi-micro_004.png](https://qiita-image-store.s3.amazonaws.com/0/3812/d405608d-8c25-c1e0-9c5b-5844c69d9fca.png)

3. 「BOOTLOARDER」という外部ディスクとして認識するので、エクスプローラーで開きます。
![20160117_redbear-wifi-micro_005.png](https://qiita-image-store.s3.amazonaws.com/0/3812/31621340-7d52-bfd6-f23d-488e0b5ce434.png)

4. 「BOOTLOARDER」に「Wifi-Micro_MK20.bin」をドラッグ＆ドロップしてください。（※時間がたつとモードが戻るので、素早く）
![20160117_redbear-wifi-micro_006.png](https://qiita-image-store.s3.amazonaws.com/0/3812/b760bff6-8660-f901-dc25-d18b26c94a07.png)

5. USBドングルのLEDが速い間隔で点滅したら、ファームウェア更新完了です。一度抜いてモードを戻してから、使用します。
![20160117_redbear-wifi-micro_007.png](https://qiita-image-store.s3.amazonaws.com/0/3812/a6442fdc-d09d-c5b7-1271-7c11168af0b1.png)

動作確認
====
それではプリインストールのプログラムで動作確認をしてみましょう！

今回は、電源の供給として、手っ取り早くUSBドングルでPCにつなぎます。（電源ピンとGNDピンを接続するだけでも動作確認は可能です。）

1. USBドングルに写真の向きで WiFi Micro を接続し、USBドングルをPCに挿します。
![20160118_redbear-wifi-micro_009.png](https://qiita-image-store.s3.amazonaws.com/0/3812/e344e128-6e39-af87-b104-4f7f40f63549.png)

2. WiFiのアクセスポイントで `RedBearLab CC3200` を見つけて、接続します。私は iPhone で操作しました。
<img width="320" alt="20160118_redbear-wifi-micro_011.png" src="https://qiita-image-store.s3.amazonaws.com/0/3812/73b92166-7c56-92ef-d449-fbd3f13b7597.png">

3. ブラウザで `192.168.1.1` にアクセスすると、下図の画面が表示されるので、「ON」「OFF」してみましょう。
![20160118_redbear-wifi-micro_012.png](https://qiita-image-store.s3.amazonaws.com/0/3812/26af9b71-cf62-b72c-910c-9fc8c0ae1a8a.png)


すると、 WiFi Micro の `L` とかかれたランプが点いたり消えたりするのを確認できました！(/・ω・)/
![20160118_redbear-wifi-micro_010.png](https://qiita-image-store.s3.amazonaws.com/0/3812/cb54ec4f-8852-365d-6051-2627cbfdee2e.png)

ぱちぱちぱちー！

Energia IDE で認識する
====
さて、今度は、PC の IDE から利用できるかどうか確認します。

2015/12/09 に公開された Energia 17 では、 RedBearLab WiFi Micro がサポートされており、追加のアドオンのインストールは不要です。

1. [ダウンロードページ](http://energia.nu/download/ "Download | Energia") で環境に合わせたファイルをダウンロードします。
2. Windows の場合は、ダウンロードしたファイルを任意のディレクトリに解凍してください。
3. `energia.exe` を起動します。
![20160118_redbear-wifi-micro_013.png](https://qiita-image-store.s3.amazonaws.com/0/3812/51fc36cd-9115-ec20-8594-10685ecfa7b3.png)

「ツール」 > 「シリアルポート」でUSBドングルが認識されていればOKです！
![20160118_redbear-wifi-micro_008.png](https://qiita-image-store.s3.amazonaws.com/0/3812/a378bd86-46e4-84a4-2d21-760e06cae0a3.png)

ここまで来れば、あとは Arduino ライクにプログラミングができます！(/・ω・)/ いえーい！

なお、一度書き込みをするとデフォルトのプログラム（RedBearLab CC3200 WiFi Test）は上書きされてしまいますが、スケッチ例の `SimpleWebServerWiFi` や [RBL_CC3200/Examples/OutOfBox](https://github.com/RedBearLab/RBL_CC3200/tree/master/Examples/OutOfBox "RBL_CC3200/Examples/OutOfBox at master · RedBearLab/RBL_CC3200") でほぼ同等のものを復元できます。（LEDに対する入力がちょっと異なるけど、 `LOW` の方で光りました。）

備考
====
私は、上記のセットアップだけで動いたと記憶しておりますが、もしうまく認識しない場合は、以下をお試しください。

Launchpad CDC Driver のインストール (Windowsのみ)
----
[How to set up Energia on Windows | Energia](http://energia.nu/guide/guide_windows/ "How to set up Energia on Windows | Energia") の「+ cc3200 LaunchPad」を参考に、LaunchPad CDC Driver (DPinst.exe or DPinst64.exe) をインストールしてみてください。尚、インストールの際は、 **CC3200 は外して** 行ってください。



Epilogue - おわりに
====
RedBearLab WiFi Micro は小柄でかわいいので気に入っています♪

SSL通信ができるようなんで、MQTT の SSL 版で通信するのが次の目標です！

[cloudpack]:https://cloudpack.jp/ "cloudpack（クラウドパック） 400社を超える導入実績! EC2などAWSクラウドの導入設計、構築、運用保守サービス"
[cloudpack-blog]:http://blog.cloudpack.jp/ "cloudpack技術情報サイト"
[大平かづみ]:http://blog.cloudpack.jp/author/oohira/ "大平かづみの記事一覧"