JP2021180510A - 通信装置、通信方法、及びプログラム - Google Patents

通信装置、通信方法、及びプログラム Download PDF

Info

Publication number
JP2021180510A
JP2021180510A JP2021119194A JP2021119194A JP2021180510A JP 2021180510 A JP2021180510 A JP 2021180510A JP 2021119194 A JP2021119194 A JP 2021119194A JP 2021119194 A JP2021119194 A JP 2021119194A JP 2021180510 A JP2021180510 A JP 2021180510A
Authority
JP
Japan
Prior art keywords
data
communication
information
packet
communication device
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2021119194A
Other languages
English (en)
Other versions
JP7163995B2 (ja
Inventor
和穂 姜
Kazuho Kyo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2021119194A priority Critical patent/JP7163995B2/ja
Publication of JP2021180510A publication Critical patent/JP2021180510A/ja
Application granted granted Critical
Publication of JP7163995B2 publication Critical patent/JP7163995B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

【課題】無線通信装置の間のコネクションプロセスを改善する方法、この方法を実行する通信装置及びプログラムを提供することにある。【解決手段】無線通信のできる装置は、通信パケットを他の通信装置と送受信する通信部と、サービスを構成するデータ要求のための機能及びデータ通信のための機能の参照情報と、上記参照情報の上記機能に関連するデータと、上記データを区別するための区別情報と、を記憶するメモリと、プロセッサと、を備える。上記プロセッサは、データ通信のための機能に関連付けられた参照情報と、上記データと、上記区別情報と、を含むパケットを生成する。【選択図】図15

Description

本発明は、通信装置、電子時計、通信方法、及びこの通信方法を実行するためのプログラムに関する。
従来、ブルートゥース(Bluetooth:登録商標)などの近距離無線通信を用いて種々の情報をやり取りすることが可能な電子装置が存在する。ブルートゥースは、近距離で各種装置を無線で連結してデータをやり取りすることができる近距離無線通信規約である。ブルートゥース通信方法には、BR/EDR(Basic Rate/Enhanced Data Rate)と、低電力方式であるLE(Low Energy)とがある。ブルートゥース4.0から適用されたブルートゥースローエネルギー(Bluetooth Low Energy、以下BLEと称する。)は、少ない電力を消耗して数百キロバイト(KB)の情報を安定的に提供することができる。
ブルートゥース装置は周辺のブルートゥース装置に対する検索/選択/認証(ペアリング)等の過程を経て無線通信を行うことができる。ブルートゥース規格は、汎用アトリビュートプロファイル(generic attribute profile:GATT)を含み、GATTはブルートゥース装置で実行されるアプリケーションが利用可能なサービスを発見し、上記サービスのキャラクタリスティック(characteristic)がわかるようにするサービスディスカバリープロトコル(service discovery protocol:SDP)を含む。従来、キャラクタリスティックとは、サービスを構成する単一データ配列であり、キャラクタリスティック値は特定の機能の設定値を示す。1つの機能に対して1つのキャラクタリスティックを有するようにサービスが構成される。従って、1つのサービスに含まれるキャラクタリスティックの個数は、当該サービスによって提供される設定値の種類の個数と同一である。SDPに関する情報は、ブルートゥースサービスディスカバリープロファイルに含まれる。SDPは連結されたブルートゥース装置においてどんなサービスが可能であるかに関する情報と、その可能なサービスの特徴に関する情報とを交換するためのプロトコルである。例えば、SDPを通じて様々なデジタル機器に装着されたブルートゥースデバイスが、LANアクセスポイント(Access Point)、携帯電話、ファクシミリ、プリンター等のサービスを提供することができるかどうかに関する情報を交換する。また、SDPはサーバークライアントの構造を有している。サーバー装置は可能なサービスの目録と各サービスについての細部事項をデータベースとして持っている。クライアントはサーバーに要請してサービスに関する情報を得ることができる。
例えば、特開2009−143005号公報には、サービスディスカバリープロファイルに規定されている検索方式によって通信装置を検索する技術が開示されている。
特開2009−143005号公報
上記特許文献1に開示された技術によると、装置及びサービスの検索のために装置間のコネクション手続きに長い時間がかかり、ネットワークの電力消耗が大きいという問題がある。
この発明の目的は、無線通信装置の間のコネクションプロセスを改善する方法、この方法を実行する通信装置、電子時計、及びプログラムを提供することにある。
本発明の1つの態様は、無線通信のできる装置であって、通信パケットを他の通信装置と送受信する通信部と、サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報と、上記参照情報の上記機能に関連するデータと、上記データを区別するための区別情報と、を記憶するメモリと、プロセッサと、を備え、上記プロセッサは、前記データ通信のための機能に関連付けられた参照情報と、上記データと、上記区別情報と、を含むパケットを生成する。
また、本発明の他の1つの態様は、無線通信のできる装置であって、他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を受信し、通信パケットを他の通信装置と送受信する通信部と、一つ又はそれ以上のデータの区別情報を記憶するメモリと、プロセッサと、を備え、上記プロセッサは、第1の機能の参照情報と、一つのデータの区別情報と、を含むパケットを生成する。
本発明によると、無線通信装置の間のコネクションプロセスを改善することができる。
しかし、本発明の目的と効果は上記のものに制限されないし、下記の詳細な説明と添付の図面から本発明の他の目的と効果を理解することができる。
以下の詳細な記述が以下の図面と合わせて考慮されると、本願のより深い理解が得られる。これらの図面は例示に過ぎず、本発明の範囲を限定するものではない。
本明細書において提案された方法を適用することができる無線通信システムの一例を示す図である。 本明細書において提案された方法を具現することができる装置の内部ブロック図である。 本明細書において提案された方法を適用することができるBLE通信アーキテクチャーの一例を示す図である。 典型的なサービスディスカバリーメカニズムを示す図である。 GATTサーバーに格納されるアトリビュート(Attribute)の通常の構造の一例を示す。 (A)はBLEプロトコルによって定義されるパケット構造を示し、(B)はアトリビュート値をやり取りするためのアトリビュートプロトコルPDUの構造の一例を示す。 アトリビュートプロトコルPDUのアトリビュートオペコード(Attribute Opcode)及びパラメーターのリストの一例を示すテーブルである。 通常のBLE装置のサービス構造の一例を示す図である。 本発明の一実施形態に係るサービス構造の一例を示す図である。 本発明の一実施形態に係るクライアントからサーバーに対してデータを要求する方法を、従来の方法と共に示す図である。 本発明の一実施形態に係るWrite Request(書込み要求)メッセージによってデータを書き込む方法を、従来の方法と共に示す図である。 本発明の一実施形態に係るWrite Command(書込み命令)メッセージによってデータを書き込む方法を、従来の方法と共に示す図である。 本発明の一実施形態に係るサーバーからクライアントへ告知(Notification)メッセージを送信する方法を、従来の方法と共に示す図である。 本発明の一実施形態に係るサーバーからクライアントへ指示(Indication)メッセージを送信する方法を、従来の方法と共に示す図である。 本発明の一実施形態に係るデータ要求プロセスを示す例示的なフローチャートである。 本発明の一実施形態に係るデータ書込みプロセスを示す例示的なフローチャートである。 本発明の一実施形態に係るデータ通知プロセスを示す例示的なフローチャートである。 本発明の他の実施形態に係るデータ通信方法を示す図である。 本発明の他の実施形態に係るデータ通信方法を示す図である。 本発明の他の実施形態に係るデータ通信方法を示す図である。 本発明の他の実施形態に係るデータ通信方法を示す図である。 本発明の他の実施形態に係るデータ通信方法を示す図である。 本発明の一部実施形態の構成及び特徴を要約したテーブルである。
本明細書においては、主に本発明をブルートゥース(登録商標)、特に、BLEに適用した実施形態について説明するが、本発明の適用分野はブルートゥースに限定されない。本発明は、サービスとキャラクタリスティックの概念を用いる他の無線通信技術にも適用可能である。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図1は、後述する実施形態に共通する図であって、本明細書において提案された方法が適用されることができる無線通信システムの一例を示す図である。以下に記述される実施形態において、第1の装置と第2の装置とは、BLE技術を利用して近距離無線通信を行う。無線通信システム10は少なくとも第1の装置100及びBLEによって第1の装置100と無線接続されてデータ交換が可能な第2の装置200から成る。本発明が適用されることができる第1の装置100は、例えば、腕時計型端末装置の一種である電子時計である。しかし、第1の装置100はこの例に限定されなく、BLE通信が可能な装置であればその種類や形態を問わない。第1の装置100は、例えば、デジタルカメラ、デジタル体重計等のヘルス機器、又は、スマートバンド等のウェアラブル機器であっても良い。
本発明が適用されることができる第2の装置200は、例えば、携帯電話の一種であるスマートフォンであり、移動通信網20に接続されている。しかし、第2の装置200はこの例に限定されなく、近距離無線通信が可能な装置であればその種類や形態を問わない。
以下に詳細に説明するように、BLEのATT(Attribute Protocol)はサーバー/クライアントの構造で相手装置のデータにアクセスするための規則を定義する。サーバーはサービスを提供し、クライアントはサーバーに要請してサーバーが有するサービスに関連した情報を得ることができる。説明の便宜のために、以下では特別な説明がない限り第1の装置100をサーバーと、第2の装置200のアプリケーションをクライアントとして説明する。しかし、第1の装置100は第2の装置200以外の他の装置との関係においてクライアントとして動作することができ、第2の装置200は第1の装置100以外の他のデバイスとの関係においてサーバーとして動作することができる。即ち、BLE通信システムにおいて一つの装置はサーバー又はクライアントとして動作することが可能であり、サーバー及びクライアントとして動作することも可能である。
第2の装置200は、第1の装置100にデータを要求することができる。第1の装置100は、第2の装置200からデータ要求メッセージを受信すると、応答(Response)メッセージによって第2の装置200へデータを提供する。また、第1の装置100は第2の装置200へデータを通知するために第2の装置200に対して告知(Notification)メッセージ又は指示(Indication)メッセージを送信する。第1の装置100が第2の装置200へ指示メッセージを送信した場合に、当該指示メッセージが第2の装置200によって正常に受信されれば第2の装置200は当該指示メッセージに対する確認(Confirm)メッセージを第1の装置100へ送信する。また、第2の装置200は、第1の装置100に対してデータの書込みを要請するために要求(Request)メッセージ又は命令(Command)メッセージを送信する。第2の装置200が第1の装置100へ要求メッセージを送信した場合に、データの書込みが正常に行われると、第1の装置100は第2の装置200へ応答メッセージを送信する。
第1の装置100又は第2の装置200は、他の装置とメッセージを送受信する過程で出力部(例えば、ディスプレイ)を通じてユーザにデータ情報を提供したり、入力部(例えば、User Input Interface)を通じてユーザから入力される要請を受信したりすることができる。また、メモリからデータを読み出したり、新しいデータをメモリに記憶(書き込む)したりすることもできる。
図2は、本明細書において提案された方法を具現することができる装置の内部ブロック図の一例である。図2(A)は第1の装置100の内部ブロック図であり、図2(B)は第2の装置200の内部ブロック図である。
図2(A)に示されたように、第1の装置100は近距離通信部102と、プロセッサ104と、電源部106と、メモリ108と、時計部110と、入力部112と、表示部114とを含む。近距離通信部102は近距離無線通信技術(例えば、ブルートゥース)を利用して装置の間の要求/応答、命令、告知、指示/確認メッセージ、又は、データの送受信を可能にするインターフェースと、無線信号を処理するベースバンド回路とを含む。本実施形態において、近距離通信部102はBLEをサポートする。近距離通信部102の少なくとも一部の機能はソフトウェアによって具現されることができ、ソフトウェアによって具現される場合、上記機能を実行するプログラムの形態としてメモリ108に格納されることができる。
プロセッサ104は第1の装置100の全体的な動作を制御する。プロセッサ104は、制御ユニット(Control Unit)、コントローラー等と称されることもある。プロセッサ104はASIC(application−specific integrated circuit)、他のチップセット、論理回路、及び/又は、データ処理装置を含むことができる。電源部106は図示を省略するが、バッテリー及び電源管理部を含む。メモリ108はプロセッサ104によって実行されるコンピュータプログラム命令、ファームウェア等の各種ソフトウェア、及び/又は、プロセッサ104が必要とするデータ又はプロセッサ104の処理結果を記憶するために使われる。メモリ108は第1の装置100に組み込まれた、又は、第1の装置100から着脱可能なRAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、又はディスクドライブ等の1つ又はそれ以上の任意の記憶装置を含む。メモリ108はプロセッサ104に組み込むことも可能である。
時計部110は図示を省略するが、例えば、システムクロック又は発振器によって生成される信号から時刻信号を生成する時計回路であるカウンタを含み、現在の時刻を計時して時刻情報を生成する。時計部110は生成した時刻情報をプロセッサ104に出力する。時計部110をプロセッサ104内に組み込むこともできる。入力部112は各種キー、スイッチ、及び/又は、タッチパネル等から構成され、ユーザの入力部112の操作に応じて各種のデータが入力される。表示部114はLCD、OLED等の表示装置及び駆動回路を含み、現在の時刻等の情報を表示する。
第1の装置100は、平常時は表示部114に時計部110で計時されている現在の時刻を表示する。近距離通信部102を通じて第2の装置200から現在の時刻に関するデータを受信した場合は、該当データが示す時刻を時計部110に設定することによって、第1の装置100の時刻を第2の装置200の時刻に同期させる。
図2(B)に示されたように、第2の装置200は、遠距離通信処理部202と、近距離通信部204と、プロセッサ206と、メモリ208と、電源部210と、入力部212と、表示部214とを含む。プロセッサ206は時計部216を含む。遠距離通信処理部202は、3G、LTE等の携帯電話システムの基地局と通信することによって、第2の装置200を携帯電話として機能させる。遠距離通信処理部202はアンテナを通じて受信、又は、送信される信号を増幅するアンプ、トランシーバー、デジタルベースバンドプロセッサ、音声入力回路、再生回路等を含むが、これらの周知の構成要素に対しては図示及び説明を省略する。また、遠距離通信処理部202を通じて移動通信網20から正確な時刻データを取得することで時計部216が正確な時刻情報を保持することができる。上記のように、第2の装置200は時計部216が保持している時刻情報を第1の装置100に伝送することができる。
近距離通信部204は、近距離無線通信技術(例えば、ブルートゥース)を利用して装置の間の要求/応答、命令、告知、指示/確認メッセージ、又は、データの送受信を可能にするインターフェースと、無線信号を処理するベースバンド回路とを含む。本実施形態において、近距離通信部204はBLEをサポートする。近距離通信部204の少なくとも一部の機能はソフトウェアによって具現されることができ、ソフトウェアによって具現される場合、上記機能を実行するプログラムの形態としてメモリ208に格納されることができる。
プロセッサ206は第2の装置200の全体的な動作を制御し、例えば、アプリケーションプロセッサである。本実施形態においては、プロセッサ206が時計部216を含むように構成されているが、実施形態によっては時計部216が別個の構成要素として含まれることもできる。メモリ208はプロセッサ206によって実行されるコンピュータプログラム命令、ファームウェア等の各種ソフトウェア、及び/又は、プロセッサ206が必要とするデータ又はプロセッサ206の処理結果を記憶するために使われる。メモリ208は第2の装置200に組み込まれた、又は、第2の装置200から着脱可能なRAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、又はディスクドライブ等の1つ又はそれ以上の任意の記憶装置を含む。メモリ208はプロセッサ206に組み込まれることも可能である。
電源部210は図示を省略するが、バッテリー及び電源管理部を含む。入力部212は各種キー、スイッチ、及び/又は、タッチパネル等から構成され、ユーザの入力部212の操作に応じて各種のデータが入力される。表示部214はLCD、OLED等の表示装置及び駆動回路を含む。
図1に示されているシステムと、図2(A)及び2(B)に示されている装置は例示に過ぎず、本明細書に記述された方法を具現することができるシステム又は装置の範囲を制限するものではない。
図3は本明細書において提案された方法が適用されることができるBLE通信アーキテクチャーの一例を示す図である。より具体的には、BLEプロトコルスタックはタイミングが重要な無線装置インターフェースを制御するように動作可能なコントローラースタック(Controller stack)30と、高レベル(high level)データを処理するように動作可能なホストスタック(Host stack)40とを含む。コントローラースタック30は、通信モジュールと、例えば、マイクロプロセッサー等のプロセッシングデバイスを含むプロセッサモジュールを利用して具現されることができる。ホストスタック40は、プロセッサモジュール上で作動するOSの一部として、又は、OS上のパッケージ(package)のインスタンス生成(instantiation)として具現されることができる。
コントローラースタック30は、物理レイヤ(Physical Layer:PHY)32と、リンクレイヤ(Link Layer)34と、ホストコントローラーインターフェース(Host Controller Interface:HCI)36と、を含む。物理レイヤ(無線送受信モジュール)32は、2.4GHzの無線信号を送受信する階層であり、GFSK(Gaussian Frequency Shift Keying)変調及び40個のRFチャンネルを利用する周波数ホッピング(frequency hopping)技法を使う。ブルートゥースパケットを伝送したり受信したりする役割を行うリンクレイヤ34は、3個のアドバタイジング(Advertising)チャネルを利用してアドバタイジングやスキャニング機能を行った後に装置間のコネクションを生成し、37個のデータチャンネルを通じて最大42バイト(byte)のデータパケットをやり取りする機能を提供する。HCI36は、ホストスタックがコマンドとデータをコントローラースタックに提供し、コントローラースタックがイベントとデータをホストスタックに提供することができるように、ホストスタックとコントローラースタックとの間のインターフェースを提供する。
ホストスタック40は、論理リンク制御及び適応プロトコル(L2CAP)41と、保安マネージャー(Security Manager:SM)42と、アトリビュートプロトコル(Attribute Protocol:ATT)43と、汎用アトリビュートプロファイル(Generic Attribute Profile:GATT)44と、汎用アクセスプロファイル(Generic Access Profile:GAP)45と、LEプロファイル46と、を含むことができる。但し、ホストスタック40はこのような例に限定されなく、多様なプロトコル及びプロファイルを含むことができる。ホストスタック40はL2CAPを使ってブルートゥース仕様(スペック)が提供する多様なプロトコル及びプロファイル等を多重化(multiplexing)する。
論理リンク制御及び適応プロトコル(L2CAP)41は、特定のプロトコル又はプロファイルによってデータを伝送するための一つの双方向チャンネルを提供する。保安マネージャー(SM)42は、装置を認証し、キー分配(key distribution)を提供するためのプロトコルである。
アトリビュートプロトコル43はサーバー/クライアント構造で相手デバイスのデータにアクセスするための規則を定義する。ATTには6種類のメッセージ類型(要求、応答、命令、告知、指示、確認(Confirmation))が定義される。
(1)要求及び応答メッセージ:要求メッセージはクライアントがサーバーに特定の情報を要請するために送信するメッセージであり、応答メッセージはサーバーがクライアントへ送信する要求メッセージに対する応答である。
(2)命令メッセージ:クライアントがサーバーに特定の動作を要請するために送信するメッセージであり、サーバーは命令メッセージに対する応答をクライアントに送信しない。
(3)告知メッセージ:サーバーがクライアントにイベント等の通知のために送信するメッセージであり、クライアントは告知メッセージに対する確認メッセージをサーバーに送信しない。
(4)指示及び確認メッセージ:サーバーがクライアントにイベント等の通知のために送信するメッセージであり、告知メッセージとは違い、クライアントは指示メッセージに対する確認メッセージをサーバーに送信する。
汎用アトリビュートプロファイル44はサービスの構成の時にATT43がどのように使われるかを説明するプロトコルとして用いられる。GATT44はサービス(Service)とキャラクタリスティック(Characteristic)という概念を使って特定のデータ(即ち、アトリビュート)を他の装置に提供する。GATTはサーバーとクライアントとの二種類の役割を定義し、アトリビュートを提供する装置がサーバーであり、アトリビュートが提供される装置がクライアントである。
サービスは情報を提供したり、アクションを遂行したり、他のエンティティーに代わってリソースを制御したりすることができるエンティティーである。サービスはソフトウェア、ハードウェア、又は、これらの組合せとして具現されることができる。SDPサーバーによって保有される一つのサービスについての全ての情報は一つのサービスレコード内に含まれる。サービスはデータを論理的エンティティーとして分け、キャラクタリスティックと称されるデータの束を含む。それぞれのサービスは、一つ又はそれ以上のキャラクタリスティックを有することができ、UUID(Universal Unique Identifier)と称される固有のIDによって区分される。
キャラクタリスティックはサービスで使われる単一のデータ配列であり、それぞれのキャラクタリスティックはUUIDを有する。それぞれのキャラクタリスティックは、キャラクタリスティック宣言とキャラクタリスティック値宣言との二つのアトリビュートを有する。キャラクタリスティック宣言はアトリビュートタイプのUUID及びアトリビュート値を有し、アトリビュート値はキャラクタリスティックプロパティー(Characteristic Property)、キャラクタリスティック値ハンドル(Characteristic Value Handle)、キャラクタリスティックUUIDを有する。キャラクタリスティック値宣言はキャラクタリスティック値に対するUUID及びキャラクタリスティック値によって構成される。
汎用アクセスプロファイル45はBLEデバイスの間の通信のための役割(role)の選択と、マルチプロファイル動作の手続きとを制御するために使われる。GAPは主にデバイス発見、コネクション生成、及びセキュリティーに使われる。
LEプロファイル46はGATTに依存性を持つプロファイルとして、主にBLEデバイスに適用される。LEプロファイルは、例えば、Battery、Time、FindMe、Proximity等である。
図4は典型的なブルートゥースサービスディスカバリーメカニズムを示す。サービスディスカバリーメカニズムは、クライアントアプリケーションがサーバーアプリケーションによって提供されるサービスの存在とこのサービスのアトリビュートとを発見する手段を提供する。サービスのアトリビュートはサービスのタイプ又は種別と、そのサービスを利用するために必要なメカニズム又はプロトコル情報とを含む。サービスディスカバリープロトコル(Service Discovery Protocol:SDP)はSDPサーバーとSDPクライアントの間の通信と関連する。サーバーは当該サーバーと関連したサービスのキャラクタリスティックを記述するサービスレコードの目録を保有する。それぞれのサービスレコードは一つのサービスについての情報を含む。クライアントはSDP要請を発行することでSDPサーバーによって保有されたサービスレコードから情報を検索することができる。
もしクライアント、又は、当該クライアントと関連したアプリケーションがあるサービスを利用することと決めれば、当該サービスを利用するためにサービス提供者への別の接続を開始する。SDPはサービスとそのアトリビュート(関連したサービスアクセスプロトコルを含む)とを発見するメカニズムを提供する。SDPにおいてサービスの種類を区分するためにUUIDが用いられる。SDPクライアントは探そうとするサービスのUUIDを知っている場合は、このUUIDを利用して、サーバーにこのサービスを提供するかどうかを問い合わせる。探そうとするサービスのUUIDを知ってない場合は、サーバーに当該サーバーが提供するサービスに関する情報を要求する。もしデバイス上の多数のアプリケーションがサービスを提供すれば、SDPサーバーはこれらが提供するサービスに関する情報に対する要請を取り扱うためにこれらのサービス提供者に代わって動作する。同様に、多数のクライアントアプリケーションがこれらに代わってサーバーにクエリーを送るためにSDPクライアントを利用することができる。
通常のブルートゥースサービスディスカバリーメカニズムにおいて、サービス検索命令はBLEプロトコルとして規格化されているが、検索方法や検索順序はOSによって違う。サービスディスカバリープロセスは時間をかなり消費するプロセスであり、多数の装置が互いに近接している場合望ましくない遅延をもたらすことができる。
図5は、GATTサーバーに格納されるアトリビュートの通常の構造の一例を示す。サーバーはこのような形態のアトリビュートを使ってサービスを提供する。一つのアトリビュートは4個の構成要素から成り、次のような意味を有する。
−アトリビュートハンドル(Attribute Handle):特定のアトリビュートに対応する参照情報(インデックス)
−アトリビュートタイプ(Attribute Type):アトリビュートの類型(アトリビュート値を記述するUUID)
−アトリビュート値(Attribute Value):アトリビュートの値(ハンドルによってインデクシングされるデータ)
−アトリビュートパーミッション(Attribute Permission):アトリビュートに対するアクセス権限
図6(A)はBLEプロトコルによって定義される通常のパケット構造を示す。リンクレイヤはアドバタイジングチャンネルパケットとデータチャンネルパケットとの両方のために使われる一つのパケットフォーマットのみを持つ。各々のパケットはプリアンブル(Preamble)、アクセスアドレス(Access Address)、PDUヘッダー、PDUペイロード及びCRCフィールドを含む。全てのパケットはPDUヘッダーを有し、PDUヘッダーはアドバタイジング放送又は論理リンクのタイプを決める。一つのパケットがアドバタイジング物理チャンネルで伝送される時、PDUはアドバタイジングチャンネルPDUであり、データ物理チャンネルで伝送される時、PDUはデータチャンネルPDUである。アドバタイジングチャンネルPDUは、アドバタイジングPDUと、スキャニングPDUと、開始PDU(initiating PDU)とに分類される。データチャンネルPDUは16ビットのヘッダーと、多様な大きさのペイロードとを有し、選択的なメッセージ完全性チェック(Message Integrity Check:MIC)フィールドを含むことができる。
図6(B)はアトリビュート値をやり取りするためのアトリビュートプロトコルPDUの構造の一例を示す。図6(B)に示されたように、アトリビュートプロトコルPDUはアトリビュートオペコード(Opcode)フィールド、アトリビュートパラメーター(Attribute Parameters)フィールド、及び認証署名(Authentication Signature)フィールド(選択的)によって構成されることができる。認証署名はオプションフィールドであり、選択的に存在したり存在しなかったりする。
上記アトリビュートオペコードは1オクテット(octet)のデータであり、当該アトリビュートプロトコルPDUがどのようなPDUであるかを示す情報を含む。図7はアトリビュートプロトコルPDUのアトリビュートオペコード及びアトリビュートパラメーターのリストの一例を示すテーブルである。アトリビュートパラメーターは実際のメッセージで伝達しようとする情報を含み、次のような値を持つことができる。
−ハンドル(Handle):データに対応する参照情報(インデックス)。ハンドルを使ってGATTクライアントが値を参照、アクセス、又は変更することができる。
−値(Value):データの値
−データリスト(Data List):色々なデータ値の目録
−長さ(Length):データの長さ
上記のようなアトリビュートプロトコルPDUを通じてクライアントはサーバーに格納されているアトリビュートハンドル値、アトリビュート値、データリスト、又は長さ値を読み出したり、サーバーにこのような値を記憶させたりすることができる。
図8は通常のBLE装置のサービス構造(即ち、アトリビュートデータベース)の一例を示す。図8のサービス構造を有するBLE装置は電子時計である。それぞれのサービスはデータを論理的に分ける役割を行い、一つ又はそれ以上のキャラクタリスティックを含む。示されたように、プライマリーサービスであるWatch Serviceは、複数のキャラクタリスティック(ServiceN1、ServiceN2、...、ServiceNx)を含む。本例において、Watch Serviceは、x個のキャラクタリスティックを含む。上記複数のキャラクタリスティックは、例えば、BLE仕様設定、BLE時計設定、等を含む。それぞれのサービスはUUID、即ち、16ビット又は128ビットの識別子を有する。また、上述のように、それぞれのキャラクタリスティックは、キャラクタリスティック宣言とキャラクタリスティック値宣言との二つのアトリビュートを有する。例えば、ServiceN1のキャラクタリスティック宣言は、アトリビュートタイプ(キャラクタリスティックのUUID)と、アトリビュート値としてキャラクタリスティックプロパティーと、キャラクタリスティック値ハンドルと、キャラクタリスティックUUID(ServiceN1のUUID)とによって構成される。ServiceN1のキャラクタリスティック値宣言は、キャラクタリスティック値に対するUUID(ServiceN1のUUID)と、キャラクタリスティック値(ServiceN1 value)によって構成される。
図8に示されたように、通常のBLE装置では一つの機能に対して一つのキャラクタリスティックを有する形態としてサービスが構成されている。このような従来のサービス構造は、キャラクタリスティック値ごとにハンドルを割り当て、ハンドルごとにデータ構造を固定できるので、サービスの設計とデータの解読が容易であるという長所がある。これに対して、他の装置がこの装置のサービスを検索するためには時間がかなりかかり、その結果接続完了までの時間が長くなるという短所がある。このような問題はキャラクタリスティックが多くなるほどさらに浮び上がる。また、サーバー装置に機能が追加されれば、サービスやキャラクタリスティックを新しく追加するためにサーバー装置のプログラムを変更する必要がある。
図9は、図8のBLE装置のプライマリーサービスであるWatch Serviceを本発明の一実施形態により構成した例を示す。図9に示されたように、Watch Serviceは2つのキャラクタリスティックであるデータ要求用キャラクタリスティック及びデータ通信用キャラクタリスティックのみを含む。データ要求用キャラクタリスティックは、クライアントがサーバーにデータを要求するために用いるキャラクタリスティックであり、データ通信用キャラクタリスティックはサーバーとクライアントとの間のデータ通信のために用いられるキャラクタリスティックである。従来、キャラクタリスティック値であるデータがそれぞれのキャラクタリスティックのアトリビュート値フィールドに記憶され、各々のキャラクタリスティックはUUIDによって識別される。一つの機能に一つのキャラクタリスティックを対応させる通常のサービス構造とは違い、本実施形態では機能の個数に関わらず2つの統合型キャラクタリスティックによってサービスを構成する。図8のキャラクタリスティック値、即ち、複数の機能の設定値(即ち、 ServiceN1 value乃至ServiceNx value)は、データ通信用キャラクタリスティックのアトリビュート値として格納する。
図9の実施形態では、次の理由で2種類のキャラクタリスティックによってサービスを構成する。一つのサービスによって複数の機能の設定値が提供される場合、これらの複数の機能の設定値である複数の種別のデータを一つのデータ通信用キャラクタリスティックによって取り扱うので、複数の種別のデータに対して一つのハンドルのみが付与される。そのため、アトリビュートハンドルのみをパラメーターとして使う従来のRead Request(読出し要求)メッセージ(図7を参照)を本実施形態では使用できなくなる。従って、データ要求用のキャラクタリスティックが別に必要になり、データ要求用のキャラクタリスティックとデータ通信用のキャラクタリスティックとの2つのキャラクタリスティックによってサービスを構成する。しかし、上記サービス構造は一例であり、本発明はこのような例に限定されない。例えば、実施形態によっては、複数のサービスを一つのサービスとして統合しても良く、従来の通り複数のサービスが存在しても良い。また、以下に詳細に説明するように、サービスは一つのキャラクタリスティックのみで構成されることも可能である。
このように2つの統合型キャラクタリスティックでサービスを構成すると、ハンドルによって多様な種類のデータを区別することができないので、本発明の複数の実施形態では、データの種類を区別するための別個の区別情報を使う。通信装置のそれぞれが同一の区別情報を保有することができるように区別情報はスペック(仕様)として管理されることが好ましい。区別情報は対応するデータに連関されて記憶される。具体的には、サーバーにおいて、データを記憶するために割り当てられているスペースに、(区別情報+当該区別情報に対応するデータ)が記憶される。これによって、区別情報を記憶するためのスペース(例えば、1バイト(byte))が必要になり、データを記憶するスペースはそれだけ減る。区別情報はデータの前に記録されても良いし、データの後ろに記録されても良い。
データを要求したりデータを送信したりする場合にも、パケットのデータフィールドに要求するデータの区別情報、又は、データ及び当該データの区別情報を格納する。具体的には、例えば、図6(B)に示されたように、アトリビュートプロトコルPDUのペイロードのアトリビュートパラメーターフィールドにアトリビュート値(Attribute
Value)として「区別情報」又は「区別情報+データ」が記憶される。従って、区別情報を記憶するためのスペースが必要になり、データを記憶するスペースはそれだけ減る。例えば、区別情報を記憶するために1バイトを使えば、データを記憶するスペースは「Attribute Valueに割り当てられているスペース−1バイト」になる。区別情報はデータの前に記録されても良いし、データの後ろに記憶されても良い。クライアント装置でデータを格納する時にも、データとその区別情報を関連付けて格納することが好ましい。
本発明の上記実施形態によると、統合型キャラクタリスティックを利用することによって、サービスディスカバリーに所要する時間が短縮されることができ、これは接続時間を減らす。また、新しい機能が付加されてもサービスやキャラクタリスティックを追加する必要がない。サーバー装置に、現在のバージョンのスペックによって規定されている機能を追加しようとする場合は、図9に示されたようなアトリビュートデータベースのデータ通信用キャラクタリスティックのアトリビュートとして、当該機能の設定値とともにその区別情報を追加すれば良い。この場合は、機能追加のためのユーザのプログラミングの時に上記機能によって区別情報が自動的に付与されるように通信装置のファームウェアが設計されているとユーザの便宜性を高めることができる。また、現在のバージョンのスペックによって規定されていない新しい機能をユーザに追加させることができるようにファームウェアが設計されても良い。この場合は、当該機能の設定値を区別するための新しい区別情報を生成する。新しく生成される区別情報は、他の機能の設定値に与えられた区別情報と異なる固有の値を持つことが好ましい。尚、ユーザは、標準グループが管理するウェブサイトを通じて、区別情報を追加することができるようにすることも可能である。新しい区別情報が追加されたスペックは、ファームウェアのアップデート等によって通信装置に適用されることができる。
以下、具体的な実施形態を使って本発明を一層具体的に説明する。図10乃至図14に示された実施形態において、第1の装置100がサーバーであり、第2の装置200であるスマートフォンのアプリケーションがクライアントとして動作する。
図10は本実施形態に係るクライアントからサーバーに対してデータを要求する方法を従来の方法と共に示す。データはアトリビュートの値である。従来は、データを要求するためにクライアントがRead Requestメッセージをサーバーに送信する。Read Requestメッセージは図7に示されたように、アトリビュートハンドルをパラメーター(アトリビュートハンドルパラメーター)として使う。アトリビュートハンドルはクライアントがサーバーのアトリビュートを問い合わせることができるようにするためにサーバーによって割り当てられる16ビットの値である。サーバーからキャラクタリスティック値を読み出そうとする場合、アトリビュートハンドルパラメーターはキャラクタリスティック値ハンドルに設定される。このハンドルによって特定のUUIDを持つキャラクタリスティックの値にアクセスすることができる。クライアントからのRead Requestが有効な場合、サーバーはクライアントが要求するデータをRead Response(読出し応答)メッセージによってクライアントに送信する。図7に示されたように、Read Responseメッセージはアトリビュート値をパラメーター(アトリビュート値パラメーター)として使い、この場合、Read Responseによって伝送される値はキャラクタリスティック値である。
本発明の実施形態では、上記のように、サーバーのサービスがデータ要求用キャラクタリスティックとデータ通信用キャラクタリスティックとで構成されるので、サーバーにデータを要求するためにRead Requestメッセージを利用すればパラメーターとしてデータ要求用キャラクタリスティックのハンドル値のみを入れることができる。即ち、Read Requestメッセージによっては様々な種類のデータを読み出すことができない。従って、本実施形態では、サーバーにデータを要求する時にRead Requestメッセージを使用できず、その代わりにWrite Command(書込み命令)メッセージとデータの区別情報とを使う。Write Commandのパラメーターであるアトリビュートハンドルとアトリビュート値とのそれぞれは、データ要求用キャラクタリスティックのキャラクタリスティック値ハンドルと、区別情報とに設定される(書込み命令のパラメーターについては図7を参照)。サーバーは命令メッセージに対する応答を送らないために、本実施形態では上記区別情報に対応するデータをクライアントに送るために告知メッセージを利用する。図10に示されたように、サーバーはクライアントにアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのキャラクタリスティック値ハンドルと、「区別情報+データ」と、に設定されたHandle Value Notification(ハンドル値告知)メッセージを送信することでクライアントが要求したデータを送信する。Handle Value Notificationメッセージを受信すると、クライアントはアトリビュート値の最初の1バイトをデータの区別情報として解読する。これによって、クライアントがサーバーから受信したデータの種類を判別することができる。区別情報が記録される位置(データの前又は後)及び/又は区別情報を記憶するスペースの大きさは、この実施形態に限定されない。
上記実施形態では、応答を伴わないCommandメッセージと告知メッセージを用いてデータの要求とデータの伝送とを行ったが、本発明はこの実施形態に限定されない。一実施形態においては、クライアントはサーバーにWrite Request(書込み要求)メッセージを伝送してデータを要求する。この場合、Write Requestメッセージのアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれは、データ要求用キャラクタリスティックのキャラクタリスティック値ハンドルと、区別情報とに設定される(Write Requestのパラメーターについては図7を参照)。アトリビュート値の書き込みが正常に行なわれると、サーバーはWrite Responseメッセージをクライアントに送信する。この実施形態はWrite Requestメッセージがサーバーによって成功的に受信されたことを確認することができるという長所があるが、サーバーが応答メッセージを送るために追加的な電力を消耗しなければならないという短所がある。特に、サーバーがバッテリー容量の少ないデバイス(例えば、電子時計やウォッチ型のウェアラブルデバイス)である場合は、Write Commandメッセージを利用する方が電力消費の減少の側面でより有利である。
他の実施形態では、サーバーがデータを送信する時に、Handle Value Notificationメッセージの代わりにHandle Value Indication(ハンドル値指示)メッセージを使用する。告知と指示の両方は、サーバーからクライアントに送信される通知用のメッセージであるが、告知は送信の成功時にもクライアントからの応答メッセージを伴わない一方、指示は応答メッセージである確認を伴うという違いがある。この実施形態の場合、サーバーは、クライアントにアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのキャラクタリスティック値ハンドルと、「区別情報+データ」とに設定されたHandle Value Indicationメッセージによって、クライアントが要求したデータを送信する。
また、Handle Value Indicationメッセージを受信すると、クライアントはHandle Value Confirmation(ハンドル値確認)メッセージで応答する。サーバーは、Handle Value Confirmationメッセージを受信することで、クライアント側でデータを正常に受信したことを確認することができる。本実施形態は、データがクライアントに成功的に送信されたことを確認することができるので、重要度が高いデータを伝送する時に有利である。一方、クライアントが応答メッセージを送信するために、追加の電力を消費しなければならないという短所がある。特に、クライアントがバッテリー容量の少ないデバイス(例えば、ウォッチ型のウェアラブルデバイス)である場合は、告知メッセージを利用する方が、消費電力の低減の観点ではより有利である。従って、データの重要度及び/又は電力消費を考慮して、告知メッセージを利用するか指示メッセージを利用するかを決定することができる。
図11は、本実施形態に係るWrite Requestメッセージによってデータを記入する方法を、従来の方法とともに示す。示されたように、従来は、クライアントが、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データを書き込むアトリビュートのハンドルと、記入されるデータとに設定されたWrite Requestメッセージをサーバーに送信する。上記ハンドルによって対応する特定のUUIDのキャラクタリスティックの値にアクセスしてデータを書き込むことができる。上記データが正常に書き込まれると、サーバーはWrite Responseメッセージをクライアントに送信する。
本発明の実施形態では、上記のように、サーバーのサービスがデータ要求用キャラクタリスティックとデータ通信用キャラクタリスティックとで構成されるため、サーバーにデータを書き込もうとする場合、Write Requestメッセージのアトリビュートハンドルパラメーターとしてデータ通信用キャラクタリスティックのハンドル値のみを入れることができる。従って、アトリビュートハンドルパラメーターによっては、様々な種類のデータにアクセスすることができない。本発明では、サーバーにデータを書き込もうとすると、Write Requestメッセージのアトリビュート値パラメーターを「区別情報+データ」に設定する。即ち、図6(B)に示されたペイロードのアトリビュートパラメーターフィールドのアトリビュート値を記憶するスペースの中で1バイトに、当該データの区別情報を記憶する。つまり、複数の種類のデータに同一のハンドル値が与えられているが、区別情報によってこれらを区別することができる。一方、区別情報を記憶するスペースの大きさは1バイトに限定されないし、実施形態によってさらに大きかったり少なかったりすることもできる。上記データが正常に書き込まれると、サーバーはWrite Responseメッセージをクライアントに送る。
図12は、本発明の一実施形態に係るWrite Commandメッセージによってデータを記入する方法を、従来の方法とともに示す。示されたように、従来は、クライアントがアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データを書き込むアトリビュートのハンドルと記入されるデータとに設定されたWrite Commandメッセージをサーバーに送信する。上記ハンドルによって対応する特定のUUIDのキャラクタリスティック値にアクセスしてデータを書き込むことができる。命令メッセージは、応答メッセージを伴わない。
本発明の実施形態では、上記のように、サーバーのサービスがデータ要求用キャラクタリスティックと、データ通信用キャラクタリスティックとで構成されるため、サーバーにデータを書き込もうとする場合、Write Commandメッセージのアトリビュートハンドルパラメーターとしてデータ通信用キャラクタリスティックのハンドル値のみを入れることができる。従って、アトリビュートハンドルパラメーターによっては、様々な種類のデータにアクセスすることができない。本発明では、サーバーにデータを書き込もうとすると、Write Commandメッセージのアトリビュート値パラメーターを「区別情報+データ」に設定する。即ち、図6(B)に示されるペイロードのアトリビュートパラメーターフィールドのアトリビュート値を記憶するスペースの中で1バイトに、当該データの区別情報を記憶する。つまり、複数の種類のデータに同一のハンドル値が与えられているが、区別情報によってこれらを区別することができる。一方、区別情報を記憶するスペースの大きさは1バイトに限定されないし、実施形態によってさらに大きかったり少なかったりすることもできる。
図13は、本発明の一実施形態に係るサーバーからクライアントへ告知メッセージを送信する方法を、従来の方法とともに示す。示されたように、従来はサーバーがアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、通知するデータであるキャラクタリスティック値のキャラクタリスティック値ハンドルと、当該データとに設定されたHandle Value Notificationメッセージをクライアントに送信することにより、データを送信する。クライアントは、告知メッセージを受信しても、これに対する応答メッセージをサーバーに送信しない。従って、データの重要度が低く、サーバーの消費電力の削減が重要な場合に告知メッセージを用いることが好ましい。
本発明の実施形態では、サーバーはクライアントにアトリビュート値パラメーターが「区別情報+データ」に設定されたHandle Value Notificationメッセージによってデータを送信する。データの種類は、区別情報によって区別されるため、アトリビュートハンドルパラメーターは重要ではない。従って、アトリビュートハンドルパラメーターは、例えば、データ通信用キャラクタリスティックのキャラクタリスティック値ハンドルに設定されればよい。Handle Value Notificationメッセージを受信すると、クライアントはアトリビュート値の最初の1バイトをデータの区別情報として解読する。区別情報が記録される位置(データの前又は後)及び/又は区別情報を記憶するスペースの大きさは、この実施形態に限定されない。
図14は、本発明の一実施形態に係るサーバーからクライアントへ指示(Indication)メッセージを送信する方法を、従来の方法とともに示す。示されたように、従来はサーバーがアトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、通知するデータであるキャラクタリスティック値のキャラクタリスティック値ハンドルと、当該データとに設定されたHandle Value Indicationメッセージをクライアントに送信することにより、データを送信する。クライアントは、Handle Value Indicationメッセージを正常に受信すると、これに対する応答メッセージであるHandle Value Confirmationメッセージをサーバーに送信する。従って、データの重要度が高い場合には、指示メッセージを用いることが好ましい。
本発明の実施形態では、サーバーはクライアントにアトリビュート値パラメーターが「区別情報+データ」に設定されたHandle Value Indicationメッセージによってデータを送信する。データの種類は、区別情報によって区別されるため、アトリビュートハンドルパラメーターは意味のあるデータではない。従って、アトリビュートハンドルパラメーターは、例えば、データ通信用キャラクタリスティックのキャラクタリスティック値ハンドルに設定されればよい。Handle Value Indicationメッセージを受信すると、クライアントはアトリビュート値の最初の1バイトをデータの区別情報として解読する。区別情報が記録される位置(データの前又は後)及び/又は区別情報を記憶するスペースの大きさは、この実施形態に限定されない。また、クライアントは、Handle Value Indicationメッセージの受信をサーバーに確認させるために、応答メッセージであるHandle Value Confirmationメッセージをサーバーに送信する。
上記のサービス構造、データ要求、データ書き込み、及びデータ通知に基づいて、サーバーとクライアントの間のデータのやり取り方法を定義することができる。以下では、さまざまなシナリオによるデータやり取り方法のいくつかの実施形態を説明する。
<第1の実施形態>
本実施形態では、第1の装置100がサーバーとして、第2の装置200のアプリケーションがクライアントとして動作する。つまり、第1の装置100が図9に示された構造のサービスを持つ。換言すれば、第1の装置100のサービスは、データ要求用キャラクタリスティックと、データ通信用キャラクタリスティックとの2つのキャラクタリスティックで構成されている。また、本実施形態では、データの通信のために、上記のデータ要求、データ書き込み、及びデータの通知を組み合わせる。第1の装置100と第2の装置200のアプリケーションは、データ要求やデータ書き込み等の通信の順番を予め固定しておらず、第2装置200のアプリケーションに通信の順番を委ねるように構成される。
クライアントである第2の装置200のアプリケーションは、必要に応じて、サーバーである第1の装置100に対してデータ要求(図10を参照)又はデータ書き込み(図11及び図12を参照)を行う。クライアントである第2の装置200のアプリケーションは、必要な場合、適切なタイミングに(例えば、画面が遷移する時に)第1の装置100にデータを要求することができるので、第1の装置100から受信したデータをキャッシュしなくても良い。
図15は、第1の実施形態に係るデータ要求プロセスを示す例示的なフローチャートである。以下では、図2を一緒に参照して、図15について詳細に説明する。本例においては、サーバーは第1の装置100であり、クライアントは第2の装置200のアプリケーションである。
第1の装置100と第2の装置200の間の物理的コネクションと論理チャンネルが確立されると、第2の装置200は、利用可能なサービスを発見し、発見されたサービスに関する情報を取得するために近距離通信部204を介して、第1の装置100に対してサービス情報を要請する(ステップS1502)。第1の装置100は、上記のサービス情報の要請を受信すると(ステップS1520)、メモリ108に格納されたサービスの情報を読み出してサービス及びキャラクタリスティックの参照情報(例えば、ハンドルのようなインデックス)を含むサービス情報を、近距離通信部102を介して第2の装置200に送信する(ステップS1522)。上記サービス情報は、データ要求用キャラクタリスティックの参照情報(例えば、ハンドルのようなインデックス)と、データ通信用キャラクタリスティックの参照情報(例えば、ハンドルのようなインデックス)とを含む。第2の装置200は、近距離通信部204を介して上記サービス情報を受信し(ステップS1504)、上記サービス情報を記憶装置(例えば、メモリ108)に格納する。次に、第2の装置200のプロセッサ206は、データ要求用キャラクタリスティックの参照情報と、要求するデータの区別情報とを含むパケットを生成する(ステップS1506)。要求するデータの区別情報は、メモリ108から取得される。上述のように、当該パケットは、例えば、Write Commandメッセージである。次に、上記のパケットは、近距離通信部204を介して第1の装置100に送信される(ステップS1508)。
近距離通信部102を介して上記パケットを受信すると(ステップS1524)、第1の装置100のプロセッサ104は、上記パケットを解読する。具体的には、上記パケットに含まれているキャラクタリスティックの参照情報とデータの区別情報とに基づいて、第2の装置200が、上記区別情報に対応するデータを要求していると判断する。上記要求が有効な場合(ステップS1526:YES)、即ち、第2の装置200がデータを要求する権限を持つ同時に当該データを読み取ることが可能な場合には、メモリ108から上記データの区別情報に対応するデータを取得する(ステップS1528)。プロセッサ104は、サービス情報に含まれているデータ通信用キャラクタリスティックの参照情報と、データの区別情報と、データとを含むパケットを生成する(ステップS1530)。上記パケットは、近距離通信部102により、第2の装置200へ送信される(ステップS1532)。上述のように、当該パケットは、例えば、Handle Value Notificationメッセージである。
第2の装置200のプロセッサ206は、近距離通信部204を介して所定の時間(例えば、データ要求に対する応答の受信のために予め設定された待機時間)の内にデータを含むパケットを受信すると(ステップS1510:YES)、上記パケットからデータを抽出して、メモリ208に格納する(ステップS1512)。これによって図15のデータ要求プロセスは終了する。
一方、第2の装置200からのデータ要求が有効でない場合(ステップS1526:NO)、第1の装置100は、プロセスを終了する。また、第2の装置200が上記所定の時間の内に第1の装置100からデータを含むパケットを受信できなかったり、エラーメッセージを受信したりする場合は(ステップS1510:NO)、第2の装置200は、例えば、表示部214にエラーメッセージを表示することによって、データの要求に失敗したことをユーザに知らせる(ステップS1514)。次に、データ要求プロセスを終了する。この場合は、ステップS1508に戻って、第2装置200のアプリケーションが第1の装置100に再度データの要求を行うこともできる。
図16は、第1の実施形態に係るデータ書込みプロセスを示す例示的なフローチャートである。以下では、図2を一緒に参照して、図16について詳細に説明する。本例では、サーバーは第1の装置100であり、クライアントは第2の装置200のアプリケーションである。以下の説明は、図15に関連して説明したサービスディスカバリー手続き(ステップS1502、S1504、S1520、及びS1522)が既に行われたことを前提とする。
第2の装置200のプロセッサ206は、データ通信用キャラクタリスティックの参照情報(例えば、ハンドルのようなインデックス)と、書き込むデータと、当該データの区別情報とを含むパケットを生成する(ステップS1602)。上述のように、当該パケットは、例えば、Write Requestメッセージである。次に、上記のパケットは、近距離通信部204を介して、第1の装置100に送信される(ステップS1604)。
近距離通信部102を介して上記パケットを受信すると(ステップS1620)、第1の装置100のプロセッサ104は、上記パケットを解読する。具体的には、上記パケットに含まれているキャラクタリスティックの参照情報と、データの区別情報とに基づいて、第2の装置200が上記区別情報に対応するデータの書き込みを要請していると判断する。上記の要請が有効な場合(ステップS1622:YES)、即ち、第2の装置200がデータの書き込みを要請する権限を持ち、同時に、当該データの書き込みが可能な場合には、メモリ108に上記データを記入する(ステップS1624)。上記データが正常に書き込まれると、プロセッサ104は、応答メッセージであるWrite Responseを生成し(ステップS1626)、近距離通信部102を介して第2の装置200に上記応答メッセージを送信する(ステップS1628)。第2の装置200のプロセッサ206は、近距離通信部204を介して所定の時間(例えば、データ書き込み要請に対する応答の受信のために予め設定された待機時間)の内に応答メッセージが受信されると(ステップS1608:YES)、図16のデータ書込みプロセスを終了する。
一方、第2の装置200からのデータ書き込みの要請が有効でない場合(ステップS1622:NO)、第1の装置100はプロセスを終了する。また、第2の装置200が上記所定の時間の内に第1の装置100からの応答メッセージを受信できなかったり、エラーメッセージを受信したりする場合(ステップS1608:NO)、第2の装置200は、例えば、表示部214にエラーメッセージを表示することにより、データの書き込みに失敗したことをユーザに知らせる(ステップS1610)。これによって、データ書き込みプロセスを終了する。この場合は、ステップS1604に戻って、第2の装置200のアプリケーションが第1の装置100に再度データ書き込みを要請することもできる。
図17は、第1の実施形態に係るデータ通知プロセスを示す例示的なフローチャートである。以下では、図2を一緒に参照して、図17について詳細に説明する。本例では、サーバーは第1の装置100であり、クライアントは第2の装置200のアプリケーションである。以下の説明は、図15に関連して説明したサービスディスカバリー手続き(ステップS1502、S1504、S1520、及びS1522)が既に行われたことを前提とする。
第1の装置100のプロセッサ104は、メモリ108から、第2の装置200のアプリケーションに通知するデータを取得する(ステップS1702)。そして、データ通信用キャラクタリスティックの参照情報(例えば、ハンドルのようなインデックス)と、ステップS1702において取得されたデータと、当該データの区別情報と、を含むパケットを生成する(ステップS1704)。上述のように、当該パケットは、例えば、Handle Value Indicationメッセージである。次に、上記のパケットは、近距離通信部102を介して第2の装置200に送信される(ステップS1706)。近距離通信部204を介して上記パケットを受信すると(ステップS1720)、第2の装置200のプロセッサ206は、上記パケットを解読する。具体的には、上記パケットに含まれているデータの区別情報に基づいて、第1の装置100が、当該区別情報に対応するデータを通知すると判断する。上記データが正常に受信されると、プロセッサ206は、応答メッセージであるHandle Value Confirmationを生成し(ステップS1722)、近距離通信部204を介して、第1の装置100に上記応答メッセージを送信する(ステップS1724)。第1の装置100のプロセッサ104は、近距離通信部102を介して所定の時間(例えば、データの通知に対する応答の受信のために予め設定された待機時間)の内に応答メッセージが受信されると(ステップS1708:YES)、図17のデータ通知プロセスを終了する。
一方、第1の装置100が上記所定の時間の内に第2の装置200からの応答メッセージを受信できなかったり、エラーメッセージを受信したりする場合は(ステップS1708:NO)、第1の装置100は、例えば、表示部114にエラーメッセージを表示することにより、データの通知に失敗したことをユーザに知らせる(ステップS1710)。これによって、データの通知プロセスを終了する。この場合は、ステップS1706に戻って、第1の装置100が第2の装置200に再度通知メッセージを送信することもできる。
<第2の実施形態>
本実施形態では、第1の装置100がサーバーとして、第2の装置200のアプリケーションがクライアントとして動作する。第1の実施形態とは違い、サーバーである第1の装置100のサービスは、データ通信用キャラクタリスティックのみを有する。また、データの通信のために、上記のデータ書き込み及びデータの通知を組み合わせて使用する。データ要求を用いない代わりに、即ち、データ要求用のキャラクタリスティックをサーバーに実装していない代わりに、サーバーである第1の装置100とクライアントである第2の装置200のアプリケーションとの間の通信の順序を固定する。本実施形態では、クライアントである第2の装置200のアプリケーションが第1の装置100にデータ要求をすることができないので、第1の装置100から告知又は指示メッセージによって受信したデータをキャッシュする必要がある。
<第3の実施形態>
図18は、本発明の第3の実施形態に係るデータ通信方法を示す。本実施形態は、第1の実施形態とは違い、第1の装置100と第2の装置200のアプリケーションとがサーバー及びクライアントとして動作する。第1の装置100にはデータ通信用キャラクタリスティックが実装され、第2の装置200のアプリケーションにはデータ要求用キャラクタリスティックが実装される。
第2の装置200のアプリケーションが第1の装置100にデータを要求する場合は、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ要求用キャラクタリスティックのハンドルと、要求データの区別情報とに設定されたHandle Value Notificationメッセージを第1の装置100に送信する。上記Handle Value Notificationメッセージを正常に受信すると、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するデータを要求すると判断する。この要求が有効である場合、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと「区別情報+データ」とに設定されたHandle Value Notificationメッセージを、第2の装置200のアプリケーションに送信する。これによって、第2の装置200のアプリケーションからの第1の装置100へのデータ要求が行われることができる。一方、上記告知メッセージの少なくとも一つをHandle Value Indicationメッセージに取り替えることも可能である。指示メッセージが正常に受信される場合は、受信側は送信側に確認メッセージを送信する。
第2の装置200のアプリケーションが第1の装置100にデータの書き込みを要請する場合は、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたWrite Requestメッセージを第1の装置100に送信する。上記Write Requestメッセージを受信すると、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するアトリビュート値に上記データを記入することを要請すると判断する。データが正常に書き込まれると、第1の装置100は、Write Responseメッセージを第2の装置200のアプリケーションに送信する。一方、上記Write RequestメッセージをWrite Commandメッセージに切り替えることも可能である。この場合は、データが正常に書き込まれた場合も、第1の装置100は、応答メッセージを送らない。従って、第1の装置100の電力消費を減らすことができる。しかし、データの重要度が高い場合は、Write Requestメッセージを用いることが好ましい。
第1の装置100が第2の装置200のアプリケーションにデータを通知しようとする場合は、示されたように、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。一方、上記Handle Value Notificationメッセージを、Handle
Value Indicationメッセージに切り替えることも可能である。Handle Value Indicationメッセージが正常に受信された場合は、受信側は送信側にHandle Value Confirmationメッセージを送信する。
<第4の実施形態>
図19は、本発明の第4の実施形態に係るデータ通信方法を示す。本実施形態は、第1の実施形態とは違い、第1の装置100と第2の装置200のアプリケーションとが、サーバー及びクライアントとして動作する。第1の装置100と第2の装置200のアプリケーションとのそれぞれには、データ通信用キャラクタリスティックが実装される。
本実施形態では、一種類のキャラクタリスティックのみを用いるため、データ要求とデータ通信を判別するためのフラグ(Flag)が更に用いられる。後述するように、上記フラグは、パケットの用途を判別するために使用される。図示された実施形態では、パケットのペイロードに含まれているフラグ値が0x00である場合はデータ書き込みと、0x01である場合はデータの要求と、0x02である場合はデータの通知と解読される。
第2の装置200のアプリケーションが第1の装置100にデータを要求する場合は、示されたように、第2の装置200は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと、「要求データの区別情報+フラグ0x01」に設定されたHandle Value Notificationメッセージを生成し、これを第1の装置100に送信する。上記Handle Value Notificationメッセージを正常に受信すると、第1の装置100は、受信されたHandle Value Notificationメッセージを解読する。フラグの値が0x01に設定されているので、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するデータを要求したと判断する。この要求が有効であれば、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと「区別情報+フラグ0x01+データ」に設定されたHandle Value Notificationメッセージを第2の装置200に送信する。これによって、第2の装置200のアプリケーションからの第1の装置100へのデータ要求が行われることができる。一方、上記告知メッセージの少なくとも一つをHandle Value Indicationメッセージに切り替えることも可能である。指示メッセージが正常に受信された場合は、受信側は送信側に確認メッセージを送信する。また、図示された実施形態では、パケットのデータフィールド内に区別情報、フラグ、データの順に記録するが、記録の順序を変更することも可能である。
第1の装置100が第2の装置200のアプリケーションにデータを要求する場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと、「要求データの区別情報+フラグ0x01」とに設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。上記Handle Value Notificationメッセージを正常に受信すると、第2の装置200のアプリケーションは、受信されたHandle Value Notificationメッセージを解読する。フラグの値が0x01に設定されているので、第2の装置200は、第1の装置100が、上記区別情報に対応するデータを要求すると判断する。この要求が有効であれば、第2の装置200のアプリケーションは、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x01+データ」とに設定されたHandle Value Notificationメッセージを第1の装置100に送信する。これによって、第1の装置100からの第2の装置200のアプリケーションへのデータ要求が行われることができる。一方、上記告知メッセージの少なくとも一つをHandle Value Indicationメッセージに切り替えることも可能である。指示メッセージが正常に受信された場合は、受信側は送信側に確認メッセージを送信する。また、図示された実施形態では、パケットのデータフィールド内に区別情報、フラグ、データの順に記録するが、記録の順序を変更することも可能である。
第2の装置200のアプリケーションが第1の装置100にデータの書き込みを要請しようとする場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x00+データ」と、に設定されたHandle Value Notificationメッセージを第1の装置100に送信する。上記Handle Value Notificationメッセージを受信すると、第1の装置100は、受信されたHandle Value Notificationメッセージを解読する。フラグの値が0x00に設定されているので、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するアトリビュート値に上記データを記入することを要請したと判断する。また、図示された実施形態では、パケットのデータフィールド内に区別情報、フラグ、データの順に記録するが、記録の順序を変更することも可能である。一方、上記告知メッセージをHandle Value
Indicationメッセージに切り替えることも可能である。
第1の装置100が第2の装置200のアプリケーションにデータの書き込みを要請しようとする場合には、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、当該装置に実装されたデータ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x00+データ」と、に設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。上記Handle Value Notificationメッセージを受信すると、第2の装置200のアプリケーションは、受信されたHandle Value Notificationメッセージを解読する。フラグの値が0x00に設定されているので、第2の装置200のアプリケーションは、第1の装置100が、上記区別情報に対応するアトリビュート値に上記データを記入することを要請したと判断する。また、図示された実施形態では、パケットのデータフィールド内に区別情報、フラグ、データの順に記録するが、記録の順序を変更することも可能である。一方、上記告知メッセージをHandle Value Indicationメッセージに切り替えることも可能である。
第1の装置100が第2の装置200のアプリケーションにデータを通知しようとする場合には、示されたように、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x02+データ」と、に設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。一方、上記Handle Value NotificationメッセージをHandle Value Indicationメッセージに切り替えることも可能である。Handle Value Indicationメッセージが正常に受信された場合は、受信側は送信側にHandle Value Confirmationメッセージを送信する。
第2の装置200のアプリケーションが第1の装置100にデータを通知しようとする場合には、第2の装置200のアプリケーションは、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x02+データ」と、に設定されたHandle
Value Notificationメッセージを第1の装置100に送信する。一方、上記Handle Value NotificationメッセージをHandle Value Indicationメッセージに切り替えることも可能である。
<第5の実施形態>
図20は、本発明の第5の実施形態に係るデータ通信方法を示す。本実施形態では、第4の実施形態と同様に、第1の装置100と第2の装置200のアプリケーションとが、サーバー及びクライアントとして動作し、第1の装置100と第2の装置200のアプリケーションとのそれぞれには、データ通信用キャラクタリスティックが実装される。しかし、第4の実施形態とは違い、データ要求とデータ通信を判別するフラグを用いず、有効なデータの有無に応じて、データ要求とデータ通信を判別する。
第2の装置200のアプリケーションが第1の装置100にデータを要求する場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、要求データの区別情報とに設定されたHandle Value Notificationメッセージを第1の装置100に送信する。上記Handle Value Notificationメッセージを正常に受信すると、第1の装置100は、受信されたHandle Value Notificationメッセージを解読する。上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出されない場合は、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するデータを要求すると判断する。この要求が有効であれば、第1の装置100は、アトリビュートハンドルパラメーターと、アトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。これによって、第2の装置200のアプリケーションからの第1の装置100へのデータ要求が行われることができる。この場合にも、上記告知メッセージの少なくとも一つをHandle Value
Indicationメッセージに切り替えることが可能である。
第1の装置100が第2の装置200のアプリケーションにデータを要求する場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、要求するデータの区別情報とに設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。上記Handle Value
Notificationメッセージを正常に受信すると、第2の装置200は、受信されたHandle Value Notificationメッセージを解読する。上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出されない場合は、第2の装置200は、第1の装置100が上記区別情報に対応するデータを要求すると判断する。この要求が有効であれば、第2の装置200のアプリケーションは、アトリビュートハンドルパラメーターと、アトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたHandle Value Notificationメッセージを第1の装置100に送信する。これによって、第1の装置100からの第2の装置200のアプリケーションへのデータ要求が行われることができる。この場合にも、上記告知メッセージの少なくとも一つをHandle Value Indicationメッセージに切り替えることが可能である。
第2の装置200のアプリケーションが第1の装置100にデータの書き込みを要請しようとする場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたWrite Commandメッセージを第1の装置100に送信する。上記Write Commandメッセージを受信すると、第1の装置100は、受信したWrite Commandメッセージを解読する。上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出される場合は、第1の装置100は、第2の装置200のアプリケーションが上記区別情報に対応するアトリビュート値に上記データを記入することを要求すると判断する。この場合、Write Commandメッセージは、Write Requestメッセージに切り替えることが可能である。
第1の装置100が第2の装置200のアプリケーションにデータの書き込みを要請しようとする場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたWrite Commandメッセージを第2の装置200のアプリケーションに送信する。上記Write Commandメッセージを受信すると、第2の装置200のアプリケーションは、受信したWrite Commandメッセージを解読する。上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出される場合は、第2の装置200は、第1の装置100が上記区別情報に対応するアトリビュート値に上記データを記入することを要求すると判断する。この場合、Write Commandメッセージは、Write Requestメッセージに切り替えることが可能である。
第1の装置100が第2の装置200のアプリケーションにデータを通知しようとする場合には、示されたように、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」に設定されたHandle Value Notificationメッセージを第2の装置200のアプリケーションに送信する。この場合も、上記Handle Value NotificationメッセージをHandle Value Indicationメッセージに切り替えることが可能である。
第2の装置200のアプリケーションが第1の装置100にデータを通知しようとする場合には、示されたように、第2の装置200のアプリケーションは、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」に設定されたHandle Value Notificationメッセージを第1の装置100に送信する。この場合も、上記Handle Value NotificationメッセージをHandle Value Indicationメッセージに切り替えることが可能である。
<第6の実施形態>
図21は、本発明の第6の実施形態に係るデータ通信方法を示す。本実施形態は、第1の装置100がサーバーとして動作し、第2の装置200のアプリケーションがクライアントとして動作する。第2の実施形態と同様に、サーバーにデータ通信用キャラクタリスティックのみが実装される。そして、データ要求とデータ通信を判別するフラグを使用するという点において、第4の実施形態と類似している。
第2の装置200のアプリケーションが第1の装置100にデータを要求する場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、第1の装置100のキャラクタリスティックであるデータ通信用キャラクタリスティックのハンドルと、「要求データの区別情報+フラグ0x01」とに設定されたHandle Value Notificationメッセージを第1の装置100に送信する。一方、本実施形態では区別情報とフラグの順に記録するが、実施形態によっては、記録の順序を変更して、区別情報がフラグの後ろに記録される。上記Handle Value Notificationメッセージを正常に受信すると、第1の装置100は、上記メッセージに含まれているフラグの値が0x01である場合、第2の装置200のアプリケーションが上記区別情報に対応するデータを要求すると判断する。この要求が有効であれば、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x01+データ」とに設定されたHandle Value Notificationメッセージを、第2の装置200のアプリケーションに送信する。一方、本実施形態では区別情報、フラグ、データの順に記録するが、実施形態によっては、記録の順序を変更することも可能である。これによって、第2の装置200のアプリケーションからの第1の装置100へのデータ要求が行われることができる。一方、上記Handle Value Notificationメッセージを、Handle Value Indicationメッセージに切り替えることも可能である。
第2の装置200のアプリケーションが第1の装置100にデータの書込みを要請しようとする場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x00+データ」とに設定されたWrite requestメッセージを第1の装置100に送信する。一方、本実施形態では区別情報、フラグ、データの順に記録するが、実施形態によっては、記録の順序を変更することも可能である。上記Write requestメッセージを受信すると、第1の装置100は、上記メッセージに含まれているフラグの値が0x00である場合、第2の装置200のアプリケーションが上記区別情報に対応するアトリビュート値に上記データを書き込むことを要請すると判断する。上記データが正常に記録されれば、第1の装置100は第2の装置200のアプリケーションにWrite Responseメッセージを送信する。データの重要度が高くない場合、又は、第1の装置100の消費電力を低減させるべき場合は、第2の装置200のアプリケーションが応答メッセージを伴わないWrite Commandメッセージを送信することも可能である。
第1の装置100が第2の装置200のアプリケーションにデータを通知しようとする場合には、示されたように、第1の装置100は、Attribute Handleパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+フラグ0x02+データ」とに設定されたHandle Value Notificationメッセージを第2の装置200に送信する。一方、上記Handle Value NotificationメッセージをHandle Value Indicationメッセージに切り替えることも可能である。Handle Value Indicationメッセージが正常に受信される場合に、第2の装置200のアプリケーションは、第1の装置100にHandle Value Confirmationメッセージを送信する。
<第7の実施形態>
図22は、本発明の第7の実施形態に係るデータ通信方法を示す。本実施形態は、第1の装置100がサーバーとして動作し、第2の装置200のアプリケーションがクライアントとして動作する。第2の実施形態と同様に、サーバーにデータ通信用キャラクタリスティックのみが実装される。そして、有効なデータの有無に応じて、データ要求とデータ通信を判別するという点においては、第5の実施形態と類似している。
第2の装置200のアプリケーションが第1の装置100にデータを要求する場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、要求するデータの区別情報とに設定されたWrite Commandメッセージを第1の装置100に送信する。第1の装置100は、上記Write Commandメッセージを受信すると、このメッセージを解析する。第1の装置100は、上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出されない場合は、第2の装置200のアプリケーションが上記区別情報に対応するデータを要求すると判断する。この要求が有効であれば、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたHandle Value Notificationメッセージを、第2の装置200のアプリケーションに送信する。これによって、第2の装置200のアプリケーションからの第1の装置100へのデータ要求が行われることができる。この場合にも、上記Handle Value Notificationメッセージを、Handle Value Indicationメッセージに切り替えることが可能である。
第2の装置200のアプリケーションが第1の装置100にデータの書き込みを要請しようとする場合には、示されたように、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたWrite Requestメッセージを第1の装置100に送信する。第1の装置100は、上記Write Requestメッセージを受信すると、このメッセージを解析する。第1の装置100は、上記メッセージのペイロードのデータフィールドにおいて、区別情報の後ろで、当該区別情報に対応する設定値として有効なデータが抽出される場合は、第2の装置200のアプリケーションが上記区別情報に対応するアトリビュート値に上記データを記入することを要請すると判断する。データが正常に書き込まれると、第1の装置100は、第2の装置200のアプリケーションにWrite Responseメッセージを送信する。この場合、Write
Requestメッセージを、Write Commandメッセージに切り替えることも可能である。
第1の装置100が第2の装置200のアプリケーションにデータを通知しようとする場合には、示されたように、第1の装置100は、アトリビュートハンドルパラメーターとアトリビュート値パラメーターとのそれぞれが、データ通信用キャラクタリスティックのハンドルと、「区別情報+データ」とに設定されたHandle Value Notificationメッセージを第2の装置200に送信する。この場合も、上記Handle Value NotificationメッセージをHandle Value
Indicationメッセージに切り替えることが可能である。
図23は上記の実施形態の構成及び特徴を要約したテーブルである。示されたように、実施形態によって、第1の装置/第2の装置に実装されるキャラクタリスティックの数と種類、及び/又は、メッセージの判別方法が異なる。第1の実施形態、第3乃至第7の実施形態は、必要に応じてデータの要求が可能であるので、通信順序に自由度が高い。第2の実施形態は、一つのキャラクタリスティックでサービスを構成する。第3乃至第5の実施形態は、第1の装置と第2の装置との相互間にサービスディスカバリーを行う。
以上、本発明をブルートゥース(Bluetooth(登録商標))、特に、BLEに適用した実施形態について説明したが、本発明の適用分野はこれに限定されないし、例えば、他の無線通信技術にも適用可能である。特に、サービスとキャラクタリスティックの概念を用いる無線通信技術に適用可能である。
本発明が属する技術分野における通常の知識を有する者は、上記説明及び関連図面から本発明の多くの変形及び他の実施形態を導出することができる。従って、本発明は開示された特定の実施形態に限定されない。本明細書では、複数の特定用語が使われているが、これらは一般的な意味として単に説明の目的のために使われただけであり、発明を制限する目的で使われたものではない。添付の特許請求の範囲及びその均等物により定義される一般的な発明の概念及び思想を抜け出さない範囲で多様な変形が可能である。
(付記1)
無線通信のできる装置であって、
通信パケットを他の通信装置と送受信する通信部と、
サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリと、
プロセッサと、
を備え、
前記プロセッサは、前記データ通信のための機能に関連付けられた参照情報と、前記データと、前記区別情報と、を含むパケットを生成することを特徴とする通信装置。
(付記2)
無線通信のできる装置であって、
通信パケットを他の通信装置と送受信する通信部と、
プロセッサと、
を備え、
前記プロセッサは、サービスを構成する少なくとも一つの機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成することを特徴とする通信装置。
(付記3)
前記参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリ
を備えることを特徴とする付記2に記載の通信装置。
(付記4)
前記区別情報は、前記パケットのペイロードに記憶されることを特徴とする付記1乃至3の何れか1項に記載の通信装置。
(付記5)
前記区別情報は、他の通信装置によって要求されるデータの区別情報であることを特徴とする付記1乃至4の何れか1項に記載の通信装置。
(付記6)
前記通信部を介して他の通信装置からパケットが受信される場合に、
前記プロセッサは、前記パケットに含まれた機能の参照情報に基づいて、前記他の通信装置との通信を制御することを特徴とする付記1乃至5の何れか1項に記載の通信装置。
(付記7)
前記通信部を介して他の通信装置からパケットが受信される場合に、
前記プロセッサは、前記パケットに含まれたフラグの値に基づいて、前記他の通信装置との通信を制御することを特徴とする付記2乃至5の何れか1項に記載の通信装置。
(付記8)
無線通信のできる装置であって、
通信パケットを他の通信装置と送受信する通信部と、(図2(A);102)
サービスを構成するデータ通信のための機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリと、
プロセッサと、
を備え、
前記通信部を介して他の通信装置からパケットが受信される場合に、
前記プロセッサは、前記パケットのペイロードに前記区別情報及び当該区別情報に対応付けられたデータが含まれているかどうかに基づいて、前記他の通信装置との通信を制御することを特徴とする通信装置。
(付記9)
前記通信部を介して他の通信装置から特定の区別情報に対応するデータを要求するパケットが受信される場合に、
前記プロセッサは、前記メモリから前記特定の区別情報に対応するデータを取得し、一つの機能の参照情報と、取得されたデータと、前記データの区別情報と、を含むパケットを生成することを特徴とする付記1乃至8の何れか1項に記載の通信装置。
(付記10)
付記1乃至9の何れか1項に記載の通信装置と、
現在の日時を計数する計時部と、
前記計時部が計数した前記日時を表示する表示部と、
を備えることを特徴とする電子時計。
(付記11)
無線通信のできる装置であって、
他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を受信し、通信パケットを他の通信装置と送受信する通信部と、
一つ又はそれ以上のデータの区別情報を記憶するメモリと、
プロセッサと、
を備え、
前記プロセッサは、第1の機能の参照情報と、一つのデータの区別情報と、を含むパケットを生成することを特徴とする通信装置。
(付記12)
前記区別情報は、前記パケットのペイロードに記憶されることを特徴とする付記11に記載の通信装置。
(付記13)
前記プロセッサは、前記第1の機能とは異なる第2の機能の参照情報と、データと、前記データの区別情報と、を含むパケットを生成することを特徴とする付記11又は12に記載の通信装置。
(付記14)
前記パケットは、当該パケットの用途を判別するためのフラッグを更に含むことを特徴とする付記11又は12に記載の通信装置。
(付記15)
サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報を記憶するメモリを備えた無線通信装置の通信方法であって、
他の通信装置に送信するデータを取得するステップと、
前記データ通信のための機能に関連付けられた参照情報と、取得されたデータと、前記データを区別するための区別情報と、を含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を備えることを特徴とする通信方法。
(付記16)
無線通信装置の通信方法であって、
他の通信装置に送信するデータを取得するステップと、
データ通信に関連する機能の参照情報と、取得されたデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を備えることを特徴とする通信方法。
(付記17)
無線通信のできる装置の通信方法であって、
他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を含むサービス情報を受信するステップと、
メモリから、前記他の装置と関連するデータの区別情報を取得するステップと、
一つの機能の参照情報と、取得された区別情報と、を含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を備えることを特徴とする通信方法。
(付記18)
サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報を記憶するメモリを備えた無線通信のできる装置に、
他の通信装置に送信するデータを取得するステップと、
前記データ通信のための機能に関連付けられた参照情報と、取得されたデータと、前記データを区別するための区別情報と、を含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を実行させるプログラム。
(付記19)
無線通信のできる装置に、
他の通信装置に送信するデータを取得するステップと、
データ通信に関連する機能の参照情報と、取得されたデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を実行させるプログラム。
(付記20)
無線通信のできる装置に、
他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を含むサービス情報を受信するステップと、
メモリから、前記他の装置と関連するデータの区別情報を取得するステップと、
一つの機能の参照情報と、取得された区別情報と、を含むパケットを生成するステップと、
前記パケットを前記他の通信装置に送信するステップと、
を実行させるプログラム。
100 電子時計
200 スマートフォン
102 近距離通信部
104 プロセッサ
106 電源部
108 メモリ
110 時計部
112 入力部
114 表示部
202 遠距離通信処理部
204 近距離通信部
206 プロセッサ
208 メモリ
210 電源部
212 入力部
214 表示部
216 時計部
本発明は、通信装置、通信方法、及びこの通信方法を実行するためのプログラムに関する。
この発明の目的は、無線通信装置の間のコネクションプロセスを改善する方法、この方法を実行する通信装置、及びプログラムを提供することにある。
本発明の1つの態様は、ータ要求のための機能データ通信のための機能とのうち少なくとも一つ対応した参照情報と、前記機能の内容を区別する区別情報と、を記憶するメモリと、プロセッサと、通信部と、を備え、前記プロセッサは、データ要求またはデータ通信を行うために、前記メモリから前記参照情報または前記区別情報を取得し、取得した前記参照情報または前記区別情報を含むパケットを生成し、前記通信部は、前記パケットを第2の通信装置に送信する。

Claims (21)

  1. 無線通信のできる装置であって、
    通信パケットを他の通信装置と送受信する通信部と、
    サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリと、
    プロセッサと、
    を備え、
    前記プロセッサは、前記データ通信のための機能に関連付けられた参照情報と、前記データと、前記区別情報と、を含むパケットを生成することを特徴とする通信装置。
  2. 前記通信部を介して他の通信装置から特定の区別情報に対応するデータを要求するパケットが受信される場合に、
    前記プロセッサは、前記メモリから前記特定の区別情報に対応するデータを取得し、一つの機能の参照情報と、取得されたデータと、前記データの区別情報と、を含むパケットを生成することを特徴とする請求項1に記載の通信装置。
  3. 無線通信のできる装置であって、
    通信パケットを他の通信装置と送受信する通信部と、
    プロセッサと、
    を備え、
    前記プロセッサは、サービスを構成する少なくとも一つの機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成することを特徴とする通信装置。
  4. 前記参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリ
    を備えることを特徴とする請求項3に記載の通信装置。
  5. 前記通信部を介して他の通信装置から特定の区別情報に対応するデータを要求するパケットが受信される場合に、
    前記プロセッサは、前記メモリから前記特定の区別情報に対応するデータを取得し、一つの機能の参照情報と、取得されたデータと、前記データの区別情報と、を含むパケットを生成することを特徴とする請求項4に記載の通信装置。
  6. 前記区別情報は、前記パケットのペイロードに記憶されることを特徴とする請求項1乃至5の何れか1項に記載の通信装置。
  7. 前記区別情報は、他の通信装置によって要求されるデータの区別情報であることを特徴とする請求項1乃至6の何れか1項に記載の通信装置。
  8. 前記通信部を介して他の通信装置からパケットが受信される場合に、
    前記プロセッサは、前記パケットに含まれた機能の参照情報に基づいて、前記他の通信装置との通信を制御することを特徴とする請求項1乃至7の何れか1項に記載の通信装置。
  9. 前記通信部を介して他の通信装置からパケットが受信される場合に、
    前記プロセッサは、前記パケットに含まれたフラグの値に基づいて、前記他の通信装置との通信を制御することを特徴とする請求項1乃至7の何れか1項に記載の通信装置。
  10. 無線通信のできる装置であって、
    通信パケットを他の通信装置と送受信する通信部と、
    サービスを構成するデータ通信のための機能に関連付けられた参照情報と、前記参照情報の前記機能に関連するデータと、前記データを区別するための区別情報と、を記憶するメモリと、
    プロセッサと、
    を備え、
    前記通信部を介して他の通信装置からパケットが受信される場合に、
    前記プロセッサは、前記パケットのペイロードに前記区別情報及び当該区別情報に対応付けられたデータが含まれているかどうかに基づいて、前記他の通信装置との通信を制御することを特徴とする通信装置。
  11. 請求項1乃至10の何れか1項に記載の通信装置と、
    現在の日時を計数する計時部と、
    前記計時部が計数した前記日時を表示する表示部と、
    を備えることを特徴とする電子時計。
  12. 無線通信のできる装置であって、
    他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を受信し、通信パケットを他の通信装置と送受信する通信部と、
    一つ又はそれ以上のデータの区別情報を記憶するメモリと、
    プロセッサと、
    を備え、
    前記プロセッサは、第1の機能の参照情報と、一つのデータの区別情報と、を含むパケットを生成することを特徴とする通信装置。
  13. 前記区別情報は、前記パケットのペイロードに記憶されることを特徴とする請求項12に記載の通信装置。
  14. 前記プロセッサは、前記第1の機能とは異なる第2の機能の参照情報と、データと、前記データの区別情報と、を含むパケットを生成することを特徴とする請求項12又は13に記載の通信装置。
  15. 前記パケットは、当該パケットの用途を判別するためのフラッグを更に含むことを特徴とする請求項12又は13に記載の通信装置。
  16. サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報を記憶するメモリを備えた無線通信装置の通信方法であって、
    他の通信装置に送信するデータを取得するステップと、
    前記データ通信のための機能に関連付けられた参照情報と、取得されたデータと、前記データを区別するための区別情報と、を含むパケットを生成するステップと、
    前記パケットを前記他の通信装置に送信するステップと、
    を備えることを特徴とする通信方法。
  17. 無線通信装置の通信方法であって、
    他の通信装置に送信するデータを取得するステップと、
    データ通信に関連する機能の参照情報と、取得されたデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成するステップと、
    前記パケットを前記他の通信装置に送信するステップと、
    を備えることを特徴とする通信方法。
  18. 無線通信のできる装置の通信方法であって、
    他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を含むサービス情報を受信するステップと、
    メモリから、前記他の通信装置と関連するデータの区別情報を取得するステップと、
    一つの機能の参照情報と、取得された区別情報と、を含むパケットを生成するステップと、
    前記パケットを前記他の通信装置に送信するステップと、
    を備えることを特徴とする通信方法。
  19. サービスを構成するデータ要求のための機能及びデータ通信のための機能に関連付けられた参照情報を記憶するメモリを備えた無線通信のできる装置に、
    他の通信装置に送信するデータを取得するステップと、
    前記データ通信のための機能に関連付けられた参照情報と、取得されたデータと、前記データを区別するための区別情報と、を含むパケットを生成するステップと、
    前記パケットを前記他の通信装置に送信するステップと、
    を実行させるプログラム。
  20. 無線通信のできる装置に、
    他の通信装置に送信するデータを取得するステップと、
    データ通信に関連する機能の参照情報と、取得されたデータと、前記データを区別するための区別情報と、パケットの用途を判別するためのフラグとを含むパケットを生成するステップと、
    前記パケットを前記他の通信装置に送信するステップと、
    を実行させるプログラム。
  21. 無線通信のできる装置に、
    他の通信装置から、サービスを構成する少なくとも一つの機能の参照情報を含むサービス情報を受信するステップと、
    メモリから、前記他の通信装置と関連するデータの区別情報を取得するステップと、
    一つの機能の参照情報と、取得された区別情報と、を含むパケットを生成するステップと、前記パケットを前記他の通信装置に送信するステップと、
    を実行させるプログラム。
JP2021119194A 2017-03-27 2021-07-20 通信装置、通信方法、及びプログラム Active JP7163995B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021119194A JP7163995B2 (ja) 2017-03-27 2021-07-20 通信装置、通信方法、及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017061025A JP6919262B2 (ja) 2017-03-27 2017-03-27 通信装置、電子時計、通信方法、及びプログラム
JP2021119194A JP7163995B2 (ja) 2017-03-27 2021-07-20 通信装置、通信方法、及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017061025A Division JP6919262B2 (ja) 2017-03-27 2017-03-27 通信装置、電子時計、通信方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021180510A true JP2021180510A (ja) 2021-11-18
JP7163995B2 JP7163995B2 (ja) 2022-11-01

Family

ID=61911339

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017061025A Active JP6919262B2 (ja) 2017-03-27 2017-03-27 通信装置、電子時計、通信方法、及びプログラム
JP2021119194A Active JP7163995B2 (ja) 2017-03-27 2021-07-20 通信装置、通信方法、及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2017061025A Active JP6919262B2 (ja) 2017-03-27 2017-03-27 通信装置、電子時計、通信方法、及びプログラム

Country Status (5)

Country Link
US (1) US10686915B2 (ja)
EP (1) EP3383079B1 (ja)
JP (2) JP6919262B2 (ja)
KR (1) KR20180109677A (ja)
CN (1) CN108667897B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6542959B1 (ja) * 2018-06-27 2019-07-10 日本電信電話株式会社 無線通信システム、第一無線装置、第二無線装置及び無線通信方法
JP7147712B2 (ja) 2018-08-31 2022-10-05 株式会社デンソー 車両側装置、方法および記憶媒体
JP7156206B2 (ja) 2018-08-31 2022-10-19 株式会社デンソー 地図システム、車両側装置、およびプログラム
JP7251394B2 (ja) 2018-08-31 2023-04-04 株式会社デンソー 車両側装置、方法および記憶媒体
JP7167876B2 (ja) 2018-08-31 2022-11-09 株式会社デンソー 地図生成システム、サーバ、方法
JP2023047756A (ja) * 2021-09-27 2023-04-06 キヤノン株式会社 送電装置、受電装置、制御方法及びプログラム
IT202200005822A1 (it) * 2022-03-24 2023-09-24 Campagnolo Srl Metodi di comunicazione in un sistema elettronico di bicicletta

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014519236A (ja) * 2011-05-05 2014-08-07 ヴァレオ セキュリテ アビタクル 所定のプロトコルによる通信のためのユニット
US20150304843A1 (en) * 2014-04-21 2015-10-22 Jason Edward Robert Hillyard Systems and methods for short range wireless data transfer
US20160164693A1 (en) * 2013-07-17 2016-06-09 Samsung Electronics Co., Ltd. Communication method and apparatus using smart module in home network system
US20170048655A1 (en) * 2014-04-21 2017-02-16 Lg Electronics Inc. Method and apparatus for transmitting data using bluetooth low energy in wireless communication system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7856530B1 (en) * 2007-10-31 2010-12-21 Network Appliance, Inc. System and method for implementing a dynamic cache for a data storage system
JP2009143005A (ja) 2007-12-11 2009-07-02 Canon Inc プリンタ
WO2015080522A1 (en) * 2013-11-28 2015-06-04 Samsung Electronics Co., Ltd. Method and ultrasound apparatus for marking tumor on ultrasound elastography image
WO2016018028A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Device and method of setting or removing security on content
JP6582372B2 (ja) * 2014-08-26 2019-10-02 カシオ計算機株式会社 電子機器及び通信接続の制御方法
KR102318887B1 (ko) * 2015-03-06 2021-10-29 삼성전자주식회사 웨어러블 전자 장치 및 그 제어 방법
KR102336601B1 (ko) * 2015-08-11 2021-12-07 삼성전자주식회사 사용자의 활동 정보를 검출하기 위한 방법 및 그 전자 장치
US20170045603A1 (en) * 2015-08-14 2017-02-16 Tektronix, Inc. Synchronization of unstable signal sources for use in a phase stable instrument
CN105704653A (zh) * 2016-02-16 2016-06-22 北京小米移动软件有限公司 无线通信管理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014519236A (ja) * 2011-05-05 2014-08-07 ヴァレオ セキュリテ アビタクル 所定のプロトコルによる通信のためのユニット
US20160164693A1 (en) * 2013-07-17 2016-06-09 Samsung Electronics Co., Ltd. Communication method and apparatus using smart module in home network system
US20150304843A1 (en) * 2014-04-21 2015-10-22 Jason Edward Robert Hillyard Systems and methods for short range wireless data transfer
US20170048655A1 (en) * 2014-04-21 2017-02-16 Lg Electronics Inc. Method and apparatus for transmitting data using bluetooth low energy in wireless communication system

Also Published As

Publication number Publication date
EP3383079A1 (en) 2018-10-03
CN108667897A (zh) 2018-10-16
JP7163995B2 (ja) 2022-11-01
JP2018163077A (ja) 2018-10-18
JP6919262B2 (ja) 2021-08-18
CN108667897B (zh) 2021-03-09
US20180278726A1 (en) 2018-09-27
US10686915B2 (en) 2020-06-16
KR20180109677A (ko) 2018-10-08
EP3383079B1 (en) 2020-12-02

Similar Documents

Publication Publication Date Title
JP6919262B2 (ja) 通信装置、電子時計、通信方法、及びプログラム
US10827334B2 (en) Method and apparatus for connecting devices using Bluetooth LE technology
JP6396482B2 (ja) 無線通信システムにおけるブルートゥース低電力エネルギーを利用してオブジェクト送信サービスを行うための方法及び装置
AU2014269271B2 (en) Electronic device using logical channels for communication
JP5000711B2 (ja) ワイヤレス・ネットワークにおいて発見情報を伝達するメカニズム
EP3893109B1 (en) Method and device for connecting bluetooth devices
US20170208639A1 (en) Method and apparatus for controlling a device using bluetooth technology
EP3550888A1 (en) Wireless connection switching method and terminal
TW201204105A (en) Methods and apparatus to authenticate requests for network capabilities for connecting to an access network
EP3442250B1 (en) Data transmission
US11736919B2 (en) Method for receiving audio data by using bluetooth technology, and device therefor
KR102398992B1 (ko) 통신 장치, 통신 방법, 및 기억 매체에 저장된 프로그램
US11622196B2 (en) Method for transmitting audio data by using short-range wireless communication in wireless communication system, and apparatus for same
US10194477B2 (en) Method and apparatus for controlling a device using bluetooth technology
US10484293B2 (en) Communication device, communication method, and storage medium
US20210243599A1 (en) User authentication method through bluetooth device and device therefor
US11367449B2 (en) Method and apparatus for calling voice recognition service by using Bluetooth low energy technology
WO2009122722A1 (ja) 無線通信端末およびデバイス起動方法
WO2023246648A1 (zh) 蓝牙数据的处理方法、终端设备和可读存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210805

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220831

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220920

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221003

R150 Certificate of patent or registration of utility model

Ref document number: 7163995

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150