2017年6月4日日曜日

ESP8266マイコンを安定させる方法

ESPマイコンって不安定?

ESP8266が出た当時Wifi搭載マイコンで爆発的に有名になったマイコンを購入してそのままにしてたのですが、Bluetooth搭載になったESP32マイコンが最初から技適対応して秋月で入手可能という事でぼちぼち遊び初めてみたのですが、意外にマイコンが安定してないのなんの。。
ファーム書込み後mシリアルコンソールから出てきたものはException(0)を繰り返していたり、全く微動だにしなかったりパターンは様々ありました。

これ使い物になるのか?って思いつつ試行錯誤して出た結果があるので、メモを残しておきます。


ESP8266マイコンについて

まず不具合でたマイコン使い物ならないって高飛車にならず、まずは扱い方を知るべきでしょう。
新参者なのでたまたま仕様書と実装が一致していない、一般的な使い方ではないなど色々あると思います。
製品として出荷され数も出て次のバージョンも出たりしてるところを見るとちゃんと動かせる方法があるんだという視点で正解を探していくのがこのマイコンを使うためのデバッグ手法だと思っています。

ということでインターネットで同じ不具合に悩まされた言葉を見てみたところ、

・仕様書に書かれている回路になっていない。
・Wifiモジュール起動時の突入電流が1Aくらい出る。

この2点に尽きるようです。

Note: If the power management IC is connected with the power-on enable pin CHIP_EN,
it can control the power on-and-off of ESP8266EX by output high and low voltage through its GPIOs.
However, pulsed current might be produced at the same time.
In order to delay the transmission of pulsed signal and avoid unstable current of CHIP_EN,
a RC time-delay circuit (R=1kΩ, C=100nF) is needed.
There is an internal pull-up in the CHIP_EN pin, so no external pull-up is needed.



CHIP_ENにプルアップ抵抗1kΩと0.1uFのコンデンサ入れとけよって内容ですが、実際プルアップはされてるようなのでコンデンサを追加するくらいで良いようです。

でもこの記事ってESP8266EXなんですよね。。

1つ前のESP8266はどうしたらいいんだって思ったのですが、根本的な理由は2つ目のWifiモジュールが起動したときの突入電流が原因で、CHIP_ENで起動を遅らせようって趣旨のようです。
つまり突入電流を抑えられればいいわけで、、
USBポートは5V0.5A(2.5W)出力なので3.3Vに落としても1A出ないという事から
Exceptionエラーが出るのを繰り返す理由は突入電流分パワーが出せないので
電圧降下してリセットしてしまっているようです。

では対策をどうしようかと思えば、一番簡単な方法で瞬間的な電圧降下さえ防げればいいので、3.3V-GND間にコンデンサを突っ込んでおけば回避できるのではないかっていう事です。

っていうことで家にあったタンタルコンデンサ0.1uFを早速入れてみたところ、見事解決しました。

電気屋さんにきけばもっといい解決策はあると思うのですが、小手先のテクニックで解決するには電源を安定化させるのに尽きそうです。

結論

電源を安定化させろ

でした。

ではでは


コメントを投稿

Androider