본문 바로가기
프로그래밍/ESP8266 Tutorial

ESP8266 + Micropython 개발환경만들기

by choies1 2016. 9. 17.

이번에는 아주 간단한 MCU에서 파이썬3를 수행할 수 있는 Micropython 개발환경을 ESP8266 보드에 구현해 보도록 하겠다.


Micropython 홈페이지에 가보면 다양한 MCU에 Micropython을 이용할 수 있도록 포팅되어 있음을 알 수 있다. 대표적인적인 것이 SMTM32F4 기반의 MCU 보드, TI CC3200 기반의 MCU 보드, 그리고 ESP8266 기반의 MCU 보드이다.


여기서 우리는 ESP8266 MCU 보드에서 Micropython을 이용할 수 있도록 개발환경을 구축할 것이다.

참고: http://docs.micropython.org/en/latest/esp8266/esp8266/tutorial/intro.html#deploying-the-firmware

1. 보드 구하기

- ESP8266 MCU 보드를 먼저 구해야 된다. 대표적인 것이 Adafruit의 Feather HUZZAHnodeMCU이다. 둘의 기능은 같다. 

다양한 ESP8266 보드가 있는데, 다양한 ESP8266 보드를 비교한 사이트를 방문해 보면 좀더 자세히 할 수 있다.

여기서는 저렴하게 구할 수 있는 LoLin V3 nodeMCU를 이용하겠다.  


[V3] Pin Out


* [참고] V1/V2 Pin Out


nodeMCU의 경우는 V라고 불리는 것과 V3(LoLin V3 nodeMCU)가 있는데 둘의 차이는 거의 없다. 차이는 V3가 보드 크기가 좀더 크고, USB 5V 전원출력이 있는 것이다.

이 보드를 PC에 연결하면 아마 자동으로 USB-to-Serial 드라이버가 설치될 것이다. 

만약 자동으로 설치되지 않는다면 자신이 사용하고 있는 보드의 칩을 알아서 거기에 맞는 드라이버를 설치해줘야 한다. USB-to-Serial 칩으로 대표적인 것이 CP2104인데, 이칩을 썼으면 CP2104 VCP Driver를 설치해야되고, 좀 더 저렴한 CH340 칩을 썼다면 이것에 만든 드라이버를 설치야 된다. nodeMCU의 경우는 칩 가격을 낮추기 위하여 저가 CH340 칩을 이용했을 수도 있다. CH340칩을 이용한 nodeMCU 보드를 이용했는데 통신에는 큰 문제는 없었다. 하지만 안정성을 위해서는 CP2104칩을 이용한 nodeMCU 보드를 이용하는 것이 좀더 좋을 것 같다.


* 참고: nodeNCU 보드에 대해서 Official/Unofficial에 대한 논의가 있는 사이트

==> http://www.averagemanvsraspberrypi.com/2015/11/esp8266-node-mcu-setup.html

(그런데 어차피 보드가 opensource라고 하는데, 좋은 부품을 썼느냐 아니냐가 더 중요할 것 같다.)


2.  Flashing Tool 설치

python 2가 설치되어 있는 환경에서 이용할 수 있는 command 기반의 esptool 이라는 것이 있지만, windows에서 쉽게 이용 가능한 flashing tool을 이용하도록 하겠습니다.

다음을 방문하여 자신의 windows 버전(32bit, 64bit)에 맞는 폴더를 선택한 후에 ESP8266Flasher.exe를 다운로드 받습니다.

https://github.com/nodemcu/nodemcu-flasher



3. 다음은 Micropython Firmware를 다운로드 받습니다.

다음을 방문하여 가장 최신(latest)의 stable 버전을 자신의 PC로 다운로드 받습니다.

https://micropython.org/download/#esp8266 

-------------------------------------------

Firmware for ESP8266 boards

The following files are stable firmware for the ESP8266. Program your board using the esptool.py program as describedin the tutorial.

--------------------------------------------

4. Flashing Tool을 이용하여 Micropython Firmware 다운로드

보드를 PC에 연결한 후에 이제 앞에서 다운로드한 ESP8266Flasher.exe을 실행합니다.


Config --> 파일 선택


파일 선택 (여기서 주소는  0x00000 을 선택한다)


다운로드가 진행되는 화면


다운로드가 완료된 화면


5. 다운로드 툴을 종료하고 Serial Port 모니터 프로그램을 실행한다

(여기서는 teraterm을 실행함)

- 포트를 맞추고 (여기서는 COM4), baudrate를 115200 bps로 맞춘다.


6. ESP8266 보드의 reset 버튼을 누르면 아래와 같이 화면이 나온다.

(여기서는 Micropython v1.8.4 Firmware를 다운로드 받았을 경우 Serial로 접속한 화면이다. 아래 Miropython 버전에는 자신이 다운도드 받은 버전으로 표시될 것이다.)


7. 이제 파이썬을 즐기면 된다.

- 기본적인 파이썬 명령어는 모두 수행이 된다.