ESP8266で遊ぶ


開発環境を作る - リモートコンパイル環境 (1) -

ESPRESSIFが提供する開発環境

ESPRESSIFがWindows向けとして提供している開発環境は、

  1. コーディングはWindowsのエディタで行う
  2. コンパイルはLinuxで行う
  3. できたバイナリをWindowsのツールで行う

というものです。
詳細は、ESPRESSIFのDocumentsページにあるESP266 SDK Getting Started Guideにまとめられています。
執筆時点は、2A-ESP8266-SDK_GETTING_STARTED_GUIDE_EN.pdfです。

このまま何の工夫もなく利用すると、2台の開発用マシンを渡り歩くことになって効率よく開発を進めることが出来ません。
そこでIDEにEclipseを採用して、リモートコンパイル環境を構築してみたいと思います。

仮想マシン

ESPRESSIFは、開発環境をVirtualBoxのイメージファイルをとして提供しています。
具体的には、Googleドライブの共有アイテムにまとめらています。
共有アイテムの中のESP8266_lubuntu_20141021.ovaファイルをダウンロードしてVirtualBoxにインポートします。

※一般には不要と思いますが、筆者の環境では仮想マシンのマネージャとしてHyper-Vが稼働しております。その場合はVirtualBoxが正常に動作しませんので、ディスクイメージを変換して、Hyper-Vに取り込みました。
$ cd C:\Program Files\Oracle\VirtualBoxでVirtualBoxの実行ファイルがあるディレクトリに移動します。
続いて$ VBoxManage clonehd VirtualBoxのディスクイメージファイルのパス Hyper-Vのイメージファイルのパス -format VHDで変換します。

openssh-serverをインストール
$ sudo apt-get install openssh-server デーモン起動設定ツール(sysv-rc-conf)をインストール
$ sudo apt-get install sysv-rc-conf デーモン起動設定ツールでsshを自動起動するように設定
$ sudo sysv-rc-conf sshのランレベル3と5でスペースを押して起動対象にセット
qを押してツールを終了
sshデーモンを再起動
$ sudo service ssh restart ssh stop/waiting ssh start/running, process 5828 ipアドレスを確認します。 $ sudo ifconfig -a eth0 Link encap:Ethernet HWaddr 00:15:5d:00:02:0a inet addr:192.168.0.58 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::215:5dff:fe00:20a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:49493 errors:0 dropped:0 overruns:0 frame:0 TX packets:16578 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:35397563 (35.3 MB) TX bytes:1392470 (1.3 MB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:997 errors:0 dropped:0 overruns:0 frame:0 TX packets:997 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:90205 (90.2 KB) TX bytes:90205 (90.2 KB) Windowsのターミナルソフトで、先程確認したIPアドレスのマシンにsshで接続を試みます。
デフォルトのユーザIDとパスワードは、

ユーザID
esp8266
パスワード
espressif

です。