IoT Sensor Node Workshop 三之二:建立 Micro Python 環境來撰寫 Node MCU。

 

 

上一堂課喵喵講師教大家怎麼製作自己的MicroPython開發板…經過一個禮拜了,大家是不是已經生出自己的手工板了呢? ㄟ…拿~~~有拿麼簡單? XD

新手還是用現成的比較沒有煩惱,要是課程中發生板子有問題或是帶來的板子不相容,那就麻煩了…我想還是熟練之後,如果手上的板子不敷所需再來設計自己的MicroPython開發板也不遲。所以我直接使用喵喵講師帶來的手工版,厲害吧!!!

 

也可以帶自己的NodeMCU相關的開發板來也是可以的,其中有一個部分個人覺得蠻重要的,就是不管喵喵講師手工版的設計或是網路上搜尋到的開源的NodeMCU開發板電路,都可以看到Auto Program circuit的設計如下:

他是ESP8266和USB_TO_UART IC之間的一個電路,沒有這部分電路的話在後續MicroPython的使用上會有問題喔。在REPL編程環境之下還OK,但是在使用後面的ampy指令的時候就會有問題了。我有測試了一下自己手邊其他的ESP8266開發板,我猜在使用ampy某些指令的時候會需要reset一下esp8266,例如上傳檔案之類的。正常的NodeMCU開發板會reset一下,但是我的ESP8266開發板就不能上傳檔案了。

P.S 這邊所謂的REPL編程環境就是用putty連上板子之後的那個環境,可以一行一行下指令。

硬體OK了,那麼接下來才能正確的進行韌體和軟體的部分。

  1.  燒錄MicroPython核心firmware到開發板
  2. 使用putty來做REPL編程環境測試
  3. 用ampy來和開發板溝通

1. 燒錄MicroPython核心firmware到開發板

下載ESP8266Flasher.exe以及ESP8266的MicroPython韌體"esp8266-20170612-v1.9.1.bin",用ESP8266Flasher.exe把韌體燒錄進開發板,紅色標示是要注意的部分。

按齒輪選擇韌體檔案,確認要從0x00000位址開始燒錄

選擇連接埠(可以進去裝置管理員–>連接埠看)

設定好之後按Flash按鈕開始燒錄。完成之後開發板本身的軟硬體就OK了。

 

2. 使用putty來做REPL編程環境測試

下載putty,設定Serial port和baud rate,連上開發板

正常的話就可以看到">>>"這個符號,表示可以使用REPL環境來跑Python啦~

如果有問題,可以試著按Reset或是"Ctrl + D"讓板子重新啟動看看。

P.S 除了一行一行執行,也可以先在文字編輯器把整個程式複製下來,在putty視窗按"Ctrl+E"進入paste mode,按滑鼠右鍵貼上,再按"Ctrl+D"執行整段程式。

 

3. 用ampy來和開發板溝通

這部分我不是很清楚,只能大概的描述一下,因為我之前就有安裝Anaconda這個Python安裝套件,而他本身好像已經有包含pip這個第三方安裝套件,所以…總之就是要先在PC上安裝Python,然後確認一下進階系統變數裡面的Path變數要有Python的安裝路徑,沒有的話把它加進去。然後開啟終端機,執行以下指令:

Python 2.7.x版本:

pip install adafruitampy

Python 3.x版本:

pip3 install adafruitampy

安裝好之後就可以在終端機視窗執行ampy了,請試試看輸入"ampy –help"看看,是不是成功了呢? 接下來就可以使用這個MicroPython開發板來做簡單的IoT實作囉~