KR101355058B1 - 블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스 - Google Patents

블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스 Download PDF

Info

Publication number
KR101355058B1
KR101355058B1 KR1020110129778A KR20110129778A KR101355058B1 KR 101355058 B1 KR101355058 B1 KR 101355058B1 KR 1020110129778 A KR1020110129778 A KR 1020110129778A KR 20110129778 A KR20110129778 A KR 20110129778A KR 101355058 B1 KR101355058 B1 KR 101355058B1
Authority
KR
South Korea
Prior art keywords
wpd
peripheral device
driver
devices
low energy
Prior art date
Application number
KR1020110129778A
Other languages
English (en)
Other versions
KR20120062639A (ko
Inventor
비토르 조드지스스키
일리야 파엔슨
아쇼크 카푸르
론 웡
Original Assignee
브로드콤 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 브로드콤 코포레이션 filed Critical 브로드콤 코포레이션
Publication of KR20120062639A publication Critical patent/KR20120062639A/ko
Application granted granted Critical
Publication of KR101355058B1 publication Critical patent/KR101355058B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/02Inter-networking arrangements

Abstract

중앙 디바이스 상에서 인스톨(install) 및 실행되는 윈도우즈 포터블 디바이스(WPD) 드라이버가 그 디바이스 상의 하나 이상의 애플리케이션들이 블루투스 저에너지(BLE) 디바이스와 같은 주변 디바이스와 인터페이스할 수 있도록 하는 방법및 시스템이 제공된다. 주변 디바이스는 WPD 드라이버와 인터페이스하기 위하여 포괄 속성 프로파일(GATT)을 사용할 수 있다. WPD 드라이버를 통해, 중앙 디바이스는 주변 디바이스와 연계된 정보를 액세스, 송신, 수신, 및/또는 수정할 수 있고, 및/또는 주변 디바이스를 제어할 수 있다. 주변 디바이스와 연계된 정보는 서비스들, 특징들, 및/또는 디스크립터들을 포함할 수 있다. 주변 디바이스를 논리적으로 또는 가상적으로 나타내는 WPD 디바이스 및 객체들은 WPD 디바이스의 속성들을 주변 디바이스와 연계된 서비스들 및/또는 특징들에 맵핑하기 위하여 생성될 수 있다. 다수의 주변 디바이스들이 중앙 디바이스에서 나타내어질 때, 하나를 초과하는 WPD 디바이스가 이용가능할 수 있다.

Description

블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스{WINDOWS PORTABLE DEVICES INTERFACE FOR BLUETOOTH LOW ENERGY DEVICES}
관련 출원들에 대한 상호 참조/참조를 위한 편입
본 특허 출원은 2010년 12월 6일자로 출원된 미국 특허 가출원 제61/419,911호를 참조하고, 우선권 주장하고, 그 이익을 주장한 것으로, 참조를 위해 그 전체가 본 명세서에 편입된다.
발명의 특정 실시예들은 블루투스 디바이스 통신(Bluetooth device communication)에 관한 것이다. 더욱 구체적으로, 발명의 특정 실시예들은 블루투스 저에너지(BLE : Bluetooth low energy) 디바이스들에 대한 윈도우즈 포터블 디바이스(WPD : windows portable device) 인터페이스에 관한 것이다.
블루투스 저에너지(BLE)는 블루투스 버전 4.0에서 도입된 블루투스 표준에 대한 개량이다. 블루투스 저에너지 무선 기술을 이용하는 디바이스들은 다른 블루투스-가능(Bluetooth-enabled) 제품들의 전력의 일부를 소비할 수 있다. 일부 사례들에서, 블루투스 저에너지 디바이스는 재충전하지 않고 동전형 배터리(coin-cell battery) 상에서 1년을 초과하여 동작할 수 있다. 광범위한 상황들에 걸친 이러한 유형들의 디바이스들의 설치는 이러한 디바이스들이 윈도우즈-기반 머신(windows-based machine)들과 인터페이스하기 위한 필요성을 유발할 수 있다.
기존의 그리고 전통적인 접근법들의 추가적인 한정들 및 단점들은 도면들을 참조하여 본 출원의 나머지에서 기술된 바와 같은 본 발명과 이러한 시스템들의 비교를 통해 당업자에게 명백해질 것이다.
본 발명은 블루투스 저에너지(BLE : Bluetooth low energy) 디바이스들에 대한 윈도우즈 포터블 디바이스(WPD : windows portable device) 인터페이스를 제공하는 것을 목적으로 한다.
발명의 일 양태에 따르면, 중앙 디바이스 상의 하나 이상의 애플리케이션들이 주변 디바이스와 인터페이스할 수 있도록 하기 위하여, 중앙 디바이스 상에서, 윈도우즈 포터블 디바이스(WPD : Windows Portable Device) 드라이버를 실행하는 단계로서, 상기 주변 디바이스는 상기 중앙 디바이스에 통신가능하게 결합되고, 상기 중앙 디바이스를 상기 주변 디바이스와 인터페이스하기 위하여 포괄 속성 프로파일(GATT : Generic Attribute Profile)이 사용되는, 상기 윈도우즈 포터블 디바이스(WPD) 드라이버를 실행하는 단계; 및
상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 정보를 액세스하는 단계를 포함하는 방법이 제공된다.
바람직하게는, 상기 액세스된 정보는 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 포함한다.
바람직하게는, 상기 방법은,
상기 중앙 디바이스에서, 상기 주변 디바이스를 나타내는 WPD 디바이스를 생성하는 단계로서, 상기 WPD는 하나 이상의 WPD 객체들을 포함하는, 상기 WPD 디바이스를 생성하는 단계;
상기 WPD 드라이버를 통해, 상기 WPD 디바이스의 하나 이상의 속성들을 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들에 맵핑하는 단계; 및
하나 이상의 애플리케이션들에 의해, 상기 WPD 디바이스의 상기 하나 이상의 속성들을 액세스하는 단계를 더 포함한다.
바람직하게는, 상기 주변 디바이스는 블루투스 저에너지(BLE : Bluetooth low energy) 디바이스를 포함한다.
바람직하게는, 상기 방법은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 기능들을 제어하는 단계를 더 포함한다.
바람직하게는, 상기 방법은 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 열거하는 단계를 더 포함한다.
바람직하게는, 상기 방법은 상기 주변 디바이스와 연계된 하나 이상의 특징들이 언제 변경되었는지를 상기 중앙 디바이스에 통지하기 위하여, 상기 WPD 드라이버를 통해, 상기 주변 디바이스에 대한 등록을 송신하는 단계를 더 포함한다.
바람직하게는, 상기 방법은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들이 변경되었다는 표시를 상기 주변 디바이스로부터 수신하는 단계를 더 포함한다.
바람직하게는, 상기 방법은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들을 수정하는 단계를 더 포함한다.
바람직하게는, 상기 방법은 상기 중앙 디바이스 내의 블루투스 호스트 스택과, 상기 주변 디바이스 내의 블루투스 호스트 스택 사이에서 통신하는 단계를 더 포함한다.
또 다른 양태에 따르면, 중앙 디바이스 내의 하나 이상의 프로세서들 및/또는 회로들을 포함하는 시스템으로서,
상기 하나 이상의 프로세서들 및/또는 회로들은, 상기 중앙 디바이스 상의 하나 이상의 애플리케이션들이 주변 디바이스와 인터페이스할 수 있도록 하기 위하여 윈도우즈 포터블 디바이스(WPD) 드라이버를 실행하도록 동작가능하고, 상기 주변 디바이스는 상기 중앙 디바이스에 통신가능하게 결합되고, 상기 중앙 디바이스를 상기 주변 디바이스와 인터페이스하기 위하여 포괄 속성 프로파일(GATT)이 사용되고,
상기 하나 이상의 프로세서들 및/또는 회로들은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 정보를 액세스하도록 동작가능한 시스템이 제공된다.
바람직하게는, 상기 액세스된 정보는 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 포함한다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은,
상기 주변 디바이스를 나타내는 WPD 디바이스를 생성하도록 동작가능하고, 상기 WPD는 하나이상의 WPD 객체들을 포함하고;
상기 WPD 드라이버를 통해, 상기 WPD 디바이스의 하나 이상의 속성들을 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들에 맵핑하도록 동작가능하고;
상기 하나 이상의 애플리케이션들에 의해, 상기 WPD 디바이스의 상기 하나 이상의 속성들을 액세스하도록 동작가능하다.
바람직하게는, 두 번째 디바이스는 블루투스 저에너지(BLE) 디바이스를 포함한다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 기능들을 제어하도록 동작가능하다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 열거하도록 동작가능하다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 주변 디바이스와 연계된 하나 이상의 특징들이 언제 변경되었는지를 상기 중앙 디바이스에 통지하기 위하여, 상기 WPD 드라이버를 통해, 상기 주변 디바이스에 대한 등록을 송신하도록 동작가능하다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들이 변경되었다는 표시를 상기 주변 디바이스로부터 수신하도록 동작가능하다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들을 수정하도록 동작가능하다.
바람직하게는, 상기 하나 이상의 프로세서들 및/또는 회로들은 상기 중앙 디바이스 내의 블루투스 호스트 스택과, 상기 주변 디바이스 내의 블루투스 호스트 스택 사이에서 통신하도록 동작가능하다.
본 발명의 예시된 실시예의 세부사항들뿐만 아니라, 본 발명의 다양한 장점들, 양태들 및 신규 특색들은 다음의 설명 및 도면들로부터 더욱 완전하게 이해될 것이다.
본 발명에 따르면, 블루투스 저에너지(BLE : Bluetooth low energy) 디바이스들에 대한 윈도우즈 포터블 디바이스(WPD : windows portable device) 인터페이스를 구현하는 것이 가능하다.
도 1은 발명의 실시예에 따라, 하나 이상의 블루투스 저에너지 디바이스들과 상호작용하기 위하여 윈도우즈 포터블 디바이스 인터페이스를 사용하는 예시적인 윈도우즈-기반 머신을 예시하는 블럭도이다.
도 2a 및 도 2b는 발명의 실시예들에 따라, WPD 인터페이스를 통한 윈도우즈-기반 머신 및 BLE 디바이스 사이의 인터페이스의 예들을 예시하는 각각의 도면들이다.
도 3은 발명의 실시예에 따라, 윈도우즈-기반 머신 및 BLE 디바이스를 인터페이스하기 위한 예시적인 WPD 아키텍처를 예시하는 도면이다.
도 4는 발명의 실시예에 따라, GATT-가능 디바이스들에 대한 WPD 인터페이스와 연계된 동작들의 예들을 예시하는 순서도이다.
도 5는 발명의 실시예에 따라, GATT-가능 디바이스들에 대한 WPD 인터페이스와 연계된 동작들의 또 다른 예들을 예시하는 순서도이다.
발명의 특정 실시예들은 블루투스 저에너지 디바이스들에 대한 윈도우즈 포터블 디바이스 인터페이스를 위한 방법 및 시스템에서 발견될 수 있다. 발명의 다양한 실시예들에 따르면, 중앙 디바이스 상에서 인스톨(install) 및 실행되는 윈도우즈 포터블 디바이스(WPD : Windows Portable Devices) 드라이버(driver)는 중앙 디바이스 상의 하나 이상의 애플리케이션들이 예를 들어, 블루투스 저에너지(BLE) 디바이스와 같은 주변 디바이스와 인터페이스하는 것을 가능하게 할 수 있다. 중앙 디바이스는 예를 들어, 윈도우즈-기반 머신일 수 있다. 주변 디바이스는 중앙 디바이스에 통신가능하게 결합될 수 있고, WPD 드라이버와 인터페이스하기 위하여 포괄 속성 프로파일(GATT : Generic Attribute Profile)을 사용할 수 있다. WPD 드라이버를 통해, 중앙 디바이스는 주변 디바이스와 연계된 정보를 액세스, 송신, 수신 및/또는 수정할 수 있다. 또한, WPD 드라이버를 통해, 중앙 디바이스는 주변 디바이스의 동작 및/또는 기능을 제어할 수 있다. 주변 디바이스와 연계된 정보는 서비스들 및 특징들을 포함할 수 있다. 각각의 특징은 하나 이상의 값들 및/또는 디스크립터(descriptor)들을 가질 수 있다. 주변 디바이스를 논리적으로 또는 가상적으로 나타내는 WPD 디바이스는 WPD 드라이버에 의해 생성될 수 있다. WPD 디바이스는 하나 이상의 WPD 객체(object)들을 포함할 수 있다. WPD 객체 특성들은 주변 디바이스와 연계된 서비스들 및/또는 특징들에 맵핑(mapping)될 수 있다. 주변 디바이스와 연계된 특징들은 하나 이상의 값들 및/또는 하나 이상의 디스크립터들을 포함할 수 있다. 일부 사례들에서는, 다수의 주변 디바이스들이 중앙 디바이스에서 표현될 때, 하나를 초과하는 WPD 디바이스가 이용가능할 수 있다.
도 1은 발명의 실시예에 따라, 하나 이상의 블루투스 저에너지 디바이스들과 상호작용하기 위하여 윈도우즈 포터블 디바이스 인터페이스를 사용하는 예시적인 윈도우즈-기반 머신을 예시하는 블럭도이다. 도 1을 참조하면, 디바이스들(100, 120, 130 및 140)이 도시되어 있다. 디바이스(100)는 윈도우즈 포터블 디바이스들을 지원하기 위한 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있는 윈도우즈-기반 머신이다. 디바이스(100)는 개인용 컴퓨터, 랩톱(laptop), 또는 태블릿 컴퓨터(tablet computer)일 수 있지만, 디바이스(100)는 그렇게 한정될 필요가 없으며, 윈도우즈-기반 동작들을 지원하는 다른 머신들이 사용될 수 있다.
디바이스들(120, 130 및 140)은 블루투스 통신을 위한 블루투스 저에너지의 이용을 지원하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 이와 관련하여, 디바이스들(120, 130 및 140)은 예를 들어, BLE 디바이스들 또는 BLE-가능 디바이스들이라고 지칭될 수 있다. 디바이스(100)는 블루투스 접속들(122, 132 및 142)을 통해 디바이스들(120, 130 및 140)과 각각 통신하도록 동작가능할 수 있다.
디바이스(100)에 의해 지원되는 윈도우즈 포터블 디바이스들은 하나 이상의 외부 디바이스들(즉, 주변 디바이스들)에 대한 액세스를 가능하게 하기 위하여 윈도우즈-기반 머신(즉, 중앙 디바이스)에서 사용될 수 있는 일종의 객체-기반 아키텍처(object-based architecture) 또는 플랫폼을 지칭할 수 있다. 외부 또는 주변 디바이스들은 전자 열쇠(key fob)들, 포터블 의료 디바이스들, 매체 플레이어(media player)들, 디지털 스틸(digital still) 및/또는 비디오 카메라들, 이동 전화들, 또는 윈도우즈-기반 머신에 통신가능하게 결합될 수 있는 다른 유사한 디바이스들을 포함할 수 있지만, 이것으로 한정될 필요는 없다. 도 1에 도시된 디바이스들(120, 130 및 140)은 외부 또는 주변 디바이스들에 대응할 수 있는 반면, 디바이스(100)는 중앙 디바이스에 대응할 수 있다. 윈도우즈 포터블 디바이스들에 의해 제공되는 객체-기반 아키텍처는 윈도우즈-기반 머신 상에서 작동 또는 실행되는 애플리케이션 및 외부 디바이스들 중의 하나 이상 사이의 상호작용을 가능하게 하는 하나 이상의 애플리케이션 프로그래밍 인터페이스(API : Application Programming Interface)들을 포함할 수 있다.
디바이스(100) 상에서 작동 또는 실행되는 하나 이상의 애플리케이션들은 외부 디바이스와 관련하여 다양한 동작들을 수행하기 위하여 윈도우즈 포터블 디바이스들을 사용할 수 있다. 예를 들어, 윈도우즈 포터블 디바이스들은 애플리케이션이 외부 디바이스에 접속하고, 외부 디바이스로부터 정보를 찾고 및/또는 검색하고, 연결되거나 접속되어 있는 외부 디바이스들을 목록으로 만들거나 열거하고, 외부 디바이스의 능력들을 결정하고, 외부 디바이스에 저장되어야 할 정보를 송신 및/또는 생성하고, 외부 디바이스 내의 정보를 수정하고, 외부 디바이스를 제어하고, 및/또는 외부 디바이스의 존재 또는 부재를 검출하는 것을 가능하게 할 수 있다.
또한, 디바이스(100)에서 디바이스들(120, 130 및 140)의 논리적 또는 가상적 대표들에 각각 대응하는 WPD 디바이스들(124, 134 및 144)이 도 1에 도시되어 있다. WPD 디바이스들(124, 134 및 144)은 디바이스들(120, 130 및 140)과 관련하여 동작들을 각각 수행하기 위하여, 디바이스(100) 상에서 실행되는 애플리케이션들에 의해 사용될 수 있다. WPD 디바이스들(124, 134 및 144)은 윈도우즈 포터블 디바이스들에 의해 지원되는 객체-기반 아키텍처와 호환가능하도록 생성될 수 있다. WPD 디바이스들(124, 134 및 144) 각각은 WPD 객체들이라고 지칭될 수 있는 하나 이상의 객체들을 포함할 수 있다. 이 객체들은 특성(property)들, 이벤트(event)들 등을 가질 수 있다. 객체의 예는 저장 객체(storage object)이다.
디바이스들(120, 130 및 140)에 의해 지원되는 블루투스 저에너지 동작은 블루투스 4.0에서 포함되는 사양(specification)을 지칭할 수 있다. 블루투스 저에너지는 저에너지 프로파일들의 개발 및 구현을 단순화하기 위하여 새로운 프로토콜들을 도입한다. 새로운 프로토콜들은 예를 들어, 속성 프로토콜(ATT : Attribute Protocol) 및 포괄 속성 프로파일(GATT : Generic Attribute Profile)을 포함할 수 있다.
동작 시에, 디바이스(120)는 블루투스 접속(122)과 연계된 블루투스 저에너지 프로토콜들을 디바이스(100)와 통신할 수 있다. 디바이스(100) 상에서 실행되는 애플리케이션은 디바이스(100)에 의해 지원되는 윈도우즈 포터블 디바이스 객체-기반 아키텍처를 이용하여 구현되는 인터페이스를 통해 디바이스(120)와 상호작용할 수 있다. 이러한 인터페이스는 블루투스 저에너지 프로토콜들이 윈도우즈 포터블 디바이스들의 객체-기반 아키텍처와 통신하게 하는 드라이버를 포함할 수 있다. 이와 관련하여, 드라이버는 디바이스(100) 및 디바이스(120) 사이의 상호작용을 가능하게 하기 위한 WPD 디바이스(124)를 생성하도록 사용될 수 있다.
이와 유사하게, 디바이스들(130 및 140)은 블루투스 접속들(132 및 142)과 각각 연계된 블루투스 저에너지 프로토콜들을 이용하여 디바이스(100)와 통신할 수 있다. 디바이스(100) 상에서 실행되는 하나 이상의 애플리케이션들은 디바이스(100)에 의해 지원되는 윈도우즈 포터블 디바이스들 객체-기반 아키텍처를 이용하여 구현되는 인터페이스들을 통해 디바이스들(130 및 140)과 상호작용할 수 있다. 그러한 인터페이스들은 블루투스 저에너지 프로토콜들이 윈도우즈 포터블 디바이스들의 객체-기반 아키텍처와 통신하게 하는 드라이버를 포함할 수 있다. 이와 관련하여, 드라이버들은 디바이스(100) 및 디바이스들(130 및 140) 사이의 상호작용을 각각 가능하게 하기 위한 WPD 디바이스들(134 및 144)을 생성하도록 사용될 수 있다.
도 2a 및 도 2b는 발명의 실시예들에 따라, WPD 인터페이스를 통한 윈도우즈-기반 머신 및 BLE 디바이스 사이의 인터페이스의 예들을 예시하는 각각의 도면들이다. 도 2a를 참조하면, 윈도우즈-기반 머신(100) 및 블루투스 저에너지 디바이스(250)가 도시되어 있다. 블루투스 저에너지 디바이스(250)는 도 1에 도시된 디바이스들(120, 130 및 140) 중의 임의의 하나와 실질적으로 유사하거나 동일할 수 있다.
윈도우즈-기반 머신(100)은 메모리 모듈(210), 프로세서 모듈(220), 및 통신 모듈(230)을 포함할 수 있다. 메모리 모듈(210)은 하나 이상의 애플리케이션들의 실행과 연계된 데이터 및/또는 코드를 저장하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 메모리 모듈(210)은 윈도우즈 포터블 디바이스들과 연계된 처리들을 지원하도록 사용되는 데이터 및/또는 코드를 저장하도록 동작가능할 수 있다. 메모리 모듈(210)은 단일 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함할 수 있다. 메모리 디바이스는 예를 들어, 동적 랜덤 액세스 메모리(DRAM : Dynamic Random Access Memory), 동기식 DRAM(SDRAM : Synchronous DRAM), 이중 데이터 레이트(Double Data Rate) SDRAM(DDR SDRAM 또는 DDR2 SDRAM), 또는 FLASH 메모리를 포함하는 집적 회로일 수 있다.
프로세서 모듈(220)은 윈도우즈-기반 오퍼레이팅 시스템(OS : operating system) 및 하나 이상의 애플리케이션들을 작동 또는 실행하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 프로세서 모듈(220)은 윈도우즈 포터블 디바이스들과 연계된 처리들을 지원하도록 동작가능할 수 있다. 프로세서 모듈(220)은 단일 프로세싱 디바이스 또는 다수의 프로세싱 디바이스들을 포함할 수 있다. 프로세싱 디바이스는 예를 들어, 중앙 처리 유닛(CPU : central processing unit) 또는 호스트 프로세서, 기저대역 프로세서, 그래픽 프로세서, 또는 일부 다른 유형의 전용 프로세서를 포함하는 집적 회로일 수 있다. 프로세서 모듈(220)은 통신 모듈(230)의 송신 및/또는 수신 동작들과 연계된 데이터 및/또는 제어 신호들을 처리하도록 동작가능할 수도 있다.
통신 모듈(230)은 하나 이상의 외부 디바이스들과 통신하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 통신 모듈(230)은 외부 디바이스들과의 무선 및/또는 유선 통신을 지원할 수 있다. 무선 통신 동작들에 관하여, 통신 모듈(230)은 무선 주파수(RF : radio frequency) 신호들을 송신 및/또는 수신하도록 동작가능할 수 있는 하나 이상의 무선장치들(도시하지 않음)을 포함할 수 있다. 예를 들어, 통신 모듈(230)은 블루투스 저에너지 프로토콜들을 지원하고 블루투스 저에너지 디바이스(250)와의 통신을 가능하도록 동작가능할 수 있는 블루투스 무선장치(Bluetooth radio)를 포함할 수 있다. 또한, 통신 모듈(230)은 예를 들어, 무선 근거리 통신망(WLAN : Wirelss Local Area Network)들, 개인 영역 통신망(PAN : Personal Area Network)들, 또는 셀룰러 통신망들에서의 통신에 이용되는 무선장치들과 같은 다른 유형들의 무선장치들을 지원할 수 있다.
블루투스 저에너지 디바이스(250)는 메모리 모듈(260), 프로세서 모듈(270), 및 통신 모듈(280)을 포함할 수 있다. 메모리 모듈(260)은 블루투스 저에너지 디바이스(250)의 동작들과 연계된 데이터 및/또는 코드를 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 메모리 모듈(260)은 예를 들어, 블루투스 저에너지와 연계된 처리들을 지원하기 위해 이용되는 데이터 및/또는 코드를 저장하도록 동작가능할 수 있다. 위에서 설명된 메모리 모듈(210)과 마찬가지로, 메모리 모듈(260)은 단일 메모리 디바이스 또는 다수의 메모리 디바이스들을 포함할 수 있다.
프로세서 모듈(270)은 오퍼레이팅 시스템 또는 하나 이상의 애플리케이션들을 작동 또는 실행하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 프로세서 모듈(270)은 예를 들어, 블루투스 저에너지와 연계된 처리들을 지원하도록 동작가능할 수 있다. 위에서 설명된 프로세서 모듈(220)과 유사하게, 프로세서 모듈(270)은 단일 프로세싱 디바이스 또는 다수의 프로세싱 디바이스들을 포함할 수 있다. 프로세서 모듈(270)은 블루투스 기저대역 동작들을 처리하기 위한 기저대역 프로세서를 포함할 수 있다.
통신 모듈(280)은 하나 이상의 추가적인 디바이스들과 통신하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 추가적인 디바이스들은 블루투스-가능(Bluetooth-enabled) 디바이스들일 수 있거나, 예를 들어, WLAN과 같은 상이한 무선 통신 기술을 이용하는 디바이스들일 수 있다. 이와 관련하여, 통신 모듈(280)은 RF 신호들을 송신 및/또는 수신하도록 동작가능한 하나 이상의 무선장치들(도시하지 않음)을 포함할 수 있다. 예를 들어, 통신 모듈(280)은 블루투스 저에너지 프로토콜들을 지원하고 윈도우즈-기반 머신(100)과의 통신을 가능하도록 동작가능할 수 있는 블루투스 무선장치를 포함할 수 있다.
블루투스 저에너지 디바이스(250)는 다양한 블루투스-관련 프로토콜들, 프로파일들, 및/또는 처리들을 지원하도록 동작가능할 수 있다. 블루투스 프로토콜 스택은 타이밍이 중요한 무선장치 인터페이스를 처리하도록 동작가능한 블루투스 제어기 스택과, 고레벨(high level) 데이터를 처리하도록 동작가능한 블루투스 호스트 스택에 의해 구현될 수 있다. 블루투스 제어기 스택은 블루투스 무선장치를 포함할 수 있는 통신 모듈(280)과, 예를 들어, 마이크로프로세서와 같은 프로세싱 디바이스를 포함할 수 있는 프로세서 모듈(270)을 이용하여 구현될 수 있다. 블루투스 호스트 스택은 프로세서 모듈(270) 상에서 작동되는 OS의 일부로서, 또는 OS 위의 패키지(package)의 인스턴스 생성(instantiation)으로서 구현될 수 있다. 일부 사례들에서, 블루투스 제어기 스택 및 블루투스 호스트 스택은 프로세서 모듈(270) 내의 동일한 프로세싱 디바이스 상에서 작동 또는 실행될 수 있다.
동작 시에, 블루투스 저에너지 디바이스(250)는 블루투스 접속(290)에서 블루투스 저에너지 프로토콜들을 이용함으로써 윈도우즈-기반 머신(100)과 통신할 수 있다. 윈도우즈-기반 머신(100)의 프로세서 모듈(220) 상에서 실행되는 애플리케이션은 윈도우즈-기반 머신(100)에 의해 지원되는 윈도우즈 포터블 디바이스들 객체-기반 아키텍처를 이용하여 구현되는 인터페이스를 통해 블루투스 저에너지 디바이스(250)와 상호작용할 수 있다. 이러한 인터페이스는 블루투스 저에너지 프로토콜들이 윈도우즈 포터블 디바이스들의 객체-기반 아키텍처와 통신하게 하는 드라이버를 포함할 수 있다. 이와 관련하여, 드라이버는 윈도우즈-기반 머신(100) 및 블루투스 저에너지 디바이스(250) 사이의 상호작용을 가능하게 하기 위하여, 도 2b에 도시된 바와 같이 WPD 디바이스(240)를 생성하도록 사용될 수 있다. WPD 디바이스(240)는 윈도우즈-기반 머신(100) 내의 윈도우즈 포터블 디바이스 객체-기반 아키텍처에 의해 지원되는 블루투스 저에너지 디바이스(250)의 논리적 또는 가상적 표현이다.
도 3은 발명의 실시예에 따라, 윈도우즈-기반 머신 및 BLE 디바이스를 인터페이스하기 위한 예시적인 WPD 아키텍처를 예시하는 도면이다. 도 3을 참조하면, 윈도우즈-기반 머신(100) 및 블루투스 저에너지 디바이스(250)가 도시되어 있다. 윈도우즈-기반 머신(100)에 관하여, 애플리케이션(300) 및 윈도우즈 드라이버 파운데이션(WDF : Windows Driver Foundation) 호스트 처리(320)가 도시되어 있고, 이들 모두는 윈도우즈-기반 머신(100)에 의해 지원되는 WPD 아키텍처의 일부일 수 있다. WDF 호스트 처리(320)의 예는 Wudfhost.exe 처리이다. 애플리케이션(300)은 윈도우즈 포터블 디바이스들과의 이용을 위한 하나 이상의 API들(310)을 포함할 수 있다. API들(310)은 예를 들어, WPD API들이라고 지칭될 수 있다. WDF 호스트 처리(320)는 윈도우즈 포터블 디바이스들과의 이용을 위한 드라이버(330)를 포함할 수 있다. 드라이버(330)는 예를 들어, WPD 드라이버라고 지칭될 수 있다.
드라이버(330)는 블루투스 저에너지 디바이스(250)와 연계된 WPD 디바이스를 생성하거나 인스턴스 생성하도록 사용될 수 있다. 그 다음으로, WPD 디바이스는 블루투스 저에너지 디바이스(250)와 상호작용하기 위하여 애플리케이션(300)에 의해 사용될 수 있다. WPD 디바이스는 블루투스 저에너지 디바이스(250)와 연계된 속성들을 포함할 수 있는 블루투스 저에너지 디바이스(250)의 논리적 또는 가상적 표현에 대응할 수 있다. WPD 디바이스는 예를 들어, 블루투스 저에너지 디바이스(250)의 다양한 속성들을 나타내기 위하여 하나 이상의 객체들을 포함할 수 있다.
또한, 윈도우즈-기반 머신(100) 상에서 작동 또는 실행될 수 있는 블루투스 호스트 스택(340)이 도 3에 도시되어 있다. 블루투스 호스트 스택(340)은 GATT(350), ATT(360), 저에너지 보안 관리자 프로토콜(SMP : Security Manager Protocol)(370), 및 논리적 링크 제어 및 적응 프로토콜(L2CAP : Logical Link Control and Adaptation Protocol)(380)을 포함하지만 이것으로 한정되지는 않는 다양한 프로토콜들 및 프로파일들을 포함할 수 있다. ATT(360)는 와이어 프로토콜(wire protocol)로서 동작가능할 수 있는 반면, GATT(350)는 서비스들의 구성 시에 ATT가 어떻게 이용되는지를 설명하는 프로토콜로서 동작가능할 수 있다. 예를 들어, GATT(350)는 ATT 속성들이 어떻게 서비스들로 함께 그룹화되는지를 규정하도록 동작가능할 수 있고, 서비스들과 연계된 특징들을 설명하도록 동작가능할 수 있다. 따라서, GATT(350) 및 ATT(360)는 디바이스의 상태와 서비스들을 설명하고, 특징들이 서로 어떻게 관련되며 이들이 어떻게 이용되는지를 설명하기 위하여, 특징들을 사용할 수 있다. SMP(370)는 페어링(pairing)을 위해 동작가능할 수 있고, 특정 키 분포(key distribution)를 전송할 수 있다. L2CAP(380)은 상위 계층 프로토콜들 사이에서 데이터를 다중화(multiplex)하고, 패키지(package)들을 분할(segment) 및 재조립(reassemble)하고, 멀티캐스트 데이터 송신을 관리하도록 동작가능할 수 있다. 일부 사례들에서, SMP(370)는 L2CAP(380)에 구속될 수 있다.
윈도우즈-기반 머신(100)에 관하여, 블루투스 제어기(315) 및 블루투스 무선장치(325)가 도시되어 있다. 블루투스 제어기(315)는 블루투스 무선장치 인터페이스를 제어하도록 동작가능한 적당한 로직, 회로, 코드, 및/또는 인터페이스들을 포함할 수 있다. 블루투스 제어기(315)는 도 2b에 도시된 프로세서 모듈(220) 및/또는 통신 모듈(230)의 일부일 수 있다. 블루투스 제어기(315)는 예를 들어, 블루투스 제어기 스택을 구현하도록 사용될 수 있다. 블루투스 무선장치(325)는 또 다른 디바이스 상의 블루투스 무선장치와 무선으로 통신하도록 동작가능할 수 있는 적당한 로직, 회로, 코드, 및/또는 인터페이스를 포함할 수 있다.
블루투스 저에너지 디바이스(250)에 관하여, 애플리케이션(305) 및 블루투스 호스트 스택(345)이 도시되어 있다. 블루투스 호스트 스택(345)은 GATT(355), ATT(365), SMP(375), 및 L2CAP(385)을 포함하지만 이것으로 한정되지는 않는 다양한 프로토콜들 및 프로파일들을 포함할 수 있다. 블루투스 호스트 스택(345)과 관련하여 도시된 프로토콜들은 블루투스 호스트 스택(340)과 관련하여 도시된 것들과 실질적으로 유사할 수 있다. 또한, 블루투스 저에너지 디바이스(250)에 관하여, 블루투스 제어기(315) 및 블루투스 무선장치(325)와 각각 실질적으로 유사한 블루투스 제어기(317) 및 블루투스 무선장치(327)가 도시되어 있다.
동작 시에, 애플리케이션(300)은 디바이스 핸들(device handle)들을 개방하고 입력/출력(I/O) 제어 코드들을 송신함으로써 API(310)를 통해 드라이버(330)와 통신할 수 있다. 도시되지 않았지만, API(310) 및 드라이버(330)는 명령(command)들 및/또는 파라미터(parameter)들을 버퍼들 내에 압축(pack) 및 압축해제(unpack)하기 위하여 직렬화기(serializer)들을 사용할 수 있다. 드라이버(330)는 블루투스 저에너지 디바이스(250)와 상호작용하기 위하여 애플리케이션(300)에 의해 이용되는 WPD 디바이스를 생성하도록 사용될 수 있다. 드라이버(330)는 저에너지 프로토콜들 GATT(350) 및 ATT(360)에 기초하여 블루투스 호스트 스택(340)과 통신할 수 있다. 블루투스 저에너지 디바이스(250)와 연계된 서비스들 및/또는 특징들은 드라이버(330)에 통신될 수 있고, 그 다음으로, 정보를 윈도우즈 포터블 디바이스들에 의해 규정되는 바와 같은 적절한 객체 속성들로 맵핑할 수 있다. 블루투스 저에너지 디바이스(250)와 연계된 특징들은 예를 들어, 하나 이상의 값들 및/또는 하나 이상의 디스크립터들을 포함할 수 있다.
블루투스 저에너지 디바이스(250) 내의 애플리케이션(305)은 디바이스에 의해 제공되는 특정 기능과 연계될 수 있다. 애플리케이션(305)은 블루투스 저에너지 디바이스(250)의 동작, 특색, 또는 능력에 관련된 정보와 같은 정보를 블루투스 저에너지 디바이스(250)로부터 취득하도록 사용될 수 있다. 이러한 정보는 정보가 블루투스 호스트 스택(345)으로부터 블루투스 호스트 스택(340)으로 전달되게 함으로써, 블루투스 접속(290)을 통해 블루투스 저에너지 디바이스(250)로부터 윈도우즈-기반 머신(100)으로 통신될 수 있다. 상기 정보가 블루투스 호스트 스택(340)으로부터 WDF 호스트 처리(320)에 의해 수신될 때, 상기 정보는 WPD 드라이버(330)에 의해, 블루투스 저에너지 디바이스(250)를 나타내는 WPD 디바이스의 속성들로 맵핑될 수 있다. 따라서, 애플리케이션(300)은 WPD 디바이스로부터 블루투스 저에너지 디바이스(250)와 연계된 정보를 액세스할 수 있다.
이와 유사하게, 애플리케이션(300)에 의해 제공되는 제어들 또는 명령들은 윈도우즈-기반 머신(100)에서 이용가능한 WPD 디바이스를 통해 블루투스 저에너지 디바이스(250)로 진행할 수 있다. 예를 들어, 애플리케이션(300)은 특징이 변경되었을 때 애플리케이션(300)에 통지하기 위하여 블루투스 저에너지 디바이스(250)와 연계된 특징의 특정한 디스크립터에 대한 등록을 전달할 수 있다. 일단, 등록이 디스크립터에 대해 행해졌다면, 그 디스크립터와 연계된 특징들이 변경되는 경우, 블루투스 저에너지 디바이스(250)로부터 애플리케이션(300)으로 통지가 제공될 수 있다.
도 3과 관련하여 설명된 동작의 또 다른 예는 블루투스 저에너지 디바이스(250)가 배터리 서비스 및 배터리 레벨 특징을 갖는 근접 포브(proximity fob)일 때이다. 이 예에서, 드라이버(330)는 애플리케이션(300)이 블루투스 저에너지 디바이스(250)의 배터리 레벨을 판독할 수 있도록 하는 방법을 나타낼 수 있다. 예를 들어, 드라이버(330)를 통해, 애플리케이션(300)은 블루투스 저에너지 디바이스(250)를 나타내는 WPD 디바이스 내의 속성들로부터 배터리 레벨의 값을 판독할 수 있다. 속성 정보는 블루투스 저에너지 디바이스(250) 내의 애플리케이션(305)에 의해 생성된 정보로부터 취득되었을 수 있다. 따라서, 애플리케이션(300)이 드라이버(330)에게 배터리 레벨을 판독할 것을 요청하면, 드라이버(330)는 근접 포브와 대화하기 위하여 ATT 및 GATT를 이용할 수 있고, 배터리 레벨의 현재의 값을 결정할 수 있다. 그 정보를 WPD 디바이스 내의 속성으로서 제공할 수 있다. 그 다음으로, 애플리케이션(300)은 WPD 디바이스로부터의 정보를 액세스할 수 있다. 이 정보는 블루투스 저에너지 디바이스(250)의 잔여 배터리 수명 및 행해야 할 대응하는 작업을 결정하기에 유용할 수 있다.
도 3과 관련하여 설명된 동작의 또 다른 예들에서는, 블루투스 저에너지 디바이스(250)가 온도 서비스 및 온도값 특징을 갖는 온도계(thermometer)일 수 있다. 이 예에서, 드라이버(330)는 애플리케이션(300)이 블루투스 저에너지 디바이스(250)를 나타내는 WPD 디바이스로부터 블루투스 저에너지 디바이스(250)의 온도값을 판독할 수 있도록 하는 방법을 나타낼 수 있다. 따라서, 애플리케이션(300)이 드라이버(330)에게 현재의 온도 레벨을 판독할 것을 요청할 때, 드라이버(330)는 온도계와 대화하고, 온도 레벨의 현재의 값을 결정하고, 그 정보를 WPD 디바이스 내의 속성으로서 제공하기 위하여, ATT 및 GATT 프로토콜들을 이용할 수 있다. 그 다음으로, 애플리케이션(300)은 WPD 디바이스로부터의 정보를 액세스할 수 있다.
다른 예들은, 키 포브가 비프(beep) 음을 발생하도록 하기 위하여, 애플리케이션(300) 및 드라이버(330)를 이용하여 값을 키 포브의 경보 특징(alert characteristic)에 기록하는 것과, 중량의 값을 표시하기 위하여, 애플리케이션(300) 및 드라이버(330)를 이용하여 중량 스케일로부터 중량값 특징을 판독하는 것을 포함한다.
상기 설명된 예들은 블루투스 저에너지 디바이스들과 전형적으로 관련되지만, 발명은 그렇게 한정될 필요가 없다. 윈도우즈 포터블 디바이스들을 사용하는 디바이스들과 인터페이스하기 위하여 GATT 또는 다른 유사한 프로토콜이나 프로파일의 이용을 가능하게 하는 디바이스들과 같은 다른 디바이스들이 사용될 수도 있다. 이 디바이스들은 GATT-가능 디바이스들이라고 지칭될 수 있고, 예를 들어, 블루투스 저에너지 디바이스들을 포함할 수 있다.
또한, 도 3에 대한 상기 설명된 예들은 윈도우즈-기반 머신(100) 내의 단일 블루투스 저에너지 디바이스(250) 및 단일 애플리케이션(300)과 관련되지만, 발명은 그렇게 한정될 필요가 없다. 예를 들어, 다수의 주변 디바이스들은 윈도우즈-기반 머신(100) 내의 다수의 WPD 디바이스들로 귀착될 수 있다. 윈도우즈-기반 머신(100) 내의 하나 이상의 애플리케이션들은 WPD 디바이스들 중의 하나 이상을 액세스하기 위하여 사용될 수 있다.
도 4는 발명의 실시예에 따라, GATT-가능 디바이스들에 대한 WPD 인터페이스와 연계된 동작들의 예들을 예시하는 순서도이다. 도 4를 참조하면, 순서도(400)가 도시되어 있고, 단계(410)에서는, 윈도우즈-기반 머신 및 GATT-가능 디바이스가 페어링될 수 있다. 윈도우즈-기반 머신은 예를 들어, 상기 설명된 윈도우즈-기반 머신(100)일 수 있다. GATT-가능 디바이스는 디바이스들(120, 130, 140)과, 예를 들어, 상기 설명된 블루투스 저에너지 디바이스(250) 중의 하나일 수 있다. 단계(420)에서, 윈도우즈-기반 머신 상의 WPD 드라이버는 GATT-가능 디바이스의 서비스들, 특징들 및 디스크립터들을 열거하기 위하여 GATT 탐색 절차를 실행할 수 있다. 단계(430)에서, WPD 드라이버는 GATT-가능 디바이스와 연계된 서비스들 및/또는 특징들을 나타내는 속성들을 갖는 윈도우즈-기반 머신 상의 WPD 디바이스를 생성할 수 있다. WPD 디바이스는 하나 이상의 객체들을 포함할 수 있고, 이들 객체들의 속성들은 GATT-가능 디바이스와 연계된 서비스들 및/또는 특징들에 맵핑된다. 단계(440)에서, 윈도우즈-기반 머신 상에서 작동되는 애플리케이션은 WPD 드라이버를 통해 GATT-가능 디바이스의 정보 및/또는 동작들을 액세스할 수 있다. 이러한 정보는 WPD 드라이버에 의해 애플리케이션이 액세스하기 위한 WPD 디바이스에 제공될 수 있다.
도 5는 발명의 실시예에 따라, GATT-가능 디바이스들에 대한 WPD 인터페이스와 연계된 동작들의 또 다른 예를 예시하는 순서도이다. 도 5를 참조하면, 순서도(500)가 도시되어 있고, 단계(510)에서는, 상기 설명된 윈도우즈-기반 머신(100)과 같은 윈도우즈-기반 머신 내에 하나를 초과하는 WPD 디바이스가 생성될 수 있다. WPD 디바이스들 각각은 WPD 디바이스로 나타내는 GATT-가능 디바이스의 유형과 연계된 WPD 드라이버에 의해 생성될 수 있다.
단계(520)에서, 예를 들어, 상기 설명된 애플리케이션(300)과 같은 윈도우즈-기반 머신 내의 하나 이상의 애플리케이션들은 WPD 디바이스들 및 WPD 드라이버들을 통해 GATT-가능 디바이스들의 정보 및/또는 동작들을 액세스할 수 있다. 예를 들어, 애플리케이션은 하나를 초과하는 블루투스 저에너지 디바이스 내의 배터리 레벨을 관리하도록 사용될 수 있다. 이러한 애플리케이션은 이 디바이스들 각각에서 현재의 배터리 레벨을 결정하기 위하여 블루투스 저에너지 디바이스들을 나타내는 다양한 WPD 디바이스들로부터 속성 정보를 액세스할 수 있다.
발명의 실시예에 따르면, 예를 들어, 윈도우즈-기반 머신(100)과 같은 중앙 디바이스는 중앙 디바이스 상의 하나 이상의 애플리케이션들이 주변 디바이스와 인터페이스할 수 있도록 하기 위하여 WPD 드라이버를 실행할 수 있다. 주변 디바이스는 디바이스들(120, 130 및 140)과, 예를 들어, 블루투스 저에너지 디바이스(250) 중의 하나일 수 있다. WPD 드라이버는 도 3에 관하여 상기 설명된 드라이버(330)와 실질적으로 동일하거나 유사할 수 있다. 또한, 주변 디바이스는 중앙 디바이스에 통신가능하게 결합될 수 있고, WPD 드라이버와 인터페이스하기 위하여 GATT를 사용할 수 있다. 일단, WPD 드라이버가 실행중이면, 주변 디바이스와 연계된 정보가 WPD 드라이버를 통해 액세스될 수 있다. 액세스된 정보는 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 포함할 수 있다. 특징들은 예를 들어, 하나 이상의 값들 및/또는 하나 이상의 디스크립터들을 포함할 수 있다.
주변 디바이스를 나타내는 WPD 디바이스는 중앙 디바이스에서 생성될 수 있다. WPD 디바이스는 WPD 객체들이라고 지칭될 수 있는 하나 이상의 객체들을 포함할 수 있다. 중앙 디바이스는 WPD 드라이버를 통해, WPD 객체들의 특성들(예를 들어, 속성들)을 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들에 맵핑할 수 있다. 이러한 맵핑에 의해, 애플리케이션은 주변 디바이스와 상호작용하기 위하여 WPD 디바이스를 액세스할 수 있다.
중앙 디바이스는 WPD 드라이버를 통해, 주변 디바이스의 하나 이상의 기능들을 제어하도록 동작가능할 수 있다. 중앙 디바이스는 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 열거하도록 동작가능할 수 있다. 중앙 디바이스는 주변 디바이스와 연계된 하나 이상의 특징들이 언제 변경되었는지를 중앙 디바이스에 통지하기 위하여, WPD 드라이버를 통해, 주변 디바이스에 대한 등록을 송신하도록 동작가능할 수 있다. 중앙 디바이스는 WPD 드라이버를 통해, 주변 디바이스와 연계된 하나 이상의 특징들이 변경되었다는 표시를 주변 디바이스로부터 수신하도록 동작가능할 수도 있다. 중앙 디바이스는 WPD 드라이버를 통해, 주변 디바이스와 연계된 하나 이상의 특징들을 수정하도록 동작가능할 수 있다. 중앙 디바이스 및 주변 디바이스 사이의 통신은 중앙 디바이스 내의 블루투스 호스트 스택과, 주변 디바이스 내의 블루투스 호스트 스택을 통해 발생할 수 있으며, 이들 모두는 ATT 및 GATT를 사용한다.
발명의 또 다른 실시예는, 머신 및/또는 컴퓨터에 의해 실행가능한 적어도 하나의 코드 부분을 갖는 머신 코드 및/또는 컴퓨터 프로그램을 저장하여, 머신 및/또는 컴퓨터가 블루투스 저에너지 디바이스들에 대한 WPD 인터페이스를 위하여 상기 설명된 바와 같은 단계들을 수행하도록 하는 비일시적인(non-transitory) 머신 및/또는 컴퓨터 판독가능 저장장치 및/또는 매체를 제공할 수 있다.
따라서, 본 발명은 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어의 조합으로 실현될 수 있다. 본 발명은 적어도 하나의 컴퓨터 시스템 내의 중앙처리 방식, 또는 몇몇 상호접속된 컴퓨터 시스템들에 걸쳐 상이한 구성요소들이 분포될 수 있는 분산처리 방식으로 실현될 수 있다. 본 명세서에서 설명된 방법들을 수행하기 위하여 구성된 임의의 종류의 컴퓨터 시스템 또는 다른 장치가 적합하다. 하드웨어 및 소프트웨어의 전형적인 조합은, 로딩 및 실행될 때, 본 명세서에서 설명된 방법들을 수행하도록 컴퓨터 시스템을 제어하는 컴퓨터 프로그램을 갖는 범용 컴퓨터 시스템일 수 있다.
본 발명은, 본 명세서에서 설명된 방법들의 구현을 가능하게 모든 특색들을 포함하는 컴퓨터 프로그램 제품으로서, 컴퓨터 시스템에서 로딩될 때, 이 방법들을 수행할 수 있는 컴퓨터 프로그램 제품 내에 내장될 수도 있다. 본 문맥에서의 컴퓨터 프로그램은, a) 다른 언어, 코드, 또는 표기로의 변환; b) 다른 자료 형태의 재생 중의 어느 하나 또는 둘 모두의 직후 또는 그 이후에, 정보 처리 기능을 갖는 시스템이 특정 기능을 수행하도록 의도된 명령들의 집합에 대한 임의의 언어, 코드, 또는 표기에 의한 임의의 표현을 의미한다.
본 발명은 특정 실시예들과 관련하여 설명되었지만, 본 발명의 범위로부터 벗어나지 않으면서 다양한 변경들이 행해질 수 있고 등가물들이 대체될 수 있다는 것을 당업자들이 이해할 것이다. 또한, 발명의 범위로부터 벗어나지 않으면서 본 발명의 교시 내용들에 대한 특정한 상황 또는 자료를 채택하기 위하여 여러 변형들이 행해질 수 있다. 그러므로, 본 발명은 개시된 특정 실시예에 한정되는 것이 아니라, 본 발명은 첨부된 청구범위 내에 속하는 모든 실시예들을 포함하도록 의도된 것이다.

Claims (15)

  1. 블루투스를 이용하여 통신하는 방법으로서,
    중앙 디바이스 상의 하나 이상의 애플리케이션들이 주변 디바이스와 인터페이스할 수 있도록 하기 위하여, 상기 중앙 디바이스 상에서, 윈도우즈 포터블 디바이스(WPD : Windows Portable Device) 드라이버를 실행하는 단계;
    상기 주변 디바이스를 나타내는 WPD 디바이스를 생성하는 단계로서, 상기 WPD는 하나 이상의 WPD 객체들을 포함하는, 상기 WPD 디바이스를 생성하는 단계;
    상기 중앙 디바이스의 블루투스 호스트 스택에서, 상기 주변 디바이스의 블루투스 호스트 스택으로부터 상기 주변 디바이스와 연계된 정보를 수신하는 단계; 및
    상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 정보를 상기 하나 이상의 WPD 객체에 맵핑하는 단계를 포함하고,
    상기 주변 디바이스는 상기 중앙 디바이스에 통신가능하게 연결되고, 상기 중앙 디바이스는 포괄 속성 프로파일(GATT : Generic Attribute Profile)을 사용하여 상기 주변 디바이스와 인터페이스하는, 방법.
  2. 청구항 1에 있어서,
    상기 주변 디바이스와 연계된 정보는 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및 하나 이상의 특징들 중 적어도 하나를 포함하는, 방법.
  3. 청구항 1에 있어서,
    하나 이상의 애플리케이션들에 의해, 상기 WPD 디바이스의 상기 하나 이상의 객체들에 액세스하는 단계를 더 포함하는, 방법.
  4. 청구항 1에 있어서,
    상기 주변 디바이스는 블루투스 저에너지(BLE : Bluetooth low energy) 디바이스를 포함하는, 방법.
  5. 청구항 1에 있어서,
    상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 기능들을 제어하는 단계를 더 포함하는, 방법.
  6. 청구항 1에 있어서,
    상기 주변 디바이스와 연계된 하나 이상의 서비스들 및/또는 하나 이상의 특징들을 열거하는 단계를 더 포함하는, 방법.
  7. 청구항 1에 있어서,
    상기 주변 디바이스와 연계된 하나 이상의 특징들이 변경되었을 때 상기 중앙 디바이스에게 통지하기 위하여, 상기 WPD 드라이버를 통해, 상기 주변 디바이스에게 등록을 송신하는 단계를 더 포함하는, 방법.
  8. 청구항 1에 있어서,
    상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들이 변경되었다는 표시를 상기 주변 디바이스로부터 수신하는 단계를 더 포함하는, 방법.
  9. 청구항 1에 있어서,
    상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 특징들을 수정하는 단계를 더 포함하는, 방법.
  10. 삭제
  11. 중앙 디바이스 내의 하나 이상의 프로세서들 및 회로들 중 적어도 하나를 포함하는 시스템으로서,
    상기 하나 이상의 프로세서들 및 회로들 중 적어도 하나는, 상기 중앙 디바이스 상의 하나 이상의 애플리케이션들이 주변 디바이스와 인터페이스할 수 있도록 하기 위하여 윈도우즈 포터블 디바이스(WPD : Windows Portable Device) 드라이버를 실행하고;
    상기 주변 디바이스를 나타내는 WPD 디바이스를 생성하고 - 상기 WPD는 하나 이상의 WPD 객체들을 포함함 -;
    상기 중앙 디바이스의 블루투스 호스트 스택에서, 상기 주변 디바이스의 블루투스 호스트 스택으로부터 상기 주변 디바이스와 연계된 정보를 수신하고;
    상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 정보를 상기 하나 이상의 WPD 객체에 맵핑하도록 동작가능하고,
    상기 주변 디바이스는 상기 중앙 디바이스에 통신가능하게 연결되고, 상기 중앙 디바이스는 포괄 속성 프로파일(GATT)을 사용하여 상기 주변 디바이스와 인터페이스하는, 시스템.
  12. 청구항 11에 있어서,
    상기 주변 디바이스와 연계된 정보는 상기 주변 디바이스와 연계된 하나 이상의 서비스들 및 하나 이상의 특징들 중 적어도 하나를 포함하는, 시스템.
  13. 청구항 11에 있어서,
    상기 하나 이상의 프로세서들 및 회로들 중 적어도 하나는,
    상기 하나 이상의 애플리케이션들에 의해, 상기 WPD 디바이스의 상기 하나 이상의 객체들에 액세스하도록 더 동작가능한, 시스템.
  14. 청구항 11에 있어서,
    두 번째 디바이스는 블루투스 저에너지(BLE) 디바이스를 포함하는, 시스템.
  15. 청구항 11에 있어서,
    상기 하나 이상의 프로세서들 및 회로들 중 적어도 하나는 상기 WPD 드라이버를 통해, 상기 주변 디바이스와 연계된 하나 이상의 기능들을 제어하도록 더 동작가능한, 시스템.
KR1020110129778A 2010-12-06 2011-12-06 블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스 KR101355058B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US41991110P 2010-12-06 2010-12-06
US61/419,911 2010-12-06
US13/173,170 2011-06-30
US13/173,170 US8620379B2 (en) 2010-12-06 2011-06-30 Windows portable devices interface for Bluetooth low energy devices

Publications (2)

Publication Number Publication Date
KR20120062639A KR20120062639A (ko) 2012-06-14
KR101355058B1 true KR101355058B1 (ko) 2014-01-24

Family

ID=45350587

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110129778A KR101355058B1 (ko) 2010-12-06 2011-12-06 블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스

Country Status (6)

Country Link
US (1) US8620379B2 (ko)
EP (1) EP2461247A1 (ko)
KR (1) KR101355058B1 (ko)
CN (1) CN102545968B (ko)
HK (1) HK1167948A1 (ko)
TW (1) TWI546670B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015122576A1 (ko) * 2014-02-12 2015-08-20 엘지전자(주) 무선 통신 시스템에서 블루투스 저전력 에너지를 이용하여 객체 전송 서비스를 수행하기 위한 방법 및 장치
WO2017018604A1 (ko) * 2015-07-26 2017-02-02 엘지전자(주) 블루투스 le(low energy) 기술을 이용하여 대체 통신 수단을 연결하기 위한 방법 및 장치

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI394506B (zh) * 2008-10-13 2013-04-21 Unimicron Technology Corp 多層立體線路的結構及其製作方法
US9152527B2 (en) * 2012-07-09 2015-10-06 Qualcomm Incorporated Method and apparatus for identifying wireless peripherals and their states at a docking host for wireless docking
US9326239B2 (en) 2012-09-28 2016-04-26 Broadcom Corporation Managing connectivity between wireless devices
CN102916969B (zh) * 2012-10-29 2015-07-08 广州碧德电子科技有限公司 一种无间断的数据通讯设备及通讯方法
KR102120861B1 (ko) * 2012-12-03 2020-06-09 삼성전자주식회사 휴대 단말 및 휴대 단말의 제어 방법
US9357336B2 (en) * 2012-12-03 2016-05-31 Samsung Electronics Co., Ltd. Information providing method and mobile terminal therefor
US9549323B2 (en) * 2012-12-03 2017-01-17 Samsung Electronics Co., Ltd. Method and mobile terminal for controlling screen lock
US9363010B2 (en) * 2012-12-03 2016-06-07 Samsung Electronics Co., Ltd. Mobile terminal and method of controlling function of the mobile terminal
KR102099913B1 (ko) * 2012-12-28 2020-04-10 삼성전자주식회사 애플리케이션 실행 방법 및 시스템
KR102097987B1 (ko) * 2013-01-31 2020-04-07 삼성전자주식회사 휴대 단말기에서 블루투스의 데이터를 처리하는 장치 및 방법
CN103297334A (zh) * 2013-06-08 2013-09-11 吉首大学 蓝牙-wifi网关
US20150026360A1 (en) * 2013-07-22 2015-01-22 GM Global Technology Operations LLC Method and system for supporting wireless communications
US9614815B2 (en) 2013-12-30 2017-04-04 Vasco Data Security, Inc. Authentication apparatus with a bluetooth interface
US10070292B2 (en) * 2014-03-25 2018-09-04 Emmoco, Inc. Providing multiple virtual bluetooth low energy devices
US9462469B2 (en) * 2014-04-21 2016-10-04 Arm Limited Systems and methods for short range wireless data transfer
US9654906B2 (en) 2014-06-12 2017-05-16 Samsung Electronics Co., Ltd Method for processing data based on bluetooth protocol and electronic device thereof
KR102166381B1 (ko) * 2014-06-12 2020-10-16 삼성전자주식회사 블루투스 프로토콜에 기반한 데이터 처리 방법 및 그 전자장치
US9326093B2 (en) * 2014-06-13 2016-04-26 Google Inc. Virtual bluetooth controller interfaces
JP6265873B2 (ja) 2014-09-24 2018-01-24 キヤノン株式会社 モバイル端末とその制御方法、及びプログラム
US9641400B2 (en) 2014-11-21 2017-05-02 Afero, Inc. Internet of things device for registering user selections
US20160180100A1 (en) 2014-12-18 2016-06-23 Joe Britt System and method for securely connecting network devices using optical labels
US9832173B2 (en) 2014-12-18 2017-11-28 Afero, Inc. System and method for securely connecting network devices
US10291595B2 (en) 2014-12-18 2019-05-14 Afero, Inc. System and method for securely connecting network devices
WO2016108646A1 (ko) * 2014-12-30 2016-07-07 엘지전자(주) 블루투스 le 기술을 이용하여 디바이스를 제어하기 위한 방법 및 장치
US10045150B2 (en) 2015-03-30 2018-08-07 Afero, Inc. System and method for accurately sensing user location in an IoT system
US9704318B2 (en) 2015-03-30 2017-07-11 Afero, Inc. System and method for accurately sensing user location in an IoT system
US20170017290A1 (en) 2015-05-13 2017-01-19 Shelf Bucks, Inc. Systems and methods for energy conservation in pop displays with wireless beacons
US9338638B1 (en) 2015-05-26 2016-05-10 Nokia Technologies Oy Method, apparatus, and computer program product for wireless device and service discovery
US9717012B2 (en) 2015-06-01 2017-07-25 Afero, Inc. Internet of things (IOT) automotive device, system, and method
US9729528B2 (en) 2015-07-03 2017-08-08 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IOT) system
US9699814B2 (en) * 2015-07-03 2017-07-04 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IoT) system
US10015766B2 (en) 2015-07-14 2018-07-03 Afero, Inc. Apparatus and method for securely tracking event attendees using IOT devices
CN105188023B (zh) * 2015-10-15 2019-07-26 飞天诚信科技股份有限公司 一种蓝牙通讯方法和通讯装置
US9793937B2 (en) 2015-10-30 2017-10-17 Afero, Inc. Apparatus and method for filtering wireless signals
US10178530B2 (en) 2015-12-14 2019-01-08 Afero, Inc. System and method for performing asset and crowd tracking in an IoT system
US9906893B2 (en) * 2016-06-16 2018-02-27 I/O Interconnect, Ltd. Method for making a host personal computer act as an accessory in bluetooth piconet
US10165612B2 (en) * 2016-06-16 2018-12-25 I/O Interconnected, Ltd. Wireless connecting method, computer, and non-transitory computer-readable storage medium
US20180109338A1 (en) 2016-10-05 2018-04-19 Shelfbucks, Inc. Analyzing movement of wireless beacons associated with retail displays
US10223178B2 (en) * 2017-01-23 2019-03-05 Wyse Technology L.L.C. Enabling WPD devices to be managed at the capability level
US20180374069A1 (en) 2017-05-19 2018-12-27 Shelfbucks, Inc. Pressure-sensitive device for product tracking on product shelves
WO2019035845A1 (en) 2017-08-18 2019-02-21 Hewlett-Packard Development Company, L.P. ASSOCIATION BETWEEN DEVICES
US10524110B1 (en) * 2018-09-19 2019-12-31 Roche Diabetes Care, Inc. Affirmative pairing systems and methods for devices
JP6458195B1 (ja) * 2018-09-20 2019-01-23 キヤノン株式会社 携帯端末とその制御方法、及びプログラム
CN112584364B (zh) 2019-09-30 2024-03-08 阿里巴巴集团控股有限公司 蓝牙网络及其通信方法、设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070118914A (ko) * 2006-06-13 2007-12-18 한국과학기술원 컴퓨터 단말기의 주변 기기를 통하여 통신 단말기의 입출력프로세스를 제어하는 에뮬레이터 모듈 및 상기 모듈의동작 방법
KR20080037063A (ko) * 2005-08-31 2008-04-29 마이크로소프트 코포레이션 보조 디스플레이 장치 드라이버 인터페이스

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004053649A2 (en) * 2002-12-06 2004-06-24 Ziffren, Brittenham, Branca & Fischer Contact event management system
US7245483B2 (en) * 2003-07-18 2007-07-17 Satori Labs, Inc. Integrated personal information management system
US7315727B2 (en) * 2003-10-14 2008-01-01 At&T Mobility Ii Llc Methods and apparatuses for communicating with wireless peripheral devices
US7269388B2 (en) * 2003-12-01 2007-09-11 Microsoft Corporation Bluetooth pan driver
US7895527B2 (en) * 2005-07-15 2011-02-22 Siemens Medical Solutions Usa, Inc. Systems, user interfaces, and methods for processing medical data
US9407662B2 (en) * 2005-12-29 2016-08-02 Nextlabs, Inc. Analyzing activity data of an information management system
US7779427B2 (en) 2006-01-18 2010-08-17 Microsoft Corporation Automated application configuration using device-provided data
US20070242061A1 (en) 2006-04-14 2007-10-18 Microsoft Corporation Mobile auxiliary display model
US20090083765A1 (en) 2007-09-20 2009-03-26 Microsoft Corporation Accessing device-hosted services from scripting and other programming environments
US9953141B2 (en) * 2009-11-18 2018-04-24 Becton, Dickinson And Company Laboratory central control unit method and system
US8903521B2 (en) * 2010-08-26 2014-12-02 Blast Motion Inc. Motion capture element
US9247212B2 (en) * 2010-08-26 2016-01-26 Blast Motion Inc. Intelligent motion capture element
US8447910B1 (en) * 2010-11-30 2013-05-21 Qualcomm Incorporated Systems and methods for implementing bluetooth over a virtual USB connection
US20120238216A1 (en) * 2011-03-17 2012-09-20 Polycom, Inc. Systems and methods for managing bluetooth device pairings
GB2494871B (en) * 2011-09-20 2018-04-11 Qualcomm Technologies Int Ltd Re-transmission of timely data in a Bluetooth communication system
US9706496B2 (en) * 2011-10-31 2017-07-11 Avago Technologies General Ip (Singapore) Pte. Ltd Concurrent BLE scanning and initiation for bandwidth efficiency and power saving

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080037063A (ko) * 2005-08-31 2008-04-29 마이크로소프트 코포레이션 보조 디스플레이 장치 드라이버 인터페이스
KR20070118914A (ko) * 2006-06-13 2007-12-18 한국과학기술원 컴퓨터 단말기의 주변 기기를 통하여 통신 단말기의 입출력프로세스를 제어하는 에뮬레이터 모듈 및 상기 모듈의동작 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015122576A1 (ko) * 2014-02-12 2015-08-20 엘지전자(주) 무선 통신 시스템에서 블루투스 저전력 에너지를 이용하여 객체 전송 서비스를 수행하기 위한 방법 및 장치
US9794323B2 (en) 2014-02-12 2017-10-17 Lg Electronics Inc. Method and apparatus for performing object transfer service using bluetooth low energy in wireless communication system
WO2017018604A1 (ko) * 2015-07-26 2017-02-02 엘지전자(주) 블루투스 le(low energy) 기술을 이용하여 대체 통신 수단을 연결하기 위한 방법 및 장치
US10827391B2 (en) 2015-07-26 2020-11-03 Lg Electronics Inc. Method and device for connecting substitute communication means by using bluetooth low energy (LE) technique

Also Published As

Publication number Publication date
US20120142271A1 (en) 2012-06-07
US8620379B2 (en) 2013-12-31
HK1167948A1 (en) 2012-12-14
KR20120062639A (ko) 2012-06-14
CN102545968A (zh) 2012-07-04
CN102545968B (zh) 2015-08-12
EP2461247A1 (en) 2012-06-06
TWI546670B (zh) 2016-08-21
TW201235851A (en) 2012-09-01

Similar Documents

Publication Publication Date Title
KR101355058B1 (ko) 블루투스 저에너지 디바이스들을 위한 윈도우즈 포터블 디바이스 인터페이스
EP3402160B1 (en) Service processing method and apparatus
US10853026B2 (en) Method and apparatus for streaming audio by using wireless link
CN105684520B (zh) 用于建立无线局域网通信连接的方法及其电子设备
US9769595B2 (en) Method and apparatus for providing mobile services outside of cellular coverage
KR20120079208A (ko) 이동통신 단말기에서 주변 디바이스를 원격 제어하기 위한 장치 및 방법
KR102294040B1 (ko) 데이터 송수신 방법 및 장치
US20150286509A1 (en) System and method for transport layer agnostic programming interface for use with smartphones
EP2869604B1 (en) Method, apparatus and device for processing a mobile terminal resource
CN106576106B (zh) 用于利用中间件交换传感器信息的方法、装置和系统
US9981191B2 (en) Native gameplay experience across platforms
US20230216732A1 (en) Network Configuration Method and Device
US11012372B2 (en) Electronic apparatus and method for control thereof
WO2018219117A1 (zh) 组件显示方法及相关产品
CN110677456A (zh) 一种资源配置的方法及设备
CN108028851B (zh) 设备群组管理方法、装置和系统
WO2014111991A1 (ja) 車両装置と携帯端末との動作適合化方法、車両装置と携帯端末とを備える車両システム、携帯端末、及び情報センタ
WO2020125309A1 (zh) 具有多存储晶粒储存装置及识别方法
US20240031833A1 (en) Systems, methods, and devices for enhanced integration of wireless environments
KR102166381B1 (ko) 블루투스 프로토콜에 기반한 데이터 처리 방법 및 그 전자장치
KR102049069B1 (ko) 이동통신 단말기에서 주변 디바이스를 원격 제어하기 위한 장치 및 방법
US20240056513A1 (en) Data Serialization in a Communication Network
KR20190132618A (ko) 이동통신 단말기에서 주변 디바이스를 원격 제어하기 위한 장치 및 방법
KR20130062077A (ko) 다양한 입력장치를 수용할 수 있는 모바일 디바이스 및 그 방법
JP2014238659A (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170303

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180105

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190108

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200108

Year of fee payment: 7