고급 예제

다양한 도구들을 가지고 마음껏 응용해보세요.

OrangeBoard WiFi사용하기 - Factory Recovery(공장 초기화)사용하기

2016-10-31 17:14:23

OrangeBoard WiFi는 기존 OrangeBoard에 WiFi모듈을 장착하여 하나의 보드안에서 아두이노의 기능과 WiFi를 사용할 수 있게 하였습니다.

아두이노에 수많은 데이터를 웹에서 가져올 수 있는 WiFi모듈을 결합하였기 때문에 사용자들은 기존의 아두이노보다 한 단계 더 넓은 범위를 바라보고 사용할 수 있습니다.

 

 

개요

 

이번 글에서는 OrangeBoard WiFi의 기능 중 하나인 Factory Recovery실행에 대해 알아보겠습니다.

 

Factory Recovery기능은 흔히 이야기하는 공장 초기화를 말합니다.

아마 스마트폰을 사용하다보면 스마트폰 소프트웨어 큰 오류가 생겨 벽돌이 되었을 때, OS업데이트 도중 오류가 발생했을 때, 스마트폰을 초기화 시킬 때 사용하는 기능으로 공장초기화를 할 경우 제품을 공장에서 출하 당시의 데이터로 되돌려 소프트웨어를 깨끗하게 정리합니다.

 

모든 기계는 항상 작동 중에 오작동을 일으킬 가능성이 존재합니다. 아무리 정밀하게 구현된 기계라 하더라도 사용자의 실수나 잘못된 행동으로 오작동을 일으킬 수 있습니다.그렇기 때문에 그런 상황을 염두에 두고 제조사는 기계 안에 Reset기능을 포함시킵니다.

 

기계가 오작동을 일으켰을 때 사용자는 간단하게 Reset버튼을 누르는 행동만으로도 원상복구 시킬 수 있습니다.

 

 

 

 

Orangeboard WiFi역시 WiFi모듈을 사용하는 도중에 혹은 WiFi모듈 펌웨어 업데이트 도중 연결이 끊겼을 때, 잘못된 회로 연결로 인해 잘못된 전원이 공급되었을 때 등등 오작동을 일으킬 수 있는 여지가 많습니다. 이럴때를 대비하여 WiFi모듈에도 Factory Recovery기능을 포함하고 있습니다.

 

대부분의 경우에는 Factory Recovery기능을 사용할 일이 없지만 그래도 언제나 기계는 오작동을 일으킬 여지는 언제나 존재하기 때문에 방법에 대해서는 숙지하는 것이 좋습니다.

 

 

 

 

Factory Recovery기능 사용하기

 

1. BOOT모드 스위치 변경하기

Factory Recovery기능(이하 공장 초기화)을 사용하기 위해서는 mode의 변경이 필요합니다.

아래 사진의 파란 박스 안에 WIFI와 BOOT 2개의 스위치가 존재합니다.

 

WIFI WiFi기능 사용여부 제어
BOOT BOOT모드 진입 여부 제어

※ BOOT모드는 Factory Recovery나 Serial로 펌웨어를 업데이트 시킬 때 사용합니다.

 

 

 

 

 

두 개의 스위치 중 공장초기화를 위해서는 BOOT스위치를 ON으로 올려 BOOT모드에 진입해야 합니다.

※ WIFI의 상태는 BOOT모드에 영향을 주진 않지만 혹시 모를 BOOT모드 상태에서의 안정성을 위해 WIFI는 OFF로 바꿔주는 것을 권장합니다.

 

 

 

 

2. FUNCTION스위치 클릭하기

공장초기화를 위해서는 BOOT모드 상태에서 FUNCTION버튼을 클릭해야 합니다.

 

FUNCTION버튼을 누를 때 오렌지보드의 RESET버튼과 함께 눌러야 하며, FUNCTION버튼은 약 10초간 계속 눌러주시는 것이 좋습니다.

(BOOT모드상태에서 오렌지보드를 RESET시킬 경우 보드의 LED가 깜빡 거리는데 오렌지보드의 모든 LED가 깜빡임을 멈출때까지 FUNCTION버튼을 누르고 있는 것이 좋습니다.)

 

 

 

 

 

 

 

3. FUNCTION버튼을 누른 뒤 대기하기

FUNCTION버튼을 약 10초간 누르고 난 뒤 약 30초간 대기합니다.

대기하는 도중에 오렌지보드에서는 별 다른 반응은 없지만 내부에서는 아래 사진과 같이 펌웨어를 리셋시키는 과정을 거치기 때문에 약간의 대기시간이 필요합니다.

 

 

 

 

4. 스위치 원상복구 하기

Factory Recovery가 끝났다면 WiFi를 사용하기 위해 스위치를 원상태로 돌려놓습니다.

스위치를 돌려놓고 난 뒤 Reset버튼을 클릭하거나 전원 공급을 잠시 끊어 오렌지보드의 상태를 초기화 시킵니다.

 

 

 

 

펌웨어 버전 확인하기

 

OrangeBoard WiFi의 예제코드로는 펌웨어를 확인할 수 없지만 코드 한 줄을 작성을 통해 확인할 수 있습니다.

WiFi모듈의 펌웨어 버전을 확인하는 함수는 WizFi250라이브러리에서는 구현되어 있지만, 아두이노 예제 코드상에서 사용되고 있지 않기 때문에 확인을 위해서는 코드 안에 직접 작성해야 주어야 합니다.

 

아래 코드를 Setup()함수 안에 작성해주시면 시리얼 모니터를 통해 확인할 수 있습니다.

Serial.println(WiFi.firmwareVersion());

 

 

 

 

 

위 코드를 WiFi의 예제 코드 중 하나인 WebClient에 작성하여 업로드 하면 아래 시리얼모니터 창 모습과 같이 펌웨어 버전이 나타납니다.

 

 

 

 

OrangeBoard WiFi의 WiFi모듈 펌웨어 버전의 초기상태는 1.0.5.2이며 따라서 Factory Recovery를 실행하고 난 뒤에는 무조건 1.0.5.2가 되어야 합니다.

 

현재 최신버전이 1.0.5.2이기 때문에 다른 버전의 펌웨어를 올리지 않는 한 버전을 통해 Factory Recovory의 실행을 확인할 수는 없지만 오작동을 할때 펌웨어 버전을 확인하려 하면 펌웨어 버전이 나타나지 않습니다. 펌웨어 버전이 제대로 나타나지 않는다면 Factory Recovery를 통해 펌웨어를 리셋하여 WiFi모듈을 초기화 할 수 있습니다.

kocoafabeditor

항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!

Arduino, 아두이노, WiFi, Reset, Factory Recovery, 공장 초기화