임베디드 시스템에 무선 인터페이스를 추가하려고 할 때 블루투스나 Zigbee같은 경우는 저렴한 가격에 다양한 모듈을 구할 수 있어 쉽게 추가할 수 있는데 비해 무선랜의 경우는 가격도 비싸고 그나마도 쉽게 구할 수 없어 임베디드 시스템에 추가하기가 쉽지 않다.
하지만 국내 회사인
Wiznet에서 다양한 종류의 임베디드 통신 모듈(Ethernet module, Ethernet-to-serial, WLAN module)을 출시하여 대부분의 필요한 모듈을 쉽게 찾을 수 있다. 그래서 얼마전에 Wiznet에서 임베디드 DIY를 활성화하기 위해 무료로 제공해 준
Wiz 610wi 무선랜 모듈을 mbed 보드에 붙여 테스트를 진행해 보았다.
802.11b/g를 지원하는 모듈로 Serial I/F와 MII I/F를 제공해 주기 때문에 임베디드 보드에 시리얼로 연결하거나 이더넷 포트에 다른 PC들을 연결해 무선 AP나 Gateway로 동작할 수도 있는 다기능 무선랜 모듈이다.
상세 사양은 다음과 같다.
Detailed Technical Specification
Wireless
Specifications |
Wireless Standards |
IEEE 802.11b 802.11g |
Frequency Range |
2.412GHz ~ 2.462GHz (US & Canada) |
2.412GHz ~ 2.472GHz (Europe) |
2.412GHz ~ 2.484GHz (Japan) |
Output Power |
16dBm@802.11b
(1~11Mbps)
14dBm@802.11g(1~54Mbps)
|
Receive Sensitivity |
802.11b -65dBm@11Mbps
802.11g -76dBm@54Mbps |
Data Rates With
Automatic Fallback |
54Mbps, 48Mbps, 36Mbps, 24Mbps, 18Mbps,
12Mbps, 9Mbps, 6Mbps, automatically fallback to
5.5Mbps, 2Mbps, 1Mbps |
11Mbps, 5.5Mbps, 2Mbps, 1Mbps |
Range |
Up to 150m/2.5dBi antenna gain |
Modulation Techniques |
11g OFDM (64QAM, 16QAM, QPSK, BPSK)
11b DSSS (CCK, DQPSK, DBPSK) |
Serial
Interface |
Interface |
UART
CMOS (Asynchronous) 3.3V-level signals,
rate is software selectable
|
Serial Line Formats |
7 or 8 data bits, 1-2 Stop bits |
Parity |
odd, even, none |
Flow Control |
XON/XOFF (software), CTS/RTS (hardware), none |
Network
Interface |
Interface |
MII, Wireless 802.11b, 802.11g |
Protocols Supported |
ARP, UDP, TCP, Telnet, ICMP, DHCP, PPPoE, BOOTP, HTTP, SMTP,
TFTP |
Management |
HTTP / Telnet |
Security |
WEP 64/128bit, WPA/WPA2 PSK/AES/TKIP, 802.1x(Radius)
|
Hardware |
32mm X 39 mm X 9mm, Pin Header type |
Power
Consumption |
Average Consumption |
under
470mA |
Environmental |
Operating range,WLAN |
0~55°C |
Storage range |
-20~ 77°C |
610wi는 3가지 동작 모드를 가지고 있다.
이 중 여기서는 mbed 모듈을 무선랜에 연결하는게 목적이기 때문에 client mode를 사용할 것이다.
모듈의 Factory Default 설정은 다음과 같다.
핀 배치는 다음과 같다.
두개의 커넥터(J19, J20)가 있지만 J19(36핀)으로만 신호선이 나오고 J20(20핀)은 단지 보드 고정을 위해 있을 뿐 신호선은 연결되어 있지 않다.
모듈 소형화를 위해 어쩔 수 없는 선택이긴 해도 DIY를 하는 사람들에게 치명적인 단점이 하나 있는데 커넥터의 피치가 일반적으로
많이 사용하는 100mil(2.54mm)이 아닌 50mil(1.27mm)라는 것이다. 직접 전용 PCB를 뜨지 않는 한 만능기판에
실장하기도 힘들고 1.27피치의 커넥터나 만능기판은 구하기도 힘들고 가격도 비싸다.
가능하면 J19, J20 모두 신호선으로 사용하는 대신 100mil(2.54mm) 피치의 커넥터를 사용했으면 더 좋았을거라고 생각한다.
하지만 땜질을 하다 보니 1.27피치가 2.0피치보다는 훨씬 더 좋다는걸 알게 되었다.
Pin No.
| Name
| I/O
| Description
| Pin No.
| Name
| I/O
| Description
|
1 | CTS | I | UART:CTS | 2 | RTS | O | UART:RTS |
3 | - | | | 4 | HW_trig | I | HW Trigger
|
5 | GPIO7 | I/O | Reserved | 6 | GPIO5 | I/O | Reserved |
7
| SOUT | O | UART:Tx | 8 | SIN | I | UART:Rx |
9 | DC_IN | | 3.3V | 10 | DC_IN | | 3.3V |
11 | GND | | | 12 | GND | | |
13 | RxERR | I | MII Rx Data Error
| 14 | COL | I | MII Collision
|
15 | /W_LED | O
| Wireless LED
| 16 | MDC | I | SMI CLK
|
17 | /RESET | I | RESET | 18 | MDIO | I/O | SMI I/O Data
|
19 | GND | | | 20 | GND | | |
21 | RXC | I | MII Rx CLK
| 22 | RXDV | I | MII Rx Data Valid
|
23 | RXD2 | I | MII Rx Data | 24 | RXD0 | I | MII Rx Data |
25 | RXD1 | I | MII Rx Data | 26 | RXD1 | I | MII Rx Data |
27 | GND | | | 28 | GND | | |
29 | TXC | O | MII Tx CLK
| 30 | TXEN | O | MII Tx Enable
|
31 | TDX3 | O | MII Tx Data
| 32 | TDX2 | O | MII Tx Data |
33 | TDX0 | O | MII Tx Data | 34 | TDX1 | O | MII Tx Data |
35 | GND | | | 36 | CRS | I | Carrier Sense
|
* 모든 신호레벨은 3.3V
* RESET은 최소 1.2usec이상 L로 유지해 줘야 함. 3초 이상 L로 유지되면 factory reset 됨
* HW Trigger가 L면 serial command mode로 들어가고 H면 serial command mode에서 빠져나옴
이 중 시리얼 포트를 통해 연결하는 경우 SIN, SOUT, DC_IN, GND, HW_Trig, /RESET만 있으면 된다.
일반적으로 사용하는 2.54 피치의 만능기판에 직접 연결할 수가 없기 때문에 디바이스마트에서 1.27피치의 만능기판을 구입하여 시리얼 인터페이스를 위해 필요한 핀만 연결해 주었다.
6핀만 연결하여 2.54피치의 핀헤더로 연결하여 mbed 보드와 커넉터로 연결할 생각이다.
보드 제작이 끝나고 나면 방향에 맞게 모듈을 꼽아주면 된다.
전원이 들어온걸 눈으로 쉽게 확인할 수 있도록 녹색의 LED를, 무선랜에 연결된 상태를 확인할 수 있도록 노란색의 LED를 보드에 실장해 주었다.
이 상태에서 보드에 전원을 공급하면 factory default로 설정되어 있는 Access Point 모드로 동작하게 되기 때문에 PC에서 확인해 보면 SSID가 WLANAP인 무선랜이 보이게 된다.
* 무선랜 모듈에 흐르는 전류가 크기 때문에 (최대 450mA) 충분한 전류를 흘려줄 수 있는 전원소스를 사용하여야 한다. 모듈의 IP주소는 192.168.1.254니까 WLANAP에 연결한 다음 컴퓨터의 IP를 수동으로 192.168.1.x 로 맞춰주고 브라우져에서 192.168.1.254로 접속하면 된다.
그럼 아이디와 암호를 물어보는데 디폴트는 admin/admin이다.
이 중 시리얼 포트의 상세 설정은 다음과 같다.
목적대로 사용하기 위해서는 먼저 Wireless settings에서 동작모드를 client mode로 변경해 줘야 한다.
Client 모드로 변경한 다음 client 모드의 설정을 변경하기 위해 'Setup' 버튼을 눌러주었다.
'Setup' 버튼을 누르면 설정 변경을 위해 잠시 기다려야 한다.
문제는 설정이 변경되면 디바이스 타입이 AP에서 무선랜 클라이언트 디바이스가 되기 때문에 무선 네트웍이 사라져서 아래와 같이 홈페이지를 억세스 할 수 없게 된다.
이 시점부터는 시리얼 케이블을 연결해서 설정을 변경해 주어야 한다.
디폴트 설정대로 38400 bps로 속도를 설정하고 시리얼 터미널을 연결하면 위와 같이 명령을 입력할 수 있게 된다. 명령어에 대한 상세한 설명은 메뉴얼을 참고하면 된다.
설정을 끝내고 <DI> 명령에서 보이는 네트웍들중에 하나에 연결시켜 주면 된다.
실제 설정 명령어들과 테스트 결과는 다음 포스트에 올리도록 하겠다.