ESP8266 MAC 주소 불러오기 에러 해결하기

이번 포스트에선 ESP8266 시리즈 모듈들의 MAC 주소 불러오기 에러를 해결하는 방법에 대해 다룰까한다.

AT 명령 과정중 MAC 주소를 불러오기 위해 AT+CIPSTAMAC(스테이션 MAC), AT+CIPAPMAC(엑세스 포인트 MAC)을 사용하는데
간혹 모듈이 "ERROR"를 내뿜는 경우가 있다. 그래서 필자의 경험과 구글링을 해본 결과, 대부분 0.9.2 또는 0.9.2.2 버전의 펌웨어를 사용하는 모듈에서 나타나는 버그였다. 

그래서 좀 더 향상된 버전의 펌웨어를 설치하는 방법에 대해 설명하도록 하겠다.

(v1.5.0 펌웨어를 기준으로 설명)

위 이미지는 가장 흔히 사용되는 esp-01과 esp-12e(esp-12f)의 펌웨어 다운로드 회로 결선 방법이다. (혹시 다른 종류의 esp 모듈을 사용한다면 구글링을 통해 펌웨어 다운로드 회로를 찾아보기 바란다.) USB TTL 모듈이나 아두이노 보드 중 아무거나 사용해도되지만 개인적으로 USB TTL을 사용하는 것을 추천한다. (아두이노 보드를 이용하여 업로드하게 되면 micro controller에 무리를 줄 수 있기 때문이다.) 하지만 어느쪽을 회로 결선 방법은 같으니 걱정은 덜어내자.

결선이 끝났으면 이제 펌웨어를 올리도록 하자. 필자는 v1.5.0를 준비했다. 만약 더 향상된 버전을 찾게 되었다면 그것을 올려도 상관없다. (어차피 올리는 방법은 똑같기 때문이다.)

esp_iot_sdk_v1.5.0_15_11_27.zip

FLASH_DOWNLOAD_TOOLS_v2.4_150924.rar


esp Flash download tool을 실행시키고 이제 ... 버튼을 클릭해 BIN파일을 추가시킨다. (파일을 추가하고 왼쪽의 체크박스도 체크해준다.)

적용해야 할 BIN 파일들(esp_iot_sdk_v1.5.0_15_11_27.zip 안에 있던 파일들)

1. bin/at/noboot/eagle.flash.bin - ADDR 0x00000
2. bin/at/noboot/eagle.irom0text.bin - ADDR 0x40000
3. bin/blank.bin - ADDR 0xfe000
4. bin/blank.bin - ADDR 0x7e000

FLASH SIZE 는 8Mbit, COM PORT 는 esp8266가 연결된 usb 장치, BAUDRATE 는 115200 또는 345600 으로 설정하고 START 버튼을 클릭한다.

이제 펌웨어가 모두 다운로드가 될 때까지 기다리기만 하면 된다.


아마 이 펌웨어를 올렸으면 MAC 주소 ERROR는 발생하지 않을 것이다. (발생했다면 그건 펌웨어가 잘못올라갔거나 하드웨어에 문제일 듯 하다.)