본문 바로가기

IT/ZigbeX

윈도우8에 ZigbeX 개발자 환경 구성하기

1. 구축환경

ZigbeX 모듈 : 한백전자 HBE - ZigbeX2

개발PC : 삼성 시리즈9 울트라북 NT900X3D-A65

OS : Windows8

크로스컴파일러 : ATMEL AVR Studio 4.15

Cygwin 2.573.2.3

TinyOS2X


2. 들어가기에 앞서...

윈도우8에 지그비 개발환경을 구축하는것은 딱히 충돌문제는 일어나지 않는다.

하지만 제조사의 설명대로 진행하면 수행이 되지않기에 이와같은 글을 적는다.


3. 환경 설치 순서

(1) Cygwin 설치

(2) TinyOS2X 설치

(3) make파일 갱신

(4) AVR Stduio 설치

(5) 실습


4. 본문

(1) Cygwin 설치

앞서 구출환경에서 크로스 컴파일러는 AVR Studio라고 말하였지만 이는 hex파일을 지그비 모듈위에 올려주는 역할만을 하며 코딩은 윈도우 기반 리눅스 환경인 TinyOS2X위에서 동작한다. 이러한 TinyOS2X를 구동시키기 위한 에뮬레이터 역할을 하는것이 Cygwin이다.


한백전자에서 제공하는 CD내용을 복사해 왔다면 내용은 이와 비슷할것이다.

우선 저기 선택되어있는 Cygwin 폴더에 들어가서 setup파일을 실행해서 설치를 수행한다.

 

설치를 시작하면 이러한 화면이 나올텐데 다음으로 넘어가자


여러 방법이 있지만 이미 설치파일이 있으므로 세번째 방법을 사용하면 된다.


설치 디렉토리는 웬만하면 다음과 같이 설정하고 부가옵션은 위 그림과 같이 설정하면 된다


설치할 파일이 들어있는 위치를 설정해줘야 하는데 그 위치는 다음과 같다.

이 경우는 필자의 경우이고 각자 Cygwin 폴더내에 release폴더가 있을텐데 거기로 지정해주면 된다.


위 그림을 보면 Cygwin 폴더내에 release폴더가 있는것을 볼수있다.


위 그림과 같이 나온다면 일단 정상적인것이고 다음을 눌러 설치를 끝내면 된다.


(2) TinyOS2X 설치


TinyOS2X를 설치하기 위해 다시 한백전자가 제공하는 CD파일로 이동한다.

그 후 위에 선택되어 있는 저 폴더에 들어간다.


그 폴더 내에는 다음과 같이 두개의 파일이 있는데 모두 복사한다.


이제 Cygwin이 설치된 폴더로 이동한다. 정상적으로 진행하였다면 필자와 같이 C:\TinyOS2X 일것이다.

그리고 opt 폴더내에 방금전에 두개의 파일을 복사해야 하는데 opt폴더가 없을것이다.

그냥 폴더 새로만들기해서 같은이름으로 만들어주고 그 안에 복사한다.


그 후 Cygwin을 실행시켜서 cd /opt명령어로 opt폴더로 이동후

./Install_TinyOS2X.sh 명령어를 통해 설치한다.


이 단계 중간에 실수가 있었다면 교재에 있는데로 레지스트리 파일을 제거한후 관련폴더를 삭제해주면 되고

이미 TinyOS2X가 설치된 PC에 지그비 환경을 추가로 구축하는것은 될지 안될지는 모르겠지만

교재에 있는 방법을 참고하는것이 좋을것이다.


(3) make파일 갱신

자 이제 설치가 제대로 이루어졌는지 확인을 해봐야 한다.


Cygwin을 실행시킨후 다음 명령어를 통해 예제 소스로 이동한다.


이동후 위 그림과 같이 make zigbex 명령어를 수행시키면 다음과 같은 화면이 나와야 한다.

위와 같이 나온다면 이 챕터의 다음내용은 패스해야 한다.

그렇지 않고 에러메세지가 뜬다면 계속 진행하면 된다.

우선 cygwin은 종료하기 바란다.



make.zip


우선 위 압축파일을 다운 받아서 압축을 푼다.

그리고 c:\TinyOS2X\opt\tinyos-2.x\support 폴더로 이동한후(앞서 설치 과정에서 필자와 다른경로를 사용하였다면 앞부분에서 다소 약간의 차이가 있을수는 있다) make폴더를 삭제한후 방금 다운받은 make폴더를 붙여넣기 해준다.


그후 다시 이 챕터의 앞부분 으로 돌아가서 cygwin을 실행시킨후 예제폴더로 이동후 make명령어를 수행한후 필자와 같이 make가 정상적으로 이루어 지는지 확인하면 된다.


(4) AVR Stduio 설치 및 지그비ISP 연결

이 부분은 앞서 말한대로 make를 통해 만들어진 hex파일을 지그비 모듈에 올려주는 AVR Studio를 설치하는 파트이다. 앞서 챕터3까지의 성공유무와는 전혀무관하며 이 챕터가 제대로 된다고 앞의 과정들이 제대로 이루어졌다고 보장할수는 없고 반대로 이 챕터가 제대로 안된다고 앞의 과정에서 문제가 있었다고 할수는 없다.


우선 AVR Stduio를 설치한다.

이부분은 딱히 문제되는 부분이 없으니 그냥 알아서 하면 된다.

단 버전은 AVR Stduio 4.X 버전을 사용하길 바란다 5버전 이후로는 작동여부를 보장할수 없다.


아무튼 AVR Stduio가 설치되었다면 실행시킨다.

위와 같이 화면이 나올텐데 저 작은창은 취소해서 끄면 된다.


상단 메뉴를 보면 위에 칩같이 생기고 COM이라고 적힌 버튼이 있다.

위 그림에서는 작게 보이지만 파란색으로 선택이 되어있는 부분이다.


실행시키면 위와 같은 창이뜬다. 커넥트를 누르면 아래와 같은 창이 뜬다.

단 이 단계에서 컴퓨터에 지그비모듈이 ISP를 통해 연결되어 있어야 하고 지그비의 전원이 온 되어 있어야 한다.


ISP 모듈에 문제가 없다면 위와 같은 창이 뜰것이다. 위와 같은 창이 뜨지않고 에러가 뜬다면 높은확률로

드라이버가 제대로 안깔린것이다.


드라이버는 장치관리자에서 위그림에 활성화 되어있는 "범용 직렬 버스 컨트롤러"와 "포트"탭에 나타난다.

저렇게 모두 정상적으로 설치되어있지 않고 물음표를 나타내는 장비가 있다면 그녀석이 아마 지그비 ISP모듈 일것이므로 드라이버 업데이트를 통해 드라이버를 설치해준다.

아마 자동설치는 안될것이고 제조사CD 폴더로 가서 USB_ISP폴더내의 CDM 2.00.00폴더를 참조해 주면 될것이다.


드라이버가 정상적으로 설치된 상태에서 뜬 위와같은창에서 Fuses 탭으로 이동해보자 위와 같이 퓨즈비트가 자동으로 설정되어있다면 제대로 되는것이고.. 퓨즈비트가 비어있다면 ISP는 제대로 되는데 모듈에 문제가 있을 확률이 높다. 그리고 대부분의 경우는 배터리 부족이다. 만약 이창이 아에 뜨지 않는다면 앞서 말한대로 드라이버가 제대로 안잡힌 것이다.


(5) 실습

다시 Program탭으로 돌아와서 위 그림과 같이 Flash영역에서 HEX파일을 골라준다.

아까 앞 챕터에서 make를 통해 생성한 Blink예제를 불러온다 위치는 필자와 똑같이 수행했다면

"C:\TinyOS2X\opt\tinyos-2.x\contrib\zigbex\BlinkTimer\build\zigbex\main.hex" 이다.

예제를 불러온후 Program 버튼을 눌러주면 프로그램이 지그비 위로 올라가고 그 후 지그비에서

정상적으로 예제 프로그램이 작동하는지 확인하면 된다.


참고로 이 설명서를 작성하면서 실수한 부분이 있는데 필자는 Blank예제가 아닌 BlackTimer예제로 테스트

하였다. Black예제는 작동여부를 확인하기위해 수동으로 버튼을 계속 눌러줘야 한다는 소리를 들었기 때문이다.


5. 결론

귀찮다