JP2022130506A - アクティブスタイラスとセンサコントローラとの間の双方向通信に供される方法およびアクティブスタイラス - Google Patents

アクティブスタイラスとセンサコントローラとの間の双方向通信に供される方法およびアクティブスタイラス Download PDF

Info

Publication number
JP2022130506A
JP2022130506A JP2022098901A JP2022098901A JP2022130506A JP 2022130506 A JP2022130506 A JP 2022130506A JP 2022098901 A JP2022098901 A JP 2022098901A JP 2022098901 A JP2022098901 A JP 2022098901A JP 2022130506 A JP2022130506 A JP 2022130506A
Authority
JP
Japan
Prior art keywords
stylus
active stylus
sensor controller
orientation
sensor
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
JP2022098901A
Other languages
English (en)
Other versions
JP7271770B2 (ja
Inventor
デイヴィッド チャールズ フレック
Charles Fleck David
定雄 山本
Sadao Yamamoto
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.)
Wacom Co Ltd
Original Assignee
Wacom 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
Priority claimed from US15/069,793 external-priority patent/US9448646B1/en
Application filed by Wacom Co Ltd filed Critical Wacom Co Ltd
Publication of JP2022130506A publication Critical patent/JP2022130506A/ja
Priority to JP2023072463A priority Critical patent/JP7441994B2/ja
Application granted granted Critical
Publication of JP7271770B2 publication Critical patent/JP7271770B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • G06F3/0383Signal control means within the pointing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0414Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means using force sensing means to determine a position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/04162Control or interface arrangements specially adapted for digitisers for exchanging data with external devices, e.g. smart pens, via the digitiser sensing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0442Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using active external devices, e.g. active pens, for transmitting changes in electrical potential to be received by the digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0446Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using a grid-like structure of electrodes in at least two directions, e.g. using row and column electrodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/026Services making use of location information using location based information parameters using orientation information, e.g. compass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • H04W72/044Wireless resource allocation based on the type of the allocated resource
    • H04W72/0446Resources in time domain, e.g. slots or frames

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

【課題】検知領域に入る1つまたは複数のアクティブスタイラスの機能情報をセンサコントローラが即座に判別することによってスタイラスとの双方向通信を開始することを可能とする。【解決手段】アクティブスタイラス100は、1つまたは複数のオリエンテーションセンサがアクティブスタイラス100に備えられているか否かを示すスタイラス機能情報をセンサコントローラ200に送信し、センサコントローラ200は、受信したスタイラス機能情報に基づいて、上記1つまたは複数のオリエンテーションセンサによって計測される対応した1つまたは複数の種類のオリエンテーションデータを送信するようにアクティブスタイラス100に要求し、アクティブスタイラス100は、センサコントローラ200からの該要求に応答して、上記1つまたは複数の種類のオリエンテーションデータを送信する。【選択図】図1

Description

(関連出願の相互参照)
本出願は、2015年4月20日に出願された「位置入力方法、位置入力システム、センサコントローラ、およびスタイラス」と題する米国仮特許出願第62/149,907号、2015年5月15日に出願された「位置入力方法、位置入力システム、センサコントローラ、およびスタイラス」と題する米国仮特許出願第62/162,527号、2015年10月19日に出願された「位置入力方法、位置入力システム、センサコントローラ、およびスタイラス」と題する米国仮特許出願第62/243,427号、2016年2月4日に出願された「スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法」と題する米国仮特許出願第62/291,373号、2016年3月14日に出願された「スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法」と題する米国仮特許出願第15/069,793号、2016年3月14日に出願された「スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法」と題する米国仮特許出願第15/069,848号、および2016年3月14日に出願された「スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法」と題する米国仮特許出願第15/069,852号の優先権を主張し、それらの全体は引用によりここに組み込まれる。
本出願は、アクティブスタイラス、スタイラスセンサのセンサコントローラ、および位置入力システム、ならびにこのようなスタイラスおよびセンサコントローラに基づく方法に関し、より詳細には、スタイラスとセンサコントローラとの間の双方向通信プロトコルを利用する位置入力システムおよび方法に関する。
タブレットコンピュータ、スマートフォンなどの電子装置のスタイラス検知スクリーン(センサ)上にユーザが文字および図形を手書きすることが可能な各種のスタイラスが入手可能である。例えば、アクティブ静電容量式(容量性)スタイラスは電源およびシグナルプロセッサを備え、スタイラスの先端に備えられた電極に送信信号に応じた電荷を供給することによって信号を送信し、これにより先端が示す(指し示す)位置またはその近傍における電界に変化を生じさせる。電子装置のスタイラス検知スクリーン(センサ)はマトリクス状のX電極およびY電極を備え、スタイラス先端による上述の電界の変化がスタイラス先端またはその近傍のマトリクス電極における相応の電荷の変化を誘起する。センサおよび/または電子装置のホストプロセッサに結合したセンサコントローラは、マトリクス電極におけるこのような電荷の変化を検出することによってスタイラスからの送信信号を検出する。センサコントローラおよび/またはホストプロセッサは、次いで、送信信号を検出したマトリクス電極の位置に基づき、センサ上においてスタイラスにより示された位置を判別する。
異なる種類のアクティブスタイラスは、ペン(スタイラス)先端圧力を検出することができる異なる段階がいくつあるかというペン(スタイラス)先端圧力検出機能、ペンツイスト(回転)検出機能およびペンチルト検出機能を含むペンオリエンテーション検出機能、スタイラス上に備えられた異なる数および種類のバレルボタン(スイッチ)などの、異なるスタイラス機能または作用を有する。通常、スタイラスからセンサコントローラへの通信に使用されるデータフォーマットは、対象としているスタイラスセンサシステムに固定して設定され、異なる種類のスタイラス機能および作用をサポートすること、およびスタイラス機能および作用のバリエーションを拡大することはできない。
各スタイラスはセンサコントローラと共に使用される(すなわち、センサコントローラの検知領域に入る)たびに常にスタイラスの全機能情報をセンサコントローラに送信することが可能である一方、このような全機能情報の送信は、対象としている通信プロトコルにおいて使用可能な多数の時間スロットまたはフレームを消費する。1つまたは複数のスタイラスが絶えずセンサコントローラの検知領域に入る、および検知領域から出る通常の状況において、センサコントローラは、入る各スタイラスの機能情報を即座に取得してスタイラスの個別の機能に適した態様でスタイラスとの通信を開始することができない可能性がある。これによりセンサコントローラの応答時間が低速化し、したがってセンサコントローラとアクティブスタイラスとの間において通信を確立することが遅延し得る。例えば、センサコントローラは、センサコントローラがスタイラスのオリエンテーション検出機能を即座に確認することができないというだけで、スタイラスからのペンオリエンテーションデータを、スタイラスにこのようなオリエンテーションデータを十分に送信する能力がある場合でも速やかに受信することができない可能性がある。
本発明の態様は、検知領域に入る1つまたは複数のアクティブスタイラスの機能情報をセンサコントローラが即座に判別することによってスタイラスとの双方向通信を開始することを可能とする技術的解決手段を提供する。本態様は、異なる機能情報を有する異なるアクティブスタイラスをサポートするユニバーサルスタイラスセンサコントローラインタフェースを提供するのに特に適する。
一態様によれば、アクティブスタイラスをセンサコントローラとインタフェースする方法が提供される。前記センサコントローラは、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合している。前記センサコントローラは、前記スタイラスからパケットを受信するのに使用可能な複数の時間スロットからなるデータフレームを定義する。前記アクティブスタイラスは、前記センサコントローラからの要求に応答して、スタイラス機能情報を含む信号を送信する。前記センサコントローラは、前記スタイラス機能情報に基づいて、前記アクティブスタイラスにより前記センサコントローラにパケットを送信するのに用いられるダウンリンク時間スロット割当てを決定する。前記センサコントローラは、前記ダウンリンク時間スロット割当てを前記アクティブスタイラスに送信する。
他の態様によれば、前記スタイラス機能情報は、a)予め定義された前記アクティブスタイラスの機能に関する機能情報、およびb)ユーザにより調整可能な前記アクティブスタイラスの設定に関する設定情報のうちの少なくとも一方を含む。
他の態様によれば、前記機能情報は、i)前記アクティブスタイラスがスタイラスオリエンテーションを検知することが可能であるか否か、ii)前記アクティブスタイラスがバレルプレッシャを検知することが可能であるか否か、iii)前記アクティブスタイラスがベンダ固有の特徴を有するか否か、iv)前記アクティブスタイラスが推奨色を有するか否か、およびv)前記アクティブスタイラスのグローバルIDのうちの少なくとも1つを含む。
他の態様によれば、前記設定情報は、i)スタイラス線幅、ii)スタイラス先端タイプ、iii)色、およびiv)前記アクティブスタイラスの固有識別番号のうちの少なくとも1つを含む。
他の態様によれば、前記設定情報は、前記アクティブスタイラス上に配置された1つまたは複数のスイッチを用いてユーザにより変更可能である前記アクティブスタイラスの固有識別番号を含む。
他の態様によれば、前記ダウンリンク時間スロット割当ては、i)フレーム内のいずれのダウンリンク時間スロットを前記アクティブスタイラスに割り当てるか、およびii)前記アクティブスタイラスのどのような種類のパケットをどのようなダウンリンク時間スロットにおいて送信するかのうちの少なくとも一方を含む。
他の態様によれば、前記ダウンリンク時間スロット割当ては、i)前記アクティブスタイラスによって用いられる開始時間スロットを示すオフセット値、およびii)前記開始時間スロットから開始する前記アクティブスタイラスに割り当てられた時間スロット間の間隔を示す間隔値を含む。
他の態様によれば、前記ダウンリンク時間スロット割当てを受信した前記アクティブスタイラスは、前記ダウンリンク時間スロット割当てに従って割り当てられた前記時間スロットにおいてパケットを送信する。前記パケットは、i)前記アクティブスタイラスの動作状態を示す動作データを含むデータパケット、およびii)前記センサコントローラによって前記センサに対する前記アクティブスタイラスの位置を算出するのに用いられる非データパケットのうちの一方からなり得る。
他の態様によれば、前記データパケットに含まれる前記動作データは、i)スタイラス先端圧力データ、ii)バレルプレッシャデータ、iii)スタイラスオリエンテーションデータ、iv)スタイラスバレルスイッチ状態データ、およびv)スタイラスバッテリレベルのうちの1つまたは複数を含む。
別の態様によれば、アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合されるセンサコントローラが提供される。前記センサコントローラは、プロセッサであって、動作中に、前記アクティブスタイラスと前記センサコントローラとの間の通信に供される時間スロットからなるデータフレームを定義し、前記アクティブスタイラスから前記アクティブスタイラスのスタイラス機能情報を含む信号を受信し、受信した前記スタイラス機能情報に基づいて、前記アクティブスタイラスによって前記センサコントローラにパケットを送信するのに用いられるダウンリンク時間スロット割当てを決定するプロセッサを備える。前記センサコントローラは、さらに、前記プロセッサに結合した送信コントローラを備える。前記送信コントローラは、動作中に、前記アクティブスタイラスへの前記ダウンリンク時間スロット割当ての送信を発生させる。
他の態様によれば、アクティブスタイラスが提供される。前記アクティブスタイラスは、レシーバであって、動作中に、前記アクティブセンサからの入力を受け付けるように構成されたセンサに結合したセンサコントローラから送信される周期的なビーコン信号を受信するレシーバを備える。前記ビーコン信号は、前記アクティブスタイラスと前記センサコントローラとの間の双方向通信において用いられる時間スロットに対するタイミング基準として機能する。前記アクティブスタイラスは、さらに、前記ビーコン信号を検出するとともに前記アクティブスタイラスのスタイラス機能情報を含む信号を生成するように前記レシーバに結合したプロセッサを備える。前記アクティブスタイラスは、さらに、前記スタイラス機能情報を含む前記信号を前記センサコントローラに送信するように前記プロセッサに結合したトランスミッタを備える。前記アクティブスタイラスの前記レシーバは、動作中に、前記センサコントローラからダウンリンク時間スロット割当てを受信する。前記アクティブスタイラスの前記トランスミッタは、動作中に、前記ダウンリンク時間スロット割当てに従って前記アクティブスタイラスに割り当てられた前記時間スロットにおいて前記センサコントローラにパケットを送信する。
他の態様によれば、(a)センサと、(b)前記センサに結合したセンサコントローラと、(c)アクティブスタイラスとを備えるシステムが提供される。前記センサコントローラは、周期的なビーコン信号の送信を発生させる送信コントローラと、前記送信コントローラに結合したセンサプロセッサとを備える。前記アクティブスタイラスは、前記周期的なビーコン信号を受信するレシーバを備える。前記アクティブスタイラスは、さらに、前記ビーコン信号を検出するとともに前記アクティブスタイラスのスタイラス機能情報を含む信号を生成するように前記レシーバに結合したスタイラスプロセッサを備える。前記アクティブスタイラスは、さらに、前記スタイラス機能情報を含む前記信号を前記センサコントローラに送信するように前記スタイラスプロセッサに結合したトランスミッタを備える。前記センサコントローラは、受信した前記アクティブスタイラスの前記スタイラス機能情報に基づいて、前記アクティブスタイラスにより前記センサコントローラにパケットを送信するのに用いられるダウンリンク時間スロット割当てを決定し、前記ダウンリンク時間スロット割当てを前記アクティブスタイラスに送信する。
本発明の他の態様は、前記検知領域に入る1つまたは複数のアクティブスタイラスの前記機能情報をセンサコントローラが即座に判別することによって前記スタイラスとの双方向通信を開始することを可能とする技術的解決手段を提供する。本態様は、異なる機能情報を有する異なるアクティブスタイラスをサポートするユニバーサルセンサコントローラインタフェースを提供するのに特に適する。
一態様によれば、アクティブスタイラスをセンサコントローラとインタフェースする方法が提供される。前記センサコントローラは、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合している。前記センサコントローラは、前記アクティブスタイラスのスタイラス機能情報をキャッシュする。前記スタイラス機能情報は、前記センサ上に前記アクティブスタイラスからの入力を表示するように実行されるアプリケーションプログラムにより用いられるインキング処理のための設定情報を含む。前記アクティブスタイラスは、前記スタイラス機能情報のハッシュ値を生成し、前記アクティブスタイラスが前記センサコントローラの検知領域に入るときに前記ハッシュ値を前記センサコントローラに送信する。
他の態様によれば、前記アクティブスタイラスと前記センサとは静電容量結合する。
他の態様によれば、前記インキングのための設定情報は、i)スタイラス線幅、ii)スタイラス先端タイプ、iii)色、およびiv)前記アクティブスタイラスの固有識別番号のうちの少なくとも1つを含む。
他の態様によれば、前記インキングのための前記設定情報は、前記アクティブスタイラス上に配置された1つまたは複数のスイッチを用いてユーザにより変更可能である、色指標または前記アクティブスタイラスの固有識別番号を含む。
他の態様によれば、前記アクティブスタイラスの固有識別番号、スタイラス線幅、スタイラス先端タイプ、および前記アクティブスタイラスの色を含む前記スタイラス機能情報に基づいて前記ハッシュ値を生成する。
他の態様によれば、前記センサコントローラは、前記アクティブスタイラスから受信した前記ハッシュ値が、前記センサコントローラ内にキャッシュされた前記スタイラス機能情報に一致するか否かを判定する。前記ハッシュ値が一致する場合は、前記センサコントローラは、前記センサコントローラ内にキャッシュされた一致する前記スタイラス機能情報を用いる。前記ハッシュ値が一致しない場合は、前記センサコントローラは、前記スタイラス機能情報を前記センサコントローラに送信して前記センサコントローラ内にキャッシュさせるよう前記アクティブスタイラスに要求する読出しコマンドを送信する。
他の態様によれば、前記センサコントローラは、前記アクティブスタイラスから受信した前記ハッシュ値が、前記センサコントローラ内にキャッシュされた前記スタイラス機能情報に一致するか否かを判定する。前記ハッシュ値が一致する場合は、前記センサコントローラは、前記センサコントローラ内にキャッシュされた前記スタイラス機能情報に対応する第2のハッシュ値を前記アクティブスタイラスに送信する。前記アクティブスタイラスは、前記センサコントローラから受信した前記第2のハッシュ値が前記アクティブスタイラスの前記スタイラス機能情報の第2のハッシュ値に対応するか否かを判定する。
他の態様によれば、アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合されるセンサコントローラが提供される。前記センサコントローラは、前記アクティブスタイラスに信号を送信する/前記アクティブスタイラスから信号を受信するように構成されたトランスミッタ/レシーバを備える。前記センサコントローラは、さらに、前記アクティブスタイラスのスタイラス機能情報を記憶するように構成されたキャッシュを備える。前記センサコントローラは、さらに、前記トランスミッタ/レシーバおよび前記キャッシュに結合したプロセッサを備える。前記プロセッサは、動作中に、前記アクティブスタイラスから前記スタイラス機能情報のハッシュ値を受信し、受信した前記ハッシュ値が前記センサコントローラの前記キャッシュに記憶された前記スタイラス機能情報に一致する場合は、キャッシュされた前記機能情報を用いる。
他の態様によれば、アクティブスタイラスが提供される。前記アクティブスタイラスは、レシーバであって、動作中に、前記アクティブセンサからの入力を受け付けるように構成されたセンサに結合したセンサコントローラから送信される周期的なビーコン信号を受信するレシーバを備える。前記アクティブスタイラスは、さらに、前記ビーコン信号を検出するとともにスタイラス機能情報のハッシュ値を生成するように前記レシーバに結合したプロセッサを備える。前記スタイラス機能情報は、前記センサ上に前記アクティブスタイラスからの入力を表示するように前記センサコントローラと協働して動作するホストシステム上のアプリケーションプログラムにより用いられるインキング処理のための設定情報を含む。前記アクティブスタイラスは、さらに、前記ハッシュ値を前記センサコントローラに送信するように前記プロセッサに結合したトランスミッタを備える。
他の態様によれば、(a)センサと、(b)前記センサに結合したセンサコントローラと、(c)アクティブスタイラスとを備えるシステムが提供される。前記センサコントローラは、周期的なビーコン信号の送信を発生させる送信コントローラと、前記送信コントローラに結合したセンサプロセッサとを備える。前記アクティブスタイラスは、レシーバであって、動作中に、センサコントローラから送信される前記周期的なビーコン信号を受信するレシーバを備える。前記アクティブスタイラスは、さらに、前記ビーコン信号を検出するとともに前記アクティブスタイラスのスタイラス機能情報を含む信号を生成するように前記レシーバに結合したスタイラスプロセッサを備える。前記アクティブスタイラスは、さらに、スタイラス機能情報のハッシュ値を前記センサコントローラに送信するように前記スタイラスプロセッサに結合したトランスミッタを備える。前記スタイラス機能情報は、前記センサ上に前記アクティブスタイラスからの入力を表示するように実行されるアプリケーションプログラムにより用いられるインキング処理のための設定情報を含む。
本発明のさらに他の態様は、前記検知領域に入る1つまたは複数のアクティブスタイラスの前記機能情報をセンサコントローラが即座に判別することによって前記スタイラスとの双方向通信を開始することを可能とする技術的解決手段を提供する。本態様は、異なる機能情報を有する異なるアクティブスタイラスをサポートするユニバーサルセンサコントローラインタフェースを提供するのに特に適する。
一態様によれば、アクティブスタイラスからのオリエンテーションデータを、センサコントローラであって前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラに送信する方法が提供される。本方法において、前記アクティブスタイラスは前記センサコントローラに、スタイラス機能情報であって前記アクティブスタイラスに1つまたは複数のオリエンテーションセンサが備えられているか否かを示すスタイラス機能情報を送信する。前記1つまたは複数のオリエンテーションセンサは、前記アクティブスタイラスに備えることが可能であって複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から、前記アクティブスタイラスに備えられる。前記センサコントローラは、前記1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられていることを示す、受信した前記スタイラス機能情報に基づいて、前記1つまたは複数のオリエンテーションセンサによって計測される対応した1つまたは複数の種類のオリエンテーションデータを送信するよう前記アクティブスタイラスに要求する。前記アクティブスタイラスは、前記センサコントローラからの前記要求に応答して、前記1つまたは複数の種類のオリエンテーションデータを送信する。
前記複数のオリエンテーションセンサに、チルトセンサ、ツイストセンサ、加速度計、ジャイロスコープ、および地磁気計が含まれてもよく、それらから1つまたは複数のオリエンテーションセンサが選択されて前記アクティブスタイラスに備えられる(サポートされる)。例えば、前記アクティブスタイラスは、加速度計、ジャイロスコープ、および地磁気計の組合せからなる3軸内蔵計測ユニット(IMU)を備え得る。
一態様によれば、前記アクティブスタイラスは、i)オリエンテーションセンサの種類を示すセンサフラグと、ii)示された前記種類のオリエンテーションセンサにより1時間スロットにおいて計測されるオリエンテーションデータとを1つのレポートにおいて送信することによって、前記1つまたは複数の種類のオリエンテーションデータを送信する。
別の態様によれば、前記アクティブスタイラスは、互いに同時にまたは時間的に接近して計測される2つ以上の種類のオリエンテーションデータを送信する。前記2つ以上の種類のオリエンテーションデータは、前記データが1つのグループを形成することを示すエンドビットにそれぞれ関連付けられる。前記センサコントローラは、1つのグループを形成する前記データを受信して組み合わせ、組み合わせた前記データを、センサフュージョンなどのさらなる処理に備えてホストプロセッサに送信する。
別の態様によれば、アクティブスタイラスによって実行される方法が提供される。本方法において、前記アクティブスタイラスは、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラにスタイラス機能情報を送信する。前記スタイラス機能情報は、複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示す。前記アクティブスタイラスは、前記センサコントローラから受信したタイミング情報に基づいて、前記アクティブスタイラスに備えられた前記1つまたは複数のオリエンテーションセンサによってそれぞれ計測される1つまたは複数の種類のオリエンテーションデータを前記センサコントローラに送信する。
別の態様によれば、アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラによって実行される方法が提供される。本方法において、前記センサコントローラは前記アクティブスタイラスからスタイラス機能情報を受信する。前記スタイラス機能情報は、複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示す。前記センサコントローラは、前記アクティブスタイラスに含まれている前記スタイラス機能情報に示された前記1つまたは複数のオリエンテーションセンサによって計測される対応した1つまたは複数の種類のオリエンテーションデータを送信するよう前記アクティブスタイラスに要求する。
さらに別の態様によれば、プロセッサ、トランスミッタ、およびレシーバを備えるアクティブスタイラスを提供する。前記プロセッサは記憶装置に結合しており、前記記憶装置は、複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示すスタイラス機能情報を記憶する。前記トランスミッタは前記プロセッサに結合しており、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラに前記スタイラス機能情報を送信する。前記レシーバは、前記プロセッサに結合しており、前記アクティブスタイラスに備えられた前記1つまたは複数の種類のオリエンテーションセンサによってそれぞれ計測される1つまたは複数の種類のオリエンテーションデータを送信するよう前記センサコントローラから要求を受信する。
アクティブスタイラスおよび電子装置(例えば、タブレットコンピュータ)を備え、該電子装置がセンサ、該センサに結合したセンサコントローラ、および該センサコントローラに結合した電子装置のシステムコントローラ(ホストプロセッサ)を備える、システム全体を示す図である。 アクティブスタイラス例の機能ブロック図である。 センサコントローラ例の機能ブロック図である。 スタイラスとセンサコントローラとの間の双方向通信に用いられ、フレームが16個の(16)時間スロットs0~s15に分割されるフレームフォーマット例である。 予め定義された(予め設定された)アクティブスタイラスの機能に関する機能情報とユーザ設定可能なアクティブスタイラスの設定に関する設定情報とを含む、アクティブスタイラスのスタイラス機能情報の種類例を列挙したテーブルである。 アクティブスタイラスによって該アクティブスタイラスの機能情報をセンサコントローラに送信するのに用いられるデータフォーマット例を列挙したテーブルである。 アクティブスタイラスによって該アクティブスタイラスのオリエンテーション検出機能に関する機能情報を送信するのに用いられるオリエンテーションコード例を列挙したテーブルである。 機能情報、特にアクティブスタイラスのオリエンテーション検出機能を列挙した他の例のテーブルである。 予め定義されたアクティブスタイラスの機能に関するスタイラス機能情報の3つの例を説明する。 ダウンリンク時間スロット割当てにより設定されたスケジュールに従ってアクティブスタイラスからセンサコントローラに送信される、アクティブスタイラスの動作状態を示す動作データ例を列挙したテーブルである。 ある種類の動作データ、すなわちIMU(内蔵計測ユニット(inertial measurement unit))データに対するダウンリンクデータパケットフォーマットを示すテーブルである。 センサコントローラによってポーリングされる(要求される)とセンサコントローラに送信される、アクティブスタイラスの動作状態を示す動作データ例を列挙したテーブルである。 アクティブスタイラスの処理フロー例を示すフローチャートである。 センサコントローラの、特にアクティブスタイラスとのペアリング動作を実行するフロー例を示すフローチャートであって、センサコントローラはアクティブスタイラスからスタイラス機能情報(例えば、設定情報)を示すハッシュ値を受信し、受信したハッシュ値を認識するか否かを判定し、そうであれば、ペアリング動作を迅速化するフローチャートである。 センサコントローラがアクティブスタイラスにビーコン信号(BS)を送信し、アクティブスタイラスがそれに応答してスタイラス機能情報(CPまたはハッシュ#1)を含む信号をセンサコントローラに返信するフレームフォーマット例を示す。 センサコントローラがアクティブスタイラスにビーコン信号(BS)を送信し、アクティブスタイラスがそれに応答してスタイラス機能情報(CPまたはハッシュ#1)を含む信号をセンサコントローラに返信するフレームフォーマット例を示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 センサコントローラによって特定された異なる6種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。 アクティブスタイラスとセンサコントローラとの間のペアリング動作例を示すフローチャートであって、アクティブスタイラスはアクティブスタイラスの機能情報を示すハッシュ値を送信し、センサコントローラが受信したハッシュ値を認識するか否かを判定し、認識する場合は、ペアリング動作を迅速化するフローチャートである。センサコントローラは、さらに、受信した機能情報が以前にペアリングしたことのあるスタイラスからのものであることの別の検証に、第2のハッシュ値を用いる。
図1は、アクティブスタイラス100および電子装置(例えば、PC、タブレットコンピュータ、スマートフォン)3を含むシステム全体を示す。電子装置3は、センサ201、センサ201に結合したセンサコントローラ200、およびセンサコントローラ200に結合した電子装置3のシステムコントローラ(ホストプロセッサ)300を備える。
PC、タブレットコンピュータ、スマートフォンなどの電子装置3は、典型的には、センサ201の下に存在する、または上に存在するスクリーンを備え、ユーザはアクティブスタイラス100を用いて該スクリーン上に文字および図形を手書きする。ここで用いるアクティブスタイラスは、電子回路、バッテリまたは内蔵のエネルギーコンジットなどの電源105を含むスタイラスである。センサ201は、容量性タッチ/スタイラスセンサ、抵抗式タッチ/スタイラスセンサ、電磁共鳴スタイラスセンサ、光学式スタイラスセンサ、超音波スタイラスセンサなどの任意の適当な公知のスタイラス検知センサからなり得る。スタイラスセンサもあれば、アクティブスタイラスおよび指タッチの両方を検出することが可能なセンサもある。以下で図2Bを参照して詳述するセンサコントローラ200は、センサ201の動作を制御し、アクティブスタイラス100との双方向通信を実行し、さらにホストプロセッサ300と通信する。例えば、センサコントローラ200は、アクティブスタイラス100からの手書き入力データを処理してセンサ201上においてアクティブスタイラス100により示された(指し示された)位置の(X,Y)座標および色を判別し、該(X,Y)座標および色情報を電子装置3のホストプロセッサ300に転送する。
以下で図2Aを参照して詳述するアクティブスタイラス100は、例えばテーブル(TBL)の形態で該スタイラスのスタイラス機能情報を記憶するメモリ/キャッシュを有するスタイラス機能情報マネージャ110を備える。以下でより詳細に説明するように、スタイラス機能情報は、典型的には変更可能でない予め定義された(例えば、製造者により設定された)スタイラスの機能に関する機能情報と、ユーザにより調整可能なスタイラスの設定に関する設定情報とを含み得る。スタイラス機能情報マネージャ110は、ユーザが例えばスタイラス100に備えられたスイッチ(ボタン)111を用いてスタイラス色およびスタイラス線幅などのスタイラス設定を変更するたびに、設定情報を更新する。図1に、1つのテイルボタン111Aおよび1つのサイドボタン111Bからなる、このような2つのボタンを示す。アクティブスタイラス100は、さらに、スタイラス(ペン)先端圧力データおよびスタイラスオリエンテーションデータ(例えば、センサ表面に対してスタイラスがどの程度ツイストまたはチルトしているか)などのアクティブスタイラスの動作状態を示す動作データを予め作成するデータマネージャ112を備える。
スタイラス機能情報マネージャ110およびデータマネージャ112は、両方とも、送信(TX)回路および受信(RX)回路を備える通信モジュール130に結合している。通信モジュール130は、以下でより詳細に説明するように、アクティブスタイラス100のスタイラス機能情報および動作データをセンサコントローラ200に送信し、センサコントローラ200から(ビーコン信号内の)種々のコマンドおよび他の情報を受信する。本双方向通信プロトコルにおいて、センサコントローラ200はマスタ装置であり、アクティブスタイラス100はスレーブ装置である。本開示において、センサコントローラ200からアクティブスタイラス100への送信方向を「アップリンク(uplink)」と称し、アクティブスタイラス100からセンサコントローラ200への送信方向を「ダウンリンク(downlink)」と称する。
図1に概略的に示すように、アクティブスタイラス100とセンサコントローラ200との間の典型的な双方向通信フローは、アクティブスタイラス100が下向き矢印によって示されるペンダウン動作の間にセンサコントローラ200の検知領域(SZ)に入ることによって開始される。アクティブスタイラス100が検知領域内に入ると、アクティブスタイラス100はセンサコントローラ200からセンサ201を介して周期的に送信されるビーコン信号を検出し得る。ビーコン信号を検出すると、アクティブスタイラス100は、スタイラス機能情報マネージャ110から受信したスタイラス機能情報を含む応答信号を送信する。以下で図10を参照して詳述するように、アクティブスタイラス100の設定情報をハッシュ化して、1時間スロットでセンサコントローラ200に送信することができる利点がある、固定された(より小さい)サイズのハッシュ値(「ハッシュ#1(Hash#1)」)を生成し得る。ハッシュ#1には、対応する固定サイズのハッシュ値(「ハッシュ#2(Hash#2)」)が存在する。アクティブスタイラス100が以前にセンサコントローラ200とペアリングしたことがあれば、アクティブスタイラス100およびセンサコントローラ200の両方が、アクティブスタイラス100がセンサコントローラ200とペアリングしたときのアクティブスタイラス100の特定の設定情報から算出されるハッシュ#1およびハッシュ#2を有する。それゆえ、センサコントローラ200が受信したハッシュ#1を認識すれば、センサコントローラ200が以前にアクティブスタイラス100とペアリングしており、したがって特定の設定情報を含むアクティブスタイラス100のスタイラス機能情報が既知であることが、センサコントローラ200に分かる。センサコントローラ200は、次いで、以前にアクティブスタイラス100に割り当てられたのと同じダウンリンク時間スロット割当てを用いてアクティブスタイラス100との双方向通信を開始し得る。さらに、センサコントローラ200は、受信したハッシュ#1に対応するハッシュ#2をアクティブスタイラス100に返信してセンサコントローラ200がアクティブスタイラス100を正しく認識したことを検証し得る。以下でより詳細に説明するように、ハッシュ#1の使用によって、アクティブスタイラス100がセンサコントローラ200の検知領域に再入するたびに、アクティブスタイラス100とセンサコントローラ200との間のペアリング処理が迅速化され、このことはアクティブスタイラス100が繰り返し、検知領域から出て(「ペンアップ(Pen up)」矢印を参照)検知領域に再入する(「ペンダウン(Pen down)」矢印を参照)場合に特に有利な技術的特徴である。
本明細書で用いる「ペアリング(pairing)」動作とは、センサコントローラ200からの開始(発見)ビーコン信号を検出したアクティブスタイラス100からの応答信号の送信によって開始され、センサコントローラ200からの、アクティブスタイラス100に対するダウンリンク時間スロット割当てを含む他のビーコン信号の送信によって終了する処理のことを指す。センサコントローラ200は、アクティブスタイラスのスタイラス機能情報に照らして対象としているアクティブスタイラスに対するダウンリンク時間スロット割当てを決定することによって、スタイラス機能情報を十分にサポートするアクティブスタイラスとの固有の通信リンクを確立する。こうして、ペアリング動作の終了時に、アクティブスタイラスは、新たに確立された固有の通信リンクを用いてセンサコントローラとの双方向通信を開始し得る。
ハッシュ#1の使用は「迅速インキング(fast inking)」を達成することにも有利である。アプリケーションプログラムが描画を開始することが可能になるには、該アプリケーションプログラムがスクリーン上に描画しようとする線のパラメータを知る必要がある。これらのパラメータは、例えば、線の色またはブラシスタイル(エアブラシ、チョークなど)を含む。ハッシュ#1の使用によって、センサコントローラは、検知領域に入った特定のスタイラスに対するこれらのパラメータをセンサコントローラがキャッシュ済みであることを即座に認識し、アプリケーションプログラムがほぼ瞬時に描画、すなわち「インキング処理(inking)」を開始するのにこれらのパラメータを利用可能とすることができる。
図2Aは、例としてのアクティブスタイラス100の機能ブロック図である。アクティブスタイラス100は、アクティブスタイラス100の先端において、TX/RX電極115、TX/RX電極115に結合したスイッチSW、受信回路117、送信回路119、およびマイクロコントローラユニット(MCU)120を備える。MCU120は、ROMおよびRAMを内蔵するマイクロプロセッサからなり、規定のプログラムに従って動作するように構成されている。スイッチSWは、MCU120からのスイッチ制御信号SWCにより指示されて、TX/RX電極115を受信端子Rと送信端子Tとのいずれかに結合させる。最初に、アクティブスタイラス100がセンサコントローラ200からのビーコン信号を待ち受ける間、スイッチSWはTX/RX電極115を受信端子Rに接続する。受信回路117は、TX/RX電極115からの信号を受信および処理してMCU120により使用可能なデジタル形式で出力するのに必要な電子構成部品を備える。MCU120がセンサコントローラ200からのビーコン信号を検出すると、MCU120は、送信回路119と協働して応答信号(例えば、ACK信号)を生成しておき、さらにスイッチ制御信号SWCをスイッチSWに送出してTX/RX電極115を送信端子Tに接続させることにより、該応答信号をTX/RX電極115を介してセンサコントローラ200に送信する。
送信回路119は、MCU120からの信号を受信および処理してTX/RX電極115を介しセンサコントローラ200に送信されるように出力するのに必要な電子構成部品を備える。例えば、送信回路119は、MCU120により規定された周波数のキャリア信号を生成し、該キャリア信号を、センサコントローラ200がアクティブスタイラス100により示された位置を判別する(算出する)のに用いる「位置パケット(position packets)」として無変調で出力し得る。これに代えて、送信回路119は、PSK(位相偏移)、D-BPSK(差動二相PSK)、QAM(直交振幅変調)、およびDSSS(直接シーケンススペクトラム拡散)などの任意の適当な変調方式を用いて、設定情報を示すハッシュ#1などのアクティブスタイラス100のスタイラス機能情報によりキャリア信号を変調してもよい。次いで、スタイラス機能情報により変調された信号をTX/RX電極115を介してセンサコントローラ200に送信する。
送信回路119は、アクティブスタイラス100の動作状態を示す動作データなどのスタイラス機能情報以外の情報によりキャリア信号を変調し得る。動作データは、例えば、スタイラス(ペン)先端圧力データ、スタイラスバレルプレッシャデータ、スタイラスオリエンテーション(例えば、ツイスト/チルト)データ、スタイラススイッチステータス、およびスタイラスバッテリレベルを含み得る。このような動作データを生成するために、アクティブスタイラス100は、スタイラス先端に加わる圧力を検知するように構成されたスタイラス(ペン)先端圧力センサ122a(例えば、可変キャパシタからなる)、スタイラスバレルに加わる圧力を検知するように構成されたバレルプレッシャセンサ、9軸以下の軸を有するIMU(内蔵計測ユニット)122b(3軸ジャイロスコープ、3軸加速度計、および3軸地磁気計のうちの1つまたは複数の組合せから構成される)、センサ201のX電極(またはY電極)の各々の方向に対するアクティブスタイラス100の軸の周りのアクティブスタイラス100のツイスト/回転を検知するように構成されたツイストセンサ122c、センサ201の表面に対するアクティブスタイラス100の軸のX方向チルトおよびY方向チルトを検知するように構成されたチルトセンサ122dなどの1つまたは複数のセンサ122を備える(スタイラス先端圧力センサ122a以外のセンサ122b~122dの図を省略した)。MCU120および送信回路119は、これらのセンサからの出力を、TX/RX電極115を介してセンサコントローラ200に送信する「データパケット」に予め整える。該データパケットをセンサコントローラ200に送信するために、MCU120は、TX/RX電極115を送信端子Tに接続させるスイッチ制御信号SWCをスイッチSWに送出する。
種々のアクティブスタイラスは種々の検知機能を有しており、多様なセンサを取りそろえるように装備したセンサが存在する一方で、スタイラス先端圧力センサ122aのみを備えたセンサも存在する。以下でより詳細に説明するように、本発明は、検知領域に入る、対象としているアクティブスタイラスの、個々の機能をセンサコントローラ200が即座に確認することを可能とするによって、スタイラスの機能をサポートする固有の通信リンクを(特定のダウンリンク時間スロット割当てに基づいて)構成する双方向通信プロトコルを提案する。
図2Bは、例としてのセンサコントローラ200の機能ブロック図である。センサコントローラ200は電子装置3の一部であって(図1を参照)、X電極201XおよびY電極201Yを備えるセンサ201に結合しており、センサ201上においてアクティブスタイラス100が様々な手書き動作を行う。センサコントローラ200は、さらに、電子装置3のホストプロセッサ300に結合している。
センサコントローラ200は、送信回路210、セレクタ220、受信回路230、論理ユニット235、およびMCU(マイクロコントローラユニット)240を備える。MCU240は、ROMおよびRAMを内蔵するマイクロプロセッサからなり、規定のプログラムに従って動作するように構成されている。MCU240は、論理ユニット235に、送信回路210、セレクタ220、および受信回路230の動作を制御する制御信号伝達(ctr、sTRx、sTRy、selX、selYなど)を発するように指示する。MCU240は、受信回路230から受信したデジタルデータを処理して、センサ201のアクティブスタイラス100により示された位置のX座標およびY座標、色、不透明度(暗さ)などを判別/算出し、例えば、表示のために電子装置3のホストプロセッサ300に算出した位置データを出力する。
送信回路210は、MCU240からの信号を、センサ201のマトリクス電極を介してアクティブスタイラス100に送信されるように受信および処理して出力するのに必要な電子構成部品を備える。具体的には、MCU240の制御下において、送信回路210は、周期的なビーコン信号を生成してセンサ201のマトリクス電極を介してアクティブスタイラス100に送信する。以下でより詳細に説明するように、ビーコン信号は、センサコントローラ200を発見するためにアクティブスタイラスの近傍で用いられ(検出され)、アクティブスタイラスがセンサコントローラ200と同期するタイミング基準として機能する。さらに、ビーコン信号は、上述のように、アクティブスタイラス100からハッシュ#1を受信したセンサコントローラ200が検証用にアクティブスタイラス100に返信するハッシュ#2を含み得る。ビーコン信号は、アクティブスタイラスに対して決定されるダウンリンク時間スロット割当てを含むことが可能であり、それによりどのようなダウンリンク時間スロットを用いてどのような種類のパケットをセンサコントローラに送信するかをアクティブスタイラスに通知する。またさらに、ビーコン信号は、アクティブスタイラス100の動作を制御する種々のコマンドを含み得る。例えば、ビーコン信号は、センサコントローラ200に(付加的な)スタイラス機能情報を送信するようにアクティブスタイラス100に要求する読出しコマンド、またはアクティブスタイラス100に関する機能情報を設定する(書き込む)書込みコマンドを含み得る。ビーコン信号は、さらに、アクティブスタイラスのバッテリレベルなどのアクティブスタイラスの動作データをセンサコントローラに送信するようアクティブスタイラスに要求する(ポーリングする)ポーリングコマンドを含み得る。送信回路210は、ビーコン信号を形成するキャリア信号を、PSK、D-BPSK、QAM、およびDSSSなどの任意の適当な変調方式を用い、ハッシュ#2によって、ダウンリンク時間スロット割当てによって、またはMCU240から受信したこれらの種々のコマンドによって変調し得る。
受信回路230は、アクティブスタイラス100から受信した信号を処理してセンサ201のマトリクス電極を介しMCU240により使用可能なデジタル形式で出力するのに必要な電子構成部品を備える。例えば、受信回路230は、アクティブスタイラス100から受信した、(ビーコン信号に応答した)応答信号、(アクティブスタイラスの動作データを含む)データパケット、および位置パケットを処理してMCU240へと出力する。センサ201がアクティブスタイラス100に加えて指タッチを検出することが可能である場合、受信回路230は、アクティブスタイラス100から送信された信号に加えて指タッチを示す信号をセンサ201のマトリクス電極を介して受信および処理して、アクティブスタイラス100によって示された位置に加えて指タッチ位置を判別するMCU240へと出力する。
セレクタ220は、論理ユニット235からの制御信号伝達に基づいて、送信モードと受信モードとの間でセンサ201の動作モードを切り替える。セレクタ220は、スイッチ222xおよび222yと電極選択回路224xおよび224yとを備える。論理ユニット235からの制御信号伝達sTRyおよびsTRxに基づいて、スイッチ222x、222yは、センサ201のX電極201XおよびY電極201Yをそれぞれ、送信回路210に結合した送信端子Tと受信回路230に結合した受信端子Rとのいずれかに接続する。送信モードでは送信回路210に結合した電極を用いてアクティブスタイラス100に信号を送信し、受信モードでは受信回路230に結合した電極を用いてアクティブスタイラス100からの信号を受信する。さらに、アクティブスタイラス100に信号を送信する、またはアクティブスタイラス100から信号を受信するために、制御信号伝達selX、selXに基づいて、電極選択回路224x、224yは、それぞれX電極201X、Y電極201Yを選択する。論理ユニット235は、さらに、MCU240に指示されて、送信回路210および受信回路230に制御信号伝達「ctr」を送出して送信回路210および受信回路230の動作を制御する。
図3は、アクティブスタイラス100とセンサコントローラ200との間の双方向通信に用いられるフレームフォーマット例であり、双方向通信リソースは、時間軸に沿ってフレームに分割されると共に周波数軸に沿って異なる周波数に分割される。各フレームは、さらに、時間軸に沿って16個の(16)時間スロットs0~s15に分割され、各時間スロットは、例えば20ビット(16情報ビットに4CRCビットが加わる)まで収容するサイズに定められている。一例として、フレーム長は16msecであり、時間スロット長は1msecである。なお、フレームを16より少ないまたは多い時間スロットに分割してもよく、本発明はここで説明する16時間スロットの例に限定されない。例えば、16msecのフレームを64時間スロットに分割して、各時間スロットを250μsecの長さとしてもよい。
実施例として、各フレームの開始時における1つまたは複数の時間スロットは、センサコントローラ200によって、周期的なビーコン信号(BS)をアクティブスタイラス100に送信するのに「アップリンク(uplink)」において用いられる。したがって、フレームを、2つの連続するビーコン信号の開始時の間の間隔とみなし得る。各フレームにおける他の時間スロットは、以降で図8A~9Gの種々の例に示すように、アクティブスタイラス100によって、信号(例えば、ビーコン信号に対する応答信号)、データパケット、および位置パケットをセンサコントローラ200に送信するのに「ダウンリンク(downlink)」において用いられる。図示しないが、アップリンク時間スロット(図3におけるs0)とダウンリンク時間スロット(図3におけるs1~s15)との間に、アップリンク送信とダウンリンク送信との間の衝突を避けるように、アップリンクにもダウンリンクにも送信がスケジューリングされない期間であるギャップ時間スロットを設けてもよい。
ビーコン信号は、近傍のアクティブスタイラスがセンサコントローラ200を発見することができるように、またセンサコントローラ200とアクティブスタイラス100との間の双方向通信に用いられる時間スロットのタイミング基準として機能するようにセンサコントローラ200によって送信される周期信号である。したがって、通常の実施形態において、ビーコン信号は、すべてのアクティブスタイラスによって検出可能となるようにすべての周波数で送信される。各アクティブスタイラス100はビーコン信号を待ち受け、アクティブスタイラス100がビーコン信号を検出した後に、アクティブスタイラス100はビーコン信号に基づいてアクティブスタイラス100のタイミング基準を設定する。センサコントローラ200を発見するアクティブスタイラス100によって検出される最初のビーコン信号に続くビーコン信号は、アクティブスタイラス100が以前にセンサコントローラ200とペアリングしたことを検証するのに用いられるハッシュ#2などの種々の情報と、ペアリング動作中およびペアリング動作後にアクティブスタイラス100の動作を制御するコマンドとを含み得る。アクティブスタイラス100に宛てられたハッシュ#2またはコマンドを含むビーコン信号は、典型的には、いずれのビーコン信号が(存在し得る他のアクティブスタイラスにではなく)アクティブスタイラス100に宛てられているかをアクティブスタイラス100が識別することができるように、アクティブスタイラス100のスタイラスIDを含む。センサコントローラ200からのビーコン信号は、さらに、典型的には、センサコントローラ200のセンサコントローラIDを含む。
種々の実施形態に従って、センサコントローラ200は、センサコントローラ200の検知領域に入りつつある各アクティブスタイラス100の機能情報を即座に確認し、確認した機能情報に基づいてアクティブスタイラス100のダウンリンク時間スロット割当てを決定する。アクティブスタイラス100は、次いで、アクティブスタイラス100の機能をサポートする決定したダウンリンク時間スロット割当てに従って、データパケットおよび/または位置パケットをセンサコントローラに送信することにより、センサコントローラとの双方向通信を開始する。例えば、対象としているアクティブスタイラスがスタイラスオリエンテーション検出機能を有するとセンサコントローラ200が判定する場合に、センサコントローラ200はアクティブスタイラス100がスタイラスオリエンテーションデータをセンサコントローラ200に送信するようにダウンリンク時間スロットを割り当てる一方、このようなスタイラスオリエンテーション検出機能を有していないアクティブスタイラスにはこのようなダウンリンク時間スロットを割り当てない。こうして、センサコントローラ200は、アクティブスタイラスの機能情報に応じて、異なるダウンリンク時間スロット割当てをアクティブスタイラスに割り当て得る。アクティブスタイラスがセンサコントローラ200の検知領域外に存在する間に、ユーザにより調整可能なアクティブスタイラスの設定に関する設定情報(例えば、スタイラス線幅)が変更され得るため、該センサコントローラは、該アクティブスタイラスが以前に該センサコントローラとペアリングしたことがある場合であっても、該アクティブスタイラスが検知領域に再入するたびに現在の設定情報を確認する必要がある。
図4Aは、アクティブスタイラスのスタイラス機能情報の種類例を列挙したテーブルであり、機能情報および設定情報を含む。機能情報は、通常はスタイラスベンダ(製造者)により予め設定され、かつ通常はユーザにより変更可能でない、アクティブスタイラスの予め定義された機能に関連する。例えば、スタイラス上に備えられたバレルスイッチの数はユーザにより変更可能でない。機能情報は、さらに、アクティブスタイラスがいずれのバージョンの双方向通信プロトコルに準拠するかを示すバージョン番号(4ビット)を含み得る。機能情報は、さらに、センサ201の画面上に表示するアクティブスタイラスの推奨の、または既定の色である「推奨色」(140CSS(カスケーディングスタイルシート)色のうちの1つを示す8ビット)を含み得る。機能情報は、さらに、図4Bを参照して以下でより詳細に説明するように、ベンダによりアクティブスタイラスに対して設定され得る種々の他の機能に関連し得る。
図4Aは、さらに、スタイラス線幅およびスタイラス先端タイプ(例えば、0=ペン、1=イレーサ、2=チゼル先端マーカ、3=エアブラシ、4=鉛筆、5~7=カスタム/ベンダ仕様先端スタイル用に確保)を含む「ペンスタイル(pen style)」などのユーザにより調整可能なアクティブスタイラスの設定に関する設定情報と、アクティブスタイラスのテイル/バレルボタン(スイッチ)111A/111Bに割り当てられた機能とを記述する。例えば、ユーザは、ボタン(スイッチ)を操作することによってペンスタイルを変更し、またはボタン(スイッチ)に割り当てられた機能を変更し得る。設定情報は、アクティブスタイラスに対して設定され得るユーザにより変更可能な他の設定に関連し得る。アクティブスタイラスの固有の識別番号は、アクティブスタイラス上に配置された1つまたは複数のスイッチを用いてユーザにより変更可能とし得る。例えば、共に各スタイラスに対する64ビットグローバルIDを構成し得るベンダID(8ビット)およびシリアル番号(56ビット)は、ユーザにより変更可能とし得る。(グローバルIDがユーザにより変更可能でない実施形態が挙げられる。)さらに、機能情報の1つの種類として上述したアクティブスタイラスの「推奨色(preferred color)」は、ユーザにより調整可能な設定情報に代替し得るものであり、ユーザは例えばボタン(スイッチ)を用いて推奨(既定)色を自由に調整し得る。「推奨色(preferred color)」の例が示すように、機能情報と設定情報との差異は厳密でなく、ベンダごとに、またはスタイラスごとに変わり得る。さらに、機能情報として取り扱い得るといったように、ユーザによって一回のみ、または非常に低頻度で設定され得る設定情報も存在し得る。
図4Bは、アクティブスタイラスによって該アクティブスタイラスの機能情報をセンサコントローラ200に送信するのに用いられるデータフォーマット例を列挙したテーブルである。機能情報は、図4Cを参照して以下でより詳細に説明するように、例えば、いくつの異なる段階(例えば、256、512、1024など)のペン先端圧力を検出することが可能か、アクティブスタイラス上に備えられたバレルボタン数(例えば、111A/111B)の数値、バレルプレッシャを検出するスタイラスの機能(可不可であって、可であれば、いくつの異なる段階のバレルプレッシャを検出することが可能か)、およびスタイラスオリエンテーション(例えば、スタイラスツイストおよびチルト)を検出するスタイラスの機能に関する情報を含む。
図4Bの機能情報は、さらに、データパケットに対してカスタム(カスタマイズされた)データサイズが設定されているか否か、そして設定されている場合はカスタムデータバイト数の数値、スタイラスのオリエンテーションを検出することが可能なオリエンテーション分解能(例えば、0は8ビット分解能を示し、1は9ビット分解能を示し、2は10ビット分解能を示す)、ペン先端圧力を検出することが可能な異なる段階の(既定の数値とは異なって)カスタマイズされた数値、アクティブスタイラスに設けられるバレルボタンの(既定の数とは異なって)カスタマイズされた数、およびオリエンテーションデータを送信するのに用いられる(既定のデータバイト数とは異なって)カスタマイズされたデータバイト数に関する情報を含み得る。
図4Cは、アクティブスタイラスによって該アクティブスタイラスのオリエンテーション検出機能に関する機能情報をセンサコントローラに送信するのに用いられるオリエンテーションコード例を列挙したテーブルである。オリエンテーションコード0は、アクティブスタイラスがオリエンテーション検出機能を有していないことを示し、1は、アクティブスタイラスがX方向およびY方向の両方におけるチルトを検出することが可能であること、および検出されたXチルトデータおよびYチルトデータをフレーム当たり2時間スロットで送信することが可能であることを示し、2は、アクティブスタイラスがXチルトおよびYチルトに加えてツイスト(回転)データをフレーム当たり3時間スロットで検出および送信することが可能であることを示し、3は、アクティブスタイラスがセンサ表面に対するアクティブスタイラスの高度データおよび方位角データをフレーム当たり2時間スロットで検出および送信することが可能であることを示し、4は、アクティブスタイラスが高度および方位角データならびにツイスト(回転)データをフレーム当たり3時間スロットで検出および送信することが可能であることを示し、5は、アクティブスタイラスが3軸ジャイロスコープおよび3軸加速度計の組合せからなる6軸IMU(内蔵計測ユニット)を備えること、および6軸IMUデータをフレーム当たり3時間スロットで送信することが可能であることを示し、6は、アクティブスタイラスが3軸ジャイロスコープ、3軸加速度計、および3軸地磁気計の組合せからなる9軸IMUを備えること、および9軸IMUデータをフレーム当たり3時間スロットで送信することが可能であることを示し、7は、アクティブスタイラスによって検出および送信され得るオリエンテーションデータのカスタマイズされた形式を示す。
図4Cのオリエンテーションコードテーブルは異なる種類のオリエンテーションセンサを表す0~7の異なる値を示すが、図4Dに示すように、代替手法は、アクティブスタイラスが該アクティブスタイラスのオリエンテーション機能をセンサコントローラに通知するのに用い得る機能のビットフィールドを備えることである。機能情報において設定されるビットの各々は、スタイラスが該当するアイテムを計測することが可能であることを示す。機能情報フィールドにバレルプレッシャビットが設定される場合、そのことはスタイラスがバレルプレッシャを示すものを有することを示す。チルトビットが設定される場合、そのことはスタイラスがXチルトおよびYチルトを計測することが可能であることを示す。ツイストビットが設定される場合、そのことはスタイラスが軸の周りのツイストを計測することが可能であることを示す。高度および方位角ビットが設定される場合、そのことはスタイラスがスタイラスの高度および方位角を計測することが可能であることを示す。IMUhasAccelビットが設定される場合、そのことはスタイラスが3軸加速度計値を備えることを示す。IMUhasGryoフラグが設定される場合、そのことはスタイラスが3軸ジャイロスコープを備えることを示す。IMUhasMagnetビットが設定される場合、そのことはスタイラスが3軸地磁気計を備えることを示す。設定されるこれらのビットの各々は、そのデータに時間スロットを割り当てる必要性を示し、後述することであるが、IMUに関しては単一の時間スロットまたは時間スロットのセットにデータを多重させることが可能である。
図4Eは、アクティブスタイラスの機能情報の3つの例を記述している。例1は、1024の異なる段階でスタイラス先端圧力を検出することが可能である第1のアクティブスタイラスの機能情報であり、1つのバレルボタンを有し、接線方向(バレル)圧力検知機能、スタイラスオリエンテーション検知機能、およびカスタム機能を有していない。例2は、2048の異なる段階でスタイラス先端圧力を検出することが可能である第2のアクティブスタイラスの機能情報であり、2つのバレルボタン、接線方向(バレル)圧力検知機能、および9軸IMU(図4Cにおけるオリエンテーションコード6)に基づくスタイラスオリエンテーション検知機能を有し、カスタム機能を有していない。例3は、各圧力段階(値)が16ビットで表されるカスタマイズされた数値からなる異なる段階でスタイラス先端圧力を検出することが可能である第3のアクティブスタイラスの機能情報であり、バレルボタン、接線方向(バレル)圧力検知機能を有しておらず、アクティブスタイラスの高度および方位角データならびにツイスト(回転)データを検出およびレポートするスタイラスオリエンテーション検知機能を有する(図4Cにおけるオリエンテーションコード4)。
図5Aは、アクティブスタイラスに対してダウンリンク時間スロット割当てにより設定されたスケジュールに従って、アクティブスタイラスからセンサコントローラに送信され得るアクティブスタイラスの動作状態を示す動作データ例を列挙したテーブルである。スケジュールに従って送信される動作データが、センサコントローラがセンサコントローラとアクティブスタイラスとの間の適切なインタラクティブ動作を達成するのに必要とする動作データからなる、種々の実施形態が挙げられる。このような動作データは、例えば、先端圧力データ、接線方向(バレル)圧力データ、各バレルボタンのステータス(例えば、各バレルボタンのオン/オフ状態)、アクティブスタイラスが該アクティブスタイラスの所期のオリエンテーションから反転している(すなわち、スタイラス先端が上方を向く、つまりスタイラステイルがセンサ表面の方を向いて、およびセンサ表面と接触して、例えば「イレーサ(eraser)」として用いられる)か否かを示す反転データ、スタイラスオリエンテーションデータ、およびアクティブスタイラスの何らかの動作状態を示す任意の他のカスタマイズされた動作データを含む。
場合によっては、スタイラス内のセンサからの動作データの量が多大となり得る。このことは特にIMUに当てはまる。これらのセンサは次のいずれかまたはすべて、すなわち1~3軸を有する加速度計、1~3軸を有するジャイロスコープ、および1~3軸を有する地磁気計のいずれかまたはすべてを備え得る。これにより、最大で9軸のデータを送信する必要性が生じ得る。このデータを指定された種類(例えば、加速度計のX軸、Y軸、Z軸、ジャイロスコープのX軸、Y軸、Z軸、および地磁気計のX軸、Y軸、Z軸)からなる9時間スロットで送信することに代えて、1つまたは複数の時間スロットにデータを多重させ得る。
多重を実現するために、いずれのセンサ(加速度計、ジャイロスコープ、または地磁気計)からデータが生じたかを示すフラグ(IMUフラグ)によってIMUデータをタグ付けする。図5Bは、IMUデータを送信するデータパケット(またはレポート)の例である。図5Bにおいて、「IMUデータ(IMU data)」フィールドは、IMUデータ自体を含み、「IMUフラグ(IMU Flag)」フィールドはいずれのセンサがIMUデータを生成したかを示す。例えば、IMUフラグがゼロである場合はそのことはデータが加速度計から生じたことを示し、IMUフラグが1である場合はそのことはデータがジャイロスコープから生じたことを示し、IMUフラグが2である場合はそのことはデータが地磁気計から生じたことを示し得る。IMUデータフィールドは、IMUフラグにより示されるセンサによって生成されたX軸データ、Y軸データ、Z軸データを含み得る。
例えば、9軸のデータ(例えば、加速度計のX軸、Y軸、Z軸、ジャイロスコープのX軸、Y軸、Z軸、および地磁気計のX軸、Y軸、Z軸)を、共通のレポートフォーマット(またはデータパケット)の3時間スロット(または3つのデータフィールド)に多重させて、以下のように3つの異なる時点において3つのレポートを作成し得る。
(レポート1)
センサタグ-「加速度計(Accelerometer)」
X軸データフィールド-加速度計X軸データ
Y軸データフィールド-加速度計Y軸データ
Z軸データフィールド-加速度計Z軸データ
(レポート2)
センサタグ-「ジャイロスコープ(Gyroscope)」
X軸データフィールド-ジャイロスコープX軸データ
Y軸データフィールド-ジャイロスコープY軸データ
Z軸データフィールド-ジャイロスコープZ軸データ
(レポート3)
センサタグ-「地磁気計(Magnetometer)」
X軸データフィールド-地磁気計X軸データ
Y軸データフィールド-地磁気計Y軸データ
Z軸データフィールド-地磁気計Z軸データ
他の例として、9軸のデータを共通のレポートフォーマット(またはデータパケット)の1時間スロット(または1つのデータフィールド)に多重させて、9つの異なる時点において9つのレポートを作成し得る。
(レポート1)
センサタグ-「加速度計(Accelerometer)」
軸タグ-「X」
データフィールド-加速度計X軸データ
(レポート2)
センサタグ-「加速度計(Accelerometer)」
軸タグ-「Y」
データフィールド-加速度計Y軸データ
(レポート3)
センサタグ-「加速度計(Accelerometer)」
軸タグ-「Z」
データフィールド-加速度計Z軸データ
(レポート4)
センサタグ-「ジャイロスコープ(Gyroscope)」
軸タグ-「X」
データフィールド-ジャイロスコープX軸データ
(レポート5)
センサタグ-「ジャイロスコープ(Gyroscope)」
軸タグ-「Y」
データフィールド-ジャイロスコープY軸データ
(レポート6)
センサタグ-「ジャイロスコープ(Gyroscope)」
軸タグ-「Z」
データフィールド-ジャイロスコープZ軸データ
(レポート7)
センサタグ-「地磁気計(Magnetometer)」
軸タグ-「X」
データフィールド-地磁気計X軸データ
(レポート8)
センサタグ-「地磁気計(Magnetometer)」
軸タグ-「Y」
データフィールド-地磁気計Y軸データ
(レポート9)
センサタグ-「地磁気計(Magnetometer)」
軸タグ-「Z」
データフィールド-地磁気計Z軸データ
このようにしてIMUデータを1つまたは複数の時間スロット(1つまたは複数のデータフィールド)に多重させることには、各レポートにおいて必要とされる時間スロットの数が削減され、IMUデータを送信するのに必要なレポートの数が増加して全体のIMUデータレートを低下させずに済むという利点がある。
複数のIMUセンサからのデータを「センサフュージョン(sensor fusion)」として知られる処理によって結合して所望の位置情報および動き情報を生成する実施形態が挙げられる。例えば、アクティブスタイラスのいずれの方向が「下方(down)」であるかを判定したい場合に、動きの方向を示すジャイロスコープデータを、動きの加速方向および重力の加速方向の両方を示す加速度計データから減算し得る。減算の結果は、重力のみに起因する加速方向、すなわち「下方」基準座標系を示す。
「センサフュージョン(sensor fusion)」を実行するときに、極力正確な結果を与えるように、種々のIMUセンサからのデータを可能な限り互いに時間的に接近させて計測するとよい。図5Bに示す「エンド(End)」ビットを用い、以下のようにして種々のIMUセンサからのデータ間の同期を達成し得る。複数のIMUセンサの計測値を取得してアクティブスタイラス内にバッファする。バッファされたデータを、エンドビットをクリアした(例えば、「0」)利用可能なIMU時間スロット割当てによって送信する。図9Gは、IMUデータパケットの例および「エンドビット(End bit)」の用法を示す。最後のバッファされたデータ要素が時間スロット内に配置されると、エンドビットは複数のIMUセンサによって同時にまたは時間的に接近して取得されたIMUデータのセットにおける最後であることを示すように、エンドビットが(例えば、「1」に)設定される。センサコントローラにおいて、エンドビットがクリアされて受信した任意のIMUデータがバッファに追加される。センサコントローラがエンドビットセットを有するIMUデータを受信すると、センサコントローラは、次いでバッファ内のデータを複数のIMUセンサからのIMUデータの一式のセットとして用い、センサフュージョンを実行するホストプロセッサに転送し得る。
図5Cは、アクティブスタイラスのバッテリレベルなどの、センサコントローラによってポーリングされる(要求される)とアクティブスタイラスがセンサコントローラに送信する、アクティブスタイラスの動作状態を示す動作データ例を列挙したテーブルである。したがって、この種類の動作データは、低頻度でしかセンサコントローラに送信されない。
なお、図4A~4Eを参照して上述したスタイラス機能情報、および図5A~5Cを参照して上述した動作データは一例にすぎず、本発明は図4A~5Cに記載した特定の例を用いることに限定されない。
図6は、アクティブスタイラスの処理フロー例を示すフローチャートである。ステップS601において、アクティブスタイラスは、例えばスタイラス機能情報マネージャ110(図1)のテーブルTBLに格納されたアクティブスタイラス自体が有するスタイラス機能情報を決定する。ステップS603において、アクティブスタイラスの設定(例えば、スタイラス線幅、色など)を変更するユーザ操作をアクティブスタイラスが検出すると、ステップS605において、アクティブスタイラスはこれに応じて設定情報を更新する。図6に示すように、ステップS601~S605は、通常、アクティブスタイラス100がセンサコントローラ200の検知領域外に存在する間に生じる。ステップS611において、アクティブスタイラスはセンサコントローラ200からのビーコン信号を待ち受け、ビーコン信号が検出されない場合はステップS603に戻り、必要に応じて設定情報を更新することを継続し、ビーコン信号を待ち受ける。
ステップS611において、アクティブスタイラスは、センサコントローラ200の検知領域に入るときに、センサコントローラ200からのビーコン信号を検出する。ステップS613において、アクティブスタイラスは、タイミング基準としてのビーコン信号を用いて、アクティブスタイラスのフレーム/時間スロット設定をセンサコントローラのものに同期させる。ステップS615において、アクティブスタイラスは、単一のダウンリンク時間スロットを用いて設定情報のハッシュ値(ハッシュ#1)を送信し、センサコントローラが該アクティブスタイラスをセンサコントローラが以前にペアリングしたことのあるアクティブスタイラスと認識するか否かをセンサコントローラに判定させる。センサコントローラがハッシュ#1に基づいてアクティブスタイラスを認識しない場合は、ステップS617において、アクティブスタイラスは、センサコントローラから受信した機能情報要求(読出し)コマンドに応答して、場合によっては複数のダウンリンク時間スロットを用い、アクティブスタイラスの(一式の)スタイラス機能情報をセンサコントローラに送信する。これに対して、センサコントローラがハッシュ#1に基づいてアクティブスタイラスを認識する場合は、ステップS619において、センサコントローラは、好ましくは単一のアップリンク時間スロットを用い、設定情報のハッシュ値(「ハッシュ#2(Hash#2)」)を検証のためにアクティブスタイラスに送信する。以下でさらに図7および図10を参照して、ハッシュ#1およびハッシュ#2を用いるアクティブスタイラスとセンサコントローラとの間のペアリング動作または「急速インキング処理(fast inking)」動作を説明する。
ステップS617において非ハッシュ化スタイラス機能情報を送信した後、またはステップS619において設定情報のハッシュ#2を受信した後は、ステップS631において、アクティブスタイラスはセンサコントローラ200からのビーコン信号を再度待ち受ける。このときに検出されるビーコン信号は、センサコントローラがアクティブスタイラスのスタイラス機能情報に基づいてアクティブスタイラスに対して決定したダウンリンク時間スロット割当てを含む。ダウンリンク時間スロット割当てを含むビーコン信号が検出されると、アクティブスタイラスは、ステップS633においてカウンタを0にリセットし、ステップS635において検出されたビーコン信号に含まれるダウンリンク時間スロット割当てにより設定されたスケジュールに従ってセンサコントローラにパケットを送信し始める。送信するパケットは、アクティブスタイラスの位置、および/またはアクティブスタイラスの動作データ(例えば、送信された圧力データ、送信されたオリエンテーションデータなど)を含むデータパケットを判別するのにセンサコントローラによって用いられる位置パケットからなり得る。さらに、ステップS631において検出されるビーコン信号において、または続いて検出される任意のビーコン信号(図6において不図示)においてセンサコントローラによりポーリングされる(要求される)と、ステップS637において、アクティブスタイラスは、アクティブスタイラスのバッテリレベルなどのポーリングされた動作データを含むデータパケットを、ダウンリンク時間スロット割当てに従ってセンサコントローラに送信する。例えば、アクティブスタイラスは、上述のステップS635においてスケジュールされたパケットを送信するのに用いられない任意の時間スロットを用い、ポーリングされた動作データを含むデータパケットを送信する。
ステップS617において非ハッシュ化スタイラス機能情報を送信した後、またはステップS619において設定情報のハッシュ#2を受信した後に、ステップS631においてアクティブスタイラスが返信されるビーコン信号を検出しない場合は、ステップS641においてアクティブスタイラスはカウンタが閾値を超えたか否かを判定し、超えていなければステップS643においてカウンタ値をインクリメントする。ステップS641においてカウンタが閾値を超える場合は、アクティブスタイラスがセンサコントローラ200の検知領域から出ており(すなわち、ユーザがアクティブスタイラスをセンサ201から遠ざけるように移動させており)、アクティブスタイラスは該センサコントローラからのビーコン信号の圏外に存在するものとする。したがって、アクティブスタイラスはステップS603、S605、およびS611に戻り、必要に応じて設定情報を更新することを再開し、(開始)ビーコン信号を待ち受ける。
図7は、センサコントローラの処理フロー例を示すフローチャートである。図7は、さらに、センサコントローラとアクティブスタイラスとの間のペアリング動作例を示し、該ペアリング動作においてセンサコントローラはアクティブスタイラスからスタイラス機能情報(例えば、設定情報)を示すハッシュ値(「ハッシュ#1(Hash#1)」)を受信する。センサコントローラが受信したハッシュ#1を認識すると、それによってペアリング動作が迅速化され得る。
ステップS711において、センサコントローラは、第1の時間スロット「s0」などの各フレームの開始時間スロットにおいて、ビーコン信号を送信する。ステップS714において、センサコントローラは、ビーコン信号を検出したアクティブスタイラスから返信された応答(例えば、ACK)信号から、スタイラス機能情報のハッシュ値(ハッシュ#1)を抽出する。ハッシュ#1は、機能情報および設定情報の両方を含む一式の形態をなすスタイラス機能情報のハッシュ値からなり得る、または設定情報のハッシュ値からなり得る。
ステップS715において、センサコントローラは、抽出したハッシュ#1が、センサコントローラ内にキャッシュされたスタイラス機能情報(例えば、設定情報)のハッシュ値(ハッシュ#1)に一致するか否かを判定する。特に、ステップS715は、センサコントローラが該アクティブスタイラスをセンサコントローラが以前にペアリングしたことのあるアクティブスタイラスとして認識するか否かを判定するステップであり、認識する場合は、センサコントローラはアクティブスタイラスのスタイラス機能情報を既にそろえている。
ステップS715においてセンサコントローラがハッシュ#1を認識しない場合は、ステップS717において、センサコントローラは、アクティブスタイラスにアクティブスタイラスのスタイラス機能情報を送信するように要求する読出しコマンドを含むビーコン信号を送信する。それに代えて、またはそれに追加して、センサコントローラは、アクティブスタイラスに対するある一定の設定を強制的に構成する(設定する)書込みコマンドを含むビーコン信号を送信し得る。例えば、センサコントローラは、アクティブスタイラスに対してある一定の既定色を設定する書込みコマンドを発行し得る。
ステップS719において、センサコントローラは、センサコントローラが複数のダウンリンク時間スロットを用いて一式の形態で受信した(図6におけるステップS617を参照)アクティブスタイラスのスタイラス機能情報をセンサコントローラが有していることを確認する、またはハッシュ#1に基づいてセンサコントローラ内にキャッシュ済みであることを確認済みである。センサコントローラは、次いで、スタイラス機能情報に基づき、アクティブスタイラスに対するダウンリンク時間スロット割当てを決定する。ダウンリンク時間スロット割当ては、フレーム内のいずれのダウンリンク時間スロットがアクティブスタイラスに割り当てられるかを特定し、さらにアクティブスタイラスがいずれの種類のパケット(例えば、データパケットまたは位置パケット)をいずれのダウンリンク時間スロットにおいて送信すべきであるかを特定し得る。センサコントローラは、アクティブスタイラスの特定の機能情報に基づき、各アクティブスタイラスに対するダウンリンク時間スロット割当てを決定する。例えば、スタイラス先端圧力センサに加えてスタイラスオリエンテーションセンサおよびバレルプレッシャセンサを備えるアクティブスタイラスに対して、センサコントローラは、スタイラス先端圧力センサのみを備えるアクティブスタイラスと比較して、これらの種々のセンサからの出力を示す動作データを送信するための、より多くのダウンリンク時間スロットを割り当て得る。種々の機能および設定がなされた複数のアクティブスタイラスをセンサコントローラと共に使用する場合に、センサコントローラは、複数のアクティブスタイラス間におけるダウンリンク時間スロット衝突を回避しながら、各アクティブスタイラスに対するダウンリンク時間スロット割当てを決定する。すなわち、各時間スロットを1つのアクティブスタイラスに割り当て、複数のスタイラスによって共有しない実施形態が挙げられる。センサコントローラが、アクティブスタイラスに対するダウンリンク時間スロット割当ての一部として各アクティブスタイラスに特定の周波数を割り当てる実施形態も挙げられる。その場合に、複数の周波数が割り当てられる複数のアクティブスタイラスにそれぞれ同じ時間スロットを割り当て得る。ダウンリンク時間スロット割当ての種々の例を、図8A~9Gを参照して後述する。
図7を再度参照し、ステップS731において、センサコントローラは、決定したダウンリンク時間スロット割当てを含むビーコン信号を、ACK信号を送信してきたアクティブスタイラスに返信する。次いで、ステップS732において、センサコントローラは、ダウンリンク時間スロット割当てに従って、アクティブスタイラスから送信されるパケットを待ち受ける。センサコントローラがアクティブスタイラスからのパケットを検出する場合は、ステップS733においてセンサコントローラはカウンタを0にリセットし、ステップS735においてセンサコントローラは、ダウンリンク時間スロット割当てにより設定されたスケジュールに従ってパケット(位置パケットおよび/または動作データを含むデータパケット)を受信し続ける。さらに、センサコントローラが、ビーコン信号のいずれかによって、アクティブスタイラスのバッテリレベルなどのある一定の動作データをレポートするようにアクティブスタイラスにポーリングすると、ステップS737において、センサコントローラは、アクティブスタイラスからのポーリングされた動作データを含むデータパケットを受信する。
ステップS731においてダウンリンク時間スロット割当てを含むビーコン信号を送信した後に、ステップS732においてセンサコントローラが割り当てられたダウンリンク時間スロットにおいて返信されたパケットを全く検出しない場合は、ステップS741においてセンサコントローラは、カウンタが閾値を超えたか否かを判定し、越えなければ、ステップS743においてカウンタ値をインクリメントする。ステップS741においてカウンタが閾値を超えない場合は、アクティブスタイラスがセンサコントローラ200の検知領域から出ており(すなわち、ユーザがアクティブスタイラスをセンサ201から遠ざけるように移動させており)、アクティブスタイラスは該センサコントローラからのビーコン信号の圏外に存在するものとする。したがって、センサコントローラはステップS711およびS713に戻り、周期ビーコン信号を送信し続け、アクティブスタイラスからの応答信号を待つ。
図8Aおよび8Bは、センサコントローラがアクティブスタイラスにビーコン信号(BS)を送信し、アクティブスタイラスがスタイラス機能情報(CPまたはハッシュ#1)を含む応答信号をセンサコントローラに返信するフレームフォーマット例を示す。図8Aにおいて、第1のフレームFnの時間スロットs0において、センサコントローラはビーコン信号を送信し、次の時間スロットs1において、ビーコン信号を検出したアクティブスタイラスはアクティブスタイラスの非ハッシュ化スタイラス機能情報(「CP1」)を含む応答信号を返信する。本例において、アクティブスタイラスは該センサコントローラとペアリングしたことがなく、したがって該センサコントローラを認識しない(図6のステップS615においてNO)。したがって、アクティブスタイラスは時間スロットs1において一式の(非ハッシュ化)スタイラス機能情報を送信し、これが該一式のスタイラス機能情報のサイズに応じた複数のフレームに亘り得る。図8Aは、アクティブスタイラスが少なくとも2つのフレームFn、Fn+1の時間スロットs1において非ハッシュ化スタイラス機能情報をCP1、CP2として送信することを示す。
図8Bにおいて、アクティブスタイラスは該センサコントローラと以前にペアリングしたことがあり、したがって該センサコントローラを認識する(図6のステップS615においてYES)。したがって、アクティブスタイラスは、時間スロットs1において送信する応答信号において、アクティブスタイラスの設定情報(「ハッシュ#1(Hash#1)」)のハッシュ値を送信する。設定情報のハッシュ値が通常20ビット以下であって単一の時間スロットで送信し得る一定のデータサイズからなることは利点である。それゆえ、上述した図8Aの例とは異なり、アクティブスタイラスの設定情報を表すハッシュ#1を、単一のフレーム(Fn)の時間スロットs1を用いてセンサコントローラに短時間で送信することができる。
センサコントローラは、ハッシュ#1を受信および認識すると(図7のステップS715においてYES)、アクティブスタイラスのスタイラス機能情報を既に有していること、したがってさらにはアクティブスタイラスに対するダウンリンク時間スロット割当てを認識する。こうして、次のフレームFn+1の時間スロットs0において、センサコントローラは、アクティブスタイラスによってセンサコントローラにパケットを送信するのに用いられるダウンリンク時間スロット割当てを含むビーコン信号を送信する。
センサコントローラは、種々の方法によりアクティブスタイラスにダウンリンク時間スロット割当てを通知し得る。例えば、アクティブスタイラスから送信されたハッシュ#1を認識すると、センサコントローラはハッシュ#1に対応するハッシュ#2をアクティブスタイラスに返信し得る。センサコントローラから送信されたハッシュ#2がアクティブスタイラス内に記憶されたハッシュ#2に一致する(ハッシュ#2およびハッシュ#1は同じ設定情報から算出される)ことをアクティブスタイラスが確認すると、アクティブスタイラスは、アクティブスタイラスが以前にセンサコントローラとペアリングしたときに用いられたのと同じダウンリンク時間スロット割当てを用いることができると判定する。こうして、本例において、センサコントローラは、ハッシュ#1の受信に応答してビーコン信号によりハッシュ#2を送信することによって、アクティブスタイラスにダウンリンク時間スロット割当てを送信する。他の例として、センサコントローラは、特定のダウンリンク時間スロット割当てを示す予め定義されたコードをアクティブスタイラスに送信することが可能であり、この場合に、センサコントローラおよびアクティブスタイラスは、予め定められたコードと各コードがどのようなダウンリンク時間スロット割当てを示すかとのリストを共有する。本例において、センサコントローラは、ビーコン信号により予め定義されたコードの1つを送信することによって、アクティブスタイラスにダウンリンク時間スロット割当てを送信する。さらに他の例として、センサコントローラは、図9A~9Gを参照して以下でより詳細に説明するように、例えばフレーム当たりにアクティブスタイラスに割り当てられるダウンリンク時間スロットの位置を特定するオフセット値および間隔値を送信することによって、ダウンリンク時間スロット割当てを送信し得る。本例において、センサコントローラは、例えばビーコン信号によりオフセット値および間隔値を送信することによって、アクティブスタイラスにダウンリンク時間スロット割当てを送信する。
図8Bにおいて、フレームFn+1の時間スロットs0におけるビーコン信号は、アクティブスタイラスに対して決定されたダウンリンク時間スロット割当てを含む。こうして、アクティブスタイラスはダウンリンク時間スロット割当てを決定するビーコン信号を読み取り、決定されたダウンリンク時間スロット割当てに従い、フレームFn+1の時間スロットs2において、スタイラスの動作データを含むデータパケット(DP)を送信することを開始する。
図9A~9Gは、センサコントローラによって特定された異なる7種類のダウンリンク時間スロット割当てに従ってアクティブスタイラスがセンサコントローラにパケットを送信するのにそれぞれ用いる、7つの異なるフレームフォーマットを示す。図9A~9Gの各々において、フレームFn+1の時間スロットs0におけるビーコン信号はアクティブスタイラスに対して決定されたダウンリンク時間スロット割当てを含み、これによりアクティブスタイラスは、決定されたダウンリンク時間スロット割当てに従い、フレームFn+1の時間スロットs1から開始してセンサコントローラにパケット(データパケットおよび/または位置パケット)を送信し得る。
図9Aにおいて、ダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して等間隔(T)にある4つの(4)時間スロット、すなわちフレームFn+1における時間スロットs6、s10、およびs14、フレームFn+2における時間スロットs2、s6、s10、およびs14などにおいて、動作データ(例えば、14ビット)を含むデータパケットをアクティブスタイラスが送信することとすることを規定する。この場合に、センサコントローラは、i)アクティブスタイラスによってパケットを送信するのに用いられる開始時間スロットを示すオフセット値と、ii)開始時間スロットから開始されるアクティブスタイラスに割り当てられた時間スロット間の間隔を示す間隔値とを特定することによってダウンリンク時間スロット割当てを定義し得る。例えば、図9Aの例のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、等間隔(T)にある4時間スロットからなる後続の時間スロットがアクティブスタイラスによって用いられることを示す「4」という間隔値とによって規定され得る。センサコントローラは、これらの値(オフセット:2、間隔:4)をビーコン信号において符号化し、これによってアクティブスタイラスにダウンリンク時間スロット割当てを送信し得る。ダウンリンク時間スロット割当ては、さらに、例えば、送信するパケットの全数(例えば、図9Aの例において「5」(DP1~DP5))および/またはパケットのデータフォーマット(例えば、パケットごとの全ビット数はいくつであるか、そのうちの何ビットがペン圧力を示して何ビットがバレルプレッシャデータを示すかなど)を規定し得る。
図9Aは、さらに、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにアクティブスタイラスのスタイラス機能情報(CP)を送信するための、アクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。例えば、ユーザがセンサコントローラとの双方向通信セッション中にアクティブスタイラスの設定を調整する(例えば、ユーザがスタイラス線幅を変更する)場合に、アクティブスタイラスは、調整した設定情報を後続フレームの時間スロットs1においてセンサコントローラに送信し得る。それに追加して、またはそれに代えて、センサコントローラからのビーコン信号がアクティブスタイラスのスタイラス機能情報を要求する読出しコマンドを含む場合に、アクティブスタイラスは、後続フレームの時間スロットs1において、要求された機能情報および/または設定情報を応答に含める。
図9Aは、さらに、センサコントローラからの前のビーコン信号においてポーリングされた(要求された)動作データを含むデータパケットを送信するために、フレームFn+1の時間スロットs15をアクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。例えば、フレームFn+1の時間スロットs0におけるビーコン信号がアクティブスタイラスにアクティブスタイラスのバッテリレベルをレポートするように要求する場合に、応答においてアクティブスタイラスは、フレームFn+1の時間スロットs15において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信する。
図9Bにおいて、ダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs3から開始して等間隔(T)にある4つの(4)時間スロット、すなわちフレームFn+1における時間スロットs7、s11、およびs15、フレームFn+2における時間スロットs3、s7、s11、およびs15などにおいて、動作データ(例えば、14ビット)を含むデータパケットをアクティブスタイラスが送信することとすることを規定する。上述した図9Aの例と同様に、図9Bの例のダウンリンク時間スロット割当ては、開始時間スロットがs3であることを示す「3」というオフセットと、用いる後続の時間スロットが等間隔(T)にある4時間スロットからなることを示す「4」という間隔値とによって規定され得る。図9Bは、さらに、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにスタイラス機能情報(CP)を送信するための、アクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。さらに、フレームFn+1の時間スロットs0におけるビーコン信号が、スタイラスのバッテリレベルなどのアクティブスタイラスのある一定の動作データをレポートするようにアクティブスタイラスにポーリングする(要求する)場合に、応答においてアクティブスタイラスは、フレームFn+1の時間スロットs1において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信する。
各フレームにおけるビーコン信号時間スロット(s0)の後に、アクティブスタイラスが前の時間スロット(s0)におけるビーコン信号の受信を受諾する応答信号(例えば、ACK)を送信するのに1つまたは複数の時間スロット(例えば、s1)を確保する、種々の実施形態が挙げられる。したがって、ここで用いる「応答信号(response signal)」は、アクティブスタイラスが開始(発見)ビーコン信号に応答してセンサコントローラの検知領域に入るときに送信する第1の応答信号に限定されない。この代わりに、応答信号に、アクティブスタイラスがアクティブスタイラスに宛てられた種々のコマンドまたは他の情報を含む後続のビーコン信号に応答して送信する後続の応答信号が含まれてもよい。例えば、アクティブスタイラスは、変更されたアクティブスタイラスの設定に起因して双方向通信セッション中にセンサコントローラによって更新された新たなダウンリンク時間スロット割当てを含む後続のビーコン信号に応答する応答信号を送信し得る。他の例として、後続のビーコン信号がアクティブスタイラスにスタイラス機能情報を送信するように要求する読出しコマンドを含む場合に、アクティブスタイラスは、要求されたスタイラス機能情報を含む応答信号を送信する(図9Aを参照すると、フレームFn+1およびFn+2の時間スロットs1において送信される「CP」は、要求されたスタイラス機能情報を含む応答信号であるとみなせる)。さらに他の例として、後続のビーコン信号がアクティブスタイラスにアクティブスタイラスのある一定の動作データ(例えば、スタイラスバッテリレベル)を送信するように要求するポーリングコマンドを含む場合に、アクティブスタイラスは、ポーリングされた動作データを含む応答信号を送信する(図9Bを参照すると、フレームFn+1の時間スロットs1において送信される「ポーリングDP(Poll DP)」は、ポーリングされた動作データを含む応答信号であるとみなせる)。
図9Cにおいて、ダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して2つの(2)時間スロットを単位として等間隔(T)にある4つの(4)時間スロット、すなわちフレームFn+1、フレームFn+2などにおける時間スロット[s2/s3]、[s6/s7]、[s10/s11]、および[s14/s15]において、(例えば、14ビットより多い)比較的大きいデータパケットをアクティブスタイラスが送信することとすることを規定する。図9Cの例のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、用いる後続の時間スロットが等間隔(T)にある4時間スロットからなることを示す「4」という間隔値とによって、またさらには、データパケットの各々(DP1、DP2、DP3、DP4、DP5など)を形成するのに2時間スロットからなる単位を用いることを示す「2」という単位サイズによって規定され得る。「2」という単位サイズは、アクティブスタイラスによって用いられるパケット長であるとみなせる。このような比較的大きいデータは、例えば、アクティブスタイラスのカスタマイズされた動作データ(CD)をセンサコントローラに送信するのに必要となり得る。
図9Aおよび図9Bにおけるように、図9Cは、さらに、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにスタイラス機能情報(CP)を送信するための、アクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。図9Cは、さらに、フレームFn+1の時間スロットs0におけるビーコン信号がアクティブスタイラスにある一定の動作データ(例えば、スタイラスバッテリレベル)をレポートするようにポーリングする(要求する)場合に、応答においてアクティブスタイラスは、フレームFn+1の時間スロットs1において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信することを示す。
図9Dは、第1のアクティブスタイラスに周波数f0を割り当てる第1のダウンリンク時間スロット割当てと、第1のアクティブスタイラスと異なる第2のアクティブスタイラスに周波数f0と異なる周波数f1を割り当てる第2のダウンリンク時間スロット割当てとの組合せを示す。
第1のダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して3つの(3)時間スロットを単位として等間隔(T)にある8つの(8)時間スロット、すなわちフレームFn+1、フレームFn+2などにおける時間スロット[s2/s3/s4]および[s10/s11/s12]において、比較的大きいデータパケット(例えば、フレーム当たり2時間スロットを占有するスタイラスオリエンテーションデータ(OR)を含むデータパケットであり、図4CにおけるORC1またはORC3を参照)を第1のアクティブスタイラスが送信することとすることを規定する。第1のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、用いる後続の時間スロットが等間隔(T)にある8時間スロットからなることを示す「8」という間隔値と、データパケットの各々(DP1、DP2、DP3など)を形成するのに3時間スロットからなる単位を用いることを示す「3」という単位サイズ値(またはパケット長)とによって規定され得る。
第2のダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して4つの(4)時間スロットを単位として等間隔(T)にある8つの(8)時間スロット、すなわちフレームFn+1、フレームFn+2などにおける時間スロット[s2/s3/s4/s5]および[s10/s11/s12/s13]において、比較的大きいデータパケット(例えば、フレーム当たり3時間スロットを占有するスタイラスオリエンテーションデータ(OR)を含むデータパケットであり、図4CにおけるORC2または4を参照)を、第1の周波数f1で動作する第2のアクティブスタイラスが同様に送信することとすることを規定する。第2のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、用いる後続の時間スロットが等間隔(T)にある8時間スロットからなることを示す「8」という間隔値と、データパケットの各々(DP1、DP2、DP3など)を形成するのに4時間スロットからなる単位を用いることを示す「4」という単位サイズ値(またはパケット長)とによって規定され得る。
図9Dにおいては、以前の例に示すように、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにスタイラス機能情報(CP)を送信するための、周波数f0で動作する第1のアクティブスタイラスと周波数f1で動作する第2のアクティブスタイラスとの両方に対するダウンリンク時間スロットとして確保する。図9Dは、さらに、フレームFn+1の時間スロットs0におけるビーコン信号が第1のアクティブスタイラスと第2のアクティブスタイラスとのいずれかにある一定の動作データ(例えば、スタイラスバッテリレベル)をレポートするようにポーリングする(要求する)場合に、応答においてアクティブスタイラスは、フレームFn+1の時間スロットs15において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信することを示す。図9Dの例において、フレームFn+1の時間スロットs0におけるビーコン信号は周波数f0で動作する第1のアクティブスタイラスにポーリングし、これにより第1のアクティブスタイラスは、フレームFn+1の時間スロットs15において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信することによって応答する。
センサコントローラが複数のアクティブスタイラスの各々に個々の周波数(例えば、f0、f1)を割り当てると、センサコントローラは、個々のアクティブスタイラスに宛てたコマンドを、そのアクティブスタイラスに割り当てたビーコン信号の周波数部分にのみ含め得る。
図9Aと類似する図9Eにおいて、ダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して等間隔(T)にある4つの(4)時間スロット、すなわちフレームFn+1における時間スロットs6、s10、およびs14、フレームFn+2における時間スロットs2、s6、s10、およびs14などにおいて、動作データ(例えば、16ビット)を含むデータパケットをアクティブスタイラスが送信することとすることを規定する。本例のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、用いる後続の時間スロットが等間隔(T)にある4時間スロットからなることを示す「4」という間隔値とによって規定され得る。図9Eは、さらに、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにスタイラス機能情報(CP)を送信するための、アクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。図9Eは、さらに、フレームFn+1の時間スロットs0におけるビーコン信号がアクティブスタイラスにある一定の動作データ(例えば、スタイラスバッテリレベル)をレポートするようにポーリングする(要求する)場合に、応答においてアクティブスタイラスは、フレームFn+1の時間スロットs15において、ポーリングされた動作データ(「ポーリングDP(Poll DP)」)を含むデータパケットを送信することを示す。
図9A~9Eのダウンリンク時間スロット割当て例は、すべて、アクティブスタイラスの動作データを含むデータパケット(DP1、DP2、DP3、DP4、DP5など)のダウンリンク送信を規定する。これに対して、図9Fのダウンリンク時間スロット割当ては、フレームにおいていずれのダウンリンク時間スロットを用いるかのみならず、アクティブスタイラスがいずれのダウンリンク時間スロットにおいてどのような種類のパケット(データパケット(DP)または位置パケット(XY))を送信すべきであるかをも規定する。
特に、図9Fのダウンリンク時間スロット割当ては、フレームFn+1の時間スロットs2から開始して等間隔(T)にある4つの(4)時間スロット、すなわち各フレームにおける時間スロットs2、s6、s10、およびs14において、センサコントローラによってアクティブスタイラスがセンサ201上で指し示す位置を判別するのに用いることとなる位置パケット(XY)をアクティブスタイラスが送信することとすることを規定する。ダウンリンク時間スロット割当ては、さらに、各フレームの時間スロットs3、s7、s11、およびs15において送信されるデータパケット(DP1、DP2、DP3、DP4、DP5など)が各位置パケット(XY)の直後に続くことを規定する。したがって、2時間スロット[s2/s3]、[s6/s7]、[s10/s11]、および[s14/s15]からなる単位を用いて位置パケット(XY)およびデータパケット(DP)を送信する。図9Fの例のダウンリンク時間スロット割当ては、開始時間スロットがs2であることを示す「2」というオフセットと、用いる後続の時間スロットが等間隔(T)にある4時間スロットからなることを示す「4」という間隔値と、連続する位置パケット(XY)およびデータパケット(DP)を送信するのに2時間スロットからなる単位を用いることを示す「2」という単位サイズと、各単位においてどのような種類のパケットを送信するかを示すパケットタイプ値とによって規定され得る。例えば、パケットタイプ値0は各単位(DP/DP)においてデータパケットのみを送信することを示し得るものであり、1は各単位(XY/XY)において位置パケットのみを送信することを示し得るものであり、2は図9Fの例におけるように各単位(XY/DP)において位置パケットの直後にデータパケットが続くように送信することを示し得るものであり、3は各単位(DP/XY)においてデータパケットの直後に位置パケットが続くように送信することを示し得る。
ダウンリンク時間スロット割当ての以前の例におけるように、図9Fは、さらに、各フレームFn+1、Fn+2などの時間スロットs1を、必要に応じてセンサコントローラにスタイラス機能情報(CP)を送信するための、アクティブスタイラスに対するダウンリンク時間スロットとして確保することを示す。
なお、図8A~9Gのダウンリンク時間スロット割当ては一例にすぎず、本発明は図8A~9Gの特定の例を用いることに限定されない。
システム(ホスト)コントローラ300側で動作するオペレーティングシステムおよびアプリケーションが、センサコントローラ200によって提供されるデータに対して平滑化を適用することがしばしばある。このことには、圧力またはチルトなどのスタイラスデータに加えてセンサコントローラ200によって生成される座標データに対する平滑化が含まれる。該アプリケーションのアルゴリズムは、平滑化を適用する場合にデータが均等に時間間隔をおいて計測されることを前提とする場合が多い。センサコントローラ200が、均等に隔てられた位置パケットまたは均等に隔てられたデータパケットを供給する時間スロット割当てを提供することができない場合がある。これらの場合に、センサコントローラ200は、データが均等に時間間隔をおいて出現するように、データをサブサンプリング、スーパーサンプリング、内挿、外挿、または何らかの手段によって調整する必要があり得る。
本手法は、座標および/または動作データを時間スロット割当てに起因した異なるレートで計測する場合にも適する。センサコントローラ200からホストプロセッサ300へのデータパケットから欠落データを見出すすべはないため、欠落データを上述のように生成して(例えば、サブサンプリング、スーパーサンプリング、内挿、外挿などによって)、これらの中間パケットを有効なデータによって補充する必要がある。例えば、オリエンテーションデータが座標データの半分のレートで得られる場合に、オリエンテーションデータをスーパーサンプルまたは外挿して、データレートを座標データレートに一致させるように2倍する必要がある。
図10は、アクティブスタイラスとセンサコントローラとの間のペアリング動作(および「急速インキング処理(fast inking)」動作)例を示すフローチャートであり、該動作においてアクティブスタイラスはアクティブスタイラスの設定情報を示すハッシュ値(「ハッシュ#1(Hash#1)」)をセンサコントローラに送信する。センサコントローラは、受信したハッシュ#1を認識した後に、センサコントローラが該アクティブスタイラスを以前にペアリングしたスタイラスであると正しく認識するさらなる検証として、アクティブスタイラスに第2のハッシュ値(「ハッシュ#2(Hash#2)」)を返信する。
センサコントローラが受信したハッシュ#1を認識する(つまり、センサコントローラが以前にアクティブスタイラスとペアリングしたことがある)ならば、センサコントローラは、センサコントローラ内にキャッシュ済みであるアクティブスタイラスのスタイラス機能情報および/またはダウンリンク時間スロット割当てを用いてペアリング動作を迅速化し得る。
ステップS301において、アクティブスタイラスはアクティブスタイラスの設定情報にハッシュ演算を適用し、例えば、典型的には20ビットまで収容する単一の時間スロットで送信することができる固定サイズ(例えば、16ビット)のハッシュ値(「ハッシュ#1(Hash#1)」)を算出する。ステップS302において、アクティブスタイラスは、以下でより詳細に説明するように、ハッシュ#1に対応し、したがってハッシュ#1を検証するのに用いることができる第2のハッシュ値(「ハッシュ#2(Hash#2)」)を算出する。ハッシュ#1およびハッシュ#2は、起動時に、およびユーザがアクティブスタイラスの設定(例えば、スタイラス線幅)を変更するときなどのハッシュ値に影響を与える変化が生じる任意の時点において算出し得る。ハッシュ#1およびハッシュ#2を算出するのに、任意の適当なハッシュ演算を用い得る。例えば、公知のMurmurHash3(商標)を用いて、任意長の機能情報に基づいて32ビットハッシュ値を算出し得る。その場合に、ハッシュ値の16LSBをハッシュ#1として用い、ハッシュ値の16MSBをハッシュ#2として用い得る。算出したハッシュ#1およびハッシュ#2は、アクティブスタイラス、例えばスタイラス機能情報マネージャ110(図1を参照)のテーブル(TBL)内に格納される。
ハッシュ演算を、アクティブスタイラスのスタイラス機能情報のいくつかまたはすべてに適用し得る。例えば、2つのアクティブスタイラスに対して、または1つのアクティブスタイラスの2つの異なる設定に対して同じハッシュ値が算出されるハッシュ衝突のおそれを低減するためには、同じベンダによって製造された複数のアクティブスタイラス間で機能情報が共通であり得ることから機能情報をハッシュ計算から除外することが望ましい場合がある。したがって、アクティブスタイラスがアクティブスタイラスのスタイラス機能情報の設定情報部分とアクティブスタイラスのグローバルIDとに基づいてハッシュ#1およびハッシュ#2を算出し、他のアクティブスタイラス、または異なる設定を有する同じアクティブスタイラスと衝突しにくいアクティブスタイラスの固有の「ハッシュID(Hash ID)」を生成する、種々の実施例が挙げられる。本発明の実施形態として、2つのハッシュ関数を用いてハッシュ#1およびハッシュ#2を算出し、それぞれハッシュ衝突のおそれを低減するものが挙げられる。例えば、13ビットのハッシュ値を生成するように適合されたCRC(巡回冗長検査)の変形などのアルゴリズム1をスタイラス機能情報に対して用いてハッシュ#1を算出し、16ビットのハッシュ値を生成するように適合されたFNV(Fowler-Noll-Vo)などのアルゴリズム2をスタイラス機能情報に対して用いてハッシュ#2を算出し得る。
ステップS401において、センサコントローラはビーコン信号(BS)を送信する。ステップS303においてアクティブスタイラスがビーコン信号を検出する場合に、ステップS304において、アクティブスタイラスは上記のステップS301において算出したハッシュ#1を応答信号の一部としてセンサコントローラに送信する。
ステップS403においてセンサコントローラがアクティブスタイラスからの応答信号を検出する場合に、ステップS405において、センサコントローラは、応答信号に含まれるハッシュ#1がセンサコントローラ内にキャッシュ済みであるか否かを判定する。キャッシュ済みでない場合は、ステップS407において、センサコントローラは、アクティブスタイラスに一式の(非ハッシュ化)スタイラス機能情報(CP)を送信するように後続のビーコン信号によって読出しコマンドを送信する。ステップS305において、アクティブスタイラスは、センサコントローラからの読出しコマンドに応答して、要求されたスタイラス機能情報(CP)をセンサコントローラに送信する。センサコントローラは、ステップS409において、受信したスタイラス機能情報(CP)に基づいてハッシュ#1およびハッシュ#2を算出して今後の使用に備えてキャッシュ内に記憶する。これに代わるものとして、ステップS409において、センサコントローラはハッシュ#2のみを算出し、算出したハッシュ#2を、上記のステップS405において受信および評価したハッシュ#1と共に記憶する。ステップS409において、センサコントローラは、アクティブスタイラスによってステップS301およびS302において用いられたのと同じハッシュ演算を用いてハッシュ#1およびハッシュ#2を算出する。
ステップS405に戻り、センサコントローラがアクティブスタイラスからの応答信号に含まれるハッシュ#1がセンサコントローラ内にキャッシュ済みであると判定する場合に、ハッシュ#1に対応するハッシュ#2もセンサコントローラ内にキャッシュする(ステップS409を参照)。こうして、ステップS411において、センサコントローラは、ハッシュ#1に対応するハッシュ#2を、検証目的でアクティブスタイラスに返信する。特に、ステップS307において、アクティブスタイラスは、上記のステップS304においてアクティブスタイラスが送信したハッシュ#1に対応するセンサコントローラから返信されたハッシュ#2が、アクティブスタイラス内にキャッシュされたハッシュ#2に一致するか否かを判定する。一致する場合は、アクティブスタイラスは、センサコントローラが該アクティブスタイラスを以前にペアリングしたことのあるアクティブスタイラスであると正しく認識したことを確認する。その場合はステップS309において、アクティブスタイラスは、センサコントローラが既に(設定情報を含む)スタイラス機能情報および/またはアクティブスタイラスのダウンリンク時間スロット割当てを有していることを検証する応答信号をセンサコントローラに送信する。ステップS413において、センサコントローラはアクティブスタイラスから応答信号を受信して検証処理を終了する。この時点において、アクティブスタイラスおよびセンサコントローラは、それらが以前にペアリングしたときに用いたのと同じダウンリンク時間スロット割当てを用いて双方向通信を開始する準備ができている。またこの時点において、センサコントローラはアクティブスタイラスによって形成される線描画を開始するのにアプリケーションが必要とするアクティブスタイラスの設定情報をすべて有するため、センサコントローラはすぐに「インキング処理(inking)」の動作を開始し得る。
ステップS307において、センサコントローラから受信したハッシュ#2がアクティブスタイラスに記憶されたハッシュ#2に一致しないとアクティブスタイラスが判定する場合は、ステップS311においてアクティブスタイラスは検証失敗を示す失敗メッセージ(FAIL)をセンサコントローラに送信し、ステップS303に戻ってセンサコントローラからのビーコン信号を待ち受けることを再開する。
ステップS413において、センサコントローラは、アクティブスタイラスから送信された失敗メッセージ(FAIL)(ステップS311)を受信することと、アクティブスタイラスから成功検証を示す応答信号(ステップS309)を受信しないこととのいずれかによって、検証失敗を知らされる。検証失敗の場合に、センサコントローラはステップS407に戻り、アクティブスタイラスにアクティブスタイラスの一式の(非ハッシュ化)スタイラス機能情報(CP)を送信するように要求する。
上述した種々の実施形態を組み合わせてさらなる実施形態を提供することが可能であり、上述の詳細な説明に基づいて実施形態の態様を変更することが可能である。一般に、以下の請求項において、用いられる用語は明細書および請求項において開示された特定の実施形態に限定されると解釈すべきではなく、このような請求項が該当する等価物の全範囲と共にすべての存在し得る実施形態を含むと解釈すべきである。

Claims (27)

  1. アクティブスタイラスからのオリエンテーションデータを、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラに送信する方法であって、
    前記アクティブスタイラスは、スタイラス機能情報であって複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示すスタイラス機能情報を、前記センサコントローラに送信し、
    前記センサコントローラは、1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられていることを示す前記スタイラス機能情報に応答して、前記1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられていることを示す、受信した前記スタイラス機能情報に基づいて、前記1つまたは複数のオリエンテーションセンサによって計測される対応した1つまたは複数の種類のオリエンテーションデータを送信するように前記アクティブスタイラスに要求し、
    前記アクティブスタイラスは、前記センサコントローラからの該要求に応答して、前記1つまたは複数の種類のオリエンテーションデータを送信することを含む方法。
  2. 請求項1に記載の方法であって、
    前記スタイラス機能情報は、チルトセンサ、ツイストセンサ、加速度計、ジャイロスコープ、および地磁気計を含む複数のオリエンテーションセンサの各々が前記アクティブスタイラスに備えられているか否かを示す方法。
  3. 請求項2に記載の方法であって、
    前記スタイラス機能情報は、3軸加速度計、3軸ジャイロスコープ、および3軸地磁気計の2つ以上が前記アクティブスタイラスに備えられているか否かを示す方法。
  4. 請求項1に記載の方法であって、
    前記スタイラス機能情報は、3軸内蔵計測ユニット(IMU)のうちの1つ以上が前記アクティブスタイラスに備えられていることを示す方法。
  5. 請求項1に記載の方法であって、
    前記センサコントローラは、前記アクティブスタイラスに前記1つまたは複数の種類のオリエンテーションデータを送信するように要求するときに、前記スタイラス機能情報に基づいて、前記1つまたは複数の種類のオリエンテーションデータを送信するのに用いられるように、フレーム内の1つまたは複数の時間スロットを前記アクティブスタイラスに割り当てる方法。
  6. 請求項5に記載の方法であって、
    前記センサコントローラは、前記1つまたは複数の種類のオリエンテーションデータの量が前記フレーム内の割り当てられた前記1つまたは複数の時間スロットを超過する場合に、追加のフレーム内の追加の時間スロットを前記アクティブスタイラスに割り当てる方法。
  7. 請求項5に記載の方法であって、
    前記スタイラス機能情報は、前記アクティブスタイラスに備えられた1つまたは複数のオリエンテーションセンサの数を示し、
    前記センサコントローラは、前記1つまたは複数のオリエンテーションセンサの前記数に応じてフレーム内の前記1つまたは複数の時間スロットを割り当てる方法。
  8. 請求項7に記載の方法であって、
    前記センサコントローラは、前記1つまたは複数のオリエンテーションセンサの数を示す前記スタイラス機能情報を受信する場合に、示された前記1つまたは複数のオリエンテーションセンサの前記数に対応する前記1つまたは複数の種類のオリエンテーションデータを前記アクティブスタイラスが送信するのに十分な時間スロットを割り当てる方法。
  9. 請求項1に記載の方法であって、
    前記アクティブスタイラスは、i)オリエンテーションセンサの種類を示すセンサフラグと、ii)示された前記種類のオリエンテーションセンサにより1時間スロットにおいて計測されるオリエンテーションデータとを1つのレポートにおいて送信することによって、前記1つまたは複数の種類のオリエンテーションデータを送信する方法。
  10. 請求項1に記載の方法であって、
    前記アクティブスタイラスは2つ以上の種類のオリエンテーションデータを送信し、前記方法は、さらに、
    前記センサコントローラは、前記2つ以上の種類のオリエンテーションデータを受信して組み合わせ、組み合わせた前記2つ以上の種類のオリエンテーションデータをホストプロセッサに送信することを含む方法。
  11. 請求項10に記載の方法であって、
    前記アクティブスタイラスは、互いに同時にまたは時間的に接近して計測される前記2つ以上の種類のオリエンテーションデータをそれぞれエンドビットに関連付けて送信し、前記センサコントローラは、関連付けられた前記エンドビットの値に基づいて前記2つ以上の種類のオリエンテーションデータを組み合わせ、関連付けられた前記エンドビットの前記値は、前記2つ以上の種類のオリエンテーションデータが1つのグループを形成することを示す方法。
  12. アクティブスタイラスによって実行される方法であって、
    前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラに、スタイラス機能情報であって複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示すスタイラス機能情報を送信し、
    前記センサコントローラから受信したタイミング情報に基づいて、前記アクティブスタイラスに備えられた前記1つまたは複数のオリエンテーションセンサによってそれぞれ計測される1つまたは複数の種類のオリエンテーションデータを前記センサコントローラに送信することを含む方法。
  13. 請求項12に記載の方法であって、
    前記アクティブスタイラスは、i)オリエンテーションセンサの種類を示すセンサフラグと、ii)示された前記種類のオリエンテーションセンサにより1時間スロットにおいて計測されるオリエンテーションデータとを1つのレポートにおいて送信することによって、前記1つまたは複数の種類のオリエンテーションデータを送信する方法。
  14. 請求項12に記載の方法であって、
    前記アクティブスタイラスは、2つ以上の種類のオリエンテーションデータを送信し、前記方法は、さらに、
    前記2つ以上の種類のオリエンテーションデータを、互いに同時にまたは時間的に接近して計測し、
    前記2つ以上の種類のオリエンテーションデータをそれぞれ、エンドビットであって前記エンドビットの値は前記2つ以上の種類のオリエンテーションデータが1つのグループを形成することを示すエンドビットに関連付けて送信することを含む方法。
  15. 請求項14に記載の方法であって、
    前記アクティブスタイラスは、2つ以上のフレームを用いて、同時にまたは時間的に接近して計測される前記2つ以上の種類のオリエンテーションデータを送信する方法。
  16. アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラによって実行される方法であって、
    前記アクティブスタイラスから、スタイラス機能情報であって複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示すスタイラス機能情報を受信し、
    1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられていることを示す前記スタイラス機能情報に応答して、前記アクティブスタイラスに含まれている前記スタイラス機能情報に示された前記1つまたは複数のオリエンテーションセンサによって計測される対応した1つまたは複数の種類のオリエンテーションデータを送信するよう前記アクティブスタイラスに要求することを含む方法。
  17. 請求項16に記載の方法であって、さらに、
    前記スタイラス機能情報に基づいて、前記1つまたは複数の種類のオリエンテーションデータを送信するのに用いられるように、フレーム内の1つまたは複数の時間スロットを前記アクティブスタイラスに割り当てることを含む方法。
  18. 請求項17に記載の方法であって、
    前記センサコントローラは、前記1つまたは複数の種類のオリエンテーションデータの量が前記フレーム内の割り当てられた前記1つまたは複数の時間スロットを超過する場合に、追加のフレーム内の追加の時間スロットを前記アクティブスタイラスに割り当てる方法。
  19. 請求項16に記載の方法であって、さらに、
    前記アクティブスタイラスから受信した前記2つ以上の種類のオリエンテーションデータを組み合わせ、
    組み合わせた前記2つ以上の種類のオリエンテーションデータをホストプロセッサに送信することを含む方法。
  20. 請求項19に記載の方法であって、
    前記センサコントローラは、それぞれエンドビットに関連付けられた前記2つ以上の種類のオリエンテーションデータを、前記2つ以上の種類のオリエンテーションデータが互いに同時にまたは時間的に接近して計測されることを前記エンドビットの値が示す場合に組み合わせる方法。
  21. アクティブスタイラスであって、
    記憶装置に結合したプロセッサであって、前記記憶装置は、スタイラス機能情報であって複数種類のオリエンテーションデータをそれぞれ計測するように構成された複数のオリエンテーションセンサの中から1つまたは複数のオリエンテーションセンサが前記アクティブスタイラスに備えられているか否かを示すスタイラス機能情報を記憶するプロセッサと、
    前記プロセッサに結合したトランスミッタであって、前記トランスミッタは、動作中に、前記アクティブスタイラスからの入力を受け付けるように構成されたセンサに結合したセンサコントローラに前記スタイラス機能情報を送信するトランスミッタと、
    前記プロセッサに結合したレシーバであって、前記レシーバは、動作中に、前記アクティブスタイラスに備えられた前記1つまたは複数の種類のオリエンテーションセンサによってそれぞれ計測される1つまたは複数の種類のオリエンテーションデータを送信するように前記センサコントローラからの要求を受信するレシーバとを備えるアクティブスタイラス。
  22. 請求項21に記載のアクティブスタイラスであって、
    前記スタイラス機能情報は、チルトセンサ、ツイストセンサ、加速度計、ジャイロスコープ、および地磁気計の各々が前記アクティブスタイラスに備えられているか否かを示すアクティブスタイラス。
  23. 請求項22に記載のアクティブスタイラスであって、
    3軸加速度計、3軸ジャイロスコープ、および3軸地磁気計のうちの1つ以上が備えられたアクティブスタイラス。
  24. 請求項21に記載のアクティブスタイラスであって、
    3軸内蔵計測ユニット(IMU)のうちの1つ以上が前記アクティブスタイラスに備えられたアクティブスタイラス。
  25. 請求項21に記載のアクティブスタイラスであって、
    前記プロセッサは、i)オリエンテーションセンサの種類を示すセンサフラグと、ii)示された前記種類のオリエンテーションセンサにより1時間スロットにおいて計測されるオリエンテーションデータとを1つのレポートにおいて送信することによって前記1つまたは複数の種類のオリエンテーションデータを送信するように前記トランスミッタを制御するアクティブスタイラス。
  26. 請求項21に記載のアクティブスタイラスであって、
    前記スタイラス機能情報は、前記アクティブスタイラスに備えられた1つまたは複数の内蔵計測ユニット(IMU)によって計測を行うことができる方向の軸の数を示すアクティブスタイラス。
  27. 請求項21に記載のアクティブスタイラスであって、
    2つ以上の種類のオリエンテーションデータを互いに同時にまたは時間的に接近して計測するように構成された2つ以上の種類のオリエンテーションセンサを備え、前記プロセッサは、前記2つ以上の種類のオリエンテーションデータが1つのグループを形成することを示すエンドビットにそれぞれ関連付けられた前記2つ以上の種類のオリエンテーションデータを送信するように、前記トランスミッタを制御するアクティブスタイラス。
JP2022098901A 2015-04-20 2022-06-20 アクティブスタイラスとセンサコントローラとの間の双方向通信に供される方法およびアクティブスタイラス Active JP7271770B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023072463A JP7441994B2 (ja) 2015-04-20 2023-04-26 データ処理方法及びセンサコントローラ

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201562149907P 2015-04-20 2015-04-20
US62/149,907 2015-04-20
US201562162527P 2015-05-15 2015-05-15
US62/162,527 2015-05-15
US201562243427P 2015-10-19 2015-10-19
US62/243,427 2015-10-19
US201662291373P 2016-02-04 2016-02-04
US62/291,373 2016-02-04
US15/069,848 US9785262B2 (en) 2015-04-20 2016-03-14 System and method for bidirectional communication between stylus and stylus sensor controller
US15/069,793 2016-03-14
US15/069,852 US9639183B2 (en) 2015-04-20 2016-03-14 System and method for bidirectional communication between stylus and stylus sensor controller
US15/069,848 2016-03-14
US15/069,793 US9448646B1 (en) 2015-04-20 2016-03-14 System and method for bidirectional communication between stylus and stylus sensor controller
US15/069,852 2016-03-14
JP2021018146A JP7093863B2 (ja) 2015-04-20 2021-02-08 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021018146A Division JP7093863B2 (ja) 2015-04-20 2021-02-08 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023072463A Division JP7441994B2 (ja) 2015-04-20 2023-04-26 データ処理方法及びセンサコントローラ

Publications (2)

Publication Number Publication Date
JP2022130506A true JP2022130506A (ja) 2022-09-06
JP7271770B2 JP7271770B2 (ja) 2023-05-11

Family

ID=57129258

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2017541772A Active JP6836995B2 (ja) 2015-04-20 2016-04-13 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法
JP2021018146A Active JP7093863B2 (ja) 2015-04-20 2021-02-08 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法
JP2022098901A Active JP7271770B2 (ja) 2015-04-20 2022-06-20 アクティブスタイラスとセンサコントローラとの間の双方向通信に供される方法およびアクティブスタイラス
JP2023072463A Active JP7441994B2 (ja) 2015-04-20 2023-04-26 データ処理方法及びセンサコントローラ

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2017541772A Active JP6836995B2 (ja) 2015-04-20 2016-04-13 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法
JP2021018146A Active JP7093863B2 (ja) 2015-04-20 2021-02-08 スタイラスとスタイラスセンサコントローラとの間の双方向通信に供されるシステムおよび方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023072463A Active JP7441994B2 (ja) 2015-04-20 2023-04-26 データ処理方法及びセンサコントローラ

Country Status (6)

Country Link
US (9) US9639183B2 (ja)
EP (2) EP3286745B1 (ja)
JP (4) JP6836995B2 (ja)
KR (3) KR102529126B1 (ja)
CN (2) CN107533793B (ja)
WO (1) WO2016171976A1 (ja)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102407446B1 (ko) 2014-01-22 2022-06-10 가부시키가이샤 와코무 위치 지시기, 위치 검출 장치, 위치 검출 회로 및 위치 검출 방법
KR20160092360A (ko) * 2015-01-27 2016-08-04 삼성전자주식회사 스타일러스 펜 및 터치 패널
WO2016172233A1 (en) 2015-04-20 2016-10-27 Wacom Co., Ltd. System and method for bidirectional communication between stylus and stylus sensor controller
US10324547B2 (en) * 2015-12-31 2019-06-18 Lg Display Co., Ltd. Active stylus pen, touch sensing system and driving method thereof
US10579169B2 (en) 2016-03-08 2020-03-03 Egalax_Empia Technology Inc. Stylus and touch control apparatus for detecting tilt angle of stylus and control method thereof
CN112416149A (zh) * 2016-03-08 2021-02-26 禾瑞亚科技股份有限公司 侦测触控笔的倾斜角的触控控制装置与其控制方法
US9898102B2 (en) * 2016-03-11 2018-02-20 Microsoft Technology Licensing, Llc Broadcast packet based stylus pairing
US10466344B2 (en) * 2016-07-07 2019-11-05 Tactual Labs Co. Human-computer interaction applications of precise ranging technology and geometric dilution of precision in a ranging positioning system for VR
CN107861651B (zh) * 2016-09-22 2021-01-22 京东方科技集团股份有限公司 触控方法、主动笔、触摸屏和触控显示系统
US10474286B2 (en) * 2016-10-25 2019-11-12 Lg Display Co., Ltd. Touch display device, active pen, touch system, touch circuit, and pen recognition method
KR102314497B1 (ko) * 2016-10-25 2021-10-20 엘지디스플레이 주식회사 터치 표시 장치, 액티브 펜, 터치 시스템, 터치회로 및 펜 인식 방법
US10261604B2 (en) 2016-11-04 2019-04-16 Microsoft Technology Licensing, Llc Active stylus velocity correction
US10331235B2 (en) * 2016-11-23 2019-06-25 Wacom Co., Ltd. Stylus tilt detection based on bidirectional communication between stylus and stylus sensor controller
KR102460472B1 (ko) * 2016-12-30 2022-11-01 엘지디스플레이 주식회사 터치 센싱 시스템, 디스플레이 디바이스, 액티브 펜 및 펜 인식 방법
US10572063B2 (en) * 2017-01-09 2020-02-25 Microsoft Technology Licensing, Llc Position, tilt, and twist detection for stylus
US10248226B2 (en) * 2017-02-10 2019-04-02 Microsoft Technology Licensing, Llc Configuring digital pens for use across different applications
TWI656470B (zh) * 2017-05-16 2019-04-11 矽統科技股份有限公司 觸控顯示系統、觸控顯示方法、主動筆和觸控裝置
KR102324210B1 (ko) 2017-06-30 2021-11-08 엘지디스플레이 주식회사 터치 표시 장치, 펜, 터치 시스템, 터치 회로 및 펜 인식 방법
US10983605B2 (en) 2017-08-04 2021-04-20 Marbl Limited Three-dimensional object position tracking system
EP4283444A3 (en) * 2017-09-15 2024-01-31 Wacom Co., Ltd. Active pen and sensor controller
TWI638300B (zh) * 2017-09-28 2018-10-11 義隆電子股份有限公司 電腦系統及其輸入方法
KR102371154B1 (ko) * 2017-09-29 2022-03-07 엘지디스플레이 주식회사 터치 표시 장치, 터치 회로, 펜, 터치 시스템 및 멀티 펜 센싱 방법
CN110892368A (zh) * 2017-11-14 2020-03-17 株式会社和冠 传感器控制器
JP6920007B2 (ja) 2017-11-29 2021-08-18 株式会社ワコム アクティブペンとセンサコントローラとの間で実行される通信方法及びアクティブペン
KR102552355B1 (ko) * 2017-12-12 2023-07-05 엘지디스플레이 주식회사 디스플레이 장치
US10613645B2 (en) * 2018-04-27 2020-04-07 Microsoft Technology Licensing, Llc Mechanism for pen interoperability with pressure sensor design
DE112018007571B4 (de) * 2018-05-09 2022-05-12 Wacom Co., Ltd. Stift, sensorvorrichtung und stiftsystem
KR102460552B1 (ko) * 2018-06-28 2022-10-27 엘지디스플레이 주식회사 터치표시장치, 디스플레이 컨트롤러, 구동회로 및 구동방법
US10877578B2 (en) * 2018-07-18 2020-12-29 Wacom Co., Ltd. Sensor controller and active pen
TWI687846B (zh) * 2018-08-03 2020-03-11 矽統科技股份有限公司 雙向主動式觸控筆及感測系統
US11137839B2 (en) * 2018-08-31 2021-10-05 Microsoft Technology Licensing, Llc Adaptable digital pen and touch sensitive device
CN109521893B (zh) * 2018-10-17 2022-11-25 京东方科技集团股份有限公司 触控笔、触控面板、触控感测系统及其控制方法
KR102644692B1 (ko) * 2018-12-20 2024-03-07 주식회사 엘엑스세미콘 고해상도 구현을 위한 터치센싱장치 및 이를 포함하는 디스플레이 장치
KR102681717B1 (ko) 2018-12-28 2024-07-05 삼성전자주식회사 복수의 입력 버튼들이 구비된 펜 입력 장치와 통신을 수행하는 전자 장치 및 그 제어 방법
KR102655484B1 (ko) * 2018-12-28 2024-04-05 엘지디스플레이 주식회사 터치표시장치 및 그 구동방법
JP7319785B2 (ja) * 2019-02-13 2023-08-02 株式会社ワコム センサパネル上におけるペンの位置を導出するシステムで実行される方法、及び、ペン
JP7025105B2 (ja) * 2019-02-22 2022-02-24 日本電信電話株式会社 データ圧縮伝送システム、中間サーバ、方法およびプログラム
WO2020179158A1 (ja) 2019-03-01 2020-09-10 株式会社ワコム センサコントローラ及びペン
KR20210017099A (ko) * 2019-08-06 2021-02-17 삼성전자주식회사 스타일러스 펜을 인식하는 전자 장치 및 그 동작 방법
CN113126810A (zh) * 2019-12-30 2021-07-16 禾瑞亚科技股份有限公司 发信器、触控处理装置与其处理方法和电子系统
CN111273992B (zh) * 2020-01-21 2024-04-19 维沃移动通信有限公司 一种图标显示方法及电子设备
TWI731650B (zh) * 2020-04-15 2021-06-21 宏碁股份有限公司 觸控筆、觸控電子裝置與觸控系統
CN113760107B (zh) * 2020-06-04 2023-10-13 宏碁股份有限公司 触控笔、触控电子装置与触控系统
KR20220014370A (ko) 2020-07-23 2022-02-07 삼성디스플레이 주식회사 입력 장치 및 이를 포함하는 인터페이스 장치
KR20220062191A (ko) 2020-11-06 2022-05-16 삼성디스플레이 주식회사 전자 장치
US11740729B2 (en) * 2021-03-25 2023-08-29 Microsoft Technology Licensing, Llc Assigning device identifiers by host identifier availability
US11797111B2 (en) * 2021-03-30 2023-10-24 Dell Products L.P. Active stylus adaptive to multiple input types at an information handling system
TWM617533U (zh) 2021-06-30 2021-09-21 奕力科技股份有限公司 主動筆以及觸控系統
CN113467626A (zh) * 2021-06-30 2021-10-01 奕力科技股份有限公司 主动笔以及触控系统
US11656726B1 (en) * 2022-02-09 2023-05-23 Novatek Microelectronics Corp. Control circuit, electronic device, and control method for stylus pen interacting with touch panel
JP2024043321A (ja) * 2022-09-16 2024-03-29 株式会社東芝 軌跡入力システム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515195A (ja) * 2007-01-03 2010-05-06 ルイディア インコーポレイテッド 複数のスタイラスアノテーションシステム
JP2013125487A (ja) * 2011-12-16 2013-06-24 Konica Minolta Business Technologies Inc 空間手書きシステム及び電子ペン
JP2014006751A (ja) * 2012-06-26 2014-01-16 Casio Comput Co Ltd 入力装置、入力操作解析方法、および、入力操作解析プログラム
US20140146021A1 (en) * 2012-11-28 2014-05-29 James Trethewey Multi-function stylus with sensor controller
US20150009187A1 (en) * 2013-07-02 2015-01-08 Research In Motion Limited Method and apparatus for motion sensing of a handheld device relative to a stylus
JP2015056064A (ja) * 2013-09-12 2015-03-23 株式会社リコー 座標入力装置及び画像処理装置

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02230312A (ja) * 1989-03-02 1990-09-12 Nec Corp 座標入力ペン傾き誤差補正方式
US5736980A (en) * 1994-04-28 1998-04-07 Sharp Kabushiki Kaisha Coordinate inputting apparatus with shared line combinations of power, position and switch signals
US6115390A (en) * 1997-10-14 2000-09-05 Lucent Technologies, Inc. Bandwidth reservation and collision resolution method for multiple access communication networks where remote hosts send reservation requests to a base station for randomly chosen minislots
US6830196B1 (en) 1999-05-25 2004-12-14 Silverbrook Research Pty Ltd Identity-coded surface region
US6502614B1 (en) 1999-05-25 2003-01-07 Silverbrook Research Pty Ltd Printed media transverse binder
US7353393B2 (en) * 2001-09-07 2008-04-01 Anoto Aktiebolag (Anoto Ab) Authentication receipt
JP2005149140A (ja) 2003-11-14 2005-06-09 Wacom Co Ltd 位置検出装置及び位置指示器
US7284192B2 (en) 2004-06-24 2007-10-16 Avaya Technology Corp. Architecture for ink annotations on web documents
US7847789B2 (en) 2004-11-23 2010-12-07 Microsoft Corporation Reducing accidental touch-sensitive device activation
US20080143691A1 (en) 2005-11-23 2008-06-19 Quiteso Technologies, Llc Systems and methods for enabling tablet PC/pen to paper space
US8089474B2 (en) 2006-12-28 2012-01-03 3M Innovative Properties Company Location sensing system and method employing adaptive drive signal adjustment
US7907141B2 (en) * 2007-03-23 2011-03-15 Palo Alto Research Center Incorporated Methods and processes for recognition of electronic ink strokes
US8482545B2 (en) * 2008-10-02 2013-07-09 Wacom Co., Ltd. Combination touch and transducer input system and method
GB2466566B (en) 2008-12-22 2010-12-22 N trig ltd Digitizer, stylus and method of synchronization therewith
CN101539816B (zh) * 2009-04-16 2012-10-17 台均科技(深圳)有限公司 电磁笔、电磁信号处理方法、装置及设备
US9417738B2 (en) 2009-06-12 2016-08-16 Synaptics Incorporated Untethered active pen and a method for communicating with a capacitive sensing device using the untethered active pen
JP5442479B2 (ja) 2010-02-05 2014-03-12 株式会社ワコム 指示体、位置検出装置及び位置検出方法
US8340661B2 (en) * 2010-07-02 2012-12-25 Mstar Semiconductor, Inc. Low-cost multimode GSM monitoring from TD-SCDMA
US9176630B2 (en) * 2010-08-30 2015-11-03 Perceptive Pixel, Inc. Localizing an electrostatic stylus within a capacitive touch sensor
US8982045B2 (en) * 2010-12-17 2015-03-17 Microsoft Corporation Using movement of a computing device to enhance interpretation of input events produced when interacting with the computing device
US8619065B2 (en) 2011-02-11 2013-12-31 Microsoft Corporation Universal stylus device
EP2689378A2 (en) * 2011-03-21 2014-01-29 N-Trig Ltd. System and method for authentication with a computer stylus
US9329703B2 (en) 2011-06-22 2016-05-03 Apple Inc. Intelligent stylus
US8797301B2 (en) * 2012-02-15 2014-08-05 Cypress Semiconductor Corporation Active stylus to host data transmitting method
TWI463364B (zh) 2011-10-14 2014-12-01 Syncmold Entpr Corp 觸控裝置之外部操作系統與方法
US8933899B2 (en) 2011-10-28 2015-01-13 Atmel Corporation Pulse- or frame-based communication using active stylus
US9116558B2 (en) * 2011-10-28 2015-08-25 Atmel Corporation Executing gestures with active stylus
US9946408B2 (en) 2011-10-28 2018-04-17 Atmel Corporation Communication between a master active stylus and a slave touch-sensor device
US9323348B2 (en) 2011-11-09 2016-04-26 Crayola Llc Stylus having sensing and transmitting capabilities
US9007302B1 (en) 2011-11-11 2015-04-14 Benjamin D. Bandt-Horn Device and user interface for visualizing, navigating, and manipulating hierarchically structured information on host electronic devices
US8803850B2 (en) * 2012-06-15 2014-08-12 Blackberry Limited Stylus with control ring user interface
JP6021174B2 (ja) * 2012-08-08 2016-11-09 株式会社ワコム 位置検出装置およびその位置指示器
US9563304B2 (en) * 2012-08-15 2017-02-07 Atmel Corporation Active stylus with passive mutual measurements
KR102084041B1 (ko) * 2012-08-24 2020-03-04 삼성전자 주식회사 펜 기능 운용 방법 및 시스템
JP5984259B2 (ja) 2012-09-20 2016-09-06 株式会社ワコム 位置検出装置
RO128874B1 (ro) * 2012-12-19 2017-08-30 Softwin S.R.L. Sistem, pix electronic şi metodă pentru achiziţia semnăturii olografe dinamice, utilizând dispozitive mobile cu ecran capacitiv
US9891722B2 (en) * 2013-03-11 2018-02-13 Barnes & Noble College Booksellers, Llc Stylus-based notification system
US20140256250A1 (en) 2013-03-11 2014-09-11 Barnesandnoble.Com Llc Peer-to-peer data transfer using near field communication (nfc)-enabled styluses
US9760187B2 (en) * 2013-03-11 2017-09-12 Barnes & Noble College Booksellers, Llc Stylus with active color display/select for touch sensitive devices
US20140253462A1 (en) 2013-03-11 2014-09-11 Barnesandnoble.Com Llc Sync system for storing/restoring stylus customizations
KR102050444B1 (ko) * 2013-04-30 2019-11-29 엘지디스플레이 주식회사 터치 입력 시스템 및 이를 이용한 터치 검출 방법
US10055030B2 (en) 2013-05-17 2018-08-21 Apple Inc. Dynamic visual indications for input devices
US9939935B2 (en) 2013-07-31 2018-04-10 Apple Inc. Scan engine for touch controller architecture
US9189428B2 (en) 2013-08-19 2015-11-17 Wacom Co., Ltd. Pen/touch tablet computer having multiple operation modes and method for switching operation modes
CN108536322B (zh) 2013-11-08 2021-10-22 禾瑞亚科技股份有限公司 发信器的侦测方法、触控处理装置与触控系统
KR102407446B1 (ko) 2014-01-22 2022-06-10 가부시키가이샤 와코무 위치 지시기, 위치 검출 장치, 위치 검출 회로 및 위치 검출 방법
US9703946B2 (en) 2014-03-31 2017-07-11 Stmicroelectronics Asia Pacific Pte Ltd Secure pairing method, circuit and system for an intelligent input device and an electronic device
US9632597B2 (en) 2014-06-12 2017-04-25 Amazon Technologies, Inc. Configurable active stylus devices
US9904460B2 (en) 2014-06-16 2018-02-27 Microsoft Technology Licensing, Llc Method and system for data transfer with a touch enabled device
US9763087B2 (en) 2014-07-14 2017-09-12 Microsoft Technology Licensing, Llc Cryptographic key exchange over an electrostatic channel
US9977519B2 (en) * 2015-02-25 2018-05-22 Synaptics Incorporated Active pen with bidirectional communication

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515195A (ja) * 2007-01-03 2010-05-06 ルイディア インコーポレイテッド 複数のスタイラスアノテーションシステム
JP2013125487A (ja) * 2011-12-16 2013-06-24 Konica Minolta Business Technologies Inc 空間手書きシステム及び電子ペン
JP2014006751A (ja) * 2012-06-26 2014-01-16 Casio Comput Co Ltd 入力装置、入力操作解析方法、および、入力操作解析プログラム
US20140146021A1 (en) * 2012-11-28 2014-05-29 James Trethewey Multi-function stylus with sensor controller
US20150009187A1 (en) * 2013-07-02 2015-01-08 Research In Motion Limited Method and apparatus for motion sensing of a handheld device relative to a stylus
JP2015056064A (ja) * 2013-09-12 2015-03-23 株式会社リコー 座標入力装置及び画像処理装置

Also Published As

Publication number Publication date
JP7271770B2 (ja) 2023-05-11
JP2023083613A (ja) 2023-06-15
US20190113992A1 (en) 2019-04-18
US10488953B2 (en) 2019-11-26
US20210081060A1 (en) 2021-03-18
US9785262B2 (en) 2017-10-10
US9639183B2 (en) 2017-05-02
CN111078030B (zh) 2023-10-13
JP2018514008A (ja) 2018-05-31
US20190187822A1 (en) 2019-06-20
US9851819B2 (en) 2017-12-26
US20180120965A1 (en) 2018-05-03
JP7093863B2 (ja) 2022-06-30
JP2021089754A (ja) 2021-06-10
KR102453139B1 (ko) 2022-10-12
US20160306448A1 (en) 2016-10-20
EP3859499A1 (en) 2021-08-04
CN107533793A (zh) 2018-01-02
US20200089345A1 (en) 2020-03-19
KR102529126B1 (ko) 2023-05-08
KR20170139112A (ko) 2017-12-18
WO2016171976A1 (en) 2016-10-27
US20180032164A1 (en) 2018-02-01
US10852852B2 (en) 2020-12-01
KR20230157523A (ko) 2023-11-16
EP3286745A4 (en) 2019-01-02
KR20220139457A (ko) 2022-10-14
US11144140B2 (en) 2021-10-12
US20170235384A1 (en) 2017-08-17
US20160306447A1 (en) 2016-10-20
US10152145B2 (en) 2018-12-11
CN107533793B (zh) 2020-10-27
US10216296B2 (en) 2019-02-26
KR102598474B1 (ko) 2023-11-06
JP7441994B2 (ja) 2024-03-01
CN111078030A (zh) 2020-04-28
EP3286745A1 (en) 2018-02-28
KR20230062895A (ko) 2023-05-09
EP3286745B1 (en) 2021-03-24
US10558280B2 (en) 2020-02-11
JP6836995B2 (ja) 2021-03-03

Similar Documents

Publication Publication Date Title
JP7271770B2 (ja) アクティブスタイラスとセンサコントローラとの間の双方向通信に供される方法およびアクティブスタイラス
JP7004781B2 (ja) ホストプロセッサとアクティブスタイラスとの間の通信の方法、センサコントローラ、ホストプロセッサ、ホストプロセッサとアクティブスタイラスとセンサコントローラとを含むシステム
US9448646B1 (en) System and method for bidirectional communication between stylus and stylus sensor controller
KR102688037B1 (ko) 스타일러스와 스타일러스 센서 컨트롤러 사이의 쌍방향 통신에 제공되는 시스템 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220620

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230331

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230426

R150 Certificate of patent or registration of utility model

Ref document number: 7271770

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150