WO2016170888A1 - アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム - Google Patents

アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム Download PDF

Info

Publication number
WO2016170888A1
WO2016170888A1 PCT/JP2016/058892 JP2016058892W WO2016170888A1 WO 2016170888 A1 WO2016170888 A1 WO 2016170888A1 JP 2016058892 W JP2016058892 W JP 2016058892W WO 2016170888 A1 WO2016170888 A1 WO 2016170888A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
data
sensor controller
active stylus
stylus
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.)
Ceased
Application number
PCT/JP2016/058892
Other languages
English (en)
French (fr)
Inventor
デービッド チャールズ フレック
定雄 山本
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
Application filed by Wacom Co Ltd filed Critical Wacom Co Ltd
Priority to KR1020177033396A priority Critical patent/KR102444210B1/ko
Priority to JP2017514017A priority patent/JP6230754B2/ja
Priority to CN201680023214.8A priority patent/CN107533385B/zh
Priority to CN201680022803.4A priority patent/CN107533384B/zh
Priority to KR1020177033001A priority patent/KR102453136B1/ko
Priority to EP16783135.3A priority patent/EP3287876B1/en
Priority to EP21159252.2A priority patent/EP3851941A1/en
Priority to JP2017514120A priority patent/JP6230755B2/ja
Priority to CN202011008117.6A priority patent/CN112181175B/zh
Priority to PCT/JP2016/062326 priority patent/WO2016171114A1/ja
Priority to KR1020227034630A priority patent/KR102534115B1/ko
Publication of WO2016170888A1 publication Critical patent/WO2016170888A1/ja
Priority to US15/715,860 priority patent/US10860118B2/en
Priority to US15/716,177 priority patent/US10838518B2/en
Priority to JP2017200990A priority patent/JP6262397B1/ja
Anticipated expiration legal-status Critical
Priority to US17/096,858 priority patent/US11016586B2/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 two-dimensional [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 OR CALCULATING; 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 two-dimensional [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 OR CALCULATING; 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 OR CALCULATING; 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
    • G06F3/04184Synchronisation with the driving of the display or the backlighting unit to avoid interferences generated internally
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/0441Digitisers, 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 receiving changes in electrical potential transmitted by the digitiser, e.g. tablet driving signals
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0384Wireless input, i.e. hardware and software details of wireless interface arrangements for pointing devices

Definitions

  • the present invention relates to a method using an active stylus and a sensor controller, a sensor controller, an active stylus, and a system.
  • Position detection devices are known in which a signal is transmitted from an active stylus (hereinafter simply referred to as “stylus”), which is a position indicator with a built-in power supply device, to a tablet by electrostatic coupling.
  • a signal is transmitted from a stylus and received by a sensor controller of a tablet.
  • Patent Document 1 discloses, as an example of such a position detection device, a stylus that communicates data such as writing pressure values and information such as a unique ID of the stylus, together with a position signal dedicated to derivation of coordinate data. .
  • Patent Document 2 discloses another example of the position detection device.
  • the stylus according to this example includes an electrode and a battery for signal transmission, and digitally transmits the result of detecting the pen pressure.
  • the tablet is configured by a display device and a transparent sensor. The transparent sensor can detect both the pointing position and writing pressure by the stylus and the touch position by the finger.
  • Recent styluses are diversified, including styluses that can acquire a variety of interactive data, and styluses that cannot detect pen pressure values and transmit only position signals dedicated to the derivation of coordinate data.
  • the interactive data is data obtained by a stylus operation by the user, and includes, for example, a pen pressure value, an orientation (direction of the stylus), a pressed state of a barrel button (an operation button provided on the side of the stylus), and the like. Since interactive data is frequently changing data, the stylus is configured to periodically transmit interactive data acquired by its own sensor to the sensor controller together with a position signal dedicated to deriving coordinate data.
  • the conventional system including the stylus and the sensor controller has a problem that interactive data transmission by the stylus may not be efficiently performed depending on the function of the stylus. That is, in the conventional system, since the format of data to be transmitted from the stylus to the sensor controller is predetermined, the format of the transmission data can be flexibly changed according to the function of each stylus to use the stylus. As a result, it is not possible to distinguish between data that changes frequently and data or information that changes little, and as a result, efficient transmission may not be possible.
  • one of the objects of the present invention is to provide an active stylus and a method using the sensor controller, a sensor controller, an active stylus, and a system capable of efficiently sending interactive data from the active stylus to the sensor controller.
  • the method according to the present invention is a method using an active stylus and a sensor controller that perform bidirectional communication with each other, wherein the sensor controller indicates a reference time of a frame used for performing the bidirectional communication. And after the active stylus detects the beacon signal, information corresponding to functional information indicating one or more types of interactive data that can be acquired by the active stylus is included in the response signal to the beacon signal. And transmitting the data signal periodically, wherein the active stylus includes at least a part of the one or more interactive data and is configured in a format determined based on the one or more interactive data. And including Is Umono.
  • a sensor controller is a sensor controller that performs bidirectional communication with an active stylus, and transmits a beacon signal indicating a reference time of a frame used to perform the bidirectional communication, from the active stylus, Receiving a response signal including information corresponding to functional information indicating a type of one or more interactive data that can be acquired by the active stylus, including at least a part of the one or more interactive data from the active stylus; A data signal composed of a format determined based on the above interactive data is periodically received.
  • An active stylus is an active stylus that performs two-way communication with a sensor controller, and after receiving a beacon signal indicating a reference time of a frame used for performing the two-way communication from the sensor controller, The information corresponding to the function information indicating the type of one or more interactive data that can be acquired by the active stylus is included in the response signal to the beacon signal and transmitted, and includes at least a part of the one or more interactive data, A data signal composed of a format determined based on the above interactive data is periodically transmitted.
  • the system according to the present invention includes an active stylus and a sensor controller that perform bidirectional communication with each other, and the sensor controller receives a beacon signal indicating a reference time of a frame used for performing the bidirectional communication.
  • the active stylus detects the beacon signal, and then transmits information corresponding to functional information indicating one or more types of interactive data that can be acquired by the active stylus in a response signal to the beacon signal.
  • a data signal including at least a part of the one or more interactive data and configured in a format determined based on the one or more interactive data is periodically transmitted.
  • the data signal periodically transmitted by the format determined based on one or more interactive data that can be acquired by the function of the sensor included in the active stylus does not change with the operation of the stylus. Therefore, it is possible to efficiently send one or more interactive data from the active stylus to the sensor controller.
  • FIG. 6 is a diagram illustrating a description example of the data format DFmt illustrated in FIG. 5.
  • FIG. 1 is a diagram showing a configuration of a system 1 according to the first embodiment of the present invention.
  • the system 1 includes a stylus 100 and a sensor controller 31 provided in the electronic device 3.
  • the stylus 100 is configured to include a communication unit 110 having a function of transmitting and receiving various types of data (function information CP, hash value CP_Hash, interactive data DF, non-interactive data DINF, beacon signal BS, and the like described later).
  • the electronic device 3 includes a sensor 30 that configures the touch surface 3 a of the electronic device 3, and a system controller 32 that controls the functions of each unit of the electronic device 3 including the sensor 30 and the sensor controller 31. It is configured with.
  • the sensor controller 31 is configured to perform bidirectional communication using a frame with the stylus 100 by capacitively coupling with the stylus 100 via the sensor 30.
  • broken line arrows C1 to C5 indicate typical cycles in which the user operates the stylus 100.
  • the user first operates the tail switch 103 (see FIG. 3) to determine the color Col of the line drawn by the stylus 100 and the style Styl (see FIG. 5).
  • the stylus 100 is moved (down) from the outside of the sensing range SR (the range in which the sensor controller 31 can detect the stylus 100) into the sensing range SR (C1, C2), and the touch surface
  • C3 the sensing range SR
  • C4 C5 the touch surface
  • a series of cycles of moving (up) from the sensing range SR to the outside of the sensing range SR (C4, C5) is repeated. By repeating this cycle, a situation occurs in which the stylus 100 repeats in and out with respect to the sensing range SR of the sensor controller 31.
  • the sensor controller 31 is a master device that controls communication executed in the system 1, and transmits a beacon signal BS, which is a frame reference time, for each frame (at an interval of a frame period) using the sensor 30. Composed.
  • FIG. 2 is a diagram showing the configuration of the frame F according to the present embodiment, and shows the relationship between the frame F, the beacon signal BS, and the time or time slot (hereinafter, time slot).
  • each frame F is composed of 16 (or 32, etc.) time slots s0 to s15, and the beacon signal BS is transmitted in the time slot s0 located at the head of each frame F.
  • Sent The time length of one frame F is, for example, 16 msec (corresponding to 60 Hz) in accordance with the refresh rate of the liquid crystal.
  • Communication via capacitive coupling is narrowband communication, and the number of bits that can be transmitted in one time slot is tens of bits (for example, 20 bits) at most.
  • the number of bits that can be transmitted in one time slot is, for example, 16 bits, assuming that a signal transmitted and received in the system 1 is added with a several-bit error detection code (CRC).
  • CRC error detection code
  • the sensor controller 31 waits for the reception of the downlink signal DS transmitted from the stylus 100 in the time slots s1 to s15.
  • the downlink signal DS is detected, based on the position of the electrodes (a plurality of linear electrodes 30X and 30Y shown in FIG. 4 described later) used for the detection and the received level of the detected downlink signal DS.
  • the coordinate data (X, Y) indicating the position of the stylus 100 is derived, and various information or data transmitted by the stylus 100 included in the downlink signal DS is acquired.
  • the various information or data transmitted by the stylus 100 included in the downlink signal DS specifically includes the function information CP shown in FIG. 5, the interactive data DF shown in FIG. 9, and the non-interactive data shown in FIG. DINF.
  • the interactive data DF and the non-interactive data DINF are sometimes collectively referred to as data D.
  • the sensor controller 31 acquires the information or data
  • the sensor controller 31 supplies the information and data together with the position information (X, Y) to the system controller 32.
  • the system controller 32 is configured to associate the position information (X, Y), function information CP, and data D supplied in this way with each other and supply them to various applications such as a drawing application via an operating system (not shown). Thereby, the use of the position information (X, Y), the function information CP, and the data D by various applications is realized.
  • the function information CP is information that changes while the stylus 100 exists outside the sensing range SR, such as version information of the stylus 100, for example. In other words, the information does not change while the user performs a writing operation with the stylus 100.
  • the function information CP includes information that does not change at all, such as a vendor identifier indicating the vendor of the stylus 100, for example.
  • the function information CP must be known on the sensor controller 31 side before various data D is transmitted from the stylus 100 to the sensor controller 31.
  • Data D is information that may change while the stylus 100 is in the sensing range SR, and includes interactive data DF and non-interactive data DINF as described above.
  • the interactive data DF is data that frequently changes while the stylus 100 is being operated by the user, such as a pen pressure value or a pressed state of a barrel button. For example, as shown in FIG. It is transmitted from the stylus 100 to the sensor controller 31 at least once (usually a plurality of times) within the frame F (for example, 60 Hz). Further, once the data format of the interactive data DF is determined, thereafter, the interactive data DF is repeatedly transmitted in a plurality of frames in the determined format as long as the stylus and the sensor controller detect each other. In principle, the stylus 100 voluntarily transmits the interactive data DF repeatedly in a plurality of frames instead of as a response to polling from the sensor controller 31. A position signal dedicated to the derivation of coordinate data is also included in a kind of interactive data DF in that the indicated position frequently changes with the stylus specifications.
  • the non-interactive data DINF is data that changes less frequently than the interactive data DF, such as a battery level (or can be regarded as changing at such a frequency), and includes a plurality of frames F. It is transmitted once every time (for example, every several hundred frames).
  • the stylus 100 is not spontaneous in principle, and transmits non-interactive data DINF as a response to polling (transmission request) from the sensor controller 31.
  • FIG. 3 is a diagram showing a configuration of the stylus 100.
  • the stylus 100 includes a battery 101, electrodes 102T and 102R, a tail switch 103, a barrel button 104, an operation state detection unit 105, and a stylus controller IC 106.
  • the battery 101 is power supply means for supplying electric power for driving the stylus controller IC 106, and is configured to supply a signal corresponding to the level of the remaining amount (battery level BL shown in FIG. 10) to the stylus controller IC 106.
  • the battery 101 is power supply means for supplying electric power for driving the stylus controller IC 106, and is configured to supply a signal corresponding to the level of the remaining amount (battery level BL shown in FIG. 10) to the stylus controller IC 106.
  • the operation state detection unit 105 is a mechanism for detecting information included in the interactive data DF. For example, a detection mechanism for a pen pressure value (pen pressure value TiP shown in FIG. 9 described later) added to the tip of the stylus 100, , And a sensor device such as a 6-axis IMU that detects the orientation (orientation, orientation OR shown in FIG. 9 described later) of the stylus 100. For the sensor device that detects the orientation, the operation state detection unit 105 sends information for specifying the orientation code ORC (see FIG. 6) indicating the type of orientation that can be detected to the function information update unit 111 in the stylus controller IC 106. Configured to notify. The orientation code ORC also includes information indicating whether or not the operation state detection unit 105 has a sensor device that detects the orientation.
  • the orientation code ORC also includes information indicating whether or not the operation state detection unit 105 has a sensor device that detects the orientation.
  • the stylus controller IC 106 functionally includes a communication unit 110, a function information update unit 111, an interactive data acquisition unit 112, and a non-interactive data acquisition unit 113.
  • the communication unit 110 includes a reception unit Rx and a transmission unit Tx, and performs bidirectional communication based on a plurality of time slots defined according to the reference time (start time) of the frame F shown in FIG. More specifically, the communication unit 110 detects the beacon signal BS using the electrode 102R to derive the reference time of the frame F, and sets the reference time of the time slots s0 to s15 shown in FIG. Perform synchronization adjustment. Then, the function information CP, the interactive data DF, and the non-interactive data DINF are supplied from the function information update unit 111, the interactive data acquisition unit 112, and the non-interactive data acquisition unit 113, respectively. In accordance with the format determined as shown in FIG. 6, it is included in the downlink signal DS in the time slots s1 to s15 used for transmission of the downlink signal DS and transmitted from the electrode 102T.
  • the function information update unit 111 has a function of managing the function information CP. Specifically, the function information CP is maintained in a register (not shown), and the function information CP is updated according to the content of the operation of the tail switch 103 by the user (for example, the number of times of performing the ON operation). 110 is configured to supply.
  • the function information CP updated in this way includes the color Col and style Style shown in FIG.
  • the interactive data acquisition unit 112 has a function of managing the interactive data DF. Specifically, each time data included in the interactive data DF is transmitted, the pen pressure value TiP and orientation OR shown in FIG. 9 are acquired from the operation state detection unit 105, and the pressed state of the barrel button 104 (FIG. 9). Is obtained and supplied to the communication unit 110.
  • the non-interactive data acquisition unit 113 has a function of managing the non-interactive data DINF. Specifically, each time the non-interactive data DINF is transmitted, the battery level BL shown in FIG. 10 is acquired and supplied to the communication unit 110.
  • FIG. 4 is a diagram illustrating a configuration of the electronic device 3.
  • the sensor 30 has a configuration in which a plurality of linear electrodes 30X and a plurality of linear electrodes 30Y are arranged in a matrix, and the stylus 100 and the linear electrodes 30X and 30Y are arranged. Capacitive coupling.
  • the sensor controller 31 includes a transmission unit 60, a selection unit 40, a reception unit 50, a logic unit 70, and an MCU 80.
  • the transmission unit 60 is a circuit for transmitting the beacon signal BS shown in FIG. Specifically, it includes a first control signal supply unit 61, a switch 62, a direct spreading unit 63, a spreading code holding unit 64, and a transmission guard unit 65.
  • the first control signal supply unit 61 holds the detection bit pattern c1, and in accordance with an instruction of the control signal ctrl_t1 supplied from the logic unit 70, the first control signal supply unit 61 detects the detection bit pattern c1 for a predetermined continuous transmission period (for example, 3 msec). Are repeatedly output continuously, and the end bit pattern STP is output.
  • a predetermined continuous transmission period for example, 3 msec.
  • the detection bit pattern c1 is a bit pattern used by the stylus 100 to detect the presence of the sensor controller 31, and is a bit known to the stylus 100 in advance (before the stylus 100 detects the sensor controller 31). Consists of values. Specifically, the detection bit pattern c1 may be configured by a 1-bit value consisting of either “0” or “1”, or the detection bit pattern c1 may be configured by a plurality of bits.
  • the end bit pattern STP is a bit pattern for notifying the stylus 100 of the end of the continuous transmission period, and is configured by a bit pattern that does not appear during the repetition of the detection bit pattern c1.
  • the switch 62 has a function of selecting one of the first control signal supply unit 61 and the MCU 80 based on the control signal ctrl_t2 supplied from the logic unit 70 and supplying the selected one output directly to the diffusion unit 63. Have. When the switch 62 selects the first control signal supply unit 61, the detection bit pattern c1 is supplied to the direct diffusion unit 63. On the other hand, when the switch 62 selects the MCU 80, the control information c2 is supplied to the direct spreading unit 63.
  • the control information c2 is information including a command indicating the instruction content to the stylus 100, and is generated by the MCU 80.
  • the control information c2 configures a command for setting a function information CP request or a data D transmission method to the stylus 100, and a plurality of bits whose values are not shared in advance with the stylus 100 ( Information including an arbitrary bit string).
  • the spreading code holding unit 64 has a function of generating a spreading code based on the control signal ctrl_t3 supplied from the logic unit 70.
  • the spreading code generated by the spreading code holding unit 64 is directly supplied to the spreading unit 63.
  • the direct spreading unit 63 multiplies each bit value of the signal (detection bit pattern c1, end bit pattern STP, control information c2) supplied from the switch 62 by the spreading code supplied from the spreading code holding unit 64 (XOR). ) To generate a beacon signal BS.
  • the beacon signal BS generated in this way is a signal including the detection bit pattern c1, the end bit pattern STP, and the control information c2 in this order.
  • the transmission guard unit 65 Based on the control signal ctrl_t4 supplied from the logic unit 70, the transmission guard unit 65 performs transmission and switching to switch between transmission operation and reception operation at the end of the transmission period of the beacon signal BS (time slot s0 illustrated in FIG. 2). This is a functional unit that inserts a guard period, which is a period during which both receptions are not performed. In FIG. 2, the blank portion between the end of the beacon signal BS and the end of the time slot s0 corresponds to this guard period.
  • the selection unit 40 is a switch that switches between a transmission period in which a signal is transmitted from the sensor 30 and a reception period in which the signal is received by the sensor 30 based on the control of the logic unit 70. More specifically, the selection unit 40 includes switches 44x and 44y and conductor selection circuits 41x and 41y. Based on the control signal sTRx supplied from the logic unit 70, the switch 44x connects the output terminal of the transmission unit 60 to the input terminal of the conductor selection circuit 41x during the transmission period, and the conductor selection circuit 41x during the reception period. It operates to connect the output end to the input end of the receiver 50.
  • the switch 44y Based on the control signal sTRy supplied from the logic unit 70, the switch 44y connects the output terminal of the transmission unit 60 to the input terminal of the conductor selection circuit 41y during the transmission period, and the conductor selection circuit 41y during the reception period. It operates to connect the output end to the input end of the receiver 50.
  • the conductor selection circuit 41x operates to select one of the plurality of linear electrodes 201X based on the control signal selX supplied from the logic unit 70 and connect the selected one to the switch 44x.
  • the conductor selection circuit 41y operates to select one of the plurality of linear electrodes 201Y based on the control signal selY supplied from the logic unit 70 and connect the selected one to the switch 44y.
  • the receiving unit 50 is a circuit that receives the downlink signal DS transmitted by the stylus 100 based on the control signal ctrl_r of the logic unit 70. Specifically, it includes an amplifier circuit 51, a detector circuit 52, and an analog-digital (AD) converter 53.
  • AD analog-digital
  • the amplification circuit 51 amplifies and outputs the downlink signal DS supplied from the selection unit 40.
  • the detection circuit 52 is a circuit that generates a voltage corresponding to the level of the output signal of the amplifier circuit 51.
  • the AD converter 53 is a circuit that generates digital data by sampling the voltage output from the detection circuit 49 at predetermined time intervals. Digital data output from the AD converter 50 is supplied to the MCU 80.
  • the MCU 80 is a microprocessor that has a ROM and a RAM inside and operates based on a predetermined program.
  • the logic unit 70 outputs each control signal described above based on the control of the MCU 80.
  • the MCU 80 is also responsible for deriving coordinate data (X, Y) indicating the position of the stylus 100 based on the digital data supplied from the AD converter 53 and outputting it to the system controller 32.
  • drawing algorithms and signature verification algorithms that operate in the system controller 32 are such that the position information (X, Y) and the data D such as the pen pressure value TiP supplied from the sensor controller 31 are on the time axis, etc. It is implemented on the assumption that it is acquired at intervals. Therefore, when the non-interactive data DINF is occasionally transmitted, the interactive data DF cannot be transmitted in the time slot where the interactive data DF should have been originally transmitted (that is, the data D is “stutter”). If there is a case, the above drawing algorithm and signature verification algorithm may not operate normally. Therefore, the time slot used for transmission of the non-interactive data DINF is selected so as not to impair the equally spaced communication of the interactive data DF. Details of this point will be described later with reference to FIGS. 15 and 16.
  • the function information CP may change while the stylus 100 exists outside the sensing range SR of the sensor controller 31.
  • function information CP In particular, the color Col shown in FIG. 5, the style Styl that determines the line width and the brush type, etc.
  • the function information CP is always newly known to the sensor controller 31 every time the stylus 100 enters the sensing range SR.
  • the function information CP is transmitted to the sensor controller 31 as a response signal to the beacon signal BS before the data D (interactive data DF) is transmitted from the stylus 100 to the sensor controller 31.
  • the data D active data DF
  • FIG. 5 is a diagram showing the configuration of the function information CP.
  • the function information CP is a set of a plurality of individual function information given different “information names”. Each individual function information is arranged in the function information CP with the bit length indicated by “transmission size” when the function information CP is transmitted.
  • each individual function information includes a component (Y) that must be arranged in the function information CP (N) and a component (N) that is not necessarily disposed in the function information CP. In order to show a typical example of the number of bits necessary for the function information, Different (Y) and (N) are illustrated.
  • the individual function information constituting the function information CP includes a vendor identifier VID, serial number SN, color Col, style Styl, state of the tail switch 103, version Ver, and data format DFmt as shown in FIG. It is.
  • the vendor identifier VID is 8-bit information indicating the stylus 100 vendor.
  • the serial number SN is 56-bit information unique to each vendor uniquely assigned by each vendor. By adding the vendor identifier VID to the serial number SN, a 64-bit unique user identifier UID (unique ID of the stylus) is generated.
  • Color Col is information that expresses 140 colors that can be used in CSS (Cascading Style Styles) in 8 bits, and is changed by operating the tail switch 103.
  • Style Style is 3-bit information that determines the effect of the inking process by specifying whether the pen tip of the stylus 100 is, for example, a brush or a ballpoint pen.
  • the state of the tail switch 103 is information indicating an ON / OFF operation state of the tail switch 103. Although it is one of the individual function information constituting the function information CP, it is reflected in the change of other individual function information, so that it is not necessary to notify the sensor controller 31 itself. Therefore, the transmission size in the state of the tail switch 103 is N / A (Not Applicable).
  • the version Ver is 4-bit information indicating the version of the communication protocol used by the stylus 100.
  • Data format DFmt is 10-bit to 44-bit information for identifying the format of a data signal used for transmitting data D (interactive data DF, etc.). . Details of the data format DFmt will be described later with reference to FIG.
  • the function information CP includes various types of individual function information. Of those, only information (user identifier UID and data format DFmt) whose arrangement in the function information CP is, for example, essential (Y) exceeds 70 bits. It has a transmission size. Therefore, as described above, when the number of bits that can be transmitted in one time slot is 16 bits, the entire transmission of the function information CP cannot be completed in one time slot.
  • FIG. 6 is a diagram showing the contents of the data format DFmt shown in FIG.
  • the data format DFmt is a set of a plurality of individual formats given different “names”. Each individual format is arranged in the data format DFmt with the bit length indicated by “transmission size” when the function information CP is transmitted.
  • the individual formats constituting the data format DFmt are: a pressure level indication number PL, a barrel button number BBN, a tangential direction pressure pressure flag TaPf, an orientation code ORC, a custom data flag CDf, an orientation resolution ORR, and a custom pressure size.
  • CPS, custom button size CBS, custom orientation size COS, and custom data size CDS are included.
  • These contents indicate one or more types of individual interactive data (described later) that can be acquired by the stylus 100 and their transmission sizes. The stylus 100 acquires them in steps S1 and S3 shown in FIG. Determined based on one or more possible individual interactive data. Each will be described in detail below.
  • the barrel button number BBN may be a bit indicating the presence or absence of each of the first to BBN barrel buttons. For example, if it is 2 bits, it is good also as two bits which each show whether the 1st barrel button and the 2nd barrel button are provided.
  • the tangential writing pressure flag TaPf is 1-bit information indicating whether or not the stylus 100 supports acquisition of a tangential writing pressure value (pressure applied in the tangential direction of the touch surface 3a). Not supported Corresponding when 1 is shown.
  • the stylus 100 corresponds to the tangential writing pressure, the same number of steps as the writing pressure step indication number PL is used.
  • the custom data flag CDf is 1-bit information indicating whether the stylus 100 acquires custom data CD (vendor-specific data that is not standardized as one of the interactive data DF, see FIG. 9). When it is 0, it indicates that there is no custom data CD, and when it is 1, it indicates that there is custom data CD.
  • the orientation resolution ORR is information of 0 to 2 bits indicating the resolution of the orientation OR (see FIG. 9).
  • the resolution of the orientation OR indicated by the orientation resolution ORR is (8 + ORR) bits.
  • the custom pen pressure size CPS is 8-bit information indicating a custom value of the number of writing pressure steps, and is arranged in the data format DFmt only when the writing pressure step indication number PL is 7. Since it is 8 bits, the maximum number of writing pressure steps that can be represented by the custom writing pressure size CPS is 256.
  • the custom button size CBS is 8-bit information indicating the number of operation units including the barrel button 104, and is arranged in the data format DFmt only when the number of barrel buttons BBN is 3. Since it is 8 bits, the maximum number of operation units that can be represented by the custom button size CBS is 256.
  • the custom orientation size COS is 8-bit information indicating the number of bytes of the orientation OR, and is arranged in the data format DFmt only when the orientation code ORC is 7. Since it is 8 bits, the maximum number of bytes of the orientation OR that can be represented by the custom orientation size COS is 256 bytes. However, as will be described later with reference to FIG. 9, the maximum size of the actual orientation OR is 72 bits.
  • the custom data size CDS is 8-bit information indicating the number of bytes of the custom data CD, and is arranged in the data format DFmt only when the custom data flag CDf is 1. Since it is 8 bits, the maximum number of bytes of the custom data CD that can be represented by the custom data size CDS is 256 bytes. However, as will be described later with reference to FIG. 9, the maximum size of the actual custom data CD is 256 bits.
  • the data size of the custom value indicated by each of the custom pen pressure size CPS, the custom button size CBS, the custom orientation size COS, and the custom data size CDS is the data.
  • it is arranged in the format DFmt, it is 8 bits, and when it is not arranged, it is 0 bits.
  • This is a configuration for simplifying the configuration of the data format DFmt by making the data format DFmt variable and making the bit indicating the end position unnecessary.
  • FIG. 7 is a diagram (orientation code table OCT) showing the definition of the orientation code ORC shown in FIG.
  • ORC at the left end indicates the value of the orientation code ORC
  • data size at the right end indicates the data size of the orientation OR as the number of occupied time slots (orientation OR is transmitted once. The number of time slots).
  • the value of the orientation code ORC being “0” indicates that the stylus 100 does not acquire the orientation OR (or does not have an acquisition function). As shown in FIG. 18 described later, when the orientation OR is arranged in the interactive data DF, it is necessary to prepare an additional time slot for transmitting the interactive data DF, but the value of the orientation code ORC is “0”. ”, It is not necessary to prepare such an additional time slot.
  • the stylus 100 can acquire an orientation OR indicating a two-dimensional (2D) inclination in two directions (X tilt, Y tilt), and the orientation OR It is shown that it is necessary to use two time slots to transmit one time. In the illustrated example, two consecutive time slots are allocated, but the two time slots may or may not be consecutive.
  • That the value of the orientation code ORC is “2” means that the stylus 100 has a two-dimensional (2D) inclination represented by values in two directions (X tilt, Y tilt) and a rotation amount around the pen axis. It is possible to acquire an orientation OR indicating a three-dimensional (3D) value composed of a twist, and indicates that it is necessary to use three consecutive or non-consecutive time slots in order to transmit the orientation OR once. .
  • the stylus 100 can acquire an orientation OR indicating a two-dimensional (2D) inclination with values in two directions (altitude and azimuth). It shows that it is necessary to use two time slots to transmit once.
  • the stylus 100 is a twist that is a two-dimensional (2D) inclination represented by values in two directions (altitude and azimuth) and a rotation amount around the pen axis. It is possible to obtain an orientation OR indicating a three-dimensional (3D) value consisting of and to use three time slots in order to transmit the orientation OR once.
  • the stylus 100 can acquire the orientation OR, which is a survey value by a six-axis inertial measurement device (IMU) including an accelerometer and a gyroscope. It shows that it is necessary to use three time slots to transmit twice.
  • IMU inertial measurement device
  • the stylus 100 can acquire the orientation OR that is a survey value by the 9-axis inertial measurement device (IMU), and 3 to transmit the orientation OR once. It shows that more than one time slot is required.
  • IMU 9-axis inertial measurement device
  • the value of the orientation code ORC being “7” indicates that the number of bytes of the orientation OR is represented by the custom orientation size COS shown in FIG. 6 as described above.
  • the type of the orientation OR that can be various information depending on the presence or absence of the function of the stylus 100 or the type of the inertial measurement unit (IMU) is detected by a short 3-bit information.
  • the controller 31 can be notified. Further, regarding the use of a different number of time slots that are continuous or non-consecutive depending on the type of orientation OR, the sensor controller 31 can be notified of the necessary number of time slots.
  • FIG. 8 is a diagram showing a description example of the data format DFmt shown in FIG.
  • Description example 1 shown in FIG. 6A and description example 2 shown in FIG. 5B show an example in which the data format DFmt does not include a custom value and is represented by 9 bits.
  • the value of the orientation code ORC is 0 (0b000), that is, the stylus 100 does not acquire the orientation OR, it is not necessary to prepare an additional time slot for the orientation OR.
  • the description example 2 since the value of the orientation code ORC is 6 (0b110), it is necessary to additionally prepare three or more time slots for the orientation OR.
  • 6C shows an example in which the writing pressure stage instruction number PL is customized and expressed by a custom writing pressure size CPS.
  • the 8-bit custom pen pressure size CPS is described at the end of the data format DFmt, and the number of bits of the data format DFmt is 17 bits.
  • the data format DFmt included in the function information CP is represented by a bit string of 10 bits to 44 bits. Then, the data format DFmt is notified from the stylus 100 to the sensor controller 31, so that the element, size, and presence / absence of optional data of the interactive data DF are determined to the sensor controller 31 before the interactive data DF is transmitted. Known. The interactive data DF is then transmitted from the stylus 100.
  • FIG. 9 is a diagram showing the configuration of the interactive data DF.
  • the interactive data DF is a set of a plurality of individual interactive data given different “names”. Each individual interactive data is arranged in the interactive data DF with a bit length indicated by “transmission size” when the interactive data DF is transmitted.
  • each individual interactive data includes a data (Y) that must be arranged in the interactive data DF (N) and a data (N) that is not necessarily arranged in the interactive data DF.
  • the total number of bits that are typically required is counted. Therefore, an example of this distinction is shown.
  • the figure also shows the order of transmission of the individual interactive data, and the stylus 100 is configured to transmit in order from the one on the upper side of the figure.
  • the individual interactive data constituting the interactive data DF includes a pen pressure value TiP, a tangential pen pressure value TaP, a barrel button state BB, an inversion Inv, an orientation OR, and custom data CD.
  • the writing pressure value TiP is 8-256 bit information indicating the writing pressure value added to the tip of the stylus 100, and is detected by the operation state detection unit 105 shown in FIG.
  • the pen pressure value TiP is always arranged in the interactive data DF (Y).
  • the tangential writing pressure value TaP is 0 to 256 bits of information indicating the tangential writing pressure value, and is detected by the operation state detection unit 105 shown in FIG.
  • the tangential direction pen pressure value TaP is optional data, and is arranged in the interactive data DF only when the tangential direction pen pressure flag TaPf shown in FIG. 6 is 1 (N).
  • the number of bits of the tangential pen pressure value TaP when arranged in the interactive data DF is the same value as the pen pressure value TiP.
  • the tangential pen pressure value TaP is 0-bit information and is not arranged in the interactive data DF.
  • the barrel button state BB is 2-256 bit information indicating the pressed state of the barrel button 104 shown in FIG.
  • the barrel button state BB is always arranged in the interactive data DF (Y).
  • the number of bits of the barrel button state BB is equal to the number of barrel buttons 104 indicated by the number of barrel buttons BBN or the custom button size CBS in the data format DFmt shown in FIG. For example, when the number of barrel buttons BBN is 1, since the number of barrel buttons 104 included in the stylus 100 is 2, the number of bits of the barrel button state BB is 2. In a typical example, the number of bits of the barrel button state BB is 2.
  • the inverted Inv is 1-bit information and is arranged in the interactive data DF (Y).
  • the orientation OR is 0 to 72-bit data indicating the direction of the stylus 100, and is detected by the operation state detection unit 105 shown in FIG.
  • the orientation OR is optional data, and is arranged in the interactive data DF only when the orientation code ORC shown in FIG. 6 is not 0 (see FIG. 7) (N).
  • the specific meaning of the orientation OR is represented by the orientation code ORC as described with reference to FIG.
  • the size of the orientation OR is indicated by the data size shown in FIG. 7 (including the case where it is designated by the custom orientation size COS).
  • an orientation OR representing a two-dimensional or three-dimensional value is transmitted continuously in the illustrated example using two time slots or three time slots in accordance with the definition of the orientation code table OCT shown in FIG. (See FIG. 18).
  • Custom data CD is 0-256 bit information uniquely defined by the stylus 100 vendor.
  • the custom data CD is optional data, and is arranged in the interactive data DF only when the custom data flag CDf shown in FIG. 6 is 1 (N).
  • the number of bits of the custom data CD is represented by the custom data size CDS shown in FIG. For example, when the custom data size CDS is 1, since the number of bytes of the custom data CD is 1, the number of bits of the custom data CD is 8.
  • the minimum number of bits of the interactive data DF is 11 bits (a 4-bit error detection code is a total of the 8-bit tangential pen pressure value TaP, the 2-bit barrel button state BB, and the 1-bit inversion Inv. When added, it becomes 15 bits).
  • 11 bits of tangential writing pressure value TaP, 2 bits of barrel button state BB, and 1 bit of inverted Inv are 14 bits in total (18 bits when adding 4 bits of error detection code). It becomes.
  • transmission of interactive data DF that does not include the orientation OR and the custom data CD can be completed in one time slot ( 15 and 16).
  • transmission of interactive data DF including orientation OR and custom data CD usually exceeds 16 bits, it cannot be completed in one time slot, and multiple time slots are used. (See FIGS. 17 and 18).
  • FIG. 10 is a diagram showing the configuration of the non-interactive data DINF.
  • the non-interactive data DINF is a set of a plurality of individual non-interactive data given different “names”. Each individual non-interactive data is arranged in the non-interactive data DINF with a bit length indicated by “transmission size” when the non-interactive data DINF is transmitted.
  • non-interactive data DINF As an example of individual non-interactive data constituting non-interactive data DINF, only the battery level BL is shown in FIG.
  • the battery level BL is 4-bit information indicating the level of the remaining amount of the battery 101 shown in FIG.
  • other types of individual non-interactive data may be included in the non-interactive data DINF.
  • the non-interactive data DINF is transmitted once for each of a plurality of frames F (for example, every several hundred frames) (see FIGS. 15 to 18).
  • FIG. 11 is a diagram showing an operation flow of the stylus 100.
  • the stylus 100 performs the operation described in the next A1 while it is outside the sensing range SR after the power is turned on.
  • the stylus 100 once determines the function information CP including the data format DFmt after the power is turned on (step S1). At this time, the stylus 100 determines specific contents of the data format DFmt based on one or more interactive data DF that can be acquired by the stylus 100. That is, as described above, for example, if the stylus 100 supports the acquisition of the tangential writing pressure, the tangential writing pressure flag TaPf in the data format DFmt is set to 1, and if not, the data in the data format DFmt. The tangential direction pen pressure flag TaPf is zero.
  • the stylus 100 determines whether or not the user has changed the function information CP (specifically, the operation of the tail switch 103) (step S2).
  • the function information CP determined in step S1 is changed according to the content of the operation (step S3).
  • the stylus 100 determines whether or not the beacon signal BS is detected (step S4). If it is determined in step S4 that no detection has been made (that is, if the stylus 100 is outside the sensing range SR of the sensor controller 31), the stylus 100 returns to step S2 and repeats the processing so far. On the other hand, when it determines with having detected at step S4, the stylus 100 performs operation
  • the stylus 100 is synchronized with the frame F defined by the sensor controller 31 based on the detected beacon signal BS after entering the sensing range SR of the sensor controller 31 by the user performing a down operation (Yes determination in S4).
  • the time slots s0 to s15 are determined (step S5).
  • the stylus 100 performs processing for making the function information CP known to the sensor controller 31 (shared with the sensor controller 31) (steps S6 to S8).
  • the number of bits that can be transmitted in one time slot is limited to 16 bits, for example.
  • the function information CP is information exceeding 70 bits as described above, the entire function information CP cannot be transmitted in one time slot. Therefore, it becomes necessary to perform divided transmission. However, if such divided transmission is performed not only for the first time but also for the second and third times, transmission of the function information CP is not completed until the stylus 100 touches the touch surface 3a (see FIG. 1).
  • the sensor controller 31 that has once sent all of the function information CP is not the function information CP itself, but information corresponding to the function information CP (specifically, (Hash value of function information CP). This will be specifically described below.
  • the stylus 100 first determines whether it has already been paired with the sensor controller 31 that transmits the beacon signal BS (step S6). This determination can be made, for example, by determining the value of a register inside the stylus 100. Note that since the beacon signal BS does not include information for specifying the sensor controller 31, the determination here is not about the specific sensor controller 31 but about whether it is paired with any sensor controller 31 or not. It becomes a judgment.
  • step S6 when it is determined that the pairing with the sensor controller 31 has not been completed (No determination in S6), the stylus 100 displays the current function information CP (information exceeding 70 bits shown in FIG. 5, data format DFmt). And the serial number SN and the user identifier UID including the vendor identifier VID) are repeatedly transmitted in a plurality of time slots (step S7).
  • FIG. 13 is a diagram showing an example of time slot allocation for the function information CP.
  • the stylus 100 according to the example of FIG. 1 divides the function information CP into a plurality of partial function information CP1, CP2,... And transmits them in the time slot s1 of the frames Fn, Fn + 1,.
  • transmission of such function information CP takes time for a plurality of time slots (in this example, a plurality of frames), it is a necessary process at first.
  • the function information CP needs to be transmitted using the time slot s1.
  • the function information CP or the shortened information is transmitted at the time when the response signal (or information CP_Hash corresponding to the function information CP) to the beacon signal BS including the command is to be transmitted.
  • the controller 31 can recognize the presence / absence of a response signal to the beacon signal BS (presence / absence of the stylus 100) by monitoring only the signal received in the time slot s1 after transmitting the beacon signal BS, and the time This is because the time of the time slot s2 to subsequent to the slot s1 can be secured for receiving the data D.
  • step S6 when it is determined that the sensor controller 31 has been paired (affirmative determination in S6), the stylus 100 transmits all of the function information CP including the data format DFmt in step S7. Instead, only the information for specifying the function information CP and the size information (shortened information) that can be transmitted in one time slot is transmitted using one time slot s1 (step S8). .
  • This information may be information that can identify whether or not the corresponding function information CP is authentic with a predetermined probability, such as a hash value CP_Hash of 20 bits or less (for example, 16 bits) of the function information CP. Is preferred.
  • the stylus 100 When transmitting the hash value CP_Hash in step S8, the stylus 100 performs processing for deriving the hash value CP_Hash from the function information CP prior to transmission.
  • FIG. 14 is a diagram showing an example of time slot allocation for the hash value CP_Hash of the function information CP. As shown in the figure, the transmission of the hash value CP_Hash is completed only in the time slot s1 of the frame Fn, and the interactive data DF can be transmitted in the time slot s1 from the next frame Fn + 1.
  • the stylus 100 performs sensing after the functional information CP is once known to the sensor controller 31 (after being paired with the sensor controller 31).
  • the function information CP (including the data format DFmt) is obtained by transmitting the shortened information (specifically, the hash value CP_Hash) instead of transmitting the function information CP that has been transmitted once. 31 can be notified.
  • the sensor controller 31 can specify the function information CP of the approaching stylus 100 at a probability that does not cause a problem in practice by only receiving the shortened information in one time slot.
  • the function information CP transmitted by the stylus 100 is unconditionally accepted by the sensor controller 31, but the sensor controller 31 is defined in the function information CP according to its own resource. It may be determined that part or all of the information is not accepted, and the content of the determination may be notified to the stylus 100. In this case, the stylus 100 does not transmit information that the sensor controller 31 does not accept. Details of this point will be described later with reference to FIG.
  • Step S10 the stylus 100 transmits a data signal including the data D (Steps S10 to S15). Specifically, first, the beacon signal BS is detected (step S10).
  • Step S10 When the beacon BS is detected in Step S10 (Yes determination in Step S10), the stylus 100 resets the continuous non-detection counter to 0 (Step S11). Then, a data signal including the interactive data DF in a format (typically 11 to 14 bits) defined in the data format DFmt of the function information CP is transmitted once in at least one frame F.
  • FIG. 15 is a diagram showing an example of time slot allocation for interactive data DF and non-interactive data DINF.
  • interactive data DF having a typical size of 14 bits is transmitted in four time slots s2, s6, s10, s14 per frame F (data signals DF1, DF2, DF3, DF3). DF4).
  • time slots s2, s6, s10, s14 interactive data DF is transmitted one by one.
  • the interval between time slots used for transmission of interactive data DF is maintained not only within individual frames F but also across frames F.
  • the interval between the data signal DF4 (time slot s14) transmitted last in the frame Fn + 1 and the data signal DF5 (time slot s2) transmitted first in the next frame Fn + 2 is an interval in each frame F).
  • time slot s0 and s1 are reserved (that is, the time slot s0 is the transmission of the beacon signal BS).
  • time slot s1 is the shortest (under the conditions reserved for transmitting a response signal to beacon signal BS and time slot s15 for transmitting non-interactive data DINF).
  • FIG. 16 is a diagram showing another example of time slot allocation for interactive data DF and non-interactive data DINF.
  • interactive data DF having a typical size of 14 bits is transmitted in four time slots s3, s7, s11, and s15 per frame F (data signals DF1, DF2, DF3, and DF3).
  • the stylus 100 also transmits non-interactive data DINF once every plural frames F (once every several hundred frames F) (step S13).
  • the stylus 100 may transmit non-interactive data DINF in response to polling (transmission request) from the sensor controller 31.
  • polling from the sensor controller 31 is arranged as one of the commands in the beacon signal BS.
  • non-interactive data DINF is transmitted in time slot s15.
  • the time slot s15 is normally not used.
  • the transmission cycle of the interactive data DF is set.
  • Non-interactive data DINF can be transmitted without affecting T.
  • the non-interactive data DINF is transmitted in the time slot s1.
  • the time slot s1 is originally used for transmitting a response signal (functional information CP or hash value CP_Hash) to the beacon signal BS, but the time slot s1 is actually used for transmitting the response signal.
  • the probability of being done is low compared to other time slots.
  • the non-interactive data DINF is transmitted in the time slot s1, and as a result, the collision between the response signal and the non-interactive data DINF occurs at the timing when the stylus 100 communicates the non-interactive data DINF once in a plurality of frames F.
  • time slots s2, s6, s10, and s14 and the time slots s3, s7, s11, and s15 can be assigned to different styluses 100.
  • interactive data DF can be transmitted by time division multiplexing.
  • FIG. 17 is a diagram showing an example of time slot allocation for interactive data DF and non-interactive data DINF when interactive data DF includes custom data CD.
  • FIG. 17 illustrates a case where the interactive data DF includes an 11-bit writing pressure value TiP, a 2-bit barrel button state BB, a 1-bit inversion Inv, and an 8-bit custom data CD.
  • FIG. 18 is a diagram illustrating an example of time slot and frequency allocation for interactive data DF and non-interactive data DINF when interactive data DF includes an orientation OR.
  • two frequencies f0 and f1 are used, and three time slots are used for the frequency f0 and four time slots are used for the frequency f1 for transmission of the interactive data DF.
  • the orientation OR is transmitted using a total of five time slots of two time slots at the frequency f0 and three time slots at the frequency f1.
  • transmission with a constant period T is realized even if the size of the interactive data DF is large enough to be transmitted in seven time slots.
  • the period T in this case is longer than the period T in FIGS. 15 to 17, as can be understood by comparing FIG. 18 with FIGS. 15 to 17.
  • a total of seven time slots may be transmitted across two or more frames F.
  • step S10 determines whether or not the value of the continuous non-detection counter is greater than a predetermined threshold Th (step S14), and is not large. Is determined, the value of the continuous non-detection counter is incremented by 1 (step S15) and the process returns to step S10. On the other hand, if it is determined in step S14 that it is large, it means that the stylus 100 has moved outside the sensing range SR, so the stylus 100 returns to step S2, that is, a state in which the user operates the tail switch 103.
  • FIG. 12 is a diagram showing an operation flow of the sensor controller 31. After the power is turned on, the sensor controller 31 starts the operation described in the next B1.
  • the sensor controller 31 repeatedly transmits the beacon signal BS in the time slot s0 (step S20), and waits for the response signal Ack from the stylus 100 in the time slot s1 each time (step S21).
  • step S21 When the downlink signal DS that is the response signal Ack (that is, the downlink signal DS received in the time slot s1) is received in step S21 (Yes determination in S21), the sensor controller 31 is included in the received response signal Ack. Acquired data is regarded as the hash value CP_Hash of the function information CP (step S22). Then, it is determined whether there is a matching hash value CP_Hash stored in the past in step S33 (step S23). If it is determined that there is a match, the hash value CP_Hash is associated with the hash value CP_Hash. The contents of the function information CP (including the data format DFmt) of the stylus 100 that is currently approaching are determined based on the function information CP that has been stored (step S30).
  • step S23 if it is determined in step S23 that there is no match, the sensor controller 31 accumulates the data included in the response signal Ack as part of the function information CP (step S24). Then, as a result of repeating the processing so far, it is determined whether or not all of the function information CP has been accumulated (step S25). If it is determined that all of the function information CP has been accumulated, The contents of the function information CP (including the data format DFmt) of the approaching stylus 100 are determined (step S30). On the other hand, if it is determined that not all have been accumulated, the process returns to step S20 to repeat transmission of the beacon signal BS.
  • the stylus 100 that has determined the content of the function information CP in step S30 derives the hash value, stores the hash value in association with the function information CP, and stores it in the storage area (step S33).
  • the storage area of the corresponding data (corresponding data storage area) created in this way can be implemented as a so-called hash table in which values are associated and held using hash values as keys.
  • the sensor controller 31 transmits the beacon signal BS again in the time slot s0 (step S40). Then, it is determined whether or not any data signal has been detected other than the time slots s0 and s1 (step S41). If it is determined that it has been detected, the value of the continuous non-reception counter is reset to 0 (step S42). . Then, the interactive data DF is received by extracting the interactive data DF from the detected data signal (step S43). Further, the non-interactive data DINF is also received by extracting the non-interactive data DINF from the detected data signal once in a plurality of frames F (step S44).
  • step S41 determines whether or not the value of the continuous non-reception counter is greater than a predetermined threshold Th (step S45).
  • the value of the continuous non-reception counter is incremented by 1 (step S46) and the process returns to step S40.
  • step S45 determines whether or not the stylus 100 has moved out of the sensing range SR, so the sensor controller 31 returns to step S20 and continues processing.
  • one or more individual interactive data that can be acquired by the stylus 100. Since the data signal is configured in a format determined based on the stylus 100, one or more individual interactive data can be efficiently sent from the stylus 100 to the sensor controller 31. As a result, it is possible to flexibly cope with various functions of the stylus 100 and function changes by user operations. It becomes possible to flexibly cope with communication of orientation OR whose correspondence situation varies greatly depending on the type of stylus 100.
  • the function information CP can be notified to the sensor controller 31 by sending only the hash value CP_Hash instead of the entire function information CP. Even in a situation where frequent entry into and exit from the range SR is repeated, the time required for the sensor controller 31 to specify the function information CP can be shortened.
  • the process of deriving the hash value CP_Hash from the function information CP is performed prior to the transmission. You may carry out based on the whole information CP, and may carry out based on only one part.
  • the process of deriving the hash value CP_Hash based on only a part of the function information CP will be described in detail.
  • the function information CP shown in FIG. 5 includes first function information that is not changed by user operation or setting from the sensor controller 31, and second function that can be changed by user operation or setting from the sensor controller 31.
  • Information indicating whether or not the stylus 100 has an inclination detection sensor or a twist detection sensor (information indicated by the orientation code ORC shown in FIG. 7.
  • the like information indicating whether the stylus 100 has other sensors information indicated by the custom data flag CDf shown in FIG. 6.
  • Information indicating whether or not the stylus 100 specifies the color of the line drawn by the stylus 100 (information indicated by the color Col shown in FIG. 5) is also included in the first function information.
  • the function information CP can include information specifying the function assigned to each of the one or more barrel buttons 104.
  • this information is also the first information. Become one.
  • This information includes, for example, information for distinguishing between primary and secondary when there are two barrel buttons 104, information indicating that the style Styl becomes an eraser while the barrel button 104 is being pressed, and the like. included.
  • the second function information is information specifying the color and width of a line drawn by the stylus 100 and the type of brush such as a pencil or a ballpoint pen. These are indicated by the color Col and style Styl shown in FIG. Since the user identifier (UID) is information that can specify inking information such as color and width, these may be included in the second function information.
  • UID user identifier
  • the hash value CP_Hash may be derived based only on the portion related to the second function information in the function information CP. By doing so, it is possible to reduce the possibility that the same hash value CP_Hash is derived for different function information CP (the possibility that hash values collide). For example, the hash value CP_Hash is derived based only on the portion related to the second function information as described above, so that the hash value CP_Hash is derived based on the entire function information CP. It is possible to reduce the size of information from which derivation is performed. The possibility of hash value collision becomes smaller as the size of the information from which the hash value is derived becomes smaller. By doing so, the possibility of hash value collision can be reduced. .
  • the sensor controller 31 determines in step S23 in FIG. 12 that the received hash value CP_Hash is not stored in the corresponding data storage area, the sensor controller 31 sends the function information CP to the stylus 100.
  • the entire transmission request may be transmitted. This transmission is preferably performed by placing the transmission request as one of the commands in the beacon signal BS.
  • the stylus 100 may determine that the pairing has not been completed in step S6 of FIG. By doing so, it is possible to transmit the entire function information CP from the stylus 100 to the sensor controller 31.
  • the sensor controller 31 does not accept the function information CP transmitted by the stylus 100 unconditionally, but receives a part or all of the information defined in the function information CP according to its own resource. It may be determined not to be accepted, or the time slot used for transmission of data D may be determined by itself.
  • FIG. 19 is a diagram showing a modification of the operation flow of the sensor controller 31 shown in FIG. In the figure, only a part of the flow shown in FIG. 12 is extracted and drawn.
  • the sensor controller 31 when the sensor controller 31 according to the present modification receives all the function information CP in step S25 or obtains the function information CP from the corresponding data storage area in step S23, these are used.
  • the data format DFmt is provisionally determined based on the information regarding the possible resources (step S26).
  • the resource information that can be used is, for example, the availability of time slots.
  • the stylus 100 is notified of a command designating the temporarily determined data format DFmt as a part of the beacon signal BS (step S27).
  • the sensor controller 31 tries to detect the response signal Ack transmitted by the stylus 100 (step S28). If the response is not detected, the stylus 100 has left the sensing range SR or has been temporarily determined. Assuming that the format DFmt has not been accepted, the sensor controller 31 returns its process to step S20 of FIG. On the other hand, when the response signal Ack is detected in step S28, the contents of the function information CP (including the data format DFmt) are determined based on the provisionally determined contents (step S30).
  • the sensor controller 31 determines offset information and interval information based on the determined data format DFmt (step S31).
  • the offset information is information indicating information used for transmission of at least a part of the interactive data DF among a plurality of time slots constituting the frame F, and more specifically, among the plurality of time slots constituting the frame F.
  • the time slot from which the interactive data DF is first transmitted is information indicating the temporal distance from the beginning of the frame F.
  • the offset information is 2 in the examples of FIGS. 15, 17, and 18, and the offset information is 3 in the example of FIG.
  • the interval information is information indicating the transmission cycle of the interactive data DF.
  • the cadence information is 4 in the examples of FIGS.
  • the offset information and cadence information basically define which individual interactive data among one or more individual interactive data is transmitted at which timing, and the configuration of a data signal including data D together with the data format DFmt described above. Configure the format to determine.
  • the interval information can be represented by a transmission frequency, or can be represented by an identifier indicating a transmission cycle or a transmission frequency.
  • the sensor controller 31 that has determined the offset information and interval information in step S31 then notifies the stylus 100 of a command that specifies the determined offset information and interval information as part of the beacon signal BS (step S32). Thereafter, the stylus 100 transmits the interactive data DF using the time slot indicated by the designated offset information and interval information.
  • the sensor controller 31 may determine the function information CP of the stylus 100 and the time slot used by the stylus 100 to transmit data D. By doing so, the sensor controller 31 can lead communication with the stylus 100.
  • the system 1 according to the present embodiment is different from the system 1 according to the first embodiment in that two hash values are used as the hash values of the function information CP.
  • the same components as those in the first embodiment will be denoted by the same reference numerals, and the following description will be given focusing on differences from the first embodiment.
  • FIG. 20 is a diagram showing an operation flow of the stylus 100 and the sensor controller 31 according to the present embodiment.
  • an operation flow relating to a process in which the sensor controller 31 receives the function information CP from the stylus 100 is illustrated.
  • operations of the stylus 100 and the sensor controller 31 according to the present embodiment will be described with reference to FIG.
  • the stylus 100 is based on its own function information CP when the power is turned on or when a change affecting the hash value is added to the function information CP (corresponding to an affirmative determination in step S2 in FIG. 11).
  • two hash values # 1 and # 2 may be derived by using two different hash functions (algorithms) such as 13-bit CRC and 16-bit FNV, for example, or by one hash function.
  • the upper bit string and lower bit string of the hash value may be used as hashes # 1 and # 2, respectively.
  • Step S53 This transmission is performed by placing hash value # 1 in the response signal to beacon signal BS.
  • the sensor controller 31 When the sensor controller 31 detects a response signal to the beacon signal BS (step S61), it takes out the hash value # 1 (probable information) from it and determines whether or not it is stored in the corresponding data storage area ( Step S62). If no response signal is detected in step S61, the process returns to step S60, and the beacon signal BS is transmitted again in the next frame.
  • the hash value # 1 probable information
  • step S62 If it is determined in step S62 that the data is not stored in the corresponding data storage area, the sensor controller 31 reads the function information CP from the stylus 100 (step S63). Specifically, this reading is performed by arranging a command Get (CP) indicating a transmission request for the function information CP in the beacon signal BS transmitted in the next frame.
  • CP command Get
  • step S54 the sensor controller 31 derives the hash value # 2 based on the received function information CP, and the received hash value # 1 and the function information CP.
  • the corresponding data is stored in the corresponding data storage area (step S64). In step S64, the sensor controller 31 may newly derive the hash value # 1.
  • step S62 if it is determined in step S62 that the data is stored in the corresponding data storage area, the sensor controller 31 reads the hash value # 2 stored in association with the received hash value # 1, and transmits the hash value # 2 to the stylus 100. (Step S65). This transmission is also performed by placing the read hash value # 2 in the beacon signal BS transmitted in the next frame. The stylus 100 that has received the hash value # 2 transmitted in this manner determines whether or not it matches the one derived in step S51 (step S56). If they match, the response signal Ack does not match. A failure signal Fail is transmitted. These transmissions are performed by placing a response signal Ack or a failure signal Fail in a response signal to the beacon signal BS.
  • step S52 If the failure signal Fail is transmitted, the process returns to step S52 to continue the process. If the response signal Ack is transmitted, the detection process of the sensor controller 31 is terminated and the above-described data signal transmission process (FIG. 11 and the process after step S10 shown in FIG. The sensor controller 31 determines whether or not the response signal Ack is detected for the hash value # 2 transmitted in step S65 (step S66). If the response signal Ack is detected, the sensor controller 31 ends the detection processing of the stylus 100. When the process proceeds to the data signal reception process (the process after step S40 shown in FIG. 12) and the response signal Ack is not detected (or when the failure signal Fail is detected), the process returns to step S63 to function again. Read processing of the information CP is performed.
  • the sensor controller 31 stores the received hash value # 2 in association with the received hash value # 1 in its corresponding data storage area. It is possible to reconfirm the coincidence between the function information CP being operated and the function information CP possessed by the stylus 100. Therefore, it is possible to more reliably perform communication using the correct function information CP.
  • the derivation of the coordinate data (X, Y) indicating the position of the stylus 100 and the transmission of the interactive data DF and the like are performed by the same downlink signal DS.
  • These may be realized by separate downlink signals DS. That is, in FIG. 21, a downlink signal DS, which is a position signal dedicated to derivation of coordinate data, and a downlink signal DS for transmitting the interactive data DF are transmitted in a time-sharing manner.
  • coordinate data (X, Y) indicating the position of the stylus 100 is derived based only on the downlink signal DS.
  • the sensor controller 31 can preferably acquire the coordinate data (X, Y) indicating the position of the stylus 100 and the interactive data DF transmitted by the stylus 100.
  • the interactive data DF1 shown in FIGS. 17 and 18 may be transmitted as separate time slots as in the example of FIG.

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)
  • Position Input By Displaying (AREA)
  • Facsimile Heads (AREA)

Abstract

【課題】アクティブスタイラスからセンサコントローラに対し、1以上のインタラクティブデータを効率よく送れるようにする。 【解決手段】本発明による方法は、互いに双方向通信を行うスタイラス及びセンサコントローラを用いた方法であって、センサコントローラが、フレームFの基準時刻を示すビーコン信号BSを送信するステップと、アクティブスタイラスが、ビーコン信号BSを検出した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応するハッシュ値CP_Hashをビーコン信号BSに対する応答信号に含めて送信するステップと、アクティブスタイラスが、1以上のインタラクティブデータの少なくとも一部を含み、1以上のインタラクティブデータDFに基づいて決定されるフォーマットにより構成されるデータ信号DF1,DF2,・・・を周期的に送信するステップとを含む。

Description

アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム
 本発明は、アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステムに関する。
 電源装置内蔵型の位置指示器であるアクティブスタイラス(以下、単に「スタイラス」という場合がある)からタブレットに対し、静電結合により信号の送信を行うようにした位置検出装置が知られている。この種の位置検出装置においては、現状、スタイラスから信号を送信してタブレットのセンサコントローラで受信するという、一方向の通信が行われている。特許文献1には、このような位置検出装置の例として、座標データの導出専用の位置信号とともに、筆圧値などのデータとスタイラスの固有IDなどの情報とを通信するスタイラスが開示されている。
 特許文献2には、位置検出装置の他の例が開示されている。この例によるスタイラスは、信号送信のための電極と電池とを備えており、筆圧検出した結果をデジタルで送信している。また、タブレットは表示装置及び透明センサによって構成されており、透明センサにより、スタイラスによる指示位置および筆圧と、指によるタッチ位置との両方が検出可能な構成とされている。
国際公開第2015/111159号公報 特開2014-63249号公報
 近年のスタイラスは、多様なインタラクティブデータを取得可能に構成されたスタイラスもあれば、筆圧値を検出できず座標データの導出専用の位置信号のみを送信するスタイラスもあり多様化している。インタラクティブデータは、ユーザによるスタイラスの操作によって得られるデータであり、例えば、筆圧値、オリエンテーション(スタイラスの向き)、バレルボタン(スタイラスの側面に設けられた操作ボタン)の押下状態などを含む。インタラクティブデータは頻繁に変化するデータであるため、スタイラスは、自己のセンサで取得したインタラクティブデータを座標データの導出専用の位置信号とともにセンサコントローラに対して周期的に送信するよう構成される。
 しかしながら、スタイラスとセンサコントローラを含む従来のシステムには、スタイラスによるインタラクティブデータの送信をスタイラスの機能の別に応じて効率よく行えない場合があるという問題があった。すなわち、従来のシステムにおいては、スタイラスからセンサコントローラに対して送信するデータのフォーマットが予め定められていたため、送信データのフォーマットを、スタイラスごとの機能の別に応じて柔軟に変更し、スタイラスの利用に伴い頻繁に変化するデータとほとんど変化しないデータあるいは情報とで区別することができず、その結果として効率のよい送信を行えない場合が生じていた。
 したがって、本発明の目的の一つは、アクティブスタイラスからセンサコントローラに対し、インタラクティブデータを効率よく送ることのできる、アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステムを提供することにある。
 本発明による方法は、互いに双方向通信を行うアクティブスタイラス及びセンサコントローラを用いた方法であって、前記センサコントローラが、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信するステップと、前記アクティブスタイラスが、前記ビーコン信号を検出した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信するステップと、前記アクティブスタイラスが、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信するステップとを含むというものである。
 本発明によるセンサコントローラは、アクティブスタイラスと双方向通信を行うセンサコントローラであって、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信し、前記アクティブスタイラスから、該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を含む応答信号を受信し、前記アクティブスタイラスから、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に受信するというものである。
 本発明によるアクティブスタイラスは、センサコントローラと双方向通信を行うアクティブスタイラスであって、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を前記センサコントローラから受信した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信し、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信するというものである。
 本発明によるシステムは、互いに双方向通信を行うアクティブスタイラス及びセンサコントローラを含むシステムであって、前記センサコントローラは、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信し、前記アクティブスタイラスは、前記ビーコン信号を検出した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信するとともに、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信するというものである。
 本発明によれば、アクティブスタイラスが備えるセンサの機能により取得可能な1以上のインタラクティブデータに基づいて決定されたフォーマットにより、周期的に送信されるデータ信号は、スタイラスの操作に伴い変化しない機能情報を含まずスタイラスの操作に伴い頻繁に変化するデータにより構成されるので、アクティブスタイラスからセンサコントローラに対し、1以上のインタラクティブデータを効率よく送ることが可能になる。
本発明の第1の実施の形態によるシステム1の構成を示す図である。 本発明の第1の実施の形態によるフレームFの構成を示す図である。 図1に示したスタイラス100の構成を示す図である。 図1に示したセンサ30及びセンサコントローラ31の構成を示す図である。 図3に示した機能情報CPの構成を示す図である。 図5に示したデータフォーマットDFmtの内容を示す図である。 図6に示したオリエンテーションコードORCの定義を示す図である。 図5に示したデータフォーマットDFmtの記述例を示す図である。 図3に示したインタラクティブデータDFの構成を示す図である。 図3に示した非インタラクティブデータDINFの構成を示す図である。 図1に示したスタイラス100の動作フローを示す図である。 図1に示したセンサコントローラ31の動作フローを示す図である。 機能情報CPに対する時間スロットの割り当て例を示す図である。 機能情報CPのハッシュ値CP_Hashに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当ての他の例を示す図である。 インタラクティブデータDFがカスタムデータCDを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDFがオリエンテーションORを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロット及び周波数の割り当て例を示す図である。 図12に示したセンサコントローラ31の動作フローの変形例を示す図である。 機能情報CPのハッシュ値として2種類のハッシュ値を用いる変形例における、スタイラス100及びセンサコントローラ31の動作フローを示す図である。 時間スロットの割り当ての変形例を示す図である。
 以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。
 図1は、本発明の第1の実施の形態によるシステム1の構成を示す図である。システム1は、スタイラス100と、電子機器3に備えられたセンサコントローラ31とにより構成される。このうちスタイラス100は、各種のデータ(後述する機能情報CP、ハッシュ値CP_Hash、インタラクティブデータDF、非インタラクティブデータDINF、ビーコン信号BSなど)を送受信する機能を有する通信部110を備えて構成される。また、電子機器3は、センサコントローラ31の他に、電子機器3のタッチ面3aを構成するセンサ30と、センサ30及びセンサコントローラ31を含む電子機器3の各部の機能を制御するシステムコントローラ32とを備えて構成される。センサコントローラ31は、センサ30を介してスタイラス100と容量結合することにより、スタイラス100との間で、フレームを使用する双方向通信を行うよう構成される。
 図1中の破線矢印C1~C5は、ユーザがスタイラス100を操作する典型的なサイクルを示している。ユーザは、スタイラス100の使用にあたり、まず初めにテイルスイッチ103(図3参照)を操作して、スタイラス100が描く線の色ColやスタイルStyl(図5参照)を決定する。そして実際に線を描く際には、スタイラス100をセンシング範囲SR(センサコントローラ31がスタイラス100を検出可能な範囲)の外からセンシング範囲SR内に移動(ダウン)させ(C1,C2)、タッチ面3a上で所望の軌跡を描くように動かした後(C3)、センシング範囲SR内からセンシング範囲SR外に移動(アップ)させる(C4,C5)、という一連のサイクルを繰り返す。このサイクルの繰り返しにより、センサコントローラ31のセンシング範囲SRに対しスタイラス100がイン及びアウトを繰り返す状況が発生する。
 センサコントローラ31は、システム1内で実行される通信を制御するマスター装置であり、フレームの基準時刻となるビーコン信号BSを、センサ30を用いてフレームごとに(フレーム周期のインターバルで)送出するよう構成される。
 図2は、本実施の形態によるフレームFの構成を示す図であり、フレームF、ビーコン信号BS、及び時間あるいは時間スロット(以下、時間スロット)の関係を示している。同図に示すように、例えば、各フレームFは16個(あるいは32個等)の時間スロットs0~s15によって構成されており、ビーコン信号BSは、各フレームFの先頭に位置する時間スロットs0で送信される。1つのフレームFの時間長は例えば液晶のリフレッシュレートに合わせ16msec(60Hz相当)である。容量結合を介した通信は狭帯域通信であり、1つの時間スロットで送出できるビット数はせいぜい数十ビット(例えば20ビット)となる。ただし、システム1内で送受信される信号に数ビットの誤り検出符号(CRC)が付されるとして、1つの時間スロットで送信できるビット数は、例えば16ビットとなる。以下では、1つの時間単位あるいは時間スロットで16ビットが送信可能であることを前提として説明を続ける。
 センサコントローラ31は、例えば、時間スロットs0でビーコン信号BSを送出した後、時間スロットs1~s15で、スタイラス100から送信されるダウンリンク信号DSの受信を待機する。ダウンリンク信号DSが検出されると、その検出に用いた電極(後述する図4に示す複数の線状電極30X,30Y)の位置と、検出されたダウンリンク信号DSの受信レベルとに基づいてスタイラス100の位置を示す座標データ(X,Y)を導出するともに、スタイラス100がダウンリンク信号DSに含めて送信した各種の情報乃至データを取得するよう構成される。
 スタイラス100がダウンリンク信号DSに含めて送信する各種の情報乃至データとは、具体的には、図5に示す機能情報CP、図9に示すインタラクティブデータDF、及び、図10に示す非インタラクティブデータDINFである。以下、このうちのインタラクティブデータDF及び非インタラクティブデータDINFをデータDと総称する場合がある。センサコントローラ31は、これらの情報乃至データを取得すると、位置情報(X,Y)とともにシステムコントローラ32に供給する。システムコントローラ32は、こうして供給された位置情報(X,Y)、機能情報CP、及びデータDを互いに対応付け、図示しないオペレーティングシステムを介し、描画アプリケーションなどの各種アプリケーションに供給するよう構成される。これにより、各種アプリケーションによる位置情報(X,Y)、機能情報CP、及びデータDの利用が実現される。
 ここで、機能情報CP及びデータDの概要について説明する。詳細については、後ほど図5~図10を参照しながら別途説明する。
 まず機能情報CPは、例えばスタイラス100のバージョン情報のような、スタイラス100がセンシング範囲SR外に存在する間に変化する情報である。別の言い方をすれば、ユーザがスタイラス100で書き込み操作を行っている間には変化することのない情報である。機能情報CPには、例えばスタイラス100のベンダを示すベンダ識別子のような、全く変化することのない情報も含まれる。機能情報CPは、スタイラス100からセンサコントローラ31に対して各種のデータDが送信されるより前に、センサコントローラ31側で既知となっていなければならない。
 データDは、スタイラス100がセンシング範囲SR内に存在する間に変化する可能性がある情報であり、上述したようにインタラクティブデータDF及び非インタラクティブデータDINFを含む。
 インタラクティブデータDFは、例えば筆圧値やバレルボタンの押下状態のようなスタイラス100がユーザによって操作されている最中に頻繁に変化するデータであって、後述する図15に示すように、1つのフレームF(例えば、60Hz)内において1回以上(通常は複数回)、スタイラス100からセンサコントローラ31に対して送信される。また、インタラクティブデータDFは、1回データフォーマットが定められると、その後は、スタイラスとセンサコントローラとがお互いを検出している限り、決定されたフォーマットで複数のフレームで繰り返し送信される。スタイラス100は原則として、センサコントローラ31からのポーリングへの応答としてではなく、自発的にインタラクティブデータDFを周期的に複数のフレームで繰り返し送信する。座標データの導出専用の位置信号も、その指示位置がスタイラスの仕様とともに頻繁に変化する点でインタラクティブデータDFの一種に含まれる。
 非インタラクティブデータDINFは、例えばバッテリーレベルのような、インタラクティブデータDFに比べて少ない頻度で変化する(又は、そのような頻度で変化すると看做してかまわない)データであって、複数のフレームFごと(例えば、数百フレームごと)に1回送信される。スタイラス100は原則として、自発的ではなく、センサコントローラ31からのポーリング(送信要求)への応答として非インタラクティブデータDINFを送信する。
 図3は、スタイラス100の構成を示す図である。同図に示すように、スタイラス100は、バッテリー101、電極102T,102R、テイルスイッチ103、バレルボタン104、操作状態検出部105、スタイラスコントローラIC106を含み構成される。
 バッテリー101は、スタイラスコントローラIC106を駆動するための電力を供給する電源手段であり、自身の残量のレベル(図10に示すバッテリーレベルBL)に応じた信号をスタイラスコントローラIC106に供給するよう構成される。
 操作状態検出部105は、インタラクティブデータDFに含まれる情報を検出する機構であり、例えば、スタイラス100の先端に付加された筆圧値(後述する図9に示す筆圧値TiP)の検出機構や、スタイラス100のオリエンテーション(向き。後述する図9に示すオリエンテーションOR)を検出する6軸IMUなどのセンサデバイスにより構成される。操作状態検出部105は、オリエンテーションを検出するセンサデバイスに関して、検出可能なオリエンテーションの種別を示すオリエンテーションコードORC(図6参照)を特定するための情報を、スタイラスコントローラIC106内の機能情報更新部111に通知するように構成される。なお、オリエンテーションコードORCには、操作状態検出部105がオリエンテーションを検出するセンサデバイスを有するか否かを示す情報も含まれる。
 スタイラスコントローラIC106は、機能的に、通信部110、機能情報更新部111、インタラクティブデータ取得部112、及び非インタラクティブデータ取得部113を含み構成される。
 通信部110は受信部Rxと送信部Txとを含み、図2に示したフレームFの基準時刻(開始時刻)に応じて規定される複数の時間スロットに基づいた双方向通信を行う。より具体的に説明すると、通信部110は、電極102Rを利用してビーコン信号BSを検出してフレームFの基準時刻を導出し、図2に示した時間スロットs0~s15の基準時刻の設定あるいは同期調整を行う。そして、機能情報更新部111、インタラクティブデータ取得部112、及び非インタラクティブデータ取得部113のそれぞれから機能情報CP、インタラクティブデータDF、及び非インタラクティブデータDINFの供給を受け、それらの情報乃至データを、例えば図6に示すように決定されたフォーマットに従いダウンリンク信号DSの送信用に用いる時間スロットs1~s15でダウンリンク信号DSに含めて、電極102Tから送信する。
 機能情報更新部111は、機能情報CPを管理する機能を有する。具体的には、機能情報CPをレジスタ(図示せず)に維持するとともに、ユーザによるテイルスイッチ103の操作の内容(例えば、オン操作を行う回数)に応じて機能情報CPを更新し、通信部110に供給するよう構成される。こうして更新される機能情報CPには、図5に示す色ColやスタイルStylが含まれる。
 インタラクティブデータ取得部112は、インタラクティブデータDFを管理する機能を有する。具体的には、インタラクティブデータDFに含まれるデータを送信する都度、図9に示す筆圧値TiPやオリエンテーションORなどをそれぞれ操作状態検出部105から取得するとともに、バレルボタン104の押下状態(図9に示すバレルボタン状態BB)を取得し、通信部110に供給するよう構成される。
 非インタラクティブデータ取得部113は、非インタラクティブデータDINFを管理する機能を有する。具体的には、非インタラクティブデータDINFを送信する都度、図10に示すバッテリーレベルBLなどを取得し、通信部110に供給するよう構成される。
 図4は、電子機器3の構成を示す図である。同図に示すように、センサ30は、複数の線状電極30Xと複数の線状電極30Yとがマトリクス状に配置された構成を有しており、これら線状電極30X,30Yによってスタイラス100と容量結合する。また、センサコントローラ31は、送信部60、選択部40、受信部50、ロジック部70、及び、MCU80を有して構成される。
 送信部60は、図1に示したビーコン信号BSを送信するための回路である。具体的には、第1の制御信号供給部61、スイッチ62、直接拡散部63、拡散符号保持部64、及び送信ガード部65を含み構成される。
 第1の制御信号供給部61は検出ビットパターンc1を保持しており、ロジック部70から供給される制御信号ctrl_t1の指示に従って、所定の連続送信期間(例えば、3msec)の間、検出ビットパターンc1を連続して繰り返し出力し、終了ビットパターンSTPを出力する機能を有する。
 検出ビットパターンc1は、スタイラス100がセンサコントローラ31の存在を検出するために用いられるビットパターンであり、事前に(スタイラス100がセンサコントローラ31を検出する前に)スタイラス100に既知にされているビット値を含んで構成される。具体的には、「0」又は「1」のいずれかからなる1ビットの値により検出ビットパターンc1を構成してもよいし、複数ビットの値により検出ビットパターンc1を構成してもよい。
 また、終了ビットパターンSTPは、上記連続送信期間の終了をスタイラス100に通知するためのビットパターンであり、検出ビットパターンc1の繰り返し中に現れないビットパターンによって構成される。
 スイッチ62は、ロジック部70から供給される制御信号ctrl_t2に基づいて第1の制御信号供給部61及びMCU80のいずれか一方を選択し、選択した一方の出力を直接拡散部63に供給する機能を有する。スイッチ62が第1の制御信号供給部61を選択した場合、直接拡散部63には上記検出ビットパターンc1が供給される。一方、スイッチ62がMCU80を選択した場合、直接拡散部63には制御情報c2が供給される。
 制御情報c2は、スタイラス100への指示内容を示すコマンドを含む情報であり、MCU80によって生成される。制御情報c2は今からスタイラス100に対して機能情報CPの要求やデータDの送信方法を設定するコマンドなどを構成する、スタイラス100との間でその値が事前に共有されていない複数のビット(任意のビット列)を含む情報である。
 拡散符号保持部64は、ロジック部70から供給される制御信号ctrl_t3に基づき、拡散符号を生成する機能を有する。拡散符号保持部64によって生成された拡散符号は、直接拡散部63に供給される。
 直接拡散部63は、スイッチ62から供給される信号(検出ビットパターンc1、終了ビットパターンSTP、制御情報c2)の各ビット値に対し、拡散符号保持部64から供給される拡散符号を乗算(XOR)することで、ビーコン信号BSを生成する。こうして生成されたビーコン信号BSは、検出ビットパターンc1、終了ビットパターンSTP、制御情報c2をこの順で含む信号となる。
 送信ガード部65は、ロジック部70から供給される制御信号ctrl_t4に基づき、ビーコン信号BSの送信期間(図2に示した時間スロットs0)の最後に、送信動作と受信動作を切り替えるために送信と受信の両方を行わない期間であるガード期間を挿入する機能部である。図2では、ビーコン信号BSの終端と時間スロットs0の終端との間にある空白部分が、このガード期間に当たる。
 選択部40は、ロジック部70の制御に基づいて、センサ30から信号を送信する送信期間と、センサ30により信号を受信する受信期間とを切り替えるスイッチである。具体的に説明すると、選択部40は、スイッチ44x,44yと、導体選択回路41x,41yとを含んで構成される。スイッチ44xは、ロジック部70から供給される制御信号sTRxに基づき、送信期間には、送信部60の出力端を導体選択回路41xの入力端に接続し、受信期間には、導体選択回路41xの出力端を受信部50の入力端に接続するよう動作する。スイッチ44yは、ロジック部70から供給される制御信号sTRyに基づき、送信期間には、送信部60の出力端を導体選択回路41yの入力端に接続し、受信期間には、導体選択回路41yの出力端を受信部50の入力端に接続するよう動作する。導体選択回路41xは、ロジック部70から供給される制御信号selXに基づき、複数の線状電極201Xのうちの1つを選択し、選択したものをスイッチ44xに接続するよう動作する。導体選択回路41yは、ロジック部70から供給される制御信号selYに基づき、複数の線状電極201Yのうちの1つを選択し、選択したものをスイッチ44yに接続するよう動作する。
 受信部50は、ロジック部70の制御信号ctrl_rに基づいて、スタイラス100が送信するダウンリンク信号DSを受信する回路である。具体的には、増幅回路51、検波回路52、及び、アナログデジタル(AD)変換器53を含み構成される。
 増幅回路51は、選択部40から供給されるダウンリンク信号DSを増幅して出力する。検波回路52は、増幅回路51の出力信号のレベルに対応した電圧を生成する回路である。AD変換器53は、検波回路49から出力される電圧を所定時間間隔でサンプリングすることによって、デジタルデータを生成する回路である。AD変換器50が出力するデジタルデータはMCU80に供給される。
 MCU80は、内部にROMおよびRAMを有し、所定のプログラムに基づき動作するマイクロプロセッサである。ロジック部70は、MCU80の制御に基づき、上述した各制御信号を出力する。MCU80はまた、AD変換器53から供給されるデジタルデータに基づいてスタイラス100の位置を示す座標データ(X,Y)等を導出し、システムコントローラ32に対して出力する役割を担う。
 ここで、システムコントローラ32において動作するいくつかの描画アルゴリズムやシグネチャ検証アルゴリズムは、センサコントローラ31から供給される位置情報(X,Y)や筆圧値TiP等のデータDが、時間軸上で等間隔に取得されたものであるという前提に立って実装されている。したがって、非インタラクティブデータDINFが時々送出されることにより、本来はインタラクティブデータDFが送出されるべきであった時間スロットにおいてインタラクティブデータDFが送信できなくなる(すなわち、データDが「どもる(stutter)」)場合があるとすると、上記の描画アルゴリズムやシグネチャ検証アルゴリズムが正常に動作しなくなるおそれがある。そこで、非インタラクティブデータDINFの送信に使用する時間スロットは、インタラクティブデータDFの通信の等間隔性を損なわないように選択される。この点の詳細については、図15及び図16を参照しながら後述する。
 また、前述した通り、機能情報CPは、センサコントローラ31のセンシング範囲SRの外にスタイラス100が存在する間に変化する可能性がある。一方で、センサコントローラ31のホストであるシステムコントローラ32側で実行されるインキング処理(座標データのシーケンスに対して、色情報や線幅等の情報を与えるための処理)には、機能情報CP(特に、図5に示す色Col、線幅やブラシのタイプを決めるスタイルStylなど)がセンサコントローラ31に既知となっていることが必要である。そこで、機能情報CPは、スタイラス100がセンシング範囲SRに入る都度、必ずセンサコントローラ31に新たに既知とされる。具体的には、機能情報CPは、スタイラス100からセンサコントローラ31に対してデータD(インタラクティブデータDF)を送信するより前の段階で、ビーコン信号BSへの応答信号として、センサコントローラ31に送信される。この点の詳細については、図13及び図14を参照しながら後述する。
 図5は、機能情報CPの構成を示す図である。同図に示すように、機能情報CPは、互いに異なる「情報名」が与えられた複数の個別機能情報の集合である。各個別機能情報は、機能情報CPが送信される際、「送信サイズ」に示されるビット長で、機能情報CP内に配置される。また、各個別機能情報には、機能情報CP内に配置することが必須のもの(Y)とそうでないもの(N)とがあり、機能情報に必要なビット数の典型例を示すためにその別(Y)と(N)が例示されている。
 機能情報CPを構成する個別機能情報として具体的には、同図に示すように、ベンダ識別子VID、シリアル番号SN、色Col、スタイルStyl、テイルスイッチ103の状態、バージョンVer、データフォーマットDFmtが含まれる。
 ベンダ識別子VIDは、スタイラス100のベンダを示す8ビットの情報である。シリアル番号SNは、各ベンダが独自に付与するベンダごとにユニークな56ビットの情報である。シリアル番号SNにベンダ識別子VIDを付加することで、64ビットのユニークなユーザ識別子UID(スタイラスの固有ID)が生成される。
 色Colは、CSS(Cascading Style Sheets)内で使用可能な140の色を8ビットで表現する情報であり、テイルスイッチ103の操作により変更される。
 スタイルStylは、スタイラス100のペン先が例えばブラシ又はボールペンのいずれかであるかを特定することにより、インキング処理の効果を決定する3ビットの情報である。
 テイルスイッチ103の状態は、テイルスイッチ103のONOFFの操作状態を示す情報である。機能情報CPを構成する個別機能情報の1つであるが、他の個別機能情報の変更に反映されることになるため、それ自体をセンサコントローラ31に通知する必要はない。したがって、テイルスイッチ103の状態の送信サイズは、N/A(Not Applicable)となる。
 バージョンVerは、スタイラス100が使用する通信プロトコルのバージョンを示す4ビットの情報である。
 データフォーマットDFmtは、データD(インタラクティブデータDF等)の送信に用いられるデータ信号のフォーマットを識別する10ビット~44ビットの情報である。。データフォーマットDFmtの詳細については、図6を参照しながら後述する。
 このように、機能情報CPは各種の個別機能情報を含むが、そのうち機能情報CPへの配置が例えば必須(Y)とした情報(ユーザ識別子UID及びデータフォーマットDFmt)だけでも、70ビットを超える大きな送信サイズを有している。したがって、上述したように1つの時間スロットで送信可能なビット数が16ビットである場合、1つの時間スロットで機能情報CPの全体の送信を完了することはできない。
 図6は、図5に示したデータフォーマットDFmtの内容を示す図である。同図に示すように、データフォーマットDFmtは、互いに異なる「名称」が与えられた複数の個別フォーマットの集合である。各個別フォーマットは、機能情報CPが送信される際、「送信サイズ」に示されるビット長で、データフォーマットDFmt内に配置される。
 データフォーマットDFmtを構成する個別フォーマットとして具体的には、筆圧段階指示数PL、バレルボタン数BBN、接線方向筆圧フラグTaPf、オリエンテーションコードORC、カスタムデータフラグCDf、オリエンテーション分解能ORR、カスタム筆圧サイズCPS、カスタムボタンサイズCBS、カスタムオリエンテーションサイズCOS、カスタムデータサイズCDSが含まれる。図6の「定義」欄には、それぞれの意味を記述している。これらの内容は、スタイラス100が取得可能な1以上の個別インタラクティブデータ(後述)の種別と、それぞれの送信サイズとを示しており、後述する図11に示すステップS1,S3において、スタイラス100が取得可能な1以上の個別インタラクティブデータに基づいて決定される。以下、それぞれについて詳しく説明する。
 筆圧段階指示数PLは、インタラクティブデータDFの一つである筆圧値TiP(図9参照)の段階数(解像度)を示す3ビットの情報であり、その値が0~6である場合、段階数が256×2PLであることを示す。なお、PL=0である場合はPL=-8である場合であると言うこともできるが、その場合の筆圧段階数は256×2=256となる。PL=7である場合には、別途カスタム筆圧サイズCPSとして筆圧段階数が規定される。
 バレルボタン数BBNは、スタイラス100が有するバレルボタン104(図3参照)の数を示す2ビットの情報であり、その値が0~2である場合、BBN個のバレルボタン104を有していることを示す。スタイラス100がバレルボタン104以外の操作部を有する場合、バレルボタン数BBNにはその数も加算される。BBN=3である場合には、別途カスタムボタンサイズCBSとしてバレルボタン104を含む操作部の数が規定される。このバレルボタン数BBNは、第1のバレルボタン乃至第BBNのバレルボタンの各々の有無を示すビットとしてもよい。例えば2ビットであれば、第1のバレルボタン及び第2のバレルボタンを備えているかをそれぞれが示す2つのビットとしても良い。
 接線方向筆圧フラグTaPfは、スタイラス100が接線方向筆圧値(タッチ面3aの接線方向に加わる圧力)の取得に対応しているか否かを示す1ビットの情報であり、0である場合に未対応、1である場合に対応を示す。スタイラス100が接線方向筆圧に対応している場合のその段階数としては、筆圧段階指示数PLと同じ段階数が用いられる。
 オリエンテーションコードORCは、インタラクティブデータDFの一つであるオリエンテーションOR(図9参照)のフォーマットを定める3ビットの情報である。オリエンテーションコードORCの詳細は、後に図7を参照しながら詳しく説明するが、ORC=7である場合には、オリエンテーションORのデータサイズのみがカスタムオリエンテーションサイズCOSとして規定される。
 カスタムデータフラグCDfは、スタイラス100がカスタムデータCD(インタラクティブデータDFの一つとして規格化されていないベンダ独自のデータ。図9参照)の取得を行うか否かを示す1ビットの情報であり、0である場合にカスタムデータCDがないことを示し、1である場合にカスタムデータCDがあることを示す。
 オリエンテーション分解能ORRは、オリエンテーションOR(図9参照)の分解能を示す0~2ビットの情報であり、オリエンテーションコードORCの値が0より大きい場合、すなわちスタイラス100がオリエンテーションORの取得に対応している場合にのみ、データフォーマットDFmt内に配置される。オリエンテーション分解能ORRにより示されるオリエンテーションORの分解能は(8+ORR)ビットとなる。
 カスタム筆圧サイズCPSは、筆圧段階数のカスタム値を示す8ビットの情報であり、筆圧段階指示数PLが7である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタム筆圧サイズCPSによって表せる筆圧段階数は最大で256段階となる。
 カスタムボタンサイズCBSは、バレルボタン104を含む操作部の数を示す8ビットの情報であり、バレルボタン数BBNが3である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムボタンサイズCBSによって表せる操作部の数は最大で256個となる。
 カスタムオリエンテーションサイズCOSは、オリエンテーションORのバイト数を示す8ビットの情報であり、オリエンテーションコードORCが7である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムオリエンテーションサイズCOSによって表せるオリエンテーションORのバイト数は最大で256バイトとなる。ただし、図9を参照して後述するように、実際のオリエンテーションORのサイズの最大値は72ビットである。
 カスタムデータサイズCDSは、カスタムデータCDのバイト数を示す8ビットの情報であり、カスタムデータフラグCDfが1である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムデータサイズCDSによって表せるカスタムデータCDのバイト数は最大で256バイトとなる。ただし、図9を参照して後述するように、実際のカスタムデータCDのサイズの最大値は256ビットである。
 ここまでで説明したように、システム1においては、カスタム筆圧サイズCPS、カスタムボタンサイズCBS、カスタムオリエンテーションサイズCOS、及びカスタムデータサイズCDSのそれぞれによって示されるカスタム値のデータサイズを、いずれも、データフォーマットDFmt内に配置される場合に8ビット、配置されない場合に0ビットとなるようにしている。これは、データフォーマットDFmtを可変長としつつも終了位置を示すビットを不要とし、それによってデータフォーマットDFmtの構成を簡易化するための構成である。
 図7は、図6に示したオリエンテーションコードORCの定義を示す図(オリエンテーションコードテーブルOCT)である。同図中、左端の「ORC」はオリエンテーションコードORCの値を示し、右端の「データサイズ」は、オリエンテーションORのデータサイズを、占用時間スロット数(オリエンテーションORを1回送信するために必要となる時間スロット数)により表したものである。
 オリエンテーションコードORCの値が「0」であることは、スタイラス100がオリエンテーションORの取得を行わない(又は取得機能を有しない)ことを示す。後述する図18に示すように、インタラクティブデータDF内にオリエンテーションORが配置される場合、インタラクティブデータDFを送信するために追加の時間スロットを用意する必要があるが、オリエンテーションコードORCの値が「0」である場合には、このような追加の時間スロットの用意は不要となる。
 オリエンテーションコードORCの値が「1」であることは、スタイラス100が、2方向(Xチルト,Yチルト)の値で2次元(2D)の傾きを示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために2つの時間スロットの利用を要することを示している。図の例では、連続した2つの時間スロットをアロケートしているが、2つの時間スロットは連続していても連続していなくても良い。
 オリエンテーションコードORCの値が「2」であることは、スタイラス100が、2方向(Xチルト,Yチルト)の値によって表される2次元(2D)の傾きと、ペン軸まわりの回転量であるツイストとからなる3次元(3D)の値を示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために、連続あるいは非連続の3つの時間スロットの利用を要することを示している。
 オリエンテーションコードORCの値が「3」であることは、スタイラス100が、2方向(高度,方位角)の値で2次元(2D)の傾きを示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために2つの時間スロットの利用を要することを示している。
 オリエンテーションコードORCの値が「4」であることは、スタイラス100が、2方向(高度,方位角)の値によって表される2次元(2D)の傾きと、ペン軸まわりの回転量であるツイストとからなる3次元(3D)の値を示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つの時間スロットの利用を要することを示している。
 オリエンテーションコードORCの値が「5」であることは、スタイラス100が、加速度計及びジャイロを含む6軸慣性測定装置(IMU)による測量値であるオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つの時間スロットの利用を要することを示している。
 オリエンテーションコードORCの値が「6」であることは、スタイラス100が、9軸慣性測定装置(IMU)による測量値であるオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つ以上の時間スロットの利用を要することを示している。
 オリエンテーションコードORCの値が「7」であることは、上述したように、図6に示したカスタムオリエンテーションサイズCOSによってオリエンテーションORのバイト数が表されることを示している。
 このように、オリエンテーションコードORCを使うことで、スタイラス100の機能の有無、あるいは、慣性測定装置(IMU)のタイプに応じて様々な情報となり得るオリエンテーションORの種別を、3ビットの短い情報によりセンサコントローラ31に通知することが可能になる。また、オリエンテーションORの種別によって連続あるいは非連続の異なる数の時間スロットを使用することに関しても、必要な時間スロット数をセンサコントローラ31に通知することが可能になる。
 図8は、図5に示したデータフォーマットDFmtの記述例を示す図である。同図(a)に示す記述例1及び同図(b)に示す記述例2は、データフォーマットDFmtがカスタム値を含まず、9ビットで示される例を示している。記述例1では、オリエンテーションコードORCの値が0(0b000)、すなわちスタイラス100がオリエンテーションORを取得しないため、オリエンテーションOR用に追加の時間スロットを用意することは不要となる。一方、記述例2では、オリエンテーションコードORCの値が6(0b110)であるため、オリエンテーションOR用に3つ以上の時間スロットを追加で用意することが必要となる。また、同図(c)に示す記述例3は、筆圧段階指示数PLがカスタマイズされ、カスタム筆圧サイズCPSによって表される例を示している。この場合、8ビットのカスタム筆圧サイズCPSがデータフォーマットDFmtの末尾に記述され、データフォーマットDFmtのビット数が17ビットとなる。
 以上説明したように、本実施の形態による機能情報CPに含まれるデータフォーマットDFmtは、10ビット~44ビットのビット列によって表される。そして、このデータフォーマットDFmtがスタイラス100からセンサコントローラ31に通知されることにより、インタラクティブデータDFの要素、サイズ、及びオプションデータの有無が、インタラクティブデータDFが送出される前の段階でセンサコントローラ31に既知とされる。インタラクティブデータDFは、その後にスタイラス100から送信される。
 図9は、インタラクティブデータDFの構成を示す図である。同図に示すように、インタラクティブデータDFは、互いに異なる「名称」が与えられた複数の個別インタラクティブデータの集合である。各個別インタラクティブデータは、インタラクティブデータDFが送信される際、「送信サイズ」に示されるビット長で、インタラクティブデータDF内に配置される。また、各個別インタラクティブデータには、インタラクティブデータDF内に配置することが必須のもの(Y)とそうでないもの(N)とがあり、図では、典型的に必要となる合計ビット数をカウントするためこの区別の例を示している。また、同図は個別インタラクティブデータの送信順も示しており、スタイラス100は、同図の上側にあるものから順に送信するよう構成される。
 インタラクティブデータDFを構成する個別インタラクティブデータとして具体的には、筆圧値TiP、接線方向筆圧値TaP、バレルボタン状態BB、反転Inv、オリエンテーションOR、カスタムデータCDが含まれる。
 筆圧値TiPは、スタイラス100の先端に付加された筆圧値を示す8~256ビットの情報であって、図3に示した操作状態検出部105によって検出される。筆圧値TiPは、インタラクティブデータDF内に必ず配置される(Y)。筆圧値TiPのビット数は、図6に示したデータフォーマットDFmt内の筆圧段階指示数PL又はカスタム筆圧サイズCPSから導かれる。例えば、筆圧段階指示数PLが0(又は-8)である場合、筆圧段階数が256となることから、筆圧値TiPのビット数はlog256=8となる。典型的な例では、筆圧値TiPのビット数は8(256段階)~11(2048段階)である。
 接線方向筆圧値TaPは、接線方向の筆圧値を示す0~256ビットの情報であって、図3に示した操作状態検出部105によって検出される。接線方向筆圧値TaPはオプショナルのデータであり、図6に示した接線方向筆圧フラグTaPfが1である場合にのみ、インタラクティブデータDF内に配置される(N)。インタラクティブデータDF内に配置される場合の接線方向筆圧値TaPのビット数は、筆圧値TiPと同じ値となる。典型的な例では、接線方向筆圧値TaPは0ビットの情報であり、インタラクティブデータDF内に配置されない。
 バレルボタン状態BBは、図3に示したバレルボタン104の押下状態を示す2~256ビットの情報である。バレルボタン状態BBは、インタラクティブデータDF内に必ず配置される(Y)。バレルボタン状態BBのビット数は、図6に示したデータフォーマットDFmt内のバレルボタン数BBN又はカスタムボタンサイズCBSによって示されるバレルボタン104の数に等しい値となる。例えば、バレルボタン数BBNが1である場合、スタイラス100が有するバレルボタン104の数が2個となることから、バレルボタン状態BBのビット数は2となる。典型的な例では、バレルボタン状態BBのビット数は2である。
 反転Invは、1ビットの情報であって、インタラクティブデータDF内に配置される(Y)。
 オリエンテーションORは、スタイラス100の向きを示す0~72ビットのデータであって、図3に示した操作状態検出部105によって検出される。オリエンテーションORはオプショナルのデータであり、図6に示したオリエンテーションコードORCが0でない場合(図7参照)にのみ、インタラクティブデータDF内に配置される(N)。オリエンテーションORの具体的な意味は、図7を参照して説明したように、オリエンテーションコードORCによって表される。また、オリエンテーションORのサイズは、図7に示したデータサイズ(カスタムオリエンテーションサイズCOSによって指定する場合を含む)によって示される。例えば、2次元又は3次元の値を表すオリエンテーションORは、図7に示したオリエンテーションコードテーブルOCTの規定に従って、2つの時間スロット又は3つの時間スロットを使い、図の例では連続して送信される(図18参照)。
 カスタムデータCDは、スタイラス100のベンダが独自に規定する0~256ビットの情報である。カスタムデータCDはオプショナルのデータであり、図6に示したカスタムデータフラグCDfが1である場合にのみ、インタラクティブデータDF内に配置される(N)。カスタムデータCDのビット数は、図6に示したカスタムデータサイズCDSによって表される。例えば、カスタムデータサイズCDSが1である場合、カスタムデータCDのバイト数が1となることから、カスタムデータCDのビット数は8となる。
 インタラクティブデータDFのビット数は、最小の例では、8ビットの接線方向筆圧値TaP、2ビットのバレルボタン状態BB、及び1ビットの反転Invの合計で11ビット(4ビットの誤り検出符号を加えると15ビット)となる。また、典型的な例では、11ビットの接線方向筆圧値TaP、2ビットのバレルボタン状態BB、及び1ビットの反転Invの合計で14ビット(4ビットの誤り検出符号を加えると18ビット)となる。上述したように、1つの時間スロットで16ビット分のデータを送信可能であることから、オリエンテーションORやカスタムデータCDを含まないインタラクティブデータDFの送信は、1つの時間スロットで完了することができる(図15及び図16参照)。一方、オリエンテーションORやカスタムデータCDを含むインタラクティブデータDFの送信については、通常16ビットを超えることになるので、1つの時間スロットで完了することはできず、複数の時間スロットを使用することになる(図17及び図18参照)。
 図10は、非インタラクティブデータDINFの構成を示す図である。同図に示すように、非インタラクティブデータDINFは、互いに異なる「名称」が与えられた複数の個別非インタラクティブデータの集合である。各個別非インタラクティブデータは、非インタラクティブデータDINFが送信される際、「送信サイズ」に示されるビット長で、非インタラクティブデータDINF内に配置される。
 非インタラクティブデータDINFを構成する個別非インタラクティブデータの例として、図10にはバッテリーレベルBLのみを示している。バッテリーレベルBLは、図3に示したバッテリー101の残量のレベルを示す4ビットの情報である。他の種類の個別非インタラクティブデータを非インタラクティブデータDINFに含めてもよいのは勿論である。
 非インタラクティブデータDINFは、上述したように、複数のフレームFごと(例えば、数百フレームごと)に1回送信される(図15~図18参照)。
 次に、スタイラス100及びセンサコントローラ31の動作について、図11~図18を参照しながら詳しく説明する。
 まず図11は、スタイラス100の動作フローを示す図である。スタイラス100は、電源がオンされた後、センシング範囲SRの外に存在する間に、次のA1で説明する動作を行う。
<A1.機能情報CPの更新処理(センシング範囲SRの外での動作)>
 スタイラス100は、電源がオンされた後、データフォーマットDFmtを含む機能情報CPを一旦決定する(ステップS1)。このときスタイラス100は、自身が取得可能な1以上のインタラクティブデータDFに基づいて、データフォーマットDFmtの具体的な内容を決定する。すなわち、上述したように、例えばスタイラス100が接線方向筆圧の取得に対応していれば、データフォーマットDFmt内の接線方向筆圧フラグTaPfが1になり、対応していなければ、データフォーマットDFmt内の接線方向筆圧フラグTaPfが0になる。その後、スタイラス100はユーザによる機能情報CPの変更操作(具体的には、テイルスイッチ103の操作)の有無を判定する(ステップS2)。そして、変更操作がなされた場合には、操作の内容に応じて、ステップS1で決定した機能情報CPの変更を行う(ステップS3)。
 ステップS2,S3の処理の後、スタイラス100は、ビーコン信号BSを検出したか否かを判定する(ステップS4)。このステップS4で検出していないと判定した場合(すなわち、スタイラス100がセンサコントローラ31のセンシング範囲SRの外にいる場合)、スタイラス100は、ステップS2に戻ってここまでの処理を繰り返す。一方、ステップS4で検出したと判定した場合、スタイラス100は、次のA2で説明する動作を行う。
<A2.スタイラス100がセンシング範囲SR内に入った後の動作>
 スタイラス100は、ユーザがダウン操作をしたことによってセンサコントローラ31のセンシング範囲SR内に入った後(S4の肯定判定)、検出したビーコン信号BSを基準としてセンサコントローラ31が規定するフレームFに同期し、その時間スロットs0~s15を決定する(ステップS5)。
<A2-1.機能情報CPの通信>
 続いてスタイラス100は、機能情報CPをセンサコントローラ31に既知とする(センサコントローラ31との間で共有する)ための処理を行う(ステップS6~S8)。ここで、上述した通り、システム1では、1つの時間スロットで送信できるビット数が例えば16ビットに制限されている。一方で、機能情報CPは、上記したように70ビットを超える情報であるので、機能情報CPの全部を1つの時間スロットで送ることはできず、全部を送る場合には複数の時間スロットを使用して分割送信する必要が生ずる。しかしながら、このような分割送信を1回目のみならず2回目、3回目と行っていると、スタイラス100がタッチ面3a(図1参照)にタッチするまでに機能情報CPの送信が完了せず、その結果、スタイラス100がタッチ面3aにタッチしているにも関わらず、毎回タッチされたタイミングから線が描かれないというユーザにとって不快な状況が生ずるおそれがある。そこで本実施の形態では、以下で説明するように、一度機能情報CPの全部を送ったセンサコントローラ31に対しては、機能情報CPそのものではなく、機能情報CPに対応する情報(具体的には機能情報CPのハッシュ値)を送るようにしている。以下、具体的に説明する。
 スタイラス100はまず、ビーコン信号BSを送出するセンサコントローラ31と既にペアリング済みか否かを判定する(ステップS6)。この判定は、例えばスタイラス100内部のレジスタの値を判定することで行うことができる。なお、ビーコン信号BSにはセンサコントローラ31を特定する情報は含まれていないので、ここでの判定は、特定のセンサコントローラ31ではなく、いずれかのセンサコントローラ31とペアリング済みか否かについての判定となる。
 ステップS6の判定の結果、センサコントローラ31とペアリング済みでないと判定した場合(S6の否定判定)、スタイラス100は、現時点の機能情報CP(図5に示した70ビットを超える情報。データフォーマットDFmtと、シリアル番号SN及びベンダ識別子VIDからなるユーザ識別子UIDとを含む)を、複数の時間スロットに分けて繰り返し送出する(ステップS7)。
 図13は、機能情報CPに対する時間スロットの割り当て例を示す図である。同図の例によるスタイラス100は、機能情報CPを複数の部分機能情報CP1,CP2,・・・に分割し、それぞれをフレームFn,Fn+1,・・・の時間スロットs1で送信している。このような機能情報CPの送信には複数時間スロット分(この例では複数フレーム分)の時間がかかるが、初めに1回は必要な処理である。なお、図13にも示すように、機能情報CPは、時間スロットs1を用いて送信する必要がある。これは、機能情報CPあるいは短縮情報(ハッシュ値CP_Hash)を、コマンドが含まれるビーコン信号BSに対する応答信号(あるいは機能情報CPに対応する情報CP_Hash)が送信されるべき時間に送信することで、センサコントローラ31が、ビーコン信号BSを送信した後の時間スロットs1で受信される信号だけを監視することでビーコン信号BSに対する応答信号の有無(スタイラス100の有無)を認識することができ、かつ、時間スロットs1に後続する時間スロットs2~の時間をデータDの受信用に確保することができるようにするためである。
 他方、ステップS6の判定の結果、センサコントローラ31とペアリング済みであると判定した場合(S6の肯定判定)には、スタイラス100は、ステップS7でデータフォーマットDFmtを含む機能情報CPの全部を送信するのではなく、機能情報CPを特定するための情報であって1つの時間スロットで送出可能なサイズの情報(短縮情報)のみを、1つの時間スロットs1を使用して送信する(ステップS8)。この情報は、例えば、機能情報CPの20ビット以下(例えば16ビット)のハッシュ値CP_Hash等、所定の確率で、対応する機能情報CPが真性であるか否かを識別可能な情報とすることが好適である。以下の説明では、短縮情報としてハッシュ値CP_Hashを用いることを前提とする。ステップS8でハッシュ値CP_Hashを送信する場合、スタイラス100は、送信に先立ち、機能情報CPからハッシュ値CP_Hashを導出する処理を行う。
 図14は、機能情報CPのハッシュ値CP_Hashに対する時間スロットの割り当て例を示す図である。同図に示すように、ハッシュ値CP_Hashの送信はフレームFnの時間スロットs1のみで完了し、次のフレームFn+1からは、時間スロットs1においてインタラクティブデータDFを送信することが可能になる。
 このように、本実施の形態によるシステム1によれば、スタイラス100は、機能情報CPが一旦センサコントローラ31に既知となった後(センサコントローラ31とペアリング済みになった後)には、センシング範囲SRに入る都度、1度送信済みの機能情報CPの送信に代えて短縮情報(具体的にはハッシュ値CP_Hash)の送信を行うことによって、機能情報CP(データフォーマットDFmtを含む)をセンサコントローラ31に通知することが可能になる。センサコントローラ31としては、1つの時間スロットで短縮情報を受信するだけで、実用上問題のおこらない確率で、接近中のスタイラス100の機能情報CPを特定することが可能になる。
 なお、本実施の形態では、スタイラス100が送信した機能情報CPをセンサコントローラ31が無条件で受け入れるものとして説明するが、センサコントローラ31は、自身のリソースに応じて機能情報CP内に規定される情報の一部又は全部を受け入れないと決定し、決定の内容をスタイラス100に通知することとしてもよい。この場合、スタイラス100は、センサコントローラ31が受け入れない情報を送信しない。この点についての詳細は、後に図19を参照しながら説明する。
<A2-2.データDの通信>
 機能情報CPまたはハッシュ値CP_Hashの送信が完了した後、スタイラス100は、データDを含むデータ信号の送信を行う(ステップS10~S15)。具体的には、まずビーコン信号BSの検出を行う(ステップS10)。
 ステップS10でビーコンBSを検出した場合(ステップS10の肯定判定)、スタイラス100は、連続不検出カウンタを0にリセットする(ステップS11)。そして、機能情報CPのデータフォーマットDFmtに規定されるフォーマット(典型的には11~14ビット)でインタラクティブデータDFを含むデータ信号を、少なくとも1つのフレームFに1回送出する。
 なお、本実施の形態ではデータDの送信に用いる時間スロットをスタイラス100が決めるものとして説明するが、センサコントローラ31がデータDの送信に用いる時間スロットを決定し、決定の内容をスタイラス100に通知することとしてもよい。この点についての詳細も、後に図19を参照しながら説明する。
 図15は、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。同図の例では、14ビットの典型的なサイズを有するインタラクティブデータDFが、1つのフレームFあたり4つの時間スロットs2,s6,s10,s14で送信されている(データ信号DF1,DF2,DF3,DF4)。これら4つの時間スロットs2,s6,s10,s14においては、1つずつインタラクティブデータDFが送信される。この例による時間スロットの割り当てによれば、図15に示すように、個々のフレームF内は勿論、フレームFを跨る場合にも、インタラクティブデータDFの送信に用いる時間スロット間のインターバルが維持される(フレームFn+1において最後に送信されるデータ信号DF4(時間スロットs14)と、次のフレームFn+2において最初に送信されるデータ信号DF5(時間スロットs2)との間隔が、個々のフレームF内における間隔と同じ3時間スロットとなっている)。したがって、一定の周期T(=4時間スロット)で周期的に、インタラクティブデータDFを送信することが可能になる。このようなシステム1の特徴は、インタラクティブデータDFが等間隔で取得されることを必要とするシステムコントローラ32のアプリケーションに好適である。
 なお、図15に示す周期Tの4時間スロットという値は、時間スロットs0,s1(及び後述する時間スロットs15)が予約されている条件の下で(すなわち、時間スロットs0がビーコン信号BSの送信用、時間スロットs1がビーコン信号BSに対する応答信号の送信用、時間スロットs15が非インタラクティブデータDINFの送信用としてそれぞれ予約されている条件の下で)最短である。このように周期Tを最短の値に設定することで、インタラクティブデータDFの送信回数を向上することができる。センサコントローラ31にとっては、スタイラス100の座標データをより詳細に取得することも可能になる。
 図16は、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当ての他の例を示す図である。同図の例では、14ビットの典型的なサイズを有するインタラクティブデータDFが、1つのフレームFあたり4つの時間スロットs3,s7,s11,s15で送信されている(データ信号DF1,DF2,DF3,DF4)。このような時間スロットの割り当てによっても、図15の例と同じ最短の周期T(=4時間スロット)で、インタラクティブデータDFを周期的に送信することが可能になる。
 図11に戻り、スタイラス100は、複数フレームFに1回(数百フレームFに1回)の割合で、非インタラクティブデータDINFの送信も行う(ステップS13)。なお、上述したように、スタイラス100は、センサコントローラ31からのポーリング(送信要求)に応じて、非インタラクティブデータDINFの送信も行うこととしてもよい。この場合、センサコントローラ31からのポーリングは、ビーコン信号BS内にコマンドのひとつとして配置される。
 再度図15を参照すると、この例では、非インタラクティブデータDINFが時間スロットs15で送信されている。図15の例では時間スロットs15は普段は不使用とされているが、そのような時間スロットs15を複数フレームFに一度非インタラクティブデータDINFの送出時間スロットとすることで、インタラクティブデータDFの送信周期Tに影響を及ぼさずに非インタラクティブデータDINFを送信することが可能になる。
 一方、図16の例では、非インタラクティブデータDINFが時間スロットs1で送信されている。時間スロットs1は本来、上述したように、ビーコン信号BSに対する応答信号(機能情報CP又はハッシュ値CP_Hash)の送信に用いられるものであるが、時間スロットs1が実際に応答信号の送信のために利用される確率は、他の時間スロットに比して低い。時間スロットs1で非インタラクティブデータDINFを送信し、その結果、応答信号と非インタラクティブデータDINFの衝突が発生するのは、スタイラス100が複数フレームFに1度、非インタラクティブデータDINFを通信したタイミングで、偶然、新たなスタイラス100がセンシング範囲SRに入り、ビーコン信号BSへの応答信号を送信した場合に限られる。したがって、スタイラス100が時間スロットs1で非インタラクティブデータDINFを送信したとしても実用上は問題なく、また、有限の時間スロットを有効に活用することができる。加えて、非インタラクティブデータDINFを時間スロットs15で送信するのをやめ時間スロットs15を解放することで、時間スロットs3,s7,s11,s15を他のデータD(インタラクティブデータDF)の送信に用いることが可能になる。この場合、時間スロットs2,s6,s10,s14と時間スロットs3,s7,s11,s15とを互いに異なるスタイラス100に割り当てることもでき、そうすることにより、複数のスタイラス100がそれぞれ送信周期Tで(すなわち時分割多重で)、インタラクティブデータDFを送信することが可能になる。
 図17は、インタラクティブデータDFがカスタムデータCDを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。図17には、インタラクティブデータDFが、11ビットの筆圧値TiP、2ビットのバレルボタン状態BB、1ビットの反転Inv、及び、8ビットのカスタムデータCDを含む場合を描いている。なお、この場合、図6に示したカスタムデータフラグCDf及びカスタムデータサイズCDSの値はともに1となる。この場合のインタラクティブデータDFのサイズは1つの時間スロットで送信可能な16ビットより大きい22ビットとなるため、スタイラス100は、図17に示すように、連続した2つの時間スロットを使用してインタラクティブデータDFの送信を行う。このような時間スロットの割り当てを用いることで、インタラクティブデータDFのサイズが1つの時間スロットで送信可能なサイズより大きくても、一定の周期Tでの送信が実現される。
 図18は、インタラクティブデータDFがオリエンテーションORを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロット及び周波数の割り当て例を示す図である。同図の例では、2つの周波数f0,f1が利用され、周波数f0では3つの時間スロット、周波数f1では4つの時間スロットがインタラクティブデータDFの送信のために使用される。そして、オリエンテーションORは、周波数f0で2つの時間スロット、周波数f1で3つの時間スロットの合計5つの時間スロットを使用して送信される。このような時間スロット及び周波数の割り当てを用いることで、インタラクティブデータDFのサイズが7つの時間スロットで送信しなければならないほどに大きいとしても、一定の周期Tでの送信が実現される。ただし、この場合の周期Tは、図18と図15~図17を比較すると理解されるように、図15~図17における周期Tよりも長くなる。尚、このように周波数多重を利用できない場合には、合計7つの時間スロットを2以上のフレームFにまたがって送信するとしても良い。
<A2-3.センシング範囲SR内から出た後のスタイラス100の動作>
 図11に戻る。ステップS10でビーコン信号BSが検出されなくなった場合(ステップS10の否定判定)、スタイラス100は、連続不検出カウンタの値が所定の閾値Thより大きいか否かを判定し(ステップS14)、大きくないと判定した場合には、連続不検出カウンタの値を1インクリメントして(ステップS15)、ステップS10に戻る。一方、ステップS14で大きいと判定した場合には、センシング範囲SRの外に移動したということを意味するので、スタイラス100は、ステップS2、すなわちユーザによるテイルスイッチ103の操作を受付ける状態に戻る。
 次に、図12は、センサコントローラ31の動作フローを示す図である。センサコントローラ31は、電源がオンされた後、次のB1で説明する動作を開始する。
<B1.機能情報CPの受信>
 センサコントローラ31は、時間スロットs0でビーコン信号BSを繰り返し送出し(ステップS20)、その都度、時間スロットs1でスタイラス100からの応答信号Ackを待機する(ステップS21)。
 ステップS21で応答信号Ackであるダウンリンク信号DS(すなわち、時間スロットs1で受信されるダウンリンク信号DS)を受信した場合(S21の肯定判定)、センサコントローラ31は、受信した応答信号Ackに含まれていたデータを機能情報CPのハッシュ値CP_Hashとみなして取得する(ステップS22)。そして、後述するステップS33で過去に記憶していたハッシュ値CP_Hashの中に一致するものがあるか否かを判定し(ステップS23)、あると判定した場合には、そのハッシュ値CP_Hashに対応づけて記憶していた機能情報CPにより、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。
 一方、ステップS23で一致するものがないと判定した場合、センサコントローラ31は、応答信号Ackに含まれていたデータを機能情報CPの一部として蓄積する(ステップS24)。そして、ここまでの処理を繰り返した結果、機能情報CPの全部が蓄積されたか否かを判定し(ステップS25)、全部が蓄積されたと判定した場合には、蓄積された機能情報CPにより、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。一方、まだ全部は蓄積されていないと判定した場合には、ステップS20に戻ってビーコン信号BSの送信を繰り返す。
 ステップS30で機能情報CPの内容を決定したスタイラス100は、そのハッシュ値を導出し、機能情報CPと対応づけて対応データとして記憶領域に記憶する(ステップS33)。こうして作成される対応データの記憶領域(対応データ記憶領域)は、ハッシュ値をキーとして値を関連付けて保持するいわゆるハッシュテーブルとして実装できる。
<B2.データDの受信>
 次に、センサコントローラ31は、時間スロットs0においてビーコン信号BSを再度送信する(ステップS40)。そして、時間スロットs0,s1以外で何らかのデータ信号を検出したか否かを判定し(ステップS41)、検出したと判定した場合には、連続不受信カウンタの値を0にリセットする(ステップS42)。その後、検出したデータ信号からインタラクティブデータDFを抽出することにより、インタラクティブデータDFを受信する(ステップS43)。また、複数フレームFに一度、検出したデータ信号から非インタラクティブデータDINFを抽出することにより、非インタラクティブデータDINFも受信する(ステップS44)。
 他方、ステップS41でデータ信号を検出していないと判定した場合、連続不受信カウンタの値が所定の閾値Thより大きいか否かを判定し(ステップS45)、大きくないと判定した場合には、連続不受信カウンタの値を1インクリメントして(ステップS46)、ステップS40に戻る。一方、ステップS45で大きいと判定した場合には、スタイラス100がセンシング範囲SRの外に退出したということを意味するので、センサコントローラ31は、ステップS20に戻って処理を継続する。
 以上説明したように、本実施の形態による、スタイラス100及びセンサコントローラ31を用いた方法、センサコントローラ31、アクティブスタイラス100、及びシステム1によれば、スタイラス100が取得可能な1以上の個別インタラクティブデータに基づいて決定されるフォーマットによりデータ信号が構成されるので、スタイラス100からセンサコントローラ31に対し、1以上の個別インタラクティブデータを効率よく送ることが可能になる。その結果、スタイラス100の多様な機能やユーザ操作による機能変更に柔軟に対応することが可能になり、特に、現在、機能(チルト検出機構の有無、パラメータの次元数、パラメータ値の意味等)の対応状況がスタイラス100の種類によって大きく異なるオリエンテーションORの通信に柔軟に対応することが可能となる。
 また、一度機能情報CPをセンサコントローラ31と共有した後には、機能情報CPの全体ではなくハッシュ値CP_Hashのみを送ることによって機能情報CPをセンサコントローラ31に通知することができるので、スタイラス100がセンシング範囲SRに頻繁に出入りを繰り返す状況でも、センサコントローラ31が機能情報CPを特定するために必要な時間を短くすることが可能となる。
 また、インタラクティブデータDFを含むデータ信号を一定の周期Tで送信することが可能になる。
 なお、本実施の形態において、図11のステップS8でハッシュ値CP_Hashを送信する際には、送信に先立ち機能情報CPからハッシュ値CP_Hashを導出する処理を行うと説明したが、この導出は、機能情報CPの全体に基づいて行ってもよいし、一部のみに基づいて行ってもよい。以下、機能情報CPの一部のみに基づいてハッシュ値CP_Hashを導出する処理について、詳しく説明する。
 初めに、図5に示した機能情報CPには、ユーザ操作又はセンサコントローラ31からの設定によって変更されない第1の機能情報と、ユーザ操作又センサコントローラ31からの設定によって変更可能な第2の機能情報とが含まれる。第1の機能情報は、例えばスタイラス100が有する筆圧センサや角度センサなどのセンサの種別を示す情報であり、具体的には、スタイラス100がバレルボタン104を有しているか否かを示す情報(図6に示したバレルボタン数BBより示される情報。BB=0はスタイラス100がバレルボタン104を有していないことを示し、BB≠0はスタイラス100がバレルボタン104を有していることを示す。)、スタイラス100が傾き検出センサ又はツイスト検出センサを有しているか否かを示す情報(図7に示したオリエンテーションコードORCにより示される情報。例えばORC=1はスタイラス100がツイスト検出センサを有していないことを示し、ORC=2はスタイラス100がツイスト検出センサを有していることを示す。)、及び、スタイラス100がその他のセンサを有しているか否かを示す情報(図6に示したカスタムデータフラグCDfにより示される情報)などである。スタイラス100が、当該スタイラス100によって描かれる線の色を特定するか否かを示す情報(図5に示した色Colによって示される情報)も、第1の機能情報に含まれる。図5等には示していないが、機能情報CPには1以上のバレルボタン104それぞれに付与された機能を特定する情報を含むことができ、その場合には、この情報も第1の情報のひとつとなる。この情報には、例えば、2つのバレルボタン104がある場合にプライマリとセカンダリを区別するための情報や、そのバレルボタン104が押されている間、スタイルStylが消しゴムになることを示す情報などが含まれる。
 一方、第2の機能情報は、例えばスタイラス100によって描かれる線の色、幅、及び、鉛筆やボールペンなどブラシのタイプを特定する情報である。これらは、図5に示した色Col及びスタイルStylによって示される。ユーザ識別子(UID)は、色、幅などインキングの情報を特定することができる情報であるため、これらを第2の機能情報に含めるとしてもよい。
 スタイラス100がハッシュ値CP_Hashを導出する際には、機能情報CPのうち第2の機能情報にかかる部分のみに基づいて、ハッシュ値CP_Hashを導出することとしてもよい。こうすることで、異なる機能情報CPに対して同じハッシュ値CP_Hashが導出されてしまう可能性(ハッシュ値が衝突する可能性)を減らすことができる。例えば、上記のように第2の機能情報にかかる部分のみに基づいてハッシュ値CP_Hashを導出するようにすることにより、機能情報CPの全体に基づいてハッシュ値CP_Hashを導出する場合に比べ、ハッシュ値の導出のもとになる情報のサイズを小さくすることができる。ハッシュ値の衝突の可能性は、ハッシュ値の導出のもとになる情報のサイズが小さいほど小さくなるので、上記のようにすることにより、ハッシュ値が衝突する可能性を減らすことが可能になる。
 また、センサコントローラ31は、図12のステップS23で、受信したハッシュ値CP_Hashと一致するものが対応データ記憶領域内に記憶されていないと判定した場合に、スタイラス100に対して、機能情報CPの全体の送信要求を送信することとしてもよい。なお、この送信は、ビーコン信号BS内にコマンドのひとつとして上記送信要求を配置することによって行うことが好適である。この場合のスタイラス100は、この送信要求を受け取った場合に、図11のステップS6でペアリング済みでないと判定することとすればよい。そうすることで、スタイラス100からセンサコントローラ31に対し、機能情報CPの全体を送信することが可能になる。
 また、センサコントローラ31は、上述したように、スタイラス100が送信した機能情報CPを無条件に受け入れるのではなく、自身のリソースに応じて機能情報CP内に規定される情報の一部又は全部を受け入れないと決定してもよく、また、データDの送信に用いる時間スロットを自身で決定することとしてもよい。以下、これらの点について図19を参照しながら説明する。
 図19は、図12に示したセンサコントローラ31の動作フローの変形例を示す図である。同図には、図12に示したフローの一部のみを抜き出して描いている。
 図19に示すように、本変形例によるセンサコントローラ31は、ステップS25ですべての機能情報CPを受信するか、若しくは、ステップS23で対応データ記憶領域から機能情報CPを取得すると、これらと、利用可能なリソースに関する情報とに基づき、データフォーマットDFmtを仮に決定する(ステップS26)。利用可能なリソースの情報とは、例えば時間スロットの空き状況である。そして、仮決定したデータフォーマットDFmtを指定するコマンドを、ビーコン信号BSの一部としてスタイラス100に通知する(ステップS27)。
 その後、センサコントローラ31はスタイラス100が送信する応答信号Ackの検出を試み(ステップS28)、検出しなかった場合には、スタイラス100がセンシング範囲SRの外に退出したか、又は、仮決定したデータフォーマットDFmtを受け入れなかったということであるとして、センサコントローラ31は自身の処理を図12のステップS20に戻す。一方、ステップS28で応答信号Ackを検出した場合には、仮決定した内容により機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。
 ステップS30の後、センサコントローラ31は、決定したデータフォーマットDFmtに基づいて、オフセット情報及びインターバル情報を決定する(ステップS31)。オフセット情報は、フレームFを構成する複数の時間スロットのうち少なくとも一部のインタラクティブデータDFの送信に用いるものを示す情報であり、より具体的には、フレームFを構成する複数の時間スロットの中でインタラクティブデータDFが最初に送信される時間スロットの、フレームFの先頭からの時間的な距離を示す情報である。例えば、図15、図17、及び図18の例ではオフセット情報は2となり、図16の例ではオフセット情報は3となる。一方、インターバル情報は、インタラクティブデータDFの送信周期を示す情報である。例えば、図15乃至図17の例ではケーデンス情報は4となり、図18の例ではケーデンス情報は8となる。オフセット情報及びケーデンス情報は、要するに、1以上の個別インタラクティブデータのうちどの個別インタラクティブデータをどのタイミングで送信するかを規定するものであり、上述したデータフォーマットDFmtとともに、データDを含むデータ信号の構成を決めるフォーマットを構成する。インターバル情報は、オフセット情報と異なり送信頻度で表わすことも可能であり、又、送信周期あるいは送信頻度を示す識別子で示すこともできる。
 ステップS31でオフセット情報及びインターバル情報を決定したセンサコントローラ31は、次いで、決定したオフセット情報及びインターバル情報を指定するコマンドを、ビーコン信号BSの一部としてスタイラス100に通知する(ステップS32)。これ以降、スタイラス100は、指定されたオフセット情報及びインターバル情報により示される時間スロットを利用して、インタラクティブデータDFを送信することになる。
 このように、センサコントローラ31が、スタイラス100の機能情報CPと、スタイラス100がデータDの送信に用いる時間スロットとを決定することとしてもよい。こうすることで、センサコントローラ31がスタイラス100との通信を主導することが可能になる。
 次に、本発明の第2の実施の形態によるシステム1について説明する。本実施の形態によるシステム1は、機能情報CPのハッシュ値として2つのハッシュ値を用いる点で、第1の実施の形態によるシステム1と相違する。以下、第1の実施の形態と同一の構成には同一の符号を付し、以下では、第1の実施の形態との相違点に着目して説明する。
 図20は、本実施の形態によるスタイラス100及びセンサコントローラ31の動作フローを示す図である。同図には、センサコントローラ31がスタイラス100から機能情報CPを受け取る処理にかかる動作フローを図示している。以下、同図を参照しながら、本実施の形態によるスタイラス100及びセンサコントローラ31の動作について説明する。
 まずスタイラス100は、電源がオンされたときや、ハッシュ値に影響を及ぼす変更が機能情報CPに加えられたとき(図11のステップS2における肯定判定に相当)に、自身の機能情報CPに基づいて2つのハッシュ値#1,#2(第1及び第2のハッシュ値)を導出する(ステップS50,S51)。この2つのハッシュ値#1,#2は、例えば13ビットCRCと16ビットFNVのような互いに異なる2種類のハッシュ関数(アルゴリズム)を用いて導出してもよいし、1つのハッシュ関数により導出されたハッシュ値の上位ビット列と下位ビット列をそれぞれハッシュ#1,#2としてもよい。また、上述した第1の機能情報に基づいてハッシュ#1を導出し、第2の機能情報に基づいてハッシュ#2を導出する、といった処理も可能である。
 スタイラス100がセンサコントローラ31のセンシング範囲SR(図1参照)に入り、センサコントローラ31によって送信されたビーコン信号BSを検出すると(ステップS60,S52)、スタイラス100はまず、ハッシュ値#1のみを送信する(ステップS53)。この送信は、ビーコン信号BSに対する応答信号の中にハッシュ値#1を配置することによって行う。
 センサコントローラ31は、ビーコン信号BSに対する応答信号を検出すると(ステップS61)、その中からハッシュ値#1(と思われる情報)を取り出し、対応データ記憶領域に記憶しているか否かを判定する(ステップS62)。ステップS61で応答信号を検出しなかった場合には、ステップS60に戻り、次のフレームで再度ビーコン信号BSを送信する。
 ステップS62で対応データ記憶領域に記憶していないと判定した場合、センサコントローラ31は、スタイラス100から機能情報CPを読み出す(ステップS63)。この読み出しは、具体的には、次のフレームで送信するビーコン信号BSの中に、機能情報CPの送信要求を示すコマンドGet(CP)を配置することによって行う。これに応じてスタイラス100が機能情報CPを送信すると(ステップS54)、センサコントローラ31は、受信した機能情報CPに基づいてハッシュ値#2を導出し、受信したハッシュ値#1及び機能情報CPと対応付けて対応データ記憶領域に記憶する(ステップS64)。なお、このステップS64では、センサコントローラ31がハッシュ値#1も新たに導出することとしてもよい。
 一方、ステップS62で対応データ記憶領域に記憶していると判定した場合、センサコントローラ31は、受信したハッシュ値#1と対応付けて記憶しているハッシュ値#2を読み出し、スタイラス100に送信する(ステップS65)。この送信も、次のフレームで送信するビーコン信号BSの中に、読み出したハッシュ値#2を配置することによって行う。こうして送信されたハッシュ値#2を受信したスタイラス100は、それがステップS51で導出したものと一致するか否かを判定し(ステップS56)、一致する場合には応答信号Ackを、一致しない場合には失敗信号Failを送信する。これらの送信は、ビーコン信号BSに対する応答信号の中に応答信号Ack又は失敗信号Failを配置することによって行う。そして、失敗信号Failを送信した場合にはステップS52に戻って処理を継続し、応答信号Ackを送信した場合には、センサコントローラ31の検出処理を終了して上述したデータ信号の送信処理(図11に示したステップS10以降の処理)に移行する。センサコントローラ31は、ステップS65で送信したハッシュ値#2に対して応答信号Ackを検出したかを判定し(ステップS66)、応答信号Ackを検出した場合にはスタイラス100の検出処理を終了してデータ信号の受信処理(図12に示したステップS40以降の処理)に移行し、応答信号Ackを検出しなかった場合(又は失敗信号Failを検出した場合)には、ステップS63に戻って再度機能情報CPの読み出し処理を行う。
 以上説明したように、本実施の形態によるシステム1によれば、センサコントローラ31は、受信したハッシュ値#1と対応付けて記憶しているハッシュ値#2により、自身の対応データ記憶領域に記憶している機能情報CPとスタイラス100が有している機能情報CPとの一致を再確認することができる。したがって、正しい機能情報CPによる通信をより確実に行うことが可能になる。
 以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。
 例えば、上記各実施の形態では、同一のダウンリンク信号DSにより、スタイラス100の位置を示す座標データ(X,Y)の導出と、インタラクティブデータDF等の送信とが行われていたが、図21に示すように、これらを別々のダウンリンク信号DSにより実現することとしてもよい。すなわち、図21には、座標データの導出専用の位置信号であるダウンリンク信号DSと、インタラクティブデータDFを送信するためのダウンリンク信号DSとを時分割で送信し、センサコントローラ31は、前者のダウンリンク信号DSのみに基づいてスタイラス100の位置を示す座標データ(X,Y)を導出する例を示している。このようにしても、センサコントローラ31は、スタイラス100の位置を示す座標データ(X,Y)と、スタイラス100が送信したインタラクティブデータDFとを好適に取得することができる。また、図17及び図18で示すインタラクティブデータDF1も図21の例と同じように、各々別個の時間スロットとして送信しても良い。
1       システム
3       電子機器
3a      タッチ面
30      センサ
30X,30Y 線状電極
31      センサコントローラ
32      システムコントローラ
40      選択部
41x,41y 導体選択回路
44x,44y スイッチ
49      検波回路
50      受信部
50      変換器
51      増幅回路
52      検波回路
53      アナログデジタル変換器
60      送信部
61      制御信号供給部
62      スイッチ
63      直接拡散部
64      拡散符号保持部
65      送信ガード部
70      ロジック部
100     アクティブスタイラス
101     バッテリー
102T,102R 電極
103     テイルスイッチ
104     バレルボタン
105     操作状態検出部
106     スタイラスコントローラIC
110     通信部
111     機能情報更新部
112     インタラクティブデータ取得部
113     非インタラクティブデータ取得部
BB      バレルボタン状態
BBN     バレルボタン数
BL      バッテリーレベル
BS      ビーコン信号
CBS     カスタムボタンサイズ
CD      カスタムデータ
CDf     カスタムデータフラグ
CDS     カスタムデータサイズ
Col     色
COS     カスタムオリエンテーションサイズ
CP      機能情報
CP_Hash 機能情報CPのハッシュ値
CPS     カスタム筆圧サイズ
D       データ
DF      インタラクティブデータ
DFmt    データフォーマット
DINF    非インタラクティブデータ
DS      ダウンリンク信号
F       フレーム
Inv     反転
OCT     オリエンテーションコードテーブル
OR      オリエンテーション
ORC     オリエンテーションコード
ORR     オリエンテーション分解能
ORR     オリエンテーション分解能
PL      筆圧段階指示数
Rx      受信部
SR      センシング範囲
Styl    スタイル
TaP     接線方向筆圧値
TaPf    接線方向筆圧フラグ
TiP     筆圧値
Tx      送信部

Claims (24)

  1.  互いに双方向通信を行うアクティブスタイラス及びセンサコントローラを用いた方法であって、
     前記センサコントローラが、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信するステップと、
     前記アクティブスタイラスが、前記ビーコン信号を検出した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信するステップと、
     前記アクティブスタイラスが、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信するステップと
     を含む方法。
  2.  前記センサコントローラが、前記応答信号に基づいて取得した前記機能情報に基づいて前記フォーマットを決定するステップと、
     前記センサコントローラが、前記フォーマットを前記アクティブスタイラスに通知するステップと
     をさらに含む請求項1に記載の方法。
  3.  前記フォーマットは、前記1以上のインタラクティブデータのうちどのインタラクティブデータをどのタイミングで送信するかを規定する
     請求項1又は2に記載の方法。
  4.  前記センサコントローラが、決定した前記フォーマットに基づいて、前記フレームを構成する複数の時間スロットのうち前記少なくとも一部の前記インタラクティブデータの送信に用いるものを示すオフセット情報を決定するステップと、
     前記センサコントローラが、前記オフセット情報を前記アクティブスタイラスに通知するステップとを含み、
     前記アクティブスタイラスは、前記オフセット情報により示される時間スロットを用いて前記データ信号の送信を行う
     請求項2に記載の方法。
  5.  前記センサコントローラが、決定した前記フォーマットに基づいて、前記少なくとも一部の前記インタラクティブデータの送信周期を示すインターバル情報を決定するステップと、
     前記センサコントローラが、前記インターバル情報を前記アクティブスタイラスに通知するステップとを含み、
     前記アクティブスタイラスは、前記オフセット情報及び前記インターバル情報により示される時間スロットを用いて前記データ信号の送信を行う
     請求項4に記載の方法。
  6.  前記ビーコン信号、前記応答信号、及び前記データ信号は、この順で前記フレーム内に配置される
     請求項1乃至5のいずれか一項に記載の方法。
  7.  前記センサコントローラが、前記1以上のインタラクティブデータに比べて頻繁に受信する必要のないデータである1以上の非インタラクティブデータの送信要求を前記ビーコン信号内に配置するステップと、
     前記アクティブスタイラスが、前記1以上の非インタラクティブデータの送信要求に応じて、前記1以上の非インタラクティブデータを含むデータ信号を送信するステップ、
     をさらに含む請求項6に記載の方法。
  8.  前記インタラクティブデータは、筆圧値及びボタンの押下状態を含み、
     前記非インタラクティブデータは、前記アクティブスタイラスのバッテリーレベルを含む
     請求項7に記載の方法。
  9.  前記機能情報は、ユーザ操作又は前記センサコントローラからの設定によって変更されない第1の機能情報を含む
     請求項1乃至8のいずれか一項に記載の方法。
  10.  前記第1の機能情報は、前記アクティブスタイラスが有するセンサの種別を示す情報を含む
     請求項9に記載の方法。
  11.  前記第1の機能情報は、前記アクティブスタイラスがバレルボタンを有しているか否かを示す情報、前記アクティブスタイラスが傾き検出センサを有しているか否かを示す情報、前記アクティブスタイラスがツイスト検出センサを有しているか否かを示す情報、及び、前記アクティブスタイラスがその他のセンサを有しているか否かを示す情報を含む
     請求項10に記載の方法。
  12.  前記第1の機能情報は、前記アクティブスタイラスが、当該アクティブスタイラスによって描かれる線の色を特定する機能を有するか否かを示す情報を含む
     請求項9乃至11のいずれか一項に記載の方法。
  13.  前記機能情報は、ユーザ操作又は前記センサコントローラからの設定によって変更可能な第2の機能情報を含む
     請求項1乃至12のいずれか一項に記載の方法。
  14.  前記第2の機能情報は、前記アクティブスタイラスによって描かれる線の色、幅、及びタイプを特定する情報を含む
     請求項13に記載の方法。
  15.  前記第2の機能情報は、前記アクティブスタイラスが有している1以上のボタンそれぞれに付与された機能を特定する情報を含む
     請求項13又は14に記載の方法。
  16.  前記機能情報に対応する情報は、前記機能情報、又は、前記機能情報の少なくとも一部に基づいて導出されたハッシュ値であり、
     前記センサコントローラは、前記ハッシュ値と前記機能情報とを対応付ける対応データを記憶しており、
     前記センサコントローラは、前記応答信号に前記ハッシュ値が含まれていた場合、前記対応データから前記機能情報を取得する
     請求項1乃至12のいずれか一項に記載の方法。
  17.  前記センサコントローラが、前記機能情報の全体の送信要求を前記ビーコン信号内に配置するステップをさらに含み、
     前記アクティブスタイラスは、前記機能情報の全体の送信要求を受信した場合に、前記機能情報を前記ビーコン信号に対する応答信号に含めて送信する
     請求項16に記載の方法。
  18.  前記機能情報は、ユーザ操作又は前記センサコントローラからの設定によって変更可能とされた情報を記述してなる第2の機能情報を含み、
     前記ハッシュ値は、前記第2の機能情報に基づいて導出される
     請求項16又は17に記載の方法。
  19.  前記アクティブスタイラスが、前記機能情報の少なくとも一部に基づいて第1及び第2のハッシュ値を生成するステップをさらに含み、
     前記機能情報に対応する情報は、前記第1のハッシュ値である
     請求項16乃至18のいずれか一項に記載の方法。
  20.  前記センサコントローラが、前記機能情報の少なくとも一部に基づいて第2のハッシュ値を生成するステップをさらに含み、
     前記対応データには、前記第1及び第2のハッシュ値のそれぞれと前記機能情報とが対応付けて格納され、
     前記センサコントローラは、前記応答信号に前記第1のハッシュ値が含まれていた場合に前記対応データから前記機能情報及び前記第2のハッシュ値を取得し、取得した該第2のハッシュ値を前記アクティブスタイラスに対して送信する
     請求項19に記載の方法。
  21.  前記双方向通信は、容量結合を利用した通信である
     請求項1乃至20のいずれか一項に記載の方法。
  22.  アクティブスタイラスと双方向通信を行うセンサコントローラであって、
     前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信し、
     前記アクティブスタイラスから、該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を含む応答信号を受信し、
     前記アクティブスタイラスから、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に受信する
     センサコントローラ。
  23.  センサコントローラと双方向通信を行うアクティブスタイラスであって、
     前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を前記センサコントローラから受信した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信し、
     前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信する
     アクティブスタイラス。
  24.  互いに双方向通信を行うアクティブスタイラス及びセンサコントローラを含むシステムであって、
     前記センサコントローラは、前記双方向通信を実施するために使用されるフレームの基準時刻を示すビーコン信号を送信し、
     前記アクティブスタイラスは、前記ビーコン信号を検出した後、当該アクティブスタイラスが取得可能な1以上のインタラクティブデータの種別を示す機能情報に対応する情報を前記ビーコン信号に対する応答信号に含めて送信するとともに、前記1以上のインタラクティブデータの少なくとも一部を含み、前記1以上のインタラクティブデータに基づいて決定されたフォーマットにより構成されるデータ信号を周期的に送信する
     システム。
PCT/JP2016/058892 2015-04-20 2016-03-22 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム Ceased WO2016170888A1 (ja)

Priority Applications (15)

Application Number Priority Date Filing Date Title
KR1020177033396A KR102444210B1 (ko) 2015-04-20 2016-03-22 액티브 스타일러스 및 센서 컨트롤러를 이용한 방법, 센서 컨트롤러, 액티브 스타일러스, 및 시스템
JP2017514017A JP6230754B2 (ja) 2015-04-20 2016-03-22 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム
CN201680023214.8A CN107533385B (zh) 2015-04-20 2016-03-22 使用了主动式触控笔及传感器控制器的方法、传感器控制器、主动式触控笔及系统
JP2017514120A JP6230755B2 (ja) 2015-04-20 2016-04-19 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
KR1020227034630A KR102534115B1 (ko) 2015-04-20 2016-04-19 액티브 스타일러스 및 센서 컨트롤러를 이용한 방법, 센서 컨트롤러, 및 액티브 스타일러스
EP16783135.3A EP3287876B1 (en) 2015-04-20 2016-04-19 Method using active stylus and sensor controller, sensor controller, and active stylus
EP21159252.2A EP3851941A1 (en) 2015-04-20 2016-04-19 Method using active stylus and sensor controller, sensor controller, and active stylus
CN201680022803.4A CN107533384B (zh) 2015-04-20 2016-04-19 使用了主动式触控笔及传感器控制器的方法、传感器控制器、以及主动式触控笔
CN202011008117.6A CN112181175B (zh) 2015-04-20 2016-04-19 传感器控制器、主动式触控笔及使用了它们的方法
PCT/JP2016/062326 WO2016171114A1 (ja) 2015-04-20 2016-04-19 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
KR1020177033001A KR102453136B1 (ko) 2015-04-20 2016-04-19 액티브 스타일러스 및 센서 컨트롤러를 이용한 방법, 센서 컨트롤러, 및 액티브 스타일러스
US15/715,860 US10860118B2 (en) 2015-04-20 2017-09-26 Method using active stylus and sensor controller, sensor controller, active stylus, and system
US15/716,177 US10838518B2 (en) 2015-04-20 2017-09-26 Method using active stylus and sensor controller, sensor controller, and active stylus
JP2017200990A JP6262397B1 (ja) 2015-04-20 2017-10-17 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
US17/096,858 US11016586B2 (en) 2015-04-20 2020-11-12 Method using active stylus and sensor controller, sensor controller, and active stylus

Applications Claiming Priority (6)

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

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/715,860 Continuation US10860118B2 (en) 2015-04-20 2017-09-26 Method using active stylus and sensor controller, sensor controller, active stylus, and system

Publications (1)

Publication Number Publication Date
WO2016170888A1 true WO2016170888A1 (ja) 2016-10-27

Family

ID=57144428

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/058892 Ceased WO2016170888A1 (ja) 2015-04-20 2016-03-22 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム

Country Status (5)

Country Link
US (1) US10860118B2 (ja)
JP (2) JP6230754B2 (ja)
KR (1) KR102444210B1 (ja)
CN (1) CN107533385B (ja)
WO (1) WO2016170888A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021174310A (ja) * 2020-04-27 2021-11-01 株式会社ワコム 位置検出システム、センサ制御回路、及び電子ペン

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5745712B1 (ja) 2014-01-22 2015-07-08 株式会社ワコム 位置指示器、位置検出装置、位置検出回路及び位置検出方法
JP6824992B2 (ja) * 2016-09-01 2021-02-03 株式会社ワコム スタイラス、センサコントローラ、及び電子定規
CA2990498A1 (en) 2016-12-28 2018-06-28 Pure Humidifier Company Modulating makeup fluid control systems and methods for same
KR102460472B1 (ko) * 2016-12-30 2022-11-01 엘지디스플레이 주식회사 터치 센싱 시스템, 디스플레이 디바이스, 액티브 펜 및 펜 인식 방법
CN111373357B (zh) * 2017-11-29 2023-09-22 株式会社和冠 在主动笔与传感器控制器之间执行的通信方法及主动笔
JP7048730B2 (ja) * 2018-05-09 2022-04-05 株式会社ワコム ペン、センサ装置、及びペンシステム
JP7155022B2 (ja) * 2019-01-11 2022-10-18 株式会社ワコム ペン
KR102796752B1 (ko) * 2020-03-26 2025-04-16 삼성전자주식회사 원격 입력 장치의 제스처 인식 방법 및 그 전자 장치
TWM617533U (zh) * 2021-06-30 2021-09-21 奕力科技股份有限公司 主動筆以及觸控系統
CN113467626A (zh) * 2021-06-30 2021-10-01 奕力科技股份有限公司 主动笔以及触控系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209050A (ja) * 2004-01-26 2005-08-04 Sony Corp ペン型入力装置及び情報入力システム
JP2007531938A (ja) * 2004-04-01 2007-11-08 ファインポイント・イノヴェーションズ・インコーポレーテッド パネルとコードレス・トランスデューサのシステム
JP2012022543A (ja) * 2010-07-15 2012-02-02 Panasonic Corp タッチパネルシステム

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69521833T2 (de) 1994-04-28 2002-04-04 Sharp Kk Koordinateneingabevorrichtung und zugehöriges Singalübertragungssystem
US6669385B1 (en) 1999-05-25 2003-12-30 Silverbrook Research Pty Ltd Printer having a document transfer device
US7055739B1 (en) 1999-05-25 2006-06-06 Silverbrook Research Pty Ltd Identity-coded surface with reference points
JP2002207565A (ja) * 2000-12-19 2002-07-26 Internatl Business Mach Corp <Ibm> 入力システム、電子入力装置、デジタイザ入力用筆記具、デジタイザ、座標入力方法、座標情報伝送方法、および記憶媒体
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
US20080169132A1 (en) * 2007-01-03 2008-07-17 Yao Ding Multiple styli annotation system
US8481872B2 (en) * 2008-12-22 2013-07-09 N-Trig Ltd. Digitizer, stylus and method of synchronization therewith
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 株式会社ワコム 指示体、位置検出装置及び位置検出方法
US8619065B2 (en) 2011-02-11 2013-12-31 Microsoft Corporation Universal stylus device
JP2014509031A (ja) 2011-03-21 2014-04-10 エヌ−トリグ リミテッド コンピュータスタイラスによる認証のためのシステム及び方法
US9329703B2 (en) 2011-06-22 2016-05-03 Apple Inc. Intelligent stylus
CN102902393B (zh) * 2011-07-29 2015-11-25 宸鸿光电科技股份有限公司 检测电极阵列控制电路、控制方法及其触控检测系统
TWI463364B (zh) 2011-10-14 2014-12-01 Syncmold Entpr Corp 觸控裝置之外部操作系統與方法
US9946408B2 (en) 2011-10-28 2018-04-17 Atmel Corporation Communication between a master active stylus and a slave touch-sensor device
US8933899B2 (en) 2011-10-28 2015-01-13 Atmel Corporation Pulse- or frame-based communication using active stylus
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
US10228780B2 (en) * 2012-02-15 2019-03-12 Wacom Co., Ltd. Stylus to host synchronization using a magnetic field
EP2693310A1 (en) * 2012-07-31 2014-02-05 BlackBerry Limited Method and apparatus pertaining to the timing of stylus location transmissions
JP5984259B2 (ja) 2012-09-20 2016-09-06 株式会社ワコム 位置検出装置
US20140256250A1 (en) 2013-03-11 2014-09-11 Barnesandnoble.Com Llc Peer-to-peer data transfer using near field communication (nfc)-enabled styluses
US20140253462A1 (en) 2013-03-11 2014-09-11 Barnesandnoble.Com Llc Sync system for storing/restoring stylus customizations
CN203233195U (zh) * 2013-03-29 2013-10-09 上海思立微电子科技有限公司 主动式触控笔
US10055030B2 (en) 2013-05-17 2018-08-21 Apple Inc. Dynamic visual indications for input devices
WO2014192828A1 (ja) * 2013-05-31 2014-12-04 シャープ株式会社 タッチパネルシステム、電子機器
US9280214B2 (en) 2013-07-02 2016-03-08 Blackberry Limited Method and apparatus for motion sensing of a handheld device relative to a stylus
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
CN108549494B (zh) 2013-11-08 2021-01-01 禾瑞亚科技股份有限公司 发信器
JP5745712B1 (ja) 2014-01-22 2015-07-08 株式会社ワコム 位置指示器、位置検出装置、位置検出回路及び位置検出方法
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209050A (ja) * 2004-01-26 2005-08-04 Sony Corp ペン型入力装置及び情報入力システム
JP2007531938A (ja) * 2004-04-01 2007-11-08 ファインポイント・イノヴェーションズ・インコーポレーテッド パネルとコードレス・トランスデューサのシステム
JP2012022543A (ja) * 2010-07-15 2012-02-02 Panasonic Corp タッチパネルシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021174310A (ja) * 2020-04-27 2021-11-01 株式会社ワコム 位置検出システム、センサ制御回路、及び電子ペン
JP7475950B2 (ja) 2020-04-27 2024-04-30 株式会社ワコム アップリンク信号の送受信システム、及びセンサ制御回路

Also Published As

Publication number Publication date
US10860118B2 (en) 2020-12-08
JPWO2016170888A1 (ja) 2017-11-02
KR20170138526A (ko) 2017-12-15
JP6639454B2 (ja) 2020-02-05
JP2018026164A (ja) 2018-02-15
US20180018031A1 (en) 2018-01-18
CN107533385B (zh) 2022-03-11
KR102444210B1 (ko) 2022-09-19
JP6230754B2 (ja) 2017-11-15
CN107533385A (zh) 2018-01-02

Similar Documents

Publication Publication Date Title
JP6230754B2 (ja) アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム
JP6262397B1 (ja) アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
US11144140B2 (en) System and method for bidirectional communication between stylus and stylus sensor controller
US9448646B1 (en) System and method for bidirectional communication between stylus and stylus sensor controller

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16782910

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017514017

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20177033396

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 16782910

Country of ref document: EP

Kind code of ref document: A1