본문 바로가기

programmer/DIY

아두이노 와이파이 모듈 ESP8266 와이파이 잡기

아두이노 와이파이 모듈 ESP8266 와이파이 잡기




안녕하세요. 저번 글에서는 아두이노 와이파이 모듈인 ESP8266을 펌웨어 업데이트하는 방법을 알아보았습니다. 


.



이번 글에서는 아두이노와 연결된 ESP8266으로 와이파이 신호를 잡아보겠습니다.


enter image description here


위와 같이 회로를 구성하시면 됩니다. 펌웨어 업데이트 할 때와 다른 점은 GPIO 0자리가 빠져있다는 것입니다.


enter image description here


이제 아두이노와 피시를 연결하여 전원을 넣어줍니다. 아두이노 통합개발환경인 스케치를 실행시키고 포트는 연결된 아두이노로 지정한 뒤 시리얼 모니터를 띄웁니다.


enter image description here


위의 사진에서 빨간 박스 쳐져있는 부분을 사진과 같이 바꿔줍니다. 9600 Baud Rate와 Both NL & CR로 바꿔야합니다.


이제 AT를 입력하여 OK를 리턴하는지 확인합니다. 위의 사진처럼 OK가 리턴된다면 정상적으로 동작하고 있다는 뜻입니다. AT+GMR은 펌웨어 버전을 확인하는 명령어입니다.

  • AT

  • AT+GMR

  • AT+CWMODE=1

  • AT+CWMODE?

  • AT+CWLAP

  • AT+CWJAP=”mHotspot”,”12345678a”

  • AT+CWJAP?



이제 위의 명령어를 하나씩 입력할 것입니다. 벌써 맨 위의 두 개는 확인이 되었습니다.


AT+CWMODE를 통해 와이파이 모듈 ESP8266의 모드를 변경할 수 있습니다. ESP8266의 모드는 다음과 같습니다.

  1. Station
  2. AP
  3. Dual



쉽게 말해서 1번은 와이파이 신호를 받는 모드(Client)이고, 2번은 와이파이 신호를 쏴주는 모드(Host), 3번은 두 가지가 동시에 가능한 모드입니다.


와이파이 신호를 받는 역할을 수행할 것이므로 AT+CWMODE=1 을 입력하시면 1번 모드로 설정됩니다.


AT+CWMODE? 라고 입력하시면, 지금이 어떤 모드인지 확인할 수 있습니다.


enter image description here


이제 위의 사진과 같이 AT+CWLAP을 입력합니다. 그러면 지금 주변에 존재하는 와이파이 신호들의 목록을 보여줍니다. 저는 제 스마트폰의 핫스팟을 이용하려고 합니다.


다음과 같은 형식으로 입력하시면 됩니다.


AT+CWJAP = “SSID” , “Password”


저를 예를 들었을 때, 다음과 같이 입력하면 됩니다.


AT+CWJAP = “mHotspot” , “12345678a”


연결이 되었는지 확인하려면 AT+CWJAP?를 입력하시면 현재 연결되어 있는 와이파이의 정보가 나타납니다.


이후로 특별한 설정이 없이 접속정보를 ESP8266 메모리에 저장해두기 때문에 전원을 껐다가 켠 후에도 접속했던 신호가 잡힌다면 자동으로 접속하게 됩니다.


AT Command에 관한 더 자세하고 많은 정보는 다음의 웹페이지로 이동하시면 확인해볼 수 있습니다.


http://room-15.github.io/blog/2015/03/26/esp8266-at-command-reference/#AT


지금까지 아두이노 와이파이 모듈 ESP8266을 이용하여 와이파이 신호를 잡아보았습니다. 도움이 되셨으면 좋겠습니다.