暇つぶしのエントロピー

暇つぶしに何して遊んだか記録していく。少し続いたと思ってたら更新飽きた!最近は工作ブログになりつつある。

ESP8266 ファームウェアの書き換え

  • 11月
  • 3

11:52 pm ESP8266, YS-CH341T

ESP8266 のファームのバージョンを確認してみる。
AT+GMR
AT version:0.21.0.0
SDK version:0.9.5
OK

SDK リリースのアナウンスを確認する。
Ver.1.4.0 が最新らしい。

  • Click to Download
  • [Patch] esp_iot_sdk_v1.4.1_15_10_22
  • AT_v0.50 bin files

これらをダウンロードしろとなっているのでダウンロードする。
展開して知ったが、AT_v0.50 bin files は Click to Download の先でダウンロードした物に含まれるのでいらない。
さらに V1.4.1 のファームは V1.4.0 と同じなのでやはりいらない。

書き換えツールは…「Flash Download Tool」のトピックがあるので Python じゃない方の「Flash Download Tool」をダウンロードし、展開する。

ESP_DOWNLOAD_TOOL_V2.4.exe があったのでとりあえず実行!
FLASH SIZE? SPI SPEED?
知らんぞ。

ん~、確か、AT+RST するとなんか情報いっぱいでたな….と試しに
AT+RST
OK
ets Jan 8 2013,rst cause:4, boot mode:(3,7)
wdt reset
load 0x40100000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf
ho 0 tail 12 room 4
load 0x3ffe8314, len 288, room 12
tail 4
chksum 0xcf
csum 0xcf
2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size : 4Mbit
jump to run user1
sdC
Ai-Thinker Technology Co. Ltd.
ready

あった!
あれ?ツールのダイアログに「SpiAutoSel」ってチェックボックスがある。これチェックすると勝手に設定してくれそう。
それでいいや。

ファイルは何をどう指定すれば…atディレクトリの下の readme.txt に情報があった。
4Mbit だと NON-BOOT MODE しか選択できないのか。
download
eagle.flash.bin 0x00000
eagle.irom0text.bin 0x40000
blank.bin 0x3e000 & 0x7e000 (Flash size 4Mbit)
esp_init_data_default.bin (optional) 0x7c000 (Flash size 4Mbit)

らしい。
SnapCrab_ESP FLASH DOWNLOAD TOOL V23_2015-11-3_10-35-29_No-00

このまま START を押しても失敗する。どれかを GND にプルダウンする必要があるらしい。

IMG_0653f
こんな感じで GND の接続先を追加する。

STARTを押して Progress bar が右端まで行くのをまつと….
SnapCrab_ESP FLASH DOWNLOAD TOOL V23_2015-11-3_10-59-54_No-00
成功した!
AT+GMR
AT version:0.50.0.0(Sep 18 2015 20:55:38)
SDK version:1.4.0
compile time:Sep 18 2015 21:32:07
OK

Wifi に接続してみます。(行頭が “> ” の行が実際の入力行です。”–“や”//”や”()”で囲まれた行は説明なので実際には入力しません。
// WIFI モードをステーション・モードに設定する。
> AT+CWMODE=1
OK
------------------------
// 利用可能なアクセスポイントを探す。
> AT+CWLAP
+CWLAP:(4,"60..........",-93,"00:0f:0f:04:0e:0d",1,-14,0)
+CWLAP:(4,"9C..........",-91,"0c:06:06:07:09:08",1,-12,0)
+CWLAP:(2,"FD..........",-48,"00:0d:0b:01:07:01",11,-11,0)
OK
------------------------
// 接続情報を取得する。
> AT+CIPSTATUS
STATUS:5
OK
(説明書に記載のないコードが返ってきました。)
------------------------
// DHCP モードを Enable セットします。
> AT+CWDHCP=1,0
OK
------------------------
// SSID とパスワードを指定して自宅のアクセルポイントに接続してみます。
> AT+CWJAP="FD..........","c5.........."
WIFI CONNECTED
+CWJAP:1
FAIL
WIFI DISCONNECT
(一度繋がるけどすぐ切断されました。)
------------------------
// DHCP を Disable に設定します。
> AT+CWDHCP=1,1
OK
------------------------
// 再度自宅のアクセスポイントに接続してみます。
> AT+CWJAP="FD..........","c5.........."
WIFI CONNECTED
WIFI GOT IP
OK
(接続できたし IP も取得したようです。)
------------------------
//接続しているアクセスポイントを確認します。
> AT+CWJAP?
+CWJAP:"FD..........","00:0d:0b:01:07:01",11,-53
OK
(自宅のアクセスポイントに接続していました。)
------------------------
// 取得した IP アドレスを表示します。
> AT+CIPSTA?
+CIPSTA:ip:"192.168.1.12"
+CIPSTA:gateway:"192.168.1.1"
+CIPSTA:netmask:"255.255.255.0"
OK
(確かに自宅のローカルIPが振られています。)
------------------------
// 接続ステータスを確認します。
> AT+CIPSTATUS
STATUS:2
OK
(Got IP が返ってきました。)

DHCP 設定の Enable / Disable の設定が説明書の記載されているものと逆だったりしましたが接続できて IP アドレスの取得もできました。


© 2007 暇つぶしのエントロピー. Blog theme by blogstheme.com, debt consolidation.