2010년 작업2010.12.02 06:04
목차
1. BluetoothMaster V1.0 <- 여길 보고 계십니다.
2. BluetoothMaster V2.0

임베디드 장치를 개발하다보면 가장 많이 쓰이는 통신 방식은 아무래도 시리얼 UART 통신입니다. PC와 데이터를 주고 받으면서 테스트하는 빈도가 높기에 위드로봇에서는 ComPortMaster라는 프로그램을 무료로 공개 배포하고 있으며 반응이 꽤 좋습니다. 위드로봇 홈페이지 유입 키워드 1위이기도 하죠.

위드로봇에서는 블루투스 모듈(myBluetooth-EX)도 만들어 판매하고 있는데 사실 이런 모듈을 만들어 판매하는 것은 위드로봇의 비니지스 모델과는 일치하지 않습니다. 외부 과제를 하던 중에 반강제적으로 블루투스 모듈 몇 천개를 떠안게 되었고, 이 모듈을 소진하려다보니 모듈로 만들어 소매 시장에 내놓게 된 것이죠. 이런 이유로 블루투스와 연을 맺게 되었는데 최근에 고객들로부터 자주 받는 질문이 'myBluetooth-EX랑 스마트폰의 Bluetooth랑 연결이 되느냐?' 입니다. 결론부터 말씀드리면 갤럭시S, 갤럭시탭, 디자이어, 베가 에서는 정상 동작을 확인했습니다. 사실은 위 모델이 위드로봇에서 사용하고 있는 안드로이드 폰 전체입니다. 나머지 모델들은 일일히 확인을 하고 호환 리스트를 만드는 것이 마음 편하겠습니다만 현실적으로는 블루투스 모듈을 팔자고 핸드폰 전체 모델에 테스트하는 것은 불가능합니다.

따라서 내부 의견이 간단한 테스트 프로그램을 만들어 배포하여 호환성 테스트를 소비자가 할 수 있게 하는 것이 어떻겠냐는 의견이 나왔습니다. 바로 화이트 보드에 메뉴가 그려지기 시작했고, 능력있는 위드로봇 팀장님들 덕분에 3일만에 뚝딱뚝딱해서 BluetoothMaster 프로그램이 작성되었습니다. 마켓에서 BluetoothMaster 를 검색하시면 내려 받을 수 있습니다.

BluetoothMaster 공식 홈페이지로 이동 링크
   


프로그램을 실행하면 타이틀 화면은 왼쪽과 같습니다. 아무래도 블루투스에 관련된 프로그램이다보니 파란색을 기본으로 깔 수 밖에 없죠. 위드로봇 로고는 빨간색이라서 파란색 바탕의 빨간색 로고는 눈에 거슬리는 것이 사실입니다.

버전은 기능이 없음에도 불구하고 V1.0 입니다. ^^;
V0.4 이런 식으로 표기하면 아무래도 사용하시는 분들이 불안해 할 것 같아서요. 기능은 더 넣을 것들이 있지만 일단 테스트 용도로는 충분이 검증되었기에 V1.0을 부여했습니다.

화면을 터치하면 오른쪽 화면으로 변경됩니다. 이 때 블루투스가 꺼져있으면 자동으로 켜겠다는 메뉴가 나옵니다. BluetoothMaster를 사용하시려면 당연히 블루투스를 켜셔야겠죠.
메인 메뉴는 세 개밖에 없습니다. 첫번째는 myBluetooth-EX와 BluetoothMaster를 서로 연결하는 메뉴입니다. 1번 메뉴를 선택하면 현재 연결 가능한 블루투스 장비 목록들이 열거됩니다. 이 메뉴에서 현재 자신이 사용하고 있는 myBluetooth-EX를 선택하시면 됩니다. 편리한 점은 선택한 myBluetooth-EX의 설정된 Baudrate에 맞춰 자동으로 통신 속도를 결정합니다.

자, 연결이 되었으면 제대로 동작하는지 확인하는 단계입니다. 2번째 메뉴인 Echo는 말 그대로 임베디드 장비에서 myBluetooth-EX를 통해 데이터를 발송하면 이를 다시 그대로 myBluetooth-EX쪽으로 재전송하는 기능입니다. Echo 메뉴는 토글 방식으로 한 번 누르면 BluetoothMaster는 Echo 모드로 동작하고, 한 번 더 누르면 Echo 모드에서 빠져나갑니다.

세 번째 메뉴 Send는 간단한 문자열을 안드로이드 폰에서 myBluetooth-EX로 발송합니다. 어떤 문자인지는 직접 해 보시는 기쁨(?)으로 남겨둡니다. 한 번 누를 때마다 전송이 됩니다.

아래 버튼 [LED1 Off] [LED2 Off] 버튼은 위드로봇에서 개발한 보드들과 미리 약속된 프로토콜로 메시지를 보내 임베디드 보드의 LED를 켜고 끄는 버튼입니다.

자, 이것으로 간단한 설명서에 해당하는 부분은 다 쓴 것 같습니다.

예상되는 질문 중에 하나가 "다른 블루투스 모듈과도 호환이 되나요?" 입니다. 죄송하지만 저희가 타사의 블루투스 모듈을 구매해서 테스트할 만한 상황은 아닙니다. 따라서 공식적인 입장은 "호환이 안됩니다" 이며, 혹시나 모르는 테스트는 사용자의 몫이며 이에 따른 기술지원은 어렵습니다.
두 번째 질문은 "아이폰 용으로 만들 계획은 없나요?" 입니다. 아이폰쪽은 WiFi 이외에 다른 인터페이스(dock 커넥터 또는 블루투스)와 연동되는 프로그램을 개발하려면 꽤나 법률적으로 갸우뚱하게 만드는 NDA를 애플사와 맺어야 합니다. 8pt 폰트, two colume으로 A4 세장을 빽빽하게 채운 영문 문서인데 아무리 읽어봐도 이 NDA에 싸인하고 개발하는 것은 노예문서에 싸인한다는 느낌이 들어 과감히 포기했습니다. 제가 잘못 이해하고 있으며 아이폰쪽 블루투스 관련 어플을 개발하고 계신 분들은 과감한 지적, 지도 편달 부탁드립니다. 결론은 "당장은 안드로이드만 지원하며 아이폰용 개발 계획은 없습니다" 입니다.

이로서 위드로봇도 안드로이드 프로그램 제작 흐름에 일부 동조하는 모습을 띄게 되었습니다. 내부적으로는 빠른 생산성에 JAVA 프로그래밍을 해야 하는 부분에 거부감을 느끼던 분들이 조금씩 돌아서고 있네요.

조만간 ComPortMaster 기능을 추가하여 꽤나 쓸만하게 (또는 임베디드 개발자라면 누구나 쓰는) BluetoothMaster V2.0으로 찾아뵙겠습니다.(아무도 책임지지 않은 무책임한 심정적인 개발 일정은 날 풀리는 2011년 봄이 되어야 되지 않을까 싶습니다.^^)
드디어 ComPortMaster 기능을 안드로이드 스마트 폰에서도 사용할 수 있는 V2.0 개발이 일 차 완료되었습니다. 아래 링크를 클릭해 주세요.

다음 이야기: [BluetoothMaster] ComPortMaster 기능 추가한 V2.0 (클릭, 클릭~)


Posted by getcome