ESP8266ボードのセットアップ

 電子工作入門に最適なマイコンである「Arduino」シリーズ。そんなArduinoと同じ開発環境、ライブラリが使用でき、さらにWi-Fiが標準でサポートされるESP8266というチップを使ったモジュールが人気を集めています。現在ではさらにBluetoothもサポートしたESP32が主流になりつつありますが、価格面ではESP8266の魅力は薄れてはいません。
 なんといっても便利なのは、Arduinoと同じくさまざまなセンサーをカンタンに扱えること。そして、そのセンサーで取得したデータを、Wi-Fiを使ってインターネットのクラウドに蓄積できること。さらに、動作をPCやスマホなどからWi-Fiで(=ケーブルをつなぐことなく)コントロールできること。こうしたメリットから、はやりのIoTデバイスがカンタンに作れるデバイスとして注目されているわけです。
 そんなこんなでいまさらですが、ESP8266を使えるようにするまでの手順をメモします。友達向け。
 


 なお、上で「ESP8266を使ったモジュール」という表現を用いましたが、これはESP8266チップのほか、メモリなどを加えたものを指しています(ESP-WROOM-02などが有名)。さらにこのモジュールに加え、USBコネクタや各種センサーなどを接続できるGPIOコネクタを搭載した、マイコンボードのような形態のものもあり、こうした商品が「ESP8266ボード」などと呼ばれているようです。本稿では、市販のESP8266モジュール搭載ボード=「ESP8266ボード」を使用することとします。
 代表的な製品としては、秋月電子で販売されている「ESP-WROOM-02開発ボード」(1,280円)や、スイッチサイエンスの「ESPr Developer」(1,944円)などがあります。

Arduino IDEのインストール

 まずはArduinoの開発環境である「Arduino IDE」というプログラムをインストールします。「Arduino IDE」は、Windows、Mac、Linuxなど各種プラットフォームに対応しています。ここではWindowsの手順を紹介します。
 まずは以下のリンクからプログラムをダウンロードします。
 Arduino – Software
 自分の環境にあったインストーラーをダウンロードするわけですが、Windowsだけ見ても、
Windows Installer, for Windows XP and up
Windows ZIP file for non admin install
Windows app Requires Win 8.1 or 10
の3種類があります。
 オススメは2つめ。ZIPファイルをダウンロードして、自分で適当なフォルダに展開して使用します。手順としては1つめのインストーラーを使った方法がカンタンですが、複数のバージョンを並行して使うのがちょっと大変になります。一部のプログラムは、Arduino IDEのバージョンによって動いたり動かなかったりすることもあります。そうした際に、複数のバージョンを使い分けられる、ZIPを使った導入が便利というわけです。
 というわけで、ここではZIPファイルをダウンロードしましょう。リンクをクリックすると、「JUST DOWNLOAD」「CONTRIBUTE & DOWNLOAD」の2つの選択肢が現れます。とりあえず、前者を選んでダウンロードしましょう(後者は寄付を求めるリンクです。使い慣れてきたら考慮しましょう)。
「arduino-1.8.5-windows.zip」というファイルが落ちてきます。
 管理しやすいように、というか、説明をしやすいようにここでは以下のフォルダ構成にしてみます。
 Cドライブのルートに「arduino」というフォルダを作成。その下に「素材」というフォルダを作成します(今後、必要となるライブラリもここに保存しておけば、なにか問題が発生した時に最初の状態に戻すことができます)。
 先程ダウンロードした「arduino-1.8.5-windows.zip」は、この素材フォルダに移動。Windowsのファイルエクスプローラーでこのファイルをダブルクリックすると、中の「arduino-1.8.5」というフォルダが見えるので、これを「C:\arudino」にドラッグ&ドロップ(ファイルが解凍されます)。これで、「C:\arduino\arduino-1.8.5」というフォルダができます。
 この中にある「arduino.exe」がプログラム本体です。右クリックして「スタートにピン留めする」ことで、Windowsのスタートメニューから起動できるようになります。ぜひやっておきましょう。デスクトップにショートカットを作ってもいいかもしれません(右クリックで「ショートカットを作成」し、できたアイコンをデスクトップにドラッグ&ドロップ)。

ESP8266 Coreのインストール

 Arduino IDEは、標準の状態ではESP8266をサポートしていません。そこで、ESP8266 Coreと呼ばれるものをインストールして、開発がスタートできるようにします。
 Arduino IDEを起動して、メニューの「ファイル」-「環境設定」からダイアログを開きます。ここでは2つの設定をします。
 まずは「スケッチブックの保存場所」。Arduino IDEは、Arduino IDEで作成するプログラムのことを「スケッチ」と呼び、そのスケッチを保存するフォルダを「スケッチブック」と呼んでいます。このフォルダを指定するわけです。ここでは、先に作成した「C:\arduino」フォルダの下に「sketch」というフォルダを作成し、これを指定することとします(「C:\arduino\sketch」)。
 次に同じダイアログの下のほうにある「追加のボードマネージャーのURL」に以下を入力します。
http://arduino.esp8266.com/stable/package_esp8266com_index.json
 あとは、ダイアログの右下の「OK」ボタンで閉じます。
 続いて、メニューの「ツール」-「ボード」-「ボードマネージャ…」を選択。ボードマネージャのダイアログが開きます。ここで、しばらくデータのダウンロードで待たされます。これは先のダイアログで指定したURLのファイルの情報に従って、各種ボードの情報を読み込んでいるためです。
 ダウンロードが済んだら、一番上の「検索をフィルタ…」とある入力欄に「ESP8266」と入力してEnterキー。そこで出てきた「esp8266 by ESP8266 Community」を選んで、「インストール」ボタンをクリック。インストールされるまでしばし待ちます。終わったら「閉じる」ボタン。これで、ESP8266ボード各種のための設定が可能になります。
 このあたりの流れは以下のページに詳しいです。画面キャプチャも多くわかりやすいので、オススメ。
 ESP-WROOM-02でLチカとWi-Fiの動作試験をする(2) – しなぷすのハード製作記

使用するボードの設定

 ちょっと長くなりましたが、あと、もう少し設定が必要です。ESP8266ボードにもたくさんの商品が存在し、それぞれ微妙に仕様が異なっています。そのための設定をここでは行います。
 Arduino IDEのメニューから「ツール」-「ボード」からお使いのESP8266ボードを選びます。
 今回は、「WeMos D1 mini」という海外で販売されているボードの場合を見てみましょう。
 「ボード」を選ぶと多くのボードが列挙されます。Arduino Unoなどが上に並びますが、ずっと下のほうに線で分割され「Generic ESP8266 Module」なんてのが出てきます。そのちょっと下に「LOLIN(WeMos) D1 R2 & mini」というのが出てきます。これを選ぶと、その他の設定も自動的に決まります。
 これらの設定項目は、環境や作成するプログラムにあわせて変更する必要があるわけですが、今回は以下のようにしてみました。「ボード」から「シリアルポート」までに注目(その上は関係ありません)。
Boardsettings
 なお、シリアルポートは、環境によって異なります。「COM3」「COM4」「COM5」といったように複数のCOMポートが列挙されることもあるでしょう。ボードによって名前で区別がつかないのがちょっと難しく感じるところ(Arduino Unoではちゃんとボード名が表示されたりします。たぶん)。
 その場合はESP8266ボードをPCに接続しない状態で、列挙されるポートを確認。そこでいったんメニューを閉じて、ESP8266ボードを接続。10秒ほど待ってから再び同メニューをチェックし、増えたポートを選択します。たいていは、一番数字が大きいのを選べばいいはずです(雑な説明)。また、接続、切り離しを繰り返すとポート番号が変わったりするので、適宜指定し直すことが必要になります。そのへんも覚えておいてください。
 これでESP8266ボードを使った開発が始められるようになりました。
 しかし、一からプログラムするというよりも、既存のプログラムを試すことが最初の一歩になることがほとんどでしょう。そして、その歳には別途「ライブラリ」というものを追加する必要があることがほとんどです。
 そんなわけで、次回はライブラリの導入について書くこととします。

補足 ドライバーのインストール

 ESP8266ボードとPCはUSBで接続するわけですが、USBシリアルドライバーのインストールが必要になる場合があります。今回試したD1 miniはシリアルポートにCH340というチップを使用しています。Arduino Unoの互換機でよく使われているものです。
 Windows 10ではドライバーがOSに用意されているので、自動で認識されるはず。まれにインストールがうまくいかない場合があり、Windowsのデバイスマネージャーでは「?」になることも。その場合は右クリックで表示される「ドライバーの更新」で自動検索にすれば見つけてくれると思います。また、うまくインストールされれば、COMポートの番号もデバイスマネージャーで確認することもできます。

コメント

タイトルとURLをコピーしました