|
우선 저의 글을 읽어주셔서 감사드립니다.
지금 제가 시도하고 있는것은 심비안이 탑재된 노키아 스마트 폰과 임베디드 리눅스이 탑재된 암보드(PXA255)와의 통신을 블루투스를 사용하여서 시도하고 있습니다.
노키아폰에서는 내장되어있는 블루투스 모듈을 사용하였고 (참고로 외부의 컨넥터는 없습니다..예를들면 시리얼포트와 같은...) 암보드에서는 USB bluetooth 동글(Anycom 사)을 이용하였습니다.
제가 생각한 방식은 HCI스택과 L2cap, Rfcomm 까지의 스택을 올려서 시리얼 블루투스 통신을 할려고 시도하였습니다...
rfcomm connect rfcomm0 00:0e:6d:6b:11:46
rfcomm bind 0 00:0e:6d:6b:11:46 2
rfcomm show
이와 같은 방식을 통해서 접속을 시도하였습니다.
그리고 암보드 부분에서는 HCI대몬과 SDP대몬을 올려서 돌아가도록 하였습니다.
bluez.org에서 제공하는 블루투스 라이브러리와 유틸에 관련된 부분도 포팅을 하여 적재를 하였고요.
그래서 핀코드 교환을 하고 접속을 이루어졌습니다.
심비안 폰에서 블루투스 어플에 인증만 할수 있는 부분이 있습니다.
그래서 노키아폰에있는 BTP2P(BlueTooth-Peer To Peer)를 이용하여서 시도를 하면은 컨넥팅 오류가 뜹니다.
데이터의 전송이 되니 받겠느냐는 메세지도 뜹니다(노키아폰에서)
echo "test BTP2P" > /dev/rfcomm0
그래서 확인버튼을 누르면 폰에서 오류가 뜹니다..
그래서 PPP를 이용한 방법을 생각해서 PPPd를 포팅해서 시도했지만 나중에 알고보니 폰에서는 PPPd를 이용한 방식을 지원하지 않더라구요..
참고로 폰과의 윈도우와의 데이터의 전송을 확인하였습니다.
혹시 제가 접근 방법이 아에 틀린건가요? 만약에 그렇다면 어떤 방법이 좋을까요?
고수님 여러분의 조언을 부탁드립니다.
아래와 같이 밑에 부분에서는 LP와 LM.. 등을 설정하였습니다.
==================================================================
root@ez-x5 /root]$ hciconfig -a
hci0: Type: USB
BD Address: 00:0B:0D:20:E9:2A ACL MTU: 339:4 SCO MTU: 64:0
UP RUNNING PSCAN ISCAN
RX bytes:5110 acl:124 sco:0 events:124 errors:0
TX bytes:1056 acl:32 sco:0 commands:48 errors:1
Features: 0xff 0xff 0x3d 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'PPT REDZ..'
Class: 0x001101
Service Classes: Unspecified
Device Class: 16 bit, Unknown (reserved) minor device class
HCI Ver: 1.1 (0x1) HCI Rev: 0x93 LMP Ver: 1.1 (0x1) LMP Subver: 0x93
Manufacturer: Transilica, Inc. (24)
============================================================
심비안 폰에서 제공되는 프로파일 서비스는 이와 같습니다.
============================================================
[root@ez-x5 /root]$ sdptool browser 00:0e:6d:6b:11:46
Browsing 00:0E:6D:6B:11:46 ...
Service Name: OBEX Object Push
Service RecHandle: 0x10004
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 9
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100
Service Name: Bluetooth Serial Port
Service Description: Bluetooth Serial Port
Service Provider: Symbian Ltd.
Service RecHandle: 0x10008
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Service Name: Fax
Service RecHandle: 0x1001a
Service Class ID List:
"Fax" (0x1111)
"Generic Telephony" (0x1204)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Fax" (0x1111)
Version: 0x0100
Service Name: Dial-up Networking
Service RecHandle: 0x1001b
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
Service Name: OBEX File Transfer
Service RecHandle: 0x1001c
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100
Service Name: Handsfree Audio Gateway
Service RecHandle: 0x1001d
Service Class ID List:
"" (0x111f)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"" (0x111e)
Version: 0x0101
==================================================================