macsbug

Just another WordPress.com site

ESP8266 FTDI Auto Program

with one comment

ESP8266 のスケッチを自動で書き込む方法。                            2016.02.13


ESP8266 の スケッチ書込みは PROG ボタンと RESET ボタンを手動で行います。
操作の手順は PROG -> PROG+RESET -> PROG -> OPEN と覚えるのが手間です。
Aruduino では 「マイコンボードに書き込む」だけで出来ていますね。


書込みの自動化:「マイコンボードに書き込む」だけで書き込める回路が幾つかあります。

ハード:従来の回路にFTDIのDTR信号を使用し自動化する回路。(Diode 2個,Capacitor 1個)
_   NodeMCUのボードは Auto Program 回路を内蔵している。(S8050 2個,抵抗2個)

ソフト:Arduio IDE:Generic ESP8266 に Reset Method として nodemcu が追加(左)。
_   ESP8266 Modulesには NodeMCU や WeMos D1 mini 等(右)が追加されました。
_   これは 「Boards Manager..」「ESP8266  ver 2.0.0 」で追加されました。

例:従来の回路に自動化回路(部品3個)を追加し USB FTDIでDTR端子があるものを接続。
_ Arduino IDE で Generic ESP8266 Module , Reset Method = “nodemcu” を選択し
_ 「マイコンボードに書き込む」を押すと Arduino の様に自動的に書き込まれます。

注:sparukfunの ESP8266 Thing ボードは この回路を採用しているがシリアルモニターを
_ 困難にさせるのでDTRジャンパーを設けている。


書込みの自動化回路:

hallard 氏が考案された回路。(同じですが2つ掲載します):hallard氏に感謝。


Sparkfunの回路


jayseeee氏の回路


NodeMCU の回路:DTR とRTS を使用している。


D1 mini の回路:NodeMCUと同等で抵抗値が10KΩ。


私の記事と回路:
AUTO UART Download Mode of ESP8266:部品3個で出来る自動化回路。
Diodeは秋月の 表面実装用ショットキーダイオード「SS2040FL」:20個入り300円。


Auto Program 回路が組み込まれた製品:

補足:本題から外れるが上記製品のお話を少し。
左側:NodeMCUは USBがCP2102とCH340Gの2種類がある。CH340Gは何かと
_ 問題がある為 CP2102 が良い。端子は3.3V、5Vも含め全てが出ている。
_ LDOはAMS1117-33 で 3.3v 800mA。回路図は公開されている。
_  ミニブレッドボードでは両方に1個の端子が可能。RST,Flashスイッチがある。

中央:このMINI nodemcu(ESP-12F)は配線図が公開されていない(当方で解析済)。
_ USBはCH340Gで電源はUSBの5Vを使用している。この為 ESP8266 の一部に
_ 5Vが供給され実測では4.5Vになっている。RGB LEDとCDSセンサー付きで
_ 直ぐ動く便利さ。ただしこのGPIOを使用する時は外す等の工夫が必要である。
_ LDOはAMS1117-33 で 3.3v 800mA。3.3Vは端子にはなく 5Vはある。
_ ESP8266とUSB側が分離できるので完成後はESP8266側だけで動作可能。
_ ミニブレッドボード使用時の端子は端まで使用する為に余裕はない。
_ USB側にFlash,Reset 及び ESP側にGPIO_04にスイッチがある。応用が出来る。
_ Arduino風にシールドを増設でき便利。価格は1個約$4。

右側:D1 miniは基板に「WeMos」と書かれた本家の物と無印の2種類がある。
_ 回路や部品配置は同じで回路図は公開されている。USBは裏にCH340Gを使用。
_ 電源のLDOは RT9013で 3.3V 500mA。Resetスイッチのみがある。
_ 端子に 3.3Vと5Vが出ているのでシールド(拡張基板)を使用するのに便利。
_ シールド(拡張基板)が販売されている事と新たなシールドが準備されている。
_ USB付き基板では最小構成と拡張性が大きい製品である。
_ ミニブレッドボードでは両方に1個ずつ端子が使用出来る。
_ IDEのModule選択は WeMos D1 を選択と思うが動作せず NodeMCUで可能。
_ 2016.02現在 WeMosでは 1個$4で2295個のオーダーがある。


参考:
ESPRESSIFの以下には基本が書かれています。
[Release Date 20160206] [Document list 0A-0D] ESP8266 Hardware Guide
ハードの基本は以下に書かれています。(19/27 Page:interface)
0B-ESP8266__System_Description__EN_V1.4_20160203.pdf

ESP8266 Reset and CH_PD pins for FTDI auto reset

Different circuit neeeded for automatic upload using CP210x:Automatic Uploadの話。

NodeMCU Schematic:NodeMCUの回路図。

SparkFun_ESP8266_Thing:Suparkfun の回路図。

sparukfun:ESP8266 Thing Hookup Guide:ESP8266 Thing Board の詳細な解説。
_ Auto prngram機能を搭載。シリアルモニターのデバックを困難にさせるので
_  基板にはジャンパーピンが設けられている。

sparukfun:ESP8266 Thing Hookup Guide:Using the Serial Monitor
_ DTR ジャンパーと シリアルモニターの件。

JCE’s Blog:Autoreset and flashing circuit for ESP8266 with FTDI interface

CHARLES’S BLOG:ESP8266 Reset and CH_PD pins for FTDI auto reset

WeMos.cc  D1 mini :mini D1 の回路図。他、詳細な説明がある。

ESP8266 Projects:Buttons, pushbuttons and debouncing story
_ スイッチのチャタリングと防止策。


感想:
2つのスイッチ操作とチャタリングという初期の書込み方法はとても手間でした。
自動書込みの体験をすると操作ミスやスイッチのチャタリングに惑わされる事がない。
自動化回路で手間がなくなり、なんと快適な事でしょうか。
2〜3個の部品で出来ますので、できれば最初から組んでいて欲しかった。
条件は、USB  FTDI ボードを使用する時は、出力に DTR 信号がある事。
(秋月の超小型USBシリアル変換モジュールは 便利だが ICに出力が無いので使えない)
USB接続無しで無線で書込みを行う ESP8266 の新バージョンは まだ見受けられない。

PROG+RST Switchの問題点:電子工作で完成後はケースに入れます。この場合
_ 分解したり蓋を開けたりしなければならず不便です。こういう点でも
_ 自動で書き込む方法は便利です。

理想的な基板と開発環境を考えてみた。
ESP-WROOM-02を使用した完成基板が欲しい。全体は D1 mini 風の形。
_ 構成:ESP8266 とUSBは一体基板である事。FDTIは FT232L 又は CP2102。
_    USBコネクターの取り付け位置は基板に垂直になる事。標準ケースもある事。
_    LDOはNJM2845DL1-33 + 導電性高分子アルミ固体電解コンデンサ(OS-CON)。
_    Auto Program回路内蔵。GPIOは全て抵抗付き。端子に 3.3Vと5Vがある事。
_    OLEDは標準装備。付属品は I2C拡張シールドとプロトタイピングシールド。
_    各種シールドのロードマップを計画する事。格安である事。
_    各シールドのサンプルプログラムを用意する事。
_    サイズは最終的に手のひらに乗る立方体。できればガチャポンで販売とか?
_ 以上、Arduino IDE に付けて直ぐ動く事。どなたか賛同者はおりませんでしょうか?


メモ:修正や新しい内容は随時追加する事とします。

Written by macsbug

2月 12, 2016 @ 12:22 pm

カテゴリー: ESP8266

コメント / トラックバック1件

Subscribe to comments with RSS.

  1. こんにちは。

    http://qiita.com/7of9/items/1587f78a43237d8f4708
    にこの記事のリンクを貼らせていただきました。

    7of9

    3月 11, 2016 at 11:13 pm


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。