ESP-WROOM-32開発ボードに火を入れる

2017/12/1記す
最近このページへのアクセスが多いのですが、開発・更新が滞っております。またアップデート情報ありましたら追記しますので今しばらくお待ちいただければと。せっかくお越しになったのでRaspberry Piでゲートウェイを作る方法なども見ていただければと。よろしくお願いします。
===
Arduino IDEで開発できる、Wi-Fi, BLEが内蔵されたマイコンESP-WROOM-32の開発ボード、ESP32-DevKitCが手に入ったので、早速火を入れてみました。

ここではWindows10で開発しますが、まずArduino IDE1.8.1がインストールされているものとします。

1. https://github.com/espressif/arduino-esp32

の緑の”Clone or download”ボタンを押下してDownload ZIPからファイル一式を適当なフォルダに持ってきて、自分のArduino関連のフォルダに展開します。

../Arduino/hardware/espressif/esp32/cores,doc,libraries,,,

2. ../esp32/toolsの中のget.exeをダブルクリックして終わるまで待ちます。

3. Arduino IDEのメニューで、ツール>ボード>ESP32 Dev Moduleを選択します。

ハードが正しく動くか試したいのですが、この基板には電源LEDしかなく、俗に言うLチカが基板単体ではできません。ブレッドボードに載せてLEDを外付けすればいいのですが、動かなかったときあれやこれや気を回さないといけなくなるので、最初は何も繋がずテストできるのがベターです。そこでスケッチ例の中からASCIITableと言う、文字列をただコンソールに出力するだけのスケッチを動かしてみます。

結果がこちら

今後はこの基板・CPUをベースに開発を進めてみたいと思います。

ここまで

 

 

LoRaモジュールを動かす

LoRaモジュールを単独で(メーカから提供される評価ボードを使わずに)動かしてみます。

ブレッドボードで、PC->(USBシリアル変換)->LoRaモジュール、の回路を組んでみます。

これでPCからTeratermで操作できるようになりました。

次はArduinoなどマイコンボードから制御することを試みます。

ここまで

Wi-Fi, Bluetooth Low Energy(BLE)

昨日東京出張の折り、久々に秋葉原に寄ってみたらESP-WROOM-32の評価・開発ボードが発売されていたので即買いしました。

Raspberry Piシリーズでは既に”3″にてWi-FiとBLEが最初から内蔵されるようになりましたが、ArduinoシリーズではESP-WROOM-32で内蔵され、それが今回開発しやすくなったと言うことです。

IoTはいよいよWi-FiとBLEが標準、と言う流れが加速します。

ここまで

LoRaWANプロトコル「超」概説

LoRaWANのプロトコル階層は以下のようになっています。

LoRaWANアライアンスが定めている仕様は上の図のLoRa MAC以下で、アプリケーション層は(現在のところ)規定されていません。アプリケーション層は予め送受信双方で取り決めておく必要があります。

LoRa MAC層に見えるClass A, B, Cとは、センサーノードの電池寿命を伸ばす目的で、用途によって3種の使い分けができ、

Class Aは、端末側の送信から通信を始め、その端末が受信動作をするのは送信した直後の2回だけ(端末が送信してきたときだけ上流からデータを送れる)
Class Bは、センサーノードは定期的に受信動作をしており、送信せよという指示を受信したら送信する方式(端末は通常は送信しないが、上流から問い合わせがあったときに答えるような動作ができる)
Class Cは、送信時以外はいつも受信している

と言う使い分けができます。

LoRa MAC以下の仕様は、”LoRaWAN 1.0.2″と”Reginal Parameters”の2つに分かれており以下のサイトから誰でもダウンロードできます。

LoRaアライアンスの仕様書ダウンロードページはこちら

ここまで

 

無線モジュールは扱いにくい

LoRa対応の無線モジュールが手に入ったので、添付されていた評価ボードを使わずにどんな評価ができるか試そうとしています。

前準備として、このモジュールは1.27mmピッチでブレッドボードに直接刺さらないので、写真のような基板を手作りしてみました。

今日はここまで。

LPWA関連商品の企画検討を始めました

LPWA, 特にLoRaWANはゲートウェイの設置状況やコミュニティの様子から、ヨーロッパから普及し始めているように伺えます。LoRaWANについてはゲートウェイやノードを自作する猛者も多く、そのための部品類や情報が豊富で羨ましい限りです。

日本でもこれからLPWAが立ち上がるいい時期だと思いますので、当社でも普及の一翼を担いたく、近々(多分4月から)、関連商品を提供できるように動くことにしました。

乞うご期待です。

The Things Network

LoRaWANは規格がオープンで、特に団体に加盟しなくても試すことができるのが魅力である。と言うわけで、欧州を中心にエリアを増やしている草の根LoRaWANのTheThingsNetworkにアカウントを作ってみた。

日本でこのまま普及するとは思わないが、知っておく必要がある。

今日はここまで。

LoRa開通!

LoRa通信モジュール2個の間で通信できるようになったので、順を追って説明します。

1)基本は「特定小電力無線モジュール ES920 ソフトウェア開発環境説明書 Version 1.00」に従って進めます。

一点注意が必要なのが、P.10の「NXPサイトにてan2295sw.zipファイルを探す」と言う趣旨の記述ですが、2017.3.9現在、見つかりませんでした。問合せたところ、CD-ROMの04.ソースコード>01.BootLoaderが同じものとのことでしたのでこれを使います。

2)基板は何も触らなくて可。アンテナを繋いでPCにUSBで接続し、1)で解凍したFlash Rom書込みツールで05.実行ファイル>02.Applicationの**.srecファイルを2個のモジュールに書き込めば準備は終了です。

3)Tera-termなどで親機・子機を動かします。

ボーレートは115200にします。

送信の改行コードをCR+LFにします。

基板のRESETスイッチを押すと下記が現れます。

親機にする方はnode=Coordinator、ownid=0000にします。子機にする方はデフォルトのままでとりあえずOK

子機から”gggg”とタイプしたら、親機のコンソールに打った文字が現れました(Received Data(gggg)」

今日はここまで。