ファームウェア書き込み

ここでは、NinjaPCRのプログラムをビルドし、基板上のESP8266に書き込む方法を説明します。6ピンまたは4ピンのUSBシリアル変換ケーブルおよびジャンパピンが必要です。

Arduino IDEをインストール

Arduino.ccにアクセスし、最新のArduino IDEをダウンロードしてインストールします。
https://www.arduino.cc/en/Main/Software

ArduinoのESP8266対応

Arduino IDEはそのままではESP8266用のプログラムをビルドしたり書き込みを行ったりすることができません。

サードパーティ製のハードウェアをサポートするライブラリやボード設定やツールをインストールする "Board Manager" という仕組みを利用し、ESP8266に対応する必要があります。

まず、"Preferences" で "Additional Board Manager URLs" に"http://arduino.esp8266.com/stable/package_esp8266com_index.json" を追加します。

Arduinoのツールバーから "Tools > Board: > Boards Manager..." を選択し、"esp8266 by ESP8266 Community" をインストールします。バージョンは2.4.2以上を選択してください。

Arduino IDE経由ではなくGitHubのリポジトリからcloneして手動でインストールするという方法もあります。詳しくはESP8266ライブラリのGitHubリポジトリを参照してください。

NinjaPCRのソースコードをダウンロード

GitHub上のNinjaPCRリポジトリからソースコードをダウンロードします。zipでダウンロードして解凍するか、gitを利用して "git@github.com:hisashin/NinjaPCR.git" をcloneしてください。

"arduino/NinjaPCR/NinjaPCR.ino" <をArduino IDEで開きます。>

ビルド設定を選びます。"Board" は "Generic ESP8266 Module" を選択します。ESP8266にはEEPROM容量が2MBと4MBのものが流通していますので、2MBの場合は Flash Size を "2M (1M SPIFFS)" に、"4M (3M SPIFFS)" にします。

Arduino IDEの "Verify" ボタンを押し、正常にビルドできるかどうか確認してください。

NinjaPCR本体をPCに接続

電源をケーブルをNinjaPCRに接続します。この時点で電源プラグは抜いたままにしておいてください。

USBシリアル変換ケーブルでNinjaPCRとPCを接続します。6ピンの場合は、"SERIAL 6" というラベルのついた6本のピンに挿します。4ピンの物をお使いの場合は、"SERIAL 4" に接続してください。左の2本は未接続の状態にしておいてください。

左の2本のピンにジャンパピンを挿し込みます。この2本のピンが接続された状態で電源投入またはリセットを行うことで、ESP8266は通常起動モードではなくファームウェア書き込みモードで起動します。

電源を接続し、書き込みモードで起動します。なお、書き込みモードで正常に起動しているか疑わしい場合、Arduino IDEのシリアルモニタから確認することができます。Baud rateは "74880" を選択します。

正しくシリアル接続され、PCが認識し、書き込みモードで起動している場合は、次のように表示されます。

書き込み

Arduino IDEの "Upload" ボタンを押すと、ビルドしたバイナリがESP8266に書き込まれます。

一部の環境ではArduinoからの書き込みに失敗しますが、生成されたバイナリファイルをコマンドラインツールesptool.pyを使って書き込むと成功する場合があります。

OSや周辺ツール、書き込みに使用するツールなど環境に依存する要素が大きいので、もしうまくいかない場合は、できるだけ詳しく環境と状況を添えてお問い合わせください。

デバッグ

NinjaPCRは基本的にはWi-Fi経由の操作しかサポートしておりませんが、USBシリアル変換ケーブルはデバッグに役立ちます。

ArduinoのSerial.print()やSerial.println()などを使うとデバッグを行うことができます。

最も簡単な方法はArduino IDEに含まれているシリアルモニタを開くことです。もちろん、他のシリアル通信アプリを利用することもできます。

次のステップ:初期設定