購入したESP8266のNodeMCEを使ってみることにする。
前回も記載したが、このモジュールは技適マークがない為、日本では使用してはいけない。
このモジュールはあくまで学習用であるという事を常に意識しておく必要がある。
このモジュールを試すにあたって、最初にファームウェアをインストールする必要がある。
というわけで、NodeMCU ESP8266 Micropython Programming In 7 Simple Steps - EMBEDDED ROBOTICSの内容を参考にして入れてみた。
今回の操作はすべてRaspberry Pi OSで行った。
最初にRaspberry PiにUSEBケーブルでNodeMCUと繋げて、下記のコマンドでUSBのポートを調べて記録しておく。
$ less /dev/tty*
USBのポートはttyUSB0であったので、この値を記録しておく。
続いて、PIP経由でファームウェアのインストールツールをインストールする。
sudo pip3 install esptool esptool.py -h
エラーが出力されなければOK
NodeMCUにMicroPythonを入れる。
MicroPython - Python for microcontrollersのページで一番新しいbinファイルのURLをコピーしておく。
今回はhttps://micropython.org/resources/firmware/esp8266-20220117-v1.18.binであった。
下記のコマンドでNodeMCUにMicroPython(ファームウェア)をインストールする。
wget https://micropython.org/resources/firmware/esp8266-20210902-v1.17.bin esptool.py --port /dev/ttyUSB0 erase_flash esptool.py --port /dev/ttyUSB0 write_flash --flash_size=detect -fm dio 0x00000 esp8266-20210902-v1.17.bin
これでファームウェアのインストールは終了。
動作確認として、NodeMCUのみでLチカを行ってみる。
エディタはThonnyにした。
Thonny, Python IDE for beginners
Thonnyが立ち上がったら、右下をクリックして、MicroPython (ESP8266)を選択して、Thonnyを再起動する。
※Thonnyの再起動は必要ないかも。
Thonnyが起動したら、下記のコードを作成する。
from machine import Pin from time import sleep led = Pin(2, Pin.OUT) while True: led.value(0) sleep(0.5) led.value(1) sleep(0.5)
コードの保存の時はMicroPython deviceを選び、main.pyというファイル名で保存する。
保存後に実行ボタンを押し、
LEDがチカチカ光れば終了。