D1 Mini (1) Setup & Blink

About D1 Mini

WeMos D1 Mini はESP8266モジュールを利用した、Arduino IDE利用可能な開発ボード。

WeMosには「D1 Mini」と「D1 R2」の2種類がある。使い方が同じ。

このシリーズは、コマンドラインで開発するPlatformIO環境を利用する。(GUIの開発環境Arduino IDEで開発する場合、WeMos (1) Blink を参照する。)

Macbook Air で実験する。

PlatformIOのインストール

組み込み系のクロスコンパイル環境です。Arduino(Atmel AVR)や、mbed(ST STM32)など、350種類以上のマイコンに対応しています。デバッガも100種類以上のマイコンに対応しています(デバッグ機能は有料っぽい)。
Python2で動いているので、Mac、Linuxからでも動かせます。
詳しくはPlatformIOの公式サイトを見てください。

Macbook Air で実験するので、Homebrew でインストール。

$ brew install platformio

Homebrew を使わないばあいは pip を使ってインストールできるようです。

boards コマンドで利用できるボードを確認できます。

$ platform boards

沢山表示されるので、コマンドのうしろにフィルタをつけて内容を絞るる。

$ platformio boards esp8266

Platform: espressif8266
----------------------------------------------------------------------------------------------------------------------------
ID MCU Frequency Flash RAM Name
----------------------------------------------------------------------------------------------------------------------------
gen4iod ESP8266 80MHz 512KB 80KB 4D Systems gen4 IoD Range
huzzah ESP8266 80MHz 4MB 80KB Adafruit HUZZAH ESP8266
oak ESP8266 80MHz 4MB 80KB DigiStump Oak
esp_wroom_02 ESP8266 80MHz 2MB 80KB ESP-WROOM-02
espduino ESP8266 80MHz 4MB 80KB ESPDuino (ESP-13 Module)
espectro ESP8266 80MHz 4MB 80KB ESPectro Core
espino ESP8266 80MHz 4MB 80KB ESPino
espresso_lite_v1 ESP8266 80MHz 4MB 80KB ESPresso Lite 1.0
espresso_lite_v2 ESP8266 80MHz 4MB 80KB ESPresso Lite 2.0
esp12e ESP8266 80MHz 4MB 80KB Espressif ESP8266 ESP-12E
esp01_1m ESP8266 80MHz 1MB 80KB Espressif Generic ESP8266 ESP-01 1M
esp01 ESP8266 80MHz 512KB 80KB Espressif Generic ESP8266 ESP-01 512k
esp07 ESP8266 80MHz 4MB 80KB Espressif Generic ESP8266 ESP-07
esp8285 ESP8266 80MHz 423.98KB 80KB Generic ESP8285 Module
heltec_wifi_kit_8 ESP8266 80MHz 4MB 80KB Heltec Wifi kit 8
nodemcu ESP8266 80MHz 4MB 80KB NodeMCU 0.9 (ESP-12 Module)
nodemcuv2 ESP8266 80MHz 4MB 80KB NodeMCU 1.0 (ESP-12E Module)
modwifi ESP8266 80MHz 2MB 80KB Olimex MOD-WIFI-ESP8266(-DEV)
phoenix_v1 ESP8266 80MHz 4MB 80KB Phoenix 1.0
phoenix_v2 ESP8266 80MHz 4MB 80KB Phoenix 2.0
sparkfunBlynk ESP8266 80MHz 4MB 80KB SparkFun Blynk Board
thing ESP8266 80MHz 512KB 80KB SparkFun ESP8266 Thing
thingdev ESP8266 80MHz 512KB 80KB SparkFun ESP8266 Thing Dev
esp210 ESP8266 80MHz 4MB 80KB SweetPea ESP-210
espinotee ESP8266 80MHz 4MB 80KB ThaiEasyElec ESPino
d1 ESP8266 80MHz 4MB 80KB WEMOS D1 R1 (Retired)
d1_mini ESP8266 80MHz 4MB 80KB WeMos D1 R2 & mini
d1_mini_lite ESP8266 80MHz 1MB 80KB WeMos D1 mini Lite
d1_mini_pro ESP8266 80MHz 16MB 80KB WeMos D1 mini Pro
wifinfo ESP8266 80MHz 1MB 80KB WifInfo
wio_node ESP8266 80MHz 4MB 80KB Wio Node

作業フォルダを作成

ChenLab-Mac-Urania:~ chen$ mkdir PlatfomIO
ChenLab-Mac-Urania:~ chen$ cd PlatfomIO/

Blink

動作確認のため、まずLちか(Blink)をする。

ボード内蔵のLEDを点滅させる。

プロジェクトを準備する

ChenLab-Mac-Urania:PlatfomIO chen$ mkdir wemos-blink
ChenLab-Mac-Urania:PlatfomIO chen$ cd wemos-blink/

ChenLab-Mac-Urania:wemos-blink chen$ platformio init –board d1_mini

ChenLab-Mac-Urania:wemos-blink chen$ ll
total 8
drwxr-xr-x 3 chen staff 96 7 21 20:18 lib
-rw-r–r– 1 chen staff 439 7 21 20:19 platformio.ini
drwxr-xr-x 2 chen staff 64 7 21 20:18 src
ChenLab-Mac-Urania:wemos-blink chen$ ll src/
ChenLab-Mac-Urania:wemos-blink chen$ ll
total 8
drwxr-xr-x 3 chen staff 96 7 21 20:18 lib
-rw-r–r– 1 chen staff 439 7 21 20:19 platformio.ini
drwxr-xr-x 2 chen staff 64 7 21 20:18 src

スケッチのファイルを作成

$ vi src/main.ino

$ cat src/main.ino
#define ESP8266_LED BUILTIN_LED
void setup()
{
  pinMode(ESP8266_LED, OUTPUT);
}
void loop()
{
  digitalWrite(ESP8266_LED, HIGH);
  delay(500);
  digitalWrite(ESP8266_LED, LOW);
  delay(500);
}

ビルドする/アップロードする

ビルドする。

$ platformio run

インストールは、結構大量のファイルをダウンロードするので、ココは時間が掛かる。

$ platformio run -t upload

シリアルドライバーのインストール手間がなく、うまく動作した。いい感じ。

参考