2015年12月25日 星期五

ESP8266 WIFI(2) -update firmware and modify baud rate.





這篇介紹如何更新升級ESP8266的韌體及如何更改Baud rate.


1.首先請參考,底下這篇如何接線跟電腦連線
上述該篇的動作ok了才有辦法進以下動作.

因為我們要做燒錄ESP韌體所以,須把GPIO0接地(GND).這是唯一接線的差別.
燒錄完成之後把GPIO0移開接地,再斷電重開才能重新正常連線,


我買了一條新的CP210x系列的也是可以用一樣的接法,它本身有提供3.3V輸出,但是也不不足供電的,還是得額外提供3.3V電源,多買一條USB-UART只是因為我原本另一條PL的在我正職的工作上有其他用途,在家用的只好多買一條..
我這裡一樣是用LM2596S DC-DC 降壓電源模塊 提供穩定3.3V給ESP8266供電.







2.首先跟PC連線之後下AT+GMR指令可以看到還未升級韌體前版本是1.3.0.2
  等等我們要把它升級成1.4.0.0

 3.第一個更新韌體的tool是 ESP_DOWNLOAD_TOOL_V2.4.exe
   照以下圈起的地方做設定,按下start之後就會開始更新.
這底下有一個Baud rate的設定及Com port設定指的是你用的USB-UART的Baud rate並非ESP8266本身.所以我們預設可以選115200去更新,速度會比較快.這個tool左邊也會同時出現Dos prompt的畫面.在上方哪一欄則是載入你要更新的韌體檔,在這裡是用1.4.0.0.bin.






4.底下是另一個tool.NODEMCU.
  在<config>頁面載入你要更新的韌體檔.offset一樣從0開始





5.底下有一個Baud rate的設定指的是你用的USB-UART的Baud rate並非ESP8266本身.我更新的韌體檔是1MB大小,這還要看你的ESP8266是否有足夠1MB大小的flash rom如果沒有,那麼只能更新比較舊檔案比較小的韌體檔.



6.選好Com port設定,即可按下Flash開始更新



7.更新中....



8.更新完成,這時就可把GPIO0接地移開,在重新上電ESP8266就可以試著在跟PC連線溝通看看.





9.再用AT+GMR指令去確認,韌體版本已更新成1.4.0.0



10.更改Baud rate,因為新的韌體預設都是115200,如果我們要把它改成9600.新的韌體已有提供
     AT+UART=,,,,的指令,所以如下直接下< AT+UART_DEF=9600,8,1,0,0>回傳ok即成功更改
    Baud rate為9600.

   這時如果你嘗試再下其他AT command則會都無反應,原因是ESP8266的溝通Baud rate已被我們改成9600,所以我們也必須把Realtrem的Baud rate改成9600才能繼續溝通



11.把Baud rate改成9600再按<change>


12.再重新下AT+GMR去測試,果然可以再成功的連線即回傳資料,表示Baud rate現在已被更改成9600了.即使斷電ESP8266再重新上電它的Baud rate一然會是9600.

如果要再改回Baud rate =115200再次下以下commnad即可.
AT+UART=115200,8,1,0,0

我這邊會把Baud Rate改設為9600,這是為了接下來與Arduino的溝通連結.




   這裡我提供以上燒錄ESP8266工具及新的韌體下載連結.原因是因為這些不是很好google下載的到,但是通常如果你跟賣家買ESP8266模組你可跟賣家要求提供.我也是這樣拿到的.
所以這裡我直接提供連結下載,在我個人的Dropbox,

ESP8266燒錄工具及韌體下載:
https://www.dropbox.com/s/6r3eprvny08qq58/ESP8266_flashtool.7z?dl=0