공식 TinyOS 설치 관련: http://docs.tinyos.net/index.php/Getting_started
TinyOS는 Windows, Linux에서 설치가 가능하며 Live CD 혹은 Image를 통한 VMware를 운영이 가능하다..

일단 WinXP에서 Cygwin 플랫폼을 통한 설치를 하기로 했다. 
 
1단계: JAVA SDK 설치.
TinyOS에 따라서 Java SDK 버전을 결정해야 한다. TinyOS 2.1이면 Java 1.6 SDK를 TinyOS 2.0.2 는 Java 1.5 SDK를 설치해야 한다. ==> 이는 TinyOS Source Platform내의 Java 버전과 Mismatch가 될경우 괜히 삽질하게 되기 때문이다.
설치는: http://java.sun.com
설치후 Java의 패스를 설정.

2단계: Cygwin 설치
setup.exe파일과 구해서 인터넷 Mirror사이트를 통해서 설치를 하여도 되지만, 좀더 편리하고 안정적으로 플랫폼을 구현하기 위해서 미리 적절하게 압축해둔 cygwin을 구해서 압축을 풀고 설치를 해도 된다.
해당 파일은: http://cone.informatik.uni-freiburg.de/people/aslam/cygwin-files.zip
다운로드 후 압축을 풀고 setup.exe를 실행하면 아래와 같이 Imstall from Local Directory 를 선택한다.



이후 Local Package Directory는 실제 다운 받은 Release 폴더를 선택하여 주면 된다.
그럼 다음과 같이 미리 정해진 파일들을 cygwin에 설치할 수 있다.


3단계: 툴체인, 소스, tinyos 설치
TinyOS의 개발도 분명 Embedded 환경의 개발이다. 그러므로 타겟의 컴파일 환경을 구축해야 한다. 또한 TinyOS의 특징인 nesc compiler도 설치해야 한다. 타겟의 CPU에 따라서 다음의 툴들을 설치해야 한다.
 * AVR 계열 설치
  - avr-binutils
  - avr-gcc
  - avr-libc
  - avarice
  - insight
 * MSP430 계열 설치
  - ~~~
 * PXA27X 계열 설치
  - ~~~
기본적으로 툴체인의 설치는 TinyOS의 홈페이지나, 타겟보드 회사의 홈페이지에서도 Download를 제공해 줄것이다. 이를 참조하여 설치하면 된다.
다음으로 nesc, tinyos-tools, tinyos source를 설치해야 한다.
*** 즉 정리하자면 다음과 같다. 만약 micaz와 같은 ATmega128 계열의 프로세스를 사용하는 보드라면, 설치해야 하는 툴들은 아래와 같다.

Atmel AVR Tools

Tool Windows/Cygwin Linux
avr-binutils avr-binutils-2.15tinyos-3.cygwin.i386.rpm avr-binutils-2.15tinyos-3.i386.rpm
avr-gcc avr-gcc-3.4.3-1.cygwin.i386.rpm avr-gcc-3.4.3-1.i386.rpm
avr-libc avr-libc-1.2.3-1.cygwin.i386.rpm avr-libc-1.2.3-1.i386.rpm
avarice avarice-2.4-1.cygwin.i386.rpm avarice-2.4-1.i386.rpm
insight (avr-gdb) avr-insight-6.3-1.cygwin.i386.rpm avr-insight-6.3-1.i386.rpm

TinyOS-specific Tools

Tool Recommended Windows/Cygwin Other Windows/Cygwin Linux Command
NesC nesc-1.2.8a-1.cygwin.i386.rpm nesc-1.2.8b-1.cygwin.i386.rpm> nesc-1.2.8a-1.i386.rpm rpm -Uvh
rpm -Uvh --ignoreos (if Cygwin complains)
Tool Windows/Cygwin 32-bit Linux 64-bit Linux Command
tinyos-tools tinyos-tools-1.2.4-2.cygwin.i386.rpm tinyos-tools-1.2.4-3.i386.rpm tinyos-tools-1.2.4-3.i686.rpm rpm -ivh --force (1.x tree)
rpm -Uvh (no 1.x tree)

TinyOS 2.x

Windows/Cygwin Linux
TinyOS tinyos-2.0.2-2.cygwin.noarch.rpm tinyos-2.0.2-2.noarch.rpm

4단계: 업체에서 제공하는 TinyOS Sample Code, 패치 설치
아마 국내에서 판매하고 있는 TinyOS 관련 보드들을 사용한다면 해당 회사에서 제공하는 샘플코드나 패치들이 있을 것이다. 혹은 이와는 다르게 한번에 개발환경을 구축할 수 있도록 제공도 할 것이다.

5단계: Graphviz 설치

6단계: 설치후 테스트
설치후 /opt/tinyos-2.x/apps/Blink <= 의 폴더에서
make micaz 와 같이 컴파일이 완료되는지 확인..

예외 사항
1. 혹시 /opt 폴더가 없을 경우 생성하여 준다.
2. TOSSIM 관련해서는 TinyOS의 11장 TOSSIM의 맨하단부분에 수정사항이 나와 있다.

저작자 표시
신고
Posted by sound79 사운드친구

댓글을 달아 주세요

SPOT Project?

사용자 삽입 이미지

SUN에서도 WSN(Wireless Sensor Network)을 연구, 개발하고 있네요. 물론 SUN답게 Java 베이스이구요.

SUN에서 언제 말했었죠. 모든 기기에 Jave를 넣을거라구요. WSN을 구성하는 노드들의 Jave는 좀 아닐거라고 생각하고 있었는데. 보란듯이 SUN에서는 떡하니 내놓았네요..

현재 구성 자체가 4가지 정도이네요.
SPOT Application: 말 그대로 SPOT을 이용한 데모 응용 프로그램 정도이겠네요.
SPOT Curriculum: 아직 별 내용이 없네요.
SPOT Libraries: SPOT 어플리케이션을 위한 Libraries들인데, 이게 오픈소스 형태로 개발이 된다고 하는군요.
Squawk VM: 저는 개인적으로 이게 참 흥미롭네요, 기본적인 JAVA의 Vertual machine형태인 JVM과 단말기나 Embedded Device에 탑재되는 VM과 어떤면이 다른지요?.. 아시는 분은 좀 가르쳐 주시기 바랍니다. 그리고 이것도 오픈소스 형태로 물론 개발이 된다고 하네요.

사용자 삽입 이미지

기회가 된다면 한번 받아서 테스트라도 해보고 싶은데, 어떻게 무료 대여는 안되는지..ㅋㅋ  쩝 ^^

아래에 있는 링크를 보면 자세한 내용을 알 수 있습니다.

SUN SPOT World 홈페이지
SUN SPOT 페이지
Squawk 페이지
SPOT Libraries
SPOT Document
SPOT Forum



신고
Posted by sound79 사운드친구

댓글을 달아 주세요

  1. sound79 사운드친구 2008.02.05 00:30 신고  댓글주소  수정/삭제  댓글쓰기

    Java는 아닐거라고 생각했는데, H/W Spec을 보니 되겠네요. ㅋㅋ
    Each Sun SPOT has a 180MHz 32-bit ARM920T core processor with 512K RAM and 4M Flash

  2. 몽백작 2008.08.15 22:47 신고  댓글주소  수정/삭제  댓글쓰기

    Java를 쓴다면 Java를 쓰는 많은 프로그래머들이 손쉽게 작업할 수 있겠네요.^^ 이런게 있었다니... 잘 보고 갑니다. 참고해야 겠어요...ㅋㅋㅋ

지그비 관련 일을 많이 하면서 관심을 가지고 있었던게 6lowpan이었다. 실제 아직은 Field에서 6lowpan에 대해서 많이 쓰지는 않고 있다. 예전 etri에서 자체 ipv6 over 802.15.4를 구현한 것을 전시회에서 본적은 있다.

NanoStack을 만든 곳은 sensinode라는 Company이다. 기본적은 Stack과 Source는 해당 회사 홈페이지에서 다운로드를 할 수 있었는데, 올해 초부터 sourceforge에 프로젝트를 등록해 두고 GPL License하에서 개발을 진행한단다. 근데 재미 있는 것은 이분야의 개발자들에게 메일을 보내고 해당 프로젝트에 참여를 유도하는 것이었다. 물로 나도 메일을 받았다. (혹시 Sourceforge에 비슷한 프로젝트를 등록해 두어서 그런가???)

We are just about to release our NanoStack 6lowpan stack project to
Sourceforge. This has 2 years of development behind it and a large industrial,
IETF and academic following. It would be great for you to join the effort as your
project didn't make it past planning yet. Project should go live within a week,
feel free to get in touch.

간단히 참여하겠다는 의사의 메일을 보내니...
몇일 후 해당 프로젝트의 Developer로 되어 있지 않은가!!!.??.. ㅎ
NanoStack Project Page

어쨋뜬 아직 소스만 받아 보고 어떠한 패치나 리포팅을 하지는 않았다. 좀더 시간을 내서 살펴보고 진행을 해보아겠다. 한가지 아쉬운 것이 있다면 Sensor Network 플랫폼에 탑재된 OS(WOS)가 FreeRtos라는 점.. 개인적으로 좀 별로라고 생각하고 있던 rtos라고 생각하고 있었는데... 왜냐하면? 이건 담에 생각나면,, ㅋㅋㅋ

그리고 좀더 할려고 하면 DK나 Hardware가 필요한데,, 지금 내가 가지고 있는 것은 MSP430 시리즈는 없고, CC2430 Toolkit만 가지고 있는데 이걸 어떻게 잘 Hack해야 겠다. 그리고 정말 중요한 것은 컴파일러가 SDCC? 쩝... 아무리 그래도 그렇지...쩝쩝...

시간날때 6lowpan SPEC이나 보자.. 아직 ZigBee 2006,Pro도 쩝쩝..
신고

'예전글 목록' 카테고리의 다른 글

Chumby를 가지게 되다.  (0) 2008.01.28
ZigBee Alliance Open House - Tokyo Japan  (0) 2008.01.27
오픈소스가 된 NanoStack 6lowpan  (0) 2008.01.27
KScope  (1) 2008.01.06
KLibido 0.2.5  (0) 2008.01.01
안드로이드(Android) 구글폰의 OS?  (0) 2007.11.06
Posted by sound79 사운드친구

댓글을 달아 주세요

GSN is a software middleware designed to facilitate the deployment and programming of sensor networks.

유비쿼터스 시대에 뜰 기술중에 하나가 센서 네트워크라고 생각합니다. 그래서 센서 네트워크가 거대해지면서 여기에 맞는 미들웨어의 필요성도 대두하고 있다고 봅니다.

현재 GSN은 Version 0.95(2007.04.15) 이네요.





구글맵을 이용하여 센서노드의 위치를 관리하는게 참으로 멋지네요.

현재 Hardware는 다음을 지원한다고 나와 있습니다.
TinyOS-1.X motes, including TinyNodes, Mica2, etc.
Texas Instruments 6900 RFID Reader.
Alien Technology ALR-8780 RFID Reader.
WiseNode from CSEM, Switzerland.
Axis 206W wireless Cameras.
OV511/518 USB Cameras.
Generic Http friendly data transmission protocols.
Generic UDP friendly data transmission protocols.
Generic Serial (RS-232) data transmission protocols.

설치는 Windows XP, Linux 다 지원을 하구요.. 참고로 Sourceforge.net하에서 개발이 되고 있어요..
http://gsn.sourceforge.net
신고

'예전글 목록' 카테고리의 다른 글

KLibido 0.2.5  (0) 2008.01.01
안드로이드(Android) 구글폰의 OS?  (0) 2007.11.06
Middleware for Sensor Network  (0) 2007.10.27
AVR Small Rtos  (0) 2007.10.26
[Error] ERRONEOUS REFERENCE TO EXTERNAL VARIABLES  (0) 2007.10.20
[6lowpan] RFC 4944 now available  (0) 2007.09.26
Posted by sound79 사운드친구

댓글을 달아 주세요

WSN(Wireless sensor network) 노드(센서모듈을 가진 모듈)를 OS는 일반적인 목적의 OS보다는 덜 복잡하다. 왜냐면 단지 센서네트워크 어플리케이션 목적과 하드웨어 플랫폼도 제한적이기 때문이다.

TinyOS, Contiki, MANTIS, BTnut, SOS, Nano-RK 등이 있는데 TinyOS는 너무 잘 알려져 있고 인터넷에 관련 글도 많이 찾을 수가 있어서 TinyOS를 제외한 다른 센서네트워크용 OS를 서치해보았다.

Contiki(http://www.sics.se/contiki/)
Contiki is designed for embedded systems with small amounts of memory. A typical Contiki configuration is 2 kilobytes of RAM and 40 kilobytes of ROM. Contiki consists of an event-driven kernel on top of which application programs are dynamically loaded and unloaded at runtime. Contiki processes use light-weight protothreads that provide a linear, thread-like programming style on top of the event-driven kernel. Contiki also supports per-process optional preemptive multi-threading, interprocess communication using message passing through events, as well as an optional GUI subsystem with either direct graphic support for locally connected terminals or networked virtual display with VNC or over Telnet.

MANTIS(http://mantis.cs.colorado.edu/index.php/tiki-index.php)
The MANTIS Group at CU Boulder has developed an open source, multi-threaded operating system written in C for wireless sensor networking platforms. Some key features of MANTIS OS (MOS):

  • Developer friendly C API with Linux and Windows development environments
  • Automatic preemptive time slicing for fast prototyping
  • Diverse platform support including MICA2, MICAz, and TELOS motes
  • Energy-efficient scheduler for duty-cycle sleeping of sensor node
  • Small footprint (less than 500B RAM, 14KB flash)
  • BSD License




BTnut(http://www.btnode.ethz.ch/)
The Nut/OS Core, The Bluetooth Subsystem, Bluetooth L2CAP
Bluetooth Remote Procedure Calls, The Chipcon CC1000 Interface
BTnut Terminal Interface, Sensor Drivers, Power Drivers

사용자 삽입 이미지
사용자 삽입 이미지


SOS(https://projects.nesl.ucla.edu/public/sos-2x/doc/)

사용자 삽입 이미지

Nano-RK(http://www.nanork.org/nano-RK)
Nano-RK is a reservation-based real-time operating system (RTOS) from Carnegie Mellon University with multi-hop networking support for use in wireless sensor networks. Nano-RK currently runs on the FireFly Sensor Networking Platform as well as the MicaZ motes. It includes a light-weight embedded resource kernel (RK) with rich functionality and timing support using less than 2KB of RAM and 16KB of ROM. Nano-RK supports fixed-priority preemptive multitasking for ensuring that task deadlines are met, along with support for CPU, network, as well as, sensor and actuator reservations. Tasks can specify their resource demands and the operating system provides timely, guaranteed and controlled access to CPU cycles and network packets. Together these resources form virtual energy reservations that allows the OS to enforce system and task level energy budgets.
사용자 삽입 이미지
신고

'예전글 목록' 카테고리의 다른 글

uC/OS 분석  (0) 2007.08.15
초간단 링버퍼 작성  (1) 2007.08.14
무선 센서네트워크를 위한 OS  (0) 2007.08.12
노트북 LCD 수리  (0) 2007.08.07
6lowpan WG  (0) 2007.08.06
op-wipv6  (0) 2007.08.05
Posted by sound79 사운드친구

댓글을 달아 주세요

[TI의 ZigBee / IEEE 802.15.4]
http://focus.ti.com/analog/docs/gencontent.tsp?familyId=367&genContentId=24190

기존 Chipcon을 인수한 TI의 ZigBee 기술에 대해서 잠시 살펴 보면 개인적으로 그렇게 업그레이드 된 모습을 찾을 수가 없는 거 같기도 하다. 하지만 전세계적인 distributor을 가지고 있고 수많은 엔지니어와 자본을 생각해보면 분명 지그비 분야에서도 가장 앞서가고 있을 수 있다고 볼 수 있다.

TI의 ZigBee RF Product는 현재 CC2420, CC2430, CC2431이다.
 - CC2420은 2.4GHz Transceiver형태로 Dev Kit형태로 ATmega128 or MSP430과 Two-Chip솔루션 형태로 ZigBee System을 구축할 수 있다.
 - CC2430은 SOC형태 즉 1Chip 형태로(intergrated microcontroller) ZigBee System을 구축할 수 있으며 기본적으로 8051 core를 기반으로 하며, 3가지 형태의 flash사이즈 타입을 고를 수 있다.
 - CC2431는 First System-on-Chip with hardware location engine 이며 아직 나도 다루어 보지는 못했다.

TI의 ZStack 및 IEEE 802.15.4 MAC
현재 가장 최신 버전이 얼마인지는 잘 모르겠지만 1.4.1까지 사용해 보았다. 예전 Chipcon시절 0.8 ~ 부터 사용해 보았기 때문에 쉽게 따라 할 수 있었는게 그 구조가 그리 변하지 않았기 때문이다. Change List를 보니 중간중간 몇가지의 버그 수정이 있었고 ZigBee Spec의 변화를 수정하고 있는듯 (ZigBee spec1.0 ,,, ZigBee Pro ,,,, ZigBee 2006)

TI IEEE 802.15.4 MAC 아마 불리는 이름이 그냥 TIMAC 정도로 불리는 듯... 실제 필드에서 개발알 하다보면 ZigBee Stack 올리지 않고 개발을 하는 경우가 상당히 많이 있다. 왜 그럴까? (이부분은 다음에 시간이 나면 개인적으로 정리할 생각...) 그래서 아마 TI에서 나온듯.. 예전 Chipcon 시절에도 SimpleRF~~ Sample 소스가 제공이 되었다. 그 소스를 바탕으로 CC2420의 IO부분과 Firmware 작업을 할 수 있었다.. ^^

개인적으로 현재 ZigBee 개발에 몸담고 있지만 ZigBee의 향후는 어떻게 될지 정말 모르겠다. 물론 ZigBee라는 거 자체가 신기술, 차세대,, 이런 수식어에 적합하다고 할 수도 있다. 하지만 기술이라는 게.... 어디 내 마음대로 되나?.... 뭐 그래도 앞으로도 계속 이부분에 follow할 것이다.... 아핫~~~
신고

'예전글 목록' 카테고리의 다른 글

초간단 링버퍼 작성  (1) 2007.08.14
무선 센서네트워크를 위한 OS  (0) 2007.08.12
노트북 LCD 수리  (0) 2007.08.07
6lowpan WG  (0) 2007.08.06
op-wipv6  (0) 2007.08.05
ZigBee Chipset & Stack #1 [Texas Instruments]  (1) 2007.08.05
Posted by sound79 사운드친구

댓글을 달아 주세요

  1. 2010.07.03 12:44  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다



티스토리 툴바