Arduino
resas
WioLTE

Wio LTEを使ってみました ( #resas ハッカソンにて)

More than 1 year has passed since last update.


WioLTE


  • Arduino互換のLTEモデム付きマイコン

  • 従来のラズパイドングルなどは数万円したけど9800円と比較的安い

  • Seeed社が開発していて、Groveセンサーに対応している

  • 通常のシリアル書き込みではなくDFUモード書き込みが少し慣れが必要な印象


アンテナ組み立て

こちらの記事「Wio LTEをやってみてIFTTT送信サンプルまで試したメモ」を元にアンテナをつけてみましょう。


環境構築

開発環境のセットアップを見ながらArduino IDEのセットアップをします。


Wio Tracker LTEボードの追加する

こちらの内容を進めます。

メニュー> Preferenceから追加のボードマネージャのURLを指定します。


https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json


ボードマネージャーから 「Seeed STM32F4 Boards by Seeed Studioバージョン」を選択します。

インストールを押してインストールします。

スクリーンショット 2017-11-18 18.20.17.png

これでボードが追加できました。


Wio LTEのライブラリ追加

Wio LTEライブラリの追加を行います。

こちらのGitHubリンクから


書き込みでハマる

通常のArduinoとは若干使い方が異なるようです。

今回は内臓のフルカラーLEDを使うLedSetRGB.inoを試してみます。

綺麗に光ります :)


DFUモードに手こずったけど書き込み成功 ! #wiolte #resas

n0bisukeさん(@n0bisuke)がシェアした投稿 - 2017 11月 18 7:02午後 PST


### libusbをMacにインストール

通常のArduinoと同様に書き込もうとしたら以下のエラー。 書き込み完了しましたってでてるけどエラー文が。

libusbが無いよって内容みたいなので

brew install libusb

でlibusbを入れました。


シリアルポート指定はせずに、DFUモード

次に書き込みをするとエラーが変わって、以下の内容に。

どうやらDFUモードで書き込みを行うようです。

DFUモードって初めて使いましたが、Nefry v2のオンラインファームウェアアップデートと同じような仕組みらしいです。

Wio LTEの背面のボタンを押しながらUSB接続するとDFUモードになるようです。

その状態だと↓のキャプチャのようにシリアルポートにUSBシリアルポートの表示はされません。

スクリーンショット 2017-11-19 11.28.38.png

この状態で書き込みすると

スクリーンショット 2017-11-19 11.25.12.png

正常に書き込めた模様です。


RSTボタンかUSBを抜いて再接続しないと起動しない

これも少しハマりました。 (ちゃんと説明読めば書いてますけど笑)

DFUモードでプログラム書き込みをしたら、通常モードにして動作をチェックするのが基本になります。

なのでDFUモードで書き込んだあとはRSTボタンを押して再起動しましょう。

そうするとSerialUSB.println()で書かれてるメッセージがArduino IDEのシリアルモニタで確認できます。

DFUモードでプログラムを更新したあとに、そのままシリアルモニタを利用しようとすると怒られるので注意しましょう。


SORACOM SIMでLTE通信をためす

ここまでの手順で書き込みができるようになったら、同じように他のサンプルプログラムも書き込めます。

iftttのwebhookに投げるサンプルのifttt-webhook.inoを利用します。

ソラコムSIMは RESASハッカソンでお借りしているものをそのまま使ってます。

ソラコムのコンソールでSIMの情報を入力して、紐付けます。

あとはサンプルを起動させると.....


LTE通信テスト #wiolte #resas

n0bisukeさん(@n0bisuke)がシェアした投稿 - 2017 11月 18 8:24午後 PST


SIMの部分で少しハマるかと思いきや、ここは特に問題なく情報が送れました。

こんな感じでオンラインかオフラインかもコンソール側で見ることができます。


所感

LTEがこんなに簡単に使えて1万円切っているは時代を感じますね。

LTE使わなくてもArduino+Grove BASE SHILDの互換機っぽい使い方もできるし便利です。

DFUモードでの書き込みとデバッグ、Serial.println()ではなくSerialUSB.println()を使うなど、少し癖はありますが慣れると問題なさそうです。

通信をすることが前提のデバイスになると思うので、HTTPリクエストなどのサンプルはもう少し多いと助かりますね。

あと、@tseigoさんの記事が本当に助かりました。ありがとうございます。


参考