U.S. patent number 10,838,518 [Application Number 15/716,177] was granted by the patent office on 2020-11-17 for method using active stylus and sensor controller, sensor controller, and active stylus.
This patent grant is currently assigned to Wacom Co., Ltd.. The grantee listed for this patent is Wacom Co., Ltd.. Invention is credited to Yasuo Oda, Masahiko Yamada, Sadao Yamamoto.
View All Diagrams
United States Patent |
10,838,518 |
Yamamoto , et al. |
November 17, 2020 |
Method using active stylus and sensor controller, sensor
controller, and active stylus
Abstract
A method of using an active stylus and a sensor controller is
provided including generally four steps. The active stylus, in
response to a trigger indicative of a pen lowering operation, sends
refill body information indicating a type of a refill body that
forms a pen tip of the active stylus. The sensor controller
receives the refill body information and identifies the refill body
type of the active stylus. The active stylus repeatedly sends a
data signal including a pen pressure value applied to the refill
body. The sensor controller derives a position of the active stylus
based on the data signal using a position deriving method that
corresponds to the refill body information.
Inventors: |
Yamamoto; Sadao (Tokyo,
JP), Oda; Yasuo (Saitama, JP), Yamada;
Masahiko (Saitama, JP) |
Applicant: |
Name |
City |
State |
Country |
Type |
Wacom Co., Ltd. |
Saitama |
N/A |
JP |
|
|
Assignee: |
Wacom Co., Ltd. (Saitama,
JP)
|
Family
ID: |
1000005186173 |
Appl.
No.: |
15/716,177 |
Filed: |
September 26, 2017 |
Prior Publication Data
|
|
|
|
Document
Identifier |
Publication Date |
|
US 20180024658 A1 |
Jan 25, 2018 |
|
Related U.S. Patent Documents
|
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
Issue Date |
|
|
PCT/JP2016/062326 |
Apr 19, 2016 |
|
|
|
|
62254927 |
Nov 13, 2015 |
|
|
|
|
62243427 |
Oct 19, 2015 |
|
|
|
|
62162527 |
May 15, 2015 |
|
|
|
|
62149907 |
Apr 20, 2015 |
|
|
|
|
Foreign Application Priority Data
|
|
|
|
|
Mar 22, 2016 [WO] |
|
|
PCT/JP2016/058892 |
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G06F
3/0488 (20130101); G06F 3/0412 (20130101); G06F
3/046 (20130101); G06F 3/0418 (20130101); G06F
3/044 (20130101); G06F 3/03545 (20130101); G06F
3/04162 (20190501); G06F 3/0383 (20130101); G06F
3/038 (20130101); G06F 3/0442 (20190501); G06F
3/0416 (20130101) |
Current International
Class: |
G06F
3/0354 (20130101); G06F 3/033 (20130101); G06F
3/041 (20060101); G06F 3/046 (20060101); G06F
3/038 (20130101); G06F 3/044 (20060101); G06F
3/0488 (20130101) |
References Cited
[Referenced By]
U.S. Patent Documents
Foreign Patent Documents
|
|
|
|
|
|
|
2014-63249 |
|
Apr 2014 |
|
JP |
|
2015/111159 |
|
Jul 2015 |
|
WO |
|
Primary Examiner: Mercedes; Dismery
Attorney, Agent or Firm: Seed IP Law Group LLP
Claims
The invention claimed is:
1. A method of using an active stylus and a sensor controller, the
method comprising: the active stylus, in response to a trigger
indicative of a pen lowering operation, sending replaceable pen tip
information which indicates a type of a replaceable pen tip that
forms a pen tip of the active stylus, wherein the type indicates
configuration of electrode(s) used by the active stylus for signal
transmission; the sensor controller receiving the replaceable pen
tip information and identifying the replaceable pen tip type of the
active stylus; the active stylus repeatedly sending a data signal
including a pen pressure value applied to the replaceable pen tip;
and the sensor controller selecting a position deriving method
corresponding to the received replaceable pen tip information, from
among a plurality of position deriving methods, and continuously
using the selected position deriving method to derive a series of
positions of the active stylus based on the data signal that is
repeatedly sent, from when the replaceable pen tip information is
received until when the active stylus is determined to have moved
out of a sensing range of the sensor controller.
2. The method according to claim 1, wherein the data signal does
not include the replaceable pen tip information.
3. The method according to claim 1, wherein the trigger is
detection, by the active stylus, of an uplink signal sent from the
sensor controller.
4. The method according to claim 3, wherein the active stylus sends
the replaceable pen tip information in a response signal to the
uplink signal.
5. The method according to claim 1, wherein the trigger is that the
pen pressure value has reached a threshold value.
6. The method according to claim 1, wherein the replaceable pen tip
information is part of capability information which may change
while the active stylus is located outside a sensing range of the
sensor controller.
7. The method according to claim 6, wherein the active stylus sends
the replaceable pen tip information by sending the capability
information.
8. The method according to claim 6, wherein the active stylus sends
the replaceable pen tip information by sending a hash value of data
including the capability information.
9. The method according to claim 1, wherein the replaceable pen tip
information is part of a unique identifier that identifies the
active stylus, and the active stylus sends the replaceable pen tip
information by sending the unique identifier.
10. The method according to claim 1, wherein the replaceable pen
tip information includes information indicating whether any of the
electrode(s) used by the active stylus for signal transmission is
located inside or outside the replaceable pen tip.
11. The method according to claim 1, wherein the replaceable pen
tip information includes information identifying a number and
arrangement of the electrode(s) used by the active stylus for
signal transmission.
12. The method according to claim 1, wherein the active stylus is
configured such that the replaceable pen tip is attachable and
detachable.
13. An active stylus, comprising: a pen tip having an electrode;
transmitting circuitry coupled to the electrode and which, in
operation, sends signals from the electrode to a sensor controller;
and a controller coupled to the transmitting circuitry and which,
in response to a trigger indicative of a pen lowering operation,
controls transmission of replaceable pen tip information, which
indicates a type of a replaceable pen tip that forms the pen tip,
wherein the type indicates configuration of the electrode, to the
sensor controller via the transmitting circuitry, and controls
repeated transmissions of data signals to the sensor controller via
the transmitting circuitry after having sent the replaceable pen
tip information, wherein the replaceable pen tip information is for
use by the sensor controller to select a position deriving method
that corresponds to the replaceable pen tip information, from among
a plurality of position driving methods, and to continuously use
the selected position deriving method to derive a series of
positions of the active stylus based on the data signals, from when
the active stylus transmits the replaceable pen tip information
until when the active stylus moves out of a sensing range of the
sensor controller.
14. The active stylus according to claim 13, comprising: detection
circuitry coupled to the controller and which, in operation,
detects a pen pressure applied to the replaceable pen tip, wherein
the data signal does not include the replaceable pen tip
information, but includes a pen pressure value applied to the
replaceable pen tip.
15. The active stylus according to claim 14, wherein the trigger is
that the pen pressure value has reached a threshold value.
16. The active stylus according to claim 14, wherein the
replaceable pen tip information includes information that
identifies a pen pressure curve that converts the pen pressure
value included in the data signal into a pen pressure level usable
by the sensor controller.
17. The active stylus according to claim 13, comprising: receiving
circuitry coupled to the electrode and which, in operation,
receives signals from the sensor controller via the electrode,
wherein the trigger is detection, by the receiving circuitry, of an
uplink signal sent from the sensor controller.
18. The active stylus according to claim 13, wherein the
replaceable pen tip information is part of capability information
which may change while the active stylus is located outside a
sensing range of the sensor controller, and the replaceable pen tip
information is sent as part of the capability information.
19. A sensor controller, comprising: reception circuitry which, in
operation, receives, from an active stylus, i) replaceable pen tip
information which indicates a type of a replaceable pen tip forming
a pen tip of the active stylus, wherein the type indicates
configuration of electrode(s) used by the active stylus for signal
transmission, and ii) a data signal including a pen pressure value
applied to the replaceable pen tip; and processing circuitry
coupled to the reception circuitry and which, in operation, obtains
the replaceable pen tip information received from the active stylus
via the reception circuitry, selects a position deriving method
that corresponds to the obtained replaceable pen tip information,
from among a plurality of position deriving methods, wherein the
selected position deriving method defines at least one position
deriving parameter used to process signals transmitted from the
electrode(s) of the active stylus, and derives a series of
positions of the active stylus based on the data signal that is
repeatedly received, from when the replaceable pen tip information
is received until when the active stylus is determined to have
moved out of a sensing range of the sensor controller, by
continuously using the determined position deriving method.
20. The sensor controller according to claim 19, comprising:
transmission circuitry coupled to the processing circuitry and
which, in operation, sends an uplink signal to the active stylus,
wherein the reception circuitry receives the replaceable pen tip
information from the active stylus which has detected the uplink
signal.
21. The sensor controller according to claim 19, wherein the
processing circuitry, in operation, determines a pen pressure curve
that corresponds to the obtained replaceable pen tip information,
wherein the pen pressure curve converts the pen pressure value
included in the data signal into a pressure level usable by the
sensor controller, and derives a pen pressure level from the pen
pressure value included in the data signal using the determined pen
pressure curve.
Description
BACKGROUND
Technical Field
The present invention relates to a method using an active stylus
and a sensor controller, a sensor controller, and an active
stylus.
Description of the Related Art
A position detecting device is known that is capable of sending
signals through capacitive coupling from an active stylus
(hereinafter may be referred to simply as a "stylus"), which is a
position pointer with a built-in power supply device, to a tablet.
In this kind of position detecting device, one-way communication
takes place in which signals are sent from the stylus and received
by a sensor controller of the tablet. Patent Document 1 discloses,
as an example of such a position detecting device, a stylus that
communicates data such as pen pressure value, unique stylus
identifier (ID), and other information together with a position
signal dedicated for deriving coordinate data.
Patent Document 2 discloses another example of a position detecting
device. The stylus according to this example includes an electrode
for signal transmission and a battery, and sends results of
detection of pen pressure in a digital form. Also, the tablet
includes a display device and a transparent sensor so that both the
position pointed to by the stylus and the pen pressure applied by
the stylus and the position touched by a finger can be detected by
the transparent sensor.
Recent years have seen emergence of styluses having a replaceable
refill body (replaceable pen tip) made separately from a stylus
housing. Patent Documents 3 and 4 disclose examples of such
styluses.
Patent Document 4 discloses a stylus that detects which one of a
plurality of pen tips (refill bodies) is currently placed in the
stylus, determines a code indicating an "application feature"
(e.g., eraser) for a position detecting device based on the
detected refill body, and sends the determined code to the position
detecting device using an acoustic code. Patent Document 4 also
discloses that the stylus detects one out of the plurality of
refill bodies based on different arrangements or structures of
metallic contacts between the refill bodies and the stylus,
respectively.
PRIOR ART DOCUMENT
Patent Documents
Patent Document 1: PCT Patent Publication No. 2015/111159
Patent Document 2: Japanese Patent Laid-Open No. 2014-63249
Patent Document 3: U.S. Pat. No. 8,648,837
Patent Document 4: U.S. Patent Application Publication No.
2014/0168177
BRIEF SUMMARY
Technical Problem
In an active stylus, the distribution of electric fields detected
by a sensor controller may change in accordance with the structure
of the electrode(s) near the distal tip of the refill body (e.g.,
shape(s), number, and positions of the electrodes). For this
reason, it is desired that the active stylus can convey, to the
sensor controller, the type of refill body attached to the stylus
in advance.
One possible way of realizing this conveyance would be to send
information indicating the refill body type (hereinafter referred
to as "refill body information") from the stylus to the sensor
controller. However, the possible communication range via
capacitive coupling is no more than several tens of millimeters.
Therefore, it is likely that even if the stylus detects the
attachment of a new refill body and sends refill body information
on the attached refill body once, the information will not be
received by the sensor controller. The reason for this is that when
the refill body is attached, the stylus is typically located away
from the sensor controller.
One possible way of ensuring reception by the sensor controller
would be that the stylus repeats the transmission of refill body
information a number of times. When the stylus approaches the
sensor controller while the transmission is repeated, refill body
information is conveyed to the sensor controller as a result.
However, the communication bit rate using a coupling capacity
between the electrode at the distal tip of the stylus and the
sensor to which the sensor controller is connected is low.
Therefore, configuring the stylus to repeatedly send refill body
information may not be effective in terms of utilization efficiency
of communication resources.
Therefore, it is an aspect of the present invention to provide a
method using an active stylus and a sensor controller, a sensor
controller, and an active stylus that allow for efficient
transmission of refill body information from the active stylus to
the sensor controller.
Technical Solution
A method according to an aspect of the present invention is a
method using an active stylus and a sensor controller. The method
includes a step in which the active stylus sends refill body
information indicating a type of a refill body forming a pen tip of
the active stylus in response to a trigger generated when a pen
lowering operation occurs. The method includes a step in which the
sensor controller receives the refill body information and
identifies the refill body type of the active stylus, a step in
which the active stylus repeatedly sends a data signal including a
value of pen pressure applied to the refill body, and a step in
which the sensor controller derives the position of the active
stylus based on the data signal using a method corresponding to the
identified refill body information.
An active stylus according to an aspect of the present invention is
an active stylus configured to be able to send signals to a sensor
controller and includes a pen tip, a transmitting circuit
(transmitter), and a stylus controller. The pen tip has an
electrode. The transmitter sends signals from the electrode. The
stylus controller sends via the transmitter, to the sensor
controller, refill body information indicative of a type of a
refill body that forms the pen tip in response to a trigger
generated when a pen lowering operation occurs. The stylus
controller repeatedly sends via the transmitter, to the sensor
controller, a data signal after having sent the refill body
information.
A sensor controller according to an aspect of the present invention
is a sensor controller used together with an active stylus
configured to be able to send refill body information indicative of
a type of a refill body that forms a pen tip and a data signal
including a value of pen pressure applied to the refill body. The
sensor controller obtains the refill body information sent from the
active stylus, determines a position deriving method corresponding
to the obtained refill body information, and repeatedly derives a
position of the active stylus based on the repeatedly sent data
signal using the determined position deriving method.
Advantageous Effect
According to the present invention, an active stylus sends refill
body information in response to a trigger generated when a pen
lowering operation occurs, making it possible to efficiently send
refill body information from the active stylus to a sensor
controller.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
FIG. 1 is a diagram illustrating a configuration of a system
according to a first embodiment of the present invention.
FIG. 2 is a diagram illustrating a configuration of frame F
according to the first embodiment of the present invention.
FIG. 3 is a diagram illustrating a configuration of a stylus
depicted in FIG. 1.
FIG. 4 is a schematic block diagram illustrating functional blocks
of a stylus controller integrated circuit (IC) depicted in FIG.
3.
FIG. 5A to FIG. 5C are diagrams illustrating variations of a refill
body depicted in FIG. 3, FIG. 5D is a diagram illustrating a cross
section of a refill body across line B-B depicted in FIG. 5A, FIG.
5E is a diagram illustrating a cross section of a refill body
across line C-C depicted in FIG. 5B, and FIG. 5F is a diagram
illustrating a cross section of a refill body across line D-D
depicted in FIG. 5C.
FIG. 6 is a diagram illustrating a cross section of a refill body
holder across line A-A depicted in FIG. 3.
FIG. 7 is a diagram illustrating configurations of a sensor and a
sensor controller depicted in FIG. 1.
FIG. 8 is a diagram illustrating a configuration of capability
information CP depicted in FIG. 3.
FIG. 9 is a diagram illustrating details of data format DFmt
depicted in FIG. 8.
FIG. 10 is a diagram illustrating a definition of an orientation
code ORC depicted in FIG. 9.
FIG. 11 depicts diagrams illustrating examples of the data format
DFmt depicted in FIG. 8.
FIG. 12 is a diagram illustrating a configuration of interactive
data DF depicted in FIG. 3.
FIG. 13 is a diagram illustrating a configuration of noninteractive
data DINF depicted in FIG. 3.
FIG. 14 is a diagram illustrating a flow of operation of the stylus
depicted in FIG. 1.
FIG. 15 is a diagram illustrating a flow of operation of the sensor
controller depicted in FIG. 1.
FIG. 16 is a diagram illustrating an example of allocation of time
slots to the capability information CP.
FIG. 17 is a diagram illustrating an example of allocation of time
slots to a hash value CP_Hash of the capability information CP.
FIG. 18 is a diagram illustrating an example of allocation of time
slots to the interactive data DF and the noninteractive data
DINF.
FIG. 19 is a diagram illustrating another example of allocation of
time slots to the interactive data DF and the noninteractive data
DINF.
FIG. 20 is a diagram illustrating an example of allocation of time
slots to the interactive data DF and the noninteractive data DINF
when the interactive data DF includes custom data CD.
FIG. 21 is a diagram illustrating an example of allocation of time
slots and frequencies to the interactive data DF and the
noninteractive data DINF when the interactive data DF includes an
orientation OR.
FIG. 22 is a diagram illustrating a modification example of the
flow of operation of the sensor controller depicted in FIG. 15.
FIG. 23 is a diagram illustrating a flow of operation of the stylus
and the sensor controller according to a second embodiment of the
present invention.
FIG. 24 is a diagram illustrating a modification example of
allocation of time slots.
FIG. 25 is a diagram illustrating a flow of operation of the stylus
according to a modification example of the present invention.
FIG. 26 is a diagram illustrating a flow of operation of the sensor
controller according to a modification example of the present
invention.
FIG. 27A and FIG. 27B are diagrams illustrating the stylus
according to respective modification examples of the present
invention.
DETAILED DESCRIPTION
A detailed description will be given below of embodiments of the
present invention with reference to the accompanying drawings.
FIG. 1 is a diagram illustrating a configuration of a system 1
according to a first embodiment of the present invention. The
system 1 includes a stylus 100 and a sensor controller 31 included
in an electronic apparatus 3. Of these, the stylus 100 is
configured to include a communication circuitry 110 having a
function to send and receive various data (e.g., capability
information CP, hash value CP_Hash, interactive data DF,
noninteractive data DINF, and beacon signal BS to be described
later). On the other hand, the electronic apparatus 3 is configured
to include not only the sensor controller 31 but also a sensor 30,
which forms a touch surface 3a of the electronic apparatus 3, and a
system controller 32 (host processor) that controls functions of
the respective circuitry of the electronic apparatus 3 including
the sensor 30 and the sensor controller 31. The sensor controller
31 is configured to engage in two-way communication with the stylus
100 using frames by capacitively coupling with the stylus 100 via
the sensor 30.
Broken line arrows C1 to C5 in FIG. 1 indicate a typical cycle in
which the user operates the stylus 100. When using the stylus 100,
the user operates a tail switch 103 (refer to FIG. 3) first and
specifies a color Col and a style Styl (refer to FIG. 8) of a line
drawn by the stylus 100. The user also replaces a refill body 121
(refer to FIG. 3) of the stylus 100. Then, to actually draw a line,
the user lowers the stylus 100 (pen lowering operation C1) from a
starting point ST outside a sensing range SR (range within which
the sensor controller 31 can detect the stylus 100) into the
sensing range SR, and further brings the stylus 100 into contact
with the touch surface 3a (pen touch operation C2). Then, after
moving the stylus 100 in such a manner as to trace a desired path
on the touch surface 3a (pen moving operation C3) while at the same
time keeping the stylus 100 in contact, the user raises the stylus
100 from within the sensing range SR to outside the sensing range
SR (pen raising operations C4 and C5). The user draws a letter or
picture on the touch surface 3a by repeating a series of these
operations C1 to C5. As the user repeats the operations C1 to C5, a
condition occurs in which the stylus 100 repeatedly moves into and
out of the sensing range SR of the sensor controller 31.
The sensor controller 31 is a master device that controls the
communication that takes place within the system 1 and is
configured to send out the beacon signal BS (uplink signal, search
signal) that serves as a frame reference time every frame (every
frame period interval) using the sensor 30.
FIG. 2 is a diagram illustrating a configuration of frame F
according to the present embodiment, depicting the relation between
the frame F, the beacon signal BS, and a time slot s. As
illustrated in the same figure, for example, each of the frames F
is made up of 16 (or 32 or other number of) time slots s0 to s15,
and the beacon signal BS is sent in the time slot s0 located at the
beginning of each frame F. The duration of each frame F is, for
example, 16 milliseconds (equivalent to 60 Hz) to match with a
liquid crystal refresh rate. Communication through capacitive
coupling is narrow band communication, and at most only several
tens of bits (e.g., 20 bits) can be sent out in one time slot. It
should be noted, however, that an error detection code (cyclical
redundancy check (CRC)) of several bits may be attached to signals
sent and received in the system 1. In this case, the number of bits
that can be sent in one time slot is, for example, 16 bits. The
description will continue below on the premise that 16 bits can be
sent in one time slot s.
After sending out the beacon signal BS in the time slot s0, for
example, the sensor controller 31 goes on standby to receive a
downlink signal DS sent from the stylus 100 in the time slots s1 to
s15. When the downlink signal DS is detected, the sensor controller
31 is configured to derive coordinate data (X,Y) indicating the
position of the stylus 100 by using a position derivation method
that is set corresponding to the type of the refill body 121 (refer
to FIG. 3) attached to the stylus 100. Specifically, coordinate
data (X,Y) are derived based on the positions of electrodes
(plurality of linear electrodes 30X and 30Y illustrated in FIG. 7
which will be described later) of the sensor 30 used to detect the
downlink signal DS and the reception level of the detected downlink
signal DS. The sensor controller 31 is also configured to obtain
various information and data that was sent, included in the
downlink signal DS, from the stylus 100.
Various information and data included in the downlink signal DS and
sent from the stylus 100 specifically include the capability
information CP illustrated in FIG. 8, the interactive data DF
illustrated in FIG. 12, and the noninteractive data DINF
illustrated in FIG. 13. Hereinafter, of these, the interactive data
DF and the noninteractive data DINF may be referred to as data D.
When these pieces of information and data are obtained, the sensor
controller 31 supplies these pieces of information and data to the
system controller 32 together with position information (X,Y). The
system controller 32 is configured to associate the position
information (X,Y), the capability information CP, and the data D
supplied as described above with each other and supply them to
various applications such as drawing application via an operating
system that is not depicted. This allows for the position
information (X,Y), the capability information CP, and the data D to
be used by various applications.
A description will be given here of the outline of the capability
information CP and the data D. A detailed description will be given
separately later with reference to FIG. 8 to FIG. 13.
First, the capability information CP is information of the stylus
100 that may change while the stylus 100 is located outside the
sensing range SR and includes, for example, version information of
the stylus 100 and a refill body type ID (refill body information)
indicative of the type of the refill body 121 (refer to FIG. 3)
attached to the stylus 100. In other words, the capability
information CP is information that remains unchanged while the user
is engaged in writing operation using the stylus 100. The
capability information CP also includes information that will never
change such as vender identifier that indicates the vendor (e.g.,
manufacturer) of the stylus 100. The capability information CP must
be known to the sensor controller 31 before various data D is sent
from the stylus 100 to the sensor controller 31.
The data D is information that has a possibility to change while
the stylus 100 is located within the sensing range SR and includes
the interactive data DF and the noninteractive data DINF as
described above.
The interactive data DF is, for example, data that changes
frequently in the middle of operation of the stylus 100 by the
user, such as pen pressure value and pressed state of a barrel
button, and is sent from the stylus 100 to the sensor controller 31
once or more (commonly a plurality of times) within the single
frame F (e.g., 60 Hz) as illustrated in FIG. 18, which will be
described later. Also, once a data format is determined, the
interactive data DF is sent repeatedly in the determined data
format in the plurality of frames as long as the stylus and the
sensor controller detect each other. In principle, the stylus 100
periodically and repeatedly sends the interactive data DF in the
plurality of frames voluntarily (unilaterally) rather than in
response to polling from the sensor controller 31. A position
signal dedicated for deriving coordinate data is also included as
one type of the interactive data DF because the pointed position
frequently changes with use of the stylus 100.
The noninteractive data DINF is data that changes less frequently
than the interactive data DF like a battery level (or data that may
be considered as changing at such a frequency) and that is sent
once every plurality of frames F (e.g., every several hundred
frames). In principle, the stylus 100 sends the noninteractive data
DINF in response to polling (request to send) from the sensor
controller 31 rather than voluntarily.
FIG. 3 is a diagram illustrating a configuration of the stylus 100.
As illustrated in the same figure, the stylus 100 includes a
battery 101, an electrode 102, the tail switch 103, a barrel button
104, an operation state detection circuitry 105, a stylus
controller IC 106, a refill body holder 120, and the refill body
121. Also, FIG. 4 is a schematic block diagram illustrating
functional blocks of the stylus controller IC 106. As depicted in
the same figure, the stylus controller IC 106 is configured to
functionally include the communication circuitry 110, a capability
information updating circuitry 111, an interactive data acquisition
circuitry 112, and a noninteractive data acquisition circuitry
113.
Referring to FIG. 3, the battery 101 is a power supply device that
supplies power to drive the stylus controller IC 106 and is
configured to supply a signal that indicates its own remaining
capacity level (battery level BL depicted in FIG. 13) to the stylus
controller IC 106.
The operation state detection circuitry 105 detects information
included in the interactive data DF and may include, for example, a
detection circuit that detects a pen pressure value (pen pressure
value TiP depicted in FIG. 12 which will be described later)
applied to the distal tip of the stylus 100, and a sensor device
such as six-axis inertial measurement unit (IMU) that detects an
orientation (direction; orientation OR depicted in FIG. 12 which
will be described later) of the stylus 100. The operation state
detection circuitry 105 is configured to notify, regarding the
sensor device that detects the orientation, information for
identifying an orientation code ORC (refer to FIG. 9) indicating
the detectable orientation type to the capability information
updating circuitry 111 in the stylus controller IC 106. It should
be noted that the orientation code ORC includes information
indicating whether or not the operation state detection circuitry
105 has a sensor device that detects the orientation.
The stylus controller IC 106 is a signal processor configured to
process signals supplied from the respective circuitry of the
stylus 100 and supply signals to the respective circuitry of the
stylus 100. A detailed description will be given below of functions
of the stylus controller IC 106 with reference to FIG. 4.
The communication circuitry 110 includes a receiving circuit
(receiver) Rx and a transmitting circuit (transmitter) Tx and
engages in two-way communication based on a plurality of time slots
specified in accordance with the reference time (starting time) of
the frame F illustrated in FIG. 2. Describing more specifically,
the communication circuitry 110 derives the reference time of the
frame F by detecting the beacon signal BS using the electrode 102
configured to be integral with the refill body 121 and sets the
reference times of the time slots s0 to s15 depicted in FIG. 2 or
adjusts synchronization. Then, the communication circuitry 110 is
supplied with the capability information CP, the interactive data
DF, and the noninteractive data DINF respectively from the
capability information updating circuitry 111, the interactive data
acquisition circuitry 112, and the noninteractive data acquisition
circuitry 113 and sends, from the electrode 102, these pieces of
information and data in the downlink signal DS in the time slots s1
to s15 that are used for transmission of the downlink signal DS in
accordance with the determined format as depicted, for example, in
FIG. 9.
The capability information updating circuitry 111 has a function to
manage the capability information CP. Specifically, the capability
information updating circuitry 111 is configured to maintain the
capability information CP in a register (not depicted), update the
capability information CP to match with details of operation of the
tail switch 103 (e.g., number of times switch-ON operation is
performed) and replacement operation of the refill body 121 by the
user and supply the updated capability information CP to the
communication circuitry 110. The capability information CP updated
as described above includes a color Col, a style Styl, and a refill
body type ID depicted in FIG. 8.
The interactive data acquisition circuitry 112 has a function to
manage the interactive data DF. Specifically, each time data
included in the interactive data DF is sent, the interactive data
acquisition circuitry 112 is configured to obtain each of a pen
pressure value TiP, the orientation OR and so on depicted in FIG.
12 from the operation state detection circuitry 105, and obtain the
pressed state of the barrel button 104 (barrel button state BB
depicted in FIG. 12), and supply the data to the communication
circuitry 110.
The noninteractive data acquisition circuitry 113 has a function to
manage the noninteractive data DINF. Specifically, each time the
noninteractive data DINF is sent, the noninteractive data
acquisition circuitry 113 is configured to obtain a battery level
BL depicted in FIG. 13 and so on and supply the data to the
communication circuitry 110.
Referring back to FIG. 3, the refill body holder 120 is a member in
the shape of a hollow tube that is formed integrally with the
housing of the stylus 100 and is configured such that the refill
body 121, which forms the pen tip of the stylus 100, is attachable
and detachable. As a result, the refill body 121 of the stylus 100
is configured to be replaceable, and the user of the stylus 100
replaces the refill body 121 by attaching another refill body 121
to the refill body holder 120 after detaching the refill body 121
from the refill body holder 120.
FIG. 5A to FIG. 5C are diagrams illustrating refill bodies 121A to
121C, which are variations of the refill body 121 depicted in FIG.
3. FIG. 5D is a diagram illustrating a cross section of the refill
body 121A across line B-B depicted in FIG. 5A, FIG. 5E is a diagram
illustrating a cross section of the refill body 121B across line
C-C depicted in FIG. 5B, and FIG. 5F is a diagram illustrating a
cross section of the refill body 121C across line D-D depicted in
FIG. 5C.
The refill bodies 121A to 121C differ from each other in the
structure of the integrally configured electrode 102 and the
structure of a terminal 123 provided at the proximal tip portion.
Describing the electrode 102 first, the electrode 102 provided in
the refill body 121A is an elongated conductive member that is
arranged near and inside the distal tip of the refill body 121A. On
the other hand, the electrode 102 provided on the refill body 121B
is a conductive member in the shape formed by hollowing out a
truncated cone along the symmetrical axis and is arranged in such a
manner as to surround the area near the distal tip of the refill
body 121B. The electrode 102 provided in the refill body 121C
includes two electrodes 102-1 and 102-2. The electrode 102-1 is
arranged near and inside the distal tip of the refill body 121C,
and the electrode 102-2 is arranged near and inside the proximal
tip of the refill body 121C. The electrodes 102-1 and 102-2 are
both conductive members in the shape of a rod, and the electrode
102-1 is formed longer than the electrode 102-2.
The terminal 123 will be described next. Before such description,
however, the cross-sectional structure of the refill body holder
120 will be described.
FIG. 6 is a diagram illustrating a cross section of the refill body
holder 120 across line A-A depicted in FIG. 3. As illustrated in
FIG. 6, the refill body holder 120 has an approximately circular
cross section having three recessed portions H1 to H3 on its
lateral (side) surface. The recessed portions H1 to H3 are arranged
90 degrees apart in sequence starting with the recessed portion H1.
Terminals T1 to T3 are provided respectively at the recessed
portions H1 to H3. The terminal T1 is connected to terminal D1 via
a buffer, the terminal T2 is grounded, and the terminal T3 is
connected to terminal D0 via a buffer. The terminals T1 and T3 are
also connected to power wiring that is supplied with a supply
potential Vdd via a resistive element. It should be noted that the
terminals D0 and D1 are input terminals of the stylus controller IC
106 as illustrated in FIG. 3, and signals input to the terminals D0
and D1 are supplied to the capability information updating
circuitry 111 as depicted in FIG. 4.
Referring back to FIG. 5, as illustrated in FIG. 5D to FIG. 5F,
each of the refill bodies 121A to 121C has an approximately
circular cross section having three projected portions. These
projected portions are configured to fit into the recessed portions
H1 to H3 depicted in FIG. 6.
In the refill body 121A depicted in FIG. 5D, the terminals 123 are
formed at two of the three projected portions corresponding to the
recessed portions H2 and H3. These two terminals 123 are connected
to each other by a wiring segment L1. When the refill body 121A is
attached to the refill body holder 120, the two terminals 123
corresponding to the recessed portions H2 and H3 are brought into
conduction with the terminals T2 and T3, respectively. As a result,
a ground potential is supplied to the terminal T3, causing a high
level (1) to appear on the terminal D0. On the other hand, a low
level (0) appears on the terminal D1 corresponding to the terminal
T1 to which the terminal 123 is not connected. The capability
information updating circuitry 111 is configured to detect the
refill body type ID "01" of the refill body 121A from the potential
levels "0" and "1" supplied to the terminals D1 and D0 as described
above.
In the refill body 121B depicted in FIG. 5E, the terminals 123 are
formed at two of the three projected portions corresponding to the
recessed portions H1 and H2. These two terminals 123 are connected
to each other by a wiring segment L2. When the refill body 121B is
attached to the refill body holder 120, the two terminals 123
corresponding to the recessed portions H1 and H2 are brought into
conduction with the terminals T1 and T2, respectively. As a result,
a ground potential is supplied to the terminal T1, causing a high
level (1) to appear on the terminal D1. On the other hand, a low
level (0) appears on the terminal D0 corresponding to the terminal
T3 to which the terminal 123 is not connected. The capability
information updating circuitry 111 is configured to detect the
refill body type ID "10" of the refill body 121A from the potential
levels "1" and "0" supplied to the terminals D1 and D0 as described
above.
In the refill body 121C depicted in FIG. 5F, the terminals 123 are
formed at all of the three projected portions. The terminals 123
are connected to each other by a wiring segment L3. When the refill
body 121C is attached to the refill body holder 120, the three
terminals 123 corresponding to the recessed portions H1 to H3 are
brought into conduction with the terminals T1 to T3, respectively.
As a result, a ground potential is supplied to the terminals T1 and
T3, causing a high level (1) to appear on both the terminals D1 and
D0. The capability information updating circuitry 111 is configured
to detect the refill body type ID "11" of the refill body 121A from
the potential levels "1" and "1" supplied to the terminals D1 and
D0 as described above.
FIG. 7 is a diagram illustrating a configuration of the electronic
apparatus 3. As illustrated in the same figure, the sensor 30 is
configured so that a plurality of linear electrodes 30X and a
plurality of linear electrodes 30Y are arranged in a matrix
fashion, and the sensor 30 is capacitively coupled with the stylus
100 by these linear electrodes 30X and 30Y. Also, the sensor
controller 31 is configured to include a transmitting circuit 60, a
selecting circuit 40, a receiving circuit 50, a logic circuit 70,
and a micro controller unit (MCU) 80.
The transmitting circuit 60 is a circuit for sending the beacon
signal BS depicted in FIG. 1. Specifically, the transmitting
circuit 60 is configured to include a first control signal supply
circuit 61, a switch 62, a direct spreading circuit 63, a spreading
code holding circuit 64, and a transmitting guard circuit 65.
The first control signal supply circuit 61 retains a detection
pattern c1 and has a function to continuously and repeatedly output
the detection pattern c1 during a given continuous transmission
period (e.g., 3 milliseconds) and to output an end pattern STP in
accordance with the instruction of a control signal ctrl t1
supplied from the logic circuit 70.
The detection pattern c1 is a symbol pattern used by the stylus 100
to detect the presence of the sensor controller 31 and is known to
the stylus 100 in advance (before the stylus 100 detects the sensor
controller 31). The symbol here means the unit of a value, which is
converted by the direct spreading circuit 63 into a spreading code
sequence. The symbol includes a value converted by the stylus 100,
which has received a symbol, into a bit string (hereinafter
referred to as a "bit string associated symbol") and a value not
converted by the stylus 100, which has received a symbol, into a
bit string (hereinafter referred to as a "bit string nonassociated
symbol"). A symbol pertaining to the former is denoted as the bit
string itself after the conversion such as "0" or "0001." The bit
length of each symbol denoted by a bit string described above is
determined by the specification of the direct spreading circuit 63.
On the other hand, a symbol pertaining to the latter (bit string
nonassociated symbol) is denoted as "P," "M," and so on. As an
example, "P" and "M" are associated with a spreading code sequence
and an inverted code sequence thereof, respectively.
A specific example of the detection pattern c1 will be given below.
For example, the detection pattern c1 can be expressed by a bit
string associated symbol pattern having a bit length 1, and in this
case, the detection pattern c1 can be made up, for example, of
"010101 . . . ." Also, the detection pattern c1 can be expressed by
a bit string associated symbol pattern having a bit length 4, and
in this case, the detection pattern c1 can be made up, for example,
of "0000, 1000, 0000, 1000, . . . ." Further, when the detection
pattern c1 is expressed by a bit string nonassociated symbol
pattern, the detection pattern c1 can be made up, for example, of
"PMPMPM . . . ." In any case, it is preferred that the detection
pattern c1 be a symbol pattern made up of alternately repeating
symbol values different from each other.
The end pattern STP is a symbol pattern for notifying the stylus
100 of the end of the continuous transmission period and is made up
of a symbol pattern that does not appear in the repeated detection
pattern c1. For example, if the detection pattern c1 is made up of
"PMPMPM . . . " as descried above, the end pattern STP can be made
up of a symbol pattern "PP" which is two consecutive occurrences of
"P," which is a bit string nonassociated symbol.
The switch 62 has a function to select one of the first control
signal supply circuit 61 and the MCU 80 based on a control signal
ctrl t2 supplied from the logic circuit 70 and supply the selected
one of the outputs to the direct spreading circuit 63. If the
switch 62 selects the first control signal supply circuit 61, the
direct spreading circuit 63 is supplied with the above detection
pattern c1 or the end pattern STP. On the other hand, if the switch
62 selects the MCU 80, the direct spreading circuit 63 is supplied
with control information c2.
The control information c2 is information that includes a command
indicating details of an instruction issued to the stylus 100 and
is generated by the MCU 80. The control information c2 is
information that forms a command for requesting the capability
information CP from the stylus 100 or a command for setting a
transmission method of the data D. The control information c2
includes a plurality of bits (arbitrary bit string) whose value is
not shared with the stylus 100 in advance.
The spreading code holding circuit 64 has a function to generate a
spreading code having autocorrelation based on a control signal
ctrl t3 supplied from the logic circuit 70. The spreading code
generated by the spreading code holding circuit 64 is supplied to
the direct spreading circuit 63.
The direct spreading circuit 63 generates the beacon signal BS by
converting the signals (detection pattern c1, end pattern STP, and
control information c2, in various embodiments) supplied from the
switch 62 using the spreading code supplied from the spreading code
holding circuit 64.
As a specific example, if, for example, the detection pattern c1,
the end pattern STP, and the control information c2 are made up of
combinations of "0s" and "1s," which are bit string associated
symbols, and if the spreading code supplied from the spreading code
holding circuit 64 is "00010010111," the direct spreading circuit
63 generates, as illustrated in Table 1, the beacon signal BS by
converting the symbol "0" into a spreading code "00010010111" and
the symbol "1" into an inverted code "11101101000" of the spreading
code "00010010111."
TABLE-US-00001 TABLE 1 Spreading Code After Symbol Conversion 0
00010010111 1 11101101000
Also, for example, if the detection pattern c1, the end pattern
STP, and the control information c2 are made up of combinations of
bit string associated symbols "0000" to "1111" and bit string
nonassociated symbols "P" and "M," and if the spreading code
supplied from the spreading code holding circuit 64 is
"00010010111," the direct spreading circuit 63 generates the beacon
signal BS by converting the bit string nonassociated symbol "P"
into a code string made up of "1" followed by "00010010111,"
converting the bit string nonassociated symbol "M" into a code
string made up of "0" followed by the inverted code "11101101000"
of "00010010111," converting each of the bit string associated
symbols "0000" to "0100" into a code string made up of "1" followed
by the code obtained by cyclically shifting "00010010111" by a
given shift amount, and converting each of the bit string
associated symbols "1000" to "1100" into a code string made up of
"0" followed by the code obtained by cyclically shifting the
inverted code "11101101000" of "00010010111" by a given shift
amount, as illustrated in Table 2.
TABLE-US-00002 TABLE 2 Spreading Spreading Code After Code After
Symbol Conversion Symbol Conversion P 100010010111 M 011101101000
0000 111000100101 1000 000111011010 0001 111100010010 1001
000011101101 0011 101110001001 1011 010001110110 0010 110111000100
1010 001000111011 0110 101011100010 1110 010100011101 0111
100101110001 1111 011010001110 0101 110010111000 1101 001101000111
0100 101001011100 1100 010110100011
It should be noted that the beacon signal BS generated by the
direct spreading circuit 63 is a signal that includes the detection
pattern c1, the end pattern STP, and the control information c2 in
this order.
The transmitting guard circuit 65 is a functional circuit that
inserts a guard period, which is a period during which neither
transmission nor reception is conducted to switch between
transmission and reception operations, at the end of a transmission
period of the beacon signal BS (time slot s0 depicted in FIG. 2)
based on a control signal ctrl t4 supplied from the logic circuit
70. In FIG. 2, the blank portion between the end of the beacon
signal BS and the end of the time slot s0 is this guard period.
The selecting circuit 40 is a switch that switches between the
transmission period during which signals are sent from the sensor
30 and the reception period during which signals are received by
the sensor 30 based on control performed by the logic circuit 70.
Describing specifically, the selecting circuit 40 is configured to
include a switch 44x and a switch 44y and a conductor selection
circuit 41x and a conductor selection circuit 41y. The switch 44x
operates, based on a control signal sTRx supplied from the logic
circuit 70, in such a manner as to connect the output end of the
transmitting circuit 60 to the input end of the conductor selection
circuit 41x during the transmission period and connect the output
end of the conductor selection circuit 41x to the input end of the
receiving circuit 50 during the reception period. The switch 44y
operates, based on a control signal sTRy supplied from the logic
circuit 70, in such a manner as to connect the output end of the
transmitting circuit 60 to the input end of the conductor selection
circuit 41y during the transmission period and connect the output
end of the conductor selection circuit 41y to the input end of the
receiving circuit 50 during the reception period. The conductor
selection circuit 41x operates, based on a control signal selX
supplied from the logic circuit 70, in such a manner as to select
one of the plurality of linear electrodes 30X and connect the
selected electrode to the switch 44x. The conductor selection
circuit 41y operates, based on a control signal selY supplied from
the logic circuit 70, in such a manner as to select one of the
plurality of linear electrodes 30Y and connect the selected
electrode to the switch 44y.
The receiving circuit 50 is a circuit that receives the downlink
signal DS sent by the stylus 100 based on a control signal ctrl_r
of the logic circuit 70. Specifically, the receiving circuit 50 is
configured to include an amplifying circuit 51, a detecting circuit
52, and an analog-digital (AD) converter 53.
The amplifying circuit 51 amplifies the downlink signal DS supplied
from the selecting circuit 40 and outputs the amplified signal. The
detecting circuit 52 is a circuit that generates a voltage
proportional to the level of the output signal of the amplifying
circuit 51. The AD converter 53 is a circuit that generates digital
data by sampling the voltage output from the detecting circuit 52
at given time intervals. Digital data output from the AD converter
53 is supplied to the MCU 80.
The MCU 80 is a microprocessor that incorporates a read only memory
(ROM) and a random access memory (RAM) and operates based on a
given program. The logic circuit 70 outputs various control signals
described above based on control performed by the MCU 80. The MCU
80 also takes charge of deriving coordinate data (X,Y) indicating
the position of the stylus 100 and other data based on digital data
supplied from the AD converter 53 and outputting such data to the
system controller 32.
In various embodiments, several drawing and signature verification
algorithms that may run on the system controller 32 are implemented
based on the premise that the data D such as position information
(X,Y) and the pen pressure value TiP supplied from the sensor
controller 31 is obtained at regular intervals on the time axis.
Therefore, if there is a case in which the interactive data DF
cannot be sent (i.e., the data D stutters) in a time slot, where
the interactive data DF should be sent under normal circumstances,
because of occasional transmission of the noninteractive data DINF,
it is likely that the above drawing and signature verification
algorithms may not work properly. For this reason, the time slot
used for transmission of the noninteractive data DINF should be
selected not to interfere with communication of the interactive
data DF at regular intervals. Details of such configuration will be
described later with reference to FIG. 18 and FIG. 19.
Also, there is a possibility that the capability information CP may
change while the stylus 100 is located outside the sensing range SR
of the sensor controller 31 as described earlier. For an inking
process (process for adding information such as color information
and line width to the coordinate data sequence) to be performed in
the system controller 32, which is the host of the sensor
controller 31, it is necessary that the sensor controller 31 has
the capability information CP (e.g., the color Col and the style
Styl that specifies the line width and brush type depicted in FIG.
8 in particular). Similarly, when the MCU 80 derives coordinate
data (X,Y) and so on indicating the position of the stylus 100, it
is necessary that the refill body type ID included in the
capability information CP be known to the sensor controller 31. For
this reason, the capability information CP always becomes known to
the sensor controller 31 anew each time the stylus 100 enters the
sensing range SR. Specifically, the capability information CP is
sent to the sensor controller 31 as a response signal to the beacon
signal BS before the data D (interactive data DF) is sent from the
stylus 100 to the sensor controller 31. Details of such
configuration will be described later with reference to FIG. 16 and
FIG. 17.
FIG. 8 is a diagram illustrating a configuration of the capability
information CP. As depicted in the same figure, the capability
information CP is a set of a plurality of pieces of individual
capability information that are assigned different "Information
Names." Each piece of individual capability information is
contained in the capability information CP with the bit length
indicated in "Transmission Size" when the capability information CP
is sent. Also, some pieces of individual capability information are
essential (Y) and must be contained in the capability information
CP while others are not essential (N) in various embodiments. An
example of the distinction between (Y) and (N) is illustrated to
indicate typical examples of the number of bits required to form
the capability information CP.
Pieces of individual capability information constituting the
capability information CP may specifically include a vendor
identifier VID, a serial number SN, the color Col, the style Styl,
a state of the tail switch 103, a version Ver, the refill body type
ID, and a data format DFmt as depicted in FIG. 8.
The vendor identifier VID is 8-bit information indicating the
vendor of the stylus 100. The serial number SN is 56-bit
information unique to each vendor assigned by each vendor. Adding
the vendor identifier VID to the serial number SN generates a
64-bit unique user identifier UID (unique ID of the stylus
100).
The color Col is information representing 140 colors with 8 bits,
which can be used in cascading style sheets (CSS), and is changed
by operation of the tail switch 103.
The style Styl is 3-bit information that specifies the effect of
the inking process by identifying, for example, whether the pen tip
of the stylus 100 is a brush or a ballpoint pen.
The state of the tail switch 103 is information indicating the
ON/OFF operating state of the tail switch 103. Although it is a
piece of individual capability information among the capability
information CP, this information is reflected in changes made to
other individual capability information. As a result, it is not
necessary to notify the information itself to the sensor controller
31. Therefore, the transmission size of the state of the tail
switch 103 is set as "not applicable (N/A)."
The version Ver is 4-bit information indicating the version of the
communication protocol used by the stylus 100.
The refill body type ID is information indicating the type of the
refill body 121 attached to the stylus 100 and obtained by the
capability information updating circuitry 111 depicted in FIG. 4 as
described with reference to FIG. 5 and FIG. 6. The sensor
controller 31 obtains, by referring to the refill body type ID,
information on the electrode 102 including whether the electrode
102 used by the stylus 100 for signal transmission is located
inside or outside the refill body 121, the number of such
electrodes 102, and the arrangement thereof. It should be noted
that the refill body type ID may be part of the unique ID of the
stylus 100 described above.
The data format DFmt is typically 10- to 44-bit information that
identifies the format of data signals used to send the data D
(e.g., interactive data DF). Details of the data format DFmt will
be described later with reference to FIG. 9.
As described above, the capability information CP includes various
pieces of individual capability information, and of these,
essential pieces of information (Y) that must be contained in the
capability information CP (user identifier UID and data format
DFmt) alone have a large transmission size in excess of 70 bits,
for example. Therefore, when the number of bits that can be sent in
one time slot is 16 bits as described above, it may not be possible
to complete the transmission of the entire capability information
CP within one time slot.
FIG. 9 is a diagram illustrating details of the data format DFmt
depicted in FIG. 8. As illustrated in the same figure, the data
format DFmt is a set of a plurality of individual formats that are
assigned different "Names." Each individual format is contained in
the data format DFmt with the bit length indicated in "Transmission
Size" when the capability information CP is determined and
sent.
Individual formats forming the data format DFmt specifically
include a number of pen pressure reading levels PL, a number of
barrel buttons BBN, a tangential pen pressure flag TaPf, the
orientation code ORC, a custom data flag CDf, an orientation
resolution ORR, a custom pen pressure size CPS, a custom button
size CBS, a custom orientation size COS, and a custom data size
CDS. The meaning of each is given in the "Definition" column in
FIG. 9. These details indicate the types of one or more individual
pieces of interactive data (described later) that can be obtained
by the stylus 100 and their transmission sizes. They are determined
based on the one or more pieces of interactive data that can be
obtained by the stylus 100 in steps S1 and S3 of FIG. 14 which will
be described later. Each will be described in detail below.
The number of pen pressure reading levels PL is 3-bit information
indicating the number of levels (resolution) of the pen pressure
value TiP (refer to FIG. 12), which is one of the interactive data
DF. When the value PL is any one of 0 to 6, this indicates that the
number of levels is 256.times.2.sup.PL. In the case of PL=0, which
is considered identical to PL=-8, the number of pen pressure levels
is 256.times.2.degree.=256. When PL=7, the number of pen pressure
levels is uniquely specified as a custom pen pressure size CPS.
The number of barrel buttons BBN is 2-bit information indicating
the number of barrel buttons 104 (refer to FIG. 3) available with
the stylus 100. When the value BBN is any one of 0 to 2, the number
indicates the number of barrel button(s) 104 included in the stylus
100. If the stylus 100 has operating elements other than the barrel
buttons 104, the number thereof may also be added to the number of
barrel buttons BBN. When BBN=3, is indicates a custom number
(custom button size) CBS of operating elements including the barrel
buttons 104. The number of barrel buttons BBN may be bits that
respectively represent the presence or absence of the first barrel
button to the BBNth barrel button. For example, if there are two
bits, each of these bits may indicate whether the first barrel
button is provided or whether the second barrel button is
provided.
The tangential pen pressure flag TaPf is 1-bit information
indicating whether or not the stylus 100 is capable of obtaining a
tangential pen pressure value (pressure applied in the direction
tangential to the touch surface 3a), and indicates that when the
flag is 0, the stylus 100 is not capable, and that when the flag is
1, the stylus 100 is capable. The same number of levels as the
number of pen pressure reading levels PL is used as the number of
levels when the stylus 100 is capable of obtaining a tangential pen
pressure.
The orientation code ORC is 3-bit information that specifies the
format of the orientation OR (refer to FIG. 12), which is one of
the interactive data DF. Although the orientation code ORC will be
described in detail later with reference to FIG. 10, when ORC=7,
only the data size of the orientation OR is specified as a custom
orientation size COS.
The custom data flag CDf is 1-bit information that indicates
whether or not the stylus 100 acquires custom data CD (vendor's
unique data not standardized as one of the interactive data DF;
refer to FIG. 12) and indicates that when the flag is 0, the custom
data CD does not exist, and that when the flag is 1, the custom
data CD exists.
The orientation resolution ORR is 0- to 2-bit information that
indicates the resolution of the orientation OR (refer to FIG. 12)
and is contained in the data format DFmt when the value of the
orientation code ORC is greater than 0, that is, only when the
stylus 100 is capable of obtaining the orientation OR. 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 pen pressure levels and is contained in the data
format DFmt only when the number of pen pressure reading levels PL
is 7. Because the custom pen pressure size CPS is 8 bits, the
maximum number of pen pressure levels that can be represented by
the custom pen pressure size CPS is 256.
The custom button size CBS is 8-bit information indicating the
number of operating elements including the barrel buttons 104 and
is contained in the data format DFmt only when the number of barrel
buttons BBN is 3. Because the custom button size CBS is 8 bits, the
maximum number of operating elements that can be represented by the
custom button size CBS is 256.
The custom orientation size COS is 8-bit information that indicates
the number of bytes of the orientation OR and is contained in the
data format DFmt only when the orientation code ORC is 7. Because
the custom orientation size COS 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. It should be noted, however,
that the actual maximum size of the orientation OR is 72 bits, as
will be described later with reference to FIG. 12.
The custom data size CDS is 8-bit information that indicates the
number of bytes of the custom data CD and is contained in the data
format DFmt only when the custom data flag CDf is 1. Because the
custom data size CDS 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. As will be described later with reference to FIG. 12,
the actual maximum size of the custom data CD is 256 bits.
As has been described up to this point, in the system 1, each of
the data sizes of the custom values indicated respectively by the
custom pen pressure size CPS, the custom button size CBS, the
custom orientation size COS, and the custom data size CDS is 8 bits
when the size is contained in the data format DFmt and 0 bit when
the size is not contained in the data format DFmt. This is a
configuration that eliminates the need for a bit that indicates the
end position, while at the same time achieving the data format DFmt
having a variable length, and facilitates simplification of the
data format DFmt as a result.
FIG. 10 is a diagram illustrating a definition of the orientation
code ORC (orientation code table OCT) depicted in FIG. 9. In the
same figure, "ORC" at the left end indicates the value of the
orientation code ORC, and "Data Size" at the right end indicates
the data size of the orientation OR with a number of exclusively
used time slots (number of time slots required to send the
orientation OR once).
That the value of the orientation code ORC is "0" indicates that
the stylus 100 does not obtain the orientation OR (or does not have
a function to obtain the orientation OR). As illustrated in FIG. 21
which will be described later, when the orientation OR is contained
in the interactive data DF, it is necessary to have additional time
slots available for sending the interactive data DF. However, when
the value of the orientation code ORC is "0," such additional time
slots are not necessary.
That the value of the orientation code ORC is "1" indicates that
the stylus 100 can obtain the orientation OR indicating a
two-dimensional (2D) inclination with two directional values (X
tilt, Y tilt) and that two time slots are required to send that
orientation OR once. Although, in the example of FIG. 21 which will
be described later, two consecutive time slots are assigned for
transmission of the orientation OR, the two time slots may be
consecutive or not consecutive.
That the value of the orientation code ORC is "2" indicates that
the stylus 100 can obtain the orientation OR indicating a
three-dimensional (3D) value made up of a two-dimensional (2D)
inclination with two directional values (X tilt, Y tilt) and a
twist, which is an amount of rotation around a pen axis, and that
three consecutive or inconsecutive time slots are required to send
that orientation OR once.
That the value of the orientation code ORC is "3" indicates that
the stylus 100 can obtain the orientation OR indicating a
two-dimensional (2D) inclination with two directional values
(altitude, azimuth) and that two time slots are required to send
that orientation OR once.
That the value of the orientation code ORC is "4" indicates that
the stylus 100 can obtain the orientation OR indicating a
three-dimensional (3D) value made up of a two-dimensional (2D)
inclination with two directional values (altitude, azimuth) and a
twist, which is an amount of rotation around the pen axis, and that
three time slots are required to send that orientation OR once.
That the value of the orientation code ORC is "5" indicates that
the stylus 100 can obtain the orientation OR, which is a measured
value of a 6-axis IMU including accelerometer and gyro, and that
three time slots are required to send that orientation OR once.
That the value of the orientation code ORC is "6" indicates that
the stylus 100 can obtain the orientation OR, which is a measured
value of a 9-axis IMU, and that three time slots or more are
required to send that orientation OR once.
That the value of the orientation code ORC is "7" indicates, as
described earlier, that the number of bytes of the orientation OR
is represented by the custom orientation size COS illustrated in
FIG. 9.
As described above, the use of the orientation code ORC makes it
possible to notify, to the sensor controller 31, the presence or
absence of orientation detection functions of the stylus 100 or the
type of the orientation OR that can serve as various information in
accordance with the type of the IMU, using 3-bit short information.
It is also possible to notify, to the sensor controller 31, the
number of time slots required in relation to the use of the
different number of consecutive or inconsecutive time slots in
accordance with the type of the orientation OR.
FIG. 11 depicts diagrams illustrating description examples of the
data format DFmt depicted in FIG. 8. Description example 1
illustrated in FIG. 11(a) and description example 2 illustrated in
FIG. 11(b) depict cases in which the data format DFmt is
represented by 9 bits, with no custom value included (i.e.,
exclusive of the "NO CUSTOM DATA" flag bit 1). In description
example 1, the value of the orientation code ORC is 0 (0b000), that
is, the stylus 100 does not obtain the orientation OR. Therefore,
it is not necessary to have additional time slots for the
orientation OR. In description example 2, on the other hand, the
value of the orientation code ORC is 6 (0b110). Therefore, it is
necessary to have three additional time slots or more for the
orientation OR. Also, description example 3 illustrated in FIG.
11(c) depicts a case in which the number of pen pressure reading
levels PL is customized and represented by the custom pen pressure
size CPS. In this case, the 8-bit custom pen pressure size CPS is
described at the end of the data format DFmt. As a result, the
number of bits of the data format DFmt is 17.
As described above, the data format DFmt included in the capability
information CP according to the present embodiment is represented
by a bit string of 10 bits to 44 bits (see FIG. 9). Because the
data format DFmt is notified from the stylus 100 to the sensor
controller 31, the sensor controller 31 becomes aware of the
elements of the interactive data DF, the size, and the presence or
absence of optional data before it receives the interactive data
DF. Thereafter the interactive data DF is sent from the stylus
100.
FIG. 12 is a diagram illustrating a configuration of the
interactive data DF. As illustrated in the same figure, the
interactive data DF is a set of a plurality of pieces of individual
interactive data that are assigned different "Names." Each piece of
individual interactive data is contained in the interactive data DF
with the bit length indicated in "Transmission Size" when the
interactive data DF is sent. Also, some pieces of individual
interactive data are essential (Y) and must be contained in the
interactive data DF while others are not essential (N). In the
figure, an example of the distinction between (Y) and (N) is
illustrated to count the total number of bits typically required to
form the interactive data DF. The order of transmission of
individual interactive data is also depicted in the same figure,
and the stylus 100 is configured to send the individual interactive
data in the order from the top to the bottom in the figure.
Individual interactive data forming the interactive data DF
specifically includes the pen pressure value TiP, a tangential pen
pressure value TaP, the barrel button state BB, an inversion Inv,
the orientation OR, and the custom data CD.
The pen pressure value TiP is 8- to 256-bit information that
indicates the pen pressure value applied to the distal tip of the
stylus 100 and is detected by the operation state detection
circuitry 105 depicted in FIG. 3. The pen pressure value TiP is
always contained in the interactive data DF (Y). The number of bits
of the pen pressure value TiP is derived from the number of pen
pressure reading levels PL or the custom pen pressure size CPS in
the data format DFmt illustrated in FIG. 9. For example, when the
number of pen pressure reading levels PL is 0 (or -8), the number
of pen pressure levels is 256. As a result, the number of bits of
the pen pressure value TiP is log.sub.2256=8. In a typical example,
the number of bits of the pen pressure value TiP is 8 (256 levels)
to 11 (2048 levels).
The tangential pen pressure value TaP is 0- to 256-bit information
that indicates the tangential pen pressure value and is detected by
the operation state detection circuitry 105 depicted in FIG. 3. The
tangential pen pressure value TaP is optional data and is contained
in the interactive data DF only when the tangential pen pressure
flag TaPf depicted in FIG. 9 is 1 (N). The number of bits of the
tangential pen pressure value TaP when the tangential pen pressure
value TaP is contained in the interactive data DF is the same as
that for the pen pressure value TiP. In a typical example, the
tangential pen pressure value TaP is 0-bit information and is not
contained in the interactive data DF.
The barrel button state BB is 2- to 256-bit information that
indicates the pressed state of the barrel button 104 depicted in
FIG. 3. The barrel button state BB is always contained in the
interactive data DF (Y) in the illustrated embodiment. The number
of bits of the barrel button state BB is a value 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
illustrated in FIG. 9. For example, when the number of barrel
buttons BBN is 1, the number of barrel buttons 104 included in the
stylus 100 is 2. As a result, 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 inversion Inv is 1-bit information and contained in the
interactive data DF (Y).
The orientation OR is 0- to 72-bit data that indicates the
orientation of the stylus 100 and is detected by the operation
state detection circuitry 105 depicted in FIG. 3. The orientation
OR is optional data and contained in the interactive data DF only
when the orientation code ORC depicted in FIG. 9 is not 0 (refer to
FIG. 10) (N). The specific meaning of the orientation OR is
represented by the orientation code ORC as described with reference
to FIG. 10. On the other hand, the size of the orientation OR is
indicated by the data size illustrated in FIG. 10 (including the
case in which the size is specified by the custom orientation size
COS). For example, the orientation OR representing a
two-dimensional or three-dimensional value is sent by using two
time slots or three time slots in accordance with the specification
in the orientation code table OCT depicted in FIG. 10 (refer to
FIG. 21).
The custom data CD is 0- to 256-bit information uniquely specified
by the vendor of the stylus 100. The custom data CD is optional
data and contained in the interactive data DF only when the custom
data flag CDf depicted in FIG. 9 is 1 (N). The number of bits of
the custom data CD is represented by the custom data size CDS
depicted in FIG. 9. For example, when the custom data size CDS is
1, the number of bytes of the custom data CD is 1. As a result, the
number of bits of the custom data CD is 8.
The number of bits of the interactive data DF is, in an example of
a minimum number, 11 bits which is the total of the 8-bit pen
pressure value TiP, the 2-bit barrel button state BB, and the 1-bit
inversion Inv (15 bits when a 4-bit error detection code is added).
Also, in a typical example, the number of bits which is the total
of the 11-bit pen pressure value TiP, the 2-bit barrel button state
BB, and the 1-bit inversion Inv amounts to 14 bits (18 bits when a
4-bit error detection code is added). As described above, it is
possible to send 16 bits worth of data per time slot. Therefore,
the transmission of the interactive data DF not including the
orientation OR nor the custom data CD can be completed in one time
slot (refer to FIG. 18 and FIG. 19). On the other hand, the
transmission of the interactive data DF including the orientation
OR or the custom data CD normally exceeds 16 bits and, therefore,
cannot be completed in one time slot, resulting in use of a
plurality of time slots (refer to FIG. 20 and FIG. 21).
FIG. 13 is a diagram illustrating a configuration of the
noninteractive data DINF. As illustrated in the same figure, the
noninteractive data DINF is a set of a plurality of pieces of
individual noninteractive data that are assigned different "Names."
Each piece of individual noninteractive data is contained in the
noninteractive data DINF with the bit length indicated in
"Transmission Size" when the noninteractive data DINF is sent.
Only the battery level BL is depicted in FIG. 13 as an example of
individual noninteractive data forming the noninteractive data
DINF. The battery level BL is 4-bit information indicating the
remaining capacity level of the battery 101 depicted in FIG. 3. It
is a matter of course that other kinds of individual noninteractive
data may be included in the noninteractive data DINF.
The noninteractive data DINF is sent once every plurality of frames
F (e.g., every several hundred frames) as described above (refer to
FIG. 18 to FIG. 21).
A detailed description will be given of the operation of the stylus
100 and the sensor controller 31 with reference to FIG. 14 to FIG.
21.
First, FIG. 14 is a diagram illustrating a flow of operation of the
stylus 100. The stylus 100 proceeds with the operation, to be
described in section "A1" below, while it is located outside the
sensing range SR after power is turned on.
<A1. Updating Process of the Capability Information CP
(Operation Outside the Sensing Range SR)>
The stylus 100 determines the capability information CP including
the data format DFmt after power is turned on (step S1). At this
time, the stylus 100 obtains the refill body type ID from the
potential level supplied to the terminals D1 and D0 depicted in
FIG. 3. The stylus 100 also determines details of the data format
DFmt based on the one or more pieces of the interactive data DF
that can be obtained by the stylus 100 itself. That is, when, for
example, the stylus 100 is capable of obtaining a tangential pen
pressure as described above, the tangential pen pressure flag TaPf
in the data format DFmt is 1, and when the stylus 100 is not
capable of obtaining a tangential pen pressure, the tangential pen
pressure flag TaPf in the data format DFmt is 0. Thereafter, the
stylus 100 determines whether the user has performed any operation
to change the capability information CP (specifically, replacement
of the refill body 121 or operation of the tail switch 103) (step
S2). Then, when an operation has been performed to change the
capability information CP, the capability information CP determined
in step S1 is changed to correspond with the nature of the
operation (step S3).
After the processes in step S2 and step S3, the stylus 100
determines whether the beacon signal BS has been detected (step
S4). This step S4 is intended to determine whether the pen lowering
operation C1 described with reference to FIG. 1 has been performed,
and the stylus 100 according to the present embodiment sends the
capability information CP including the refill body type ID by
using detection of this beacon signal BS as a trigger (a trigger
that occurs when the pen lowering operation takes place) (step S6
to step S8 described later). When determining in step S4 that the
beacon signal BS has not been detected (i.e., the stylus 100 is
located outside the sensing range SR of the sensor controller 31),
the stylus 100 will return to step S2 to repeat the processes up to
this point. On the other hand, when determining in step S4 that the
beacon signal BS has been detected, the stylus 100 will proceed
with the operation described in section "A2" below.
<A2. Operation after the Stylus 100 Enters the Sensing Range
SR>
After entering the sensing range SR of the sensor controller 31 as
a result of the pen lowering operation C1 of the user (affirmative
determination in step S4), the stylus 100 synchronizes with the
frame F specified by the sensor controller 31 with reference to the
detected beacon signal BS and identifies (determines) the time
slots s0 to s15 thereof (step S5).
<A2-1. Communication of the Capability Information CP>
Next, the stylus 100 performs a process of rendering the capability
information CP known to the sensor controller 31 (sharing the
capability information CP with the sensor controller 31) (step S6
to step S8). Here, in the system 1, the number of bits that can be
sent in one time slot is limited, for example, to 16 bits as
described above. On the other hand, the capability information CP
is information that exceeds 70 bits as described above. Therefore,
all the capability information CP cannot be sent in one time slot.
As a result, it is necessary to send the capability information CP
in batches over a plurality of time slots if all the information is
sent. However, if such transmission in batches is conducted not
just once, but twice and three times, there is a likelihood that
the transmission of the capability information CP may not be
completed by the time the stylus 100 comes in contact with the
touch surface 3a (refer to FIG. 1) and that, as a result, an
unpleasant condition for the user may occur, which is that, despite
the fact that the stylus 100 is in contact with the touch surface
3a, a line is not drawn. In the present embodiment, therefore,
information equivalent to the capability information CP
(specifically, hash value of the capability information CP) rather
than the capability information CP itself is sent to the sensor
controller 31, to which all the capability information CP has
already been sent once. A specific description will be given
below.
The stylus 100 determines first whether the stylus 100 has already
been paired with the sensor controller 31 that sends out the beacon
signal BS (step S6). This determination can be made, for example,
by determining the register value in the stylus 100. It should be
noted that, in various embodiments, the beacon signal BS does not
include any information that identifies the sensor controller 31.
Therefore, the determination here is about whether the stylus 100
has been paired with (any) one of the sensor controllers 31 and is
not about whether the stylus 100 has been paired with the specific
sensor controller 31.
When determining that the stylus 100 has yet to be paired with the
sensor controller 31 as a result of the determination in step S6
(negative determination in step S6), the stylus 100 will repeatedly
send the capability information CP (information exceeding 70 bits
depicted in FIG. 8; including the data format DFmt and the user
identifier UID made up of the serial number SN and the vendor
identifier VID) in a plurality of time slots (step S7).
FIG. 16 is a diagram illustrating an example of allocation of time
slots to the capability information CP. The stylus 100 in the
example depicted in the same figure divides the capability
information CP into a plurality of pieces of partial capability
information CP1, CP2 and so on and sends them in the time slots s1
of frames Fn, Fn+1 and so on, respectively. Thus, the transmission
of the capability information CP requires a plurality of time slots
worth of time (a plurality of frames worth of time in this
example). This is a process that is required at least once at
first. It should be noted that the capability information CP needs
to be sent using the time slot s1 as also depicted in FIG. 16. The
reason for this is to ensure transmission of the capability
information CP or shortened information (hash value CP_Hash) at a
time when a response signal to the beacon signal BS including a
command should be sent. This way, the sensor controller 31 can
recognize the presence or absence of a response signal (the
presence or absence of the stylus 100) to the beacon signal BS by
monitoring the signal received in the time slot s1 following the
transmission of the beacon signal BS, and time slots s2 to s15 that
follow the time slot s1 can be reserved for reception of the data
D.
On the other hand, when determining that the stylus 100 has already
been paired with the sensor controller 31 as a result of the
determination in step S6 (affirmative determination in step S6),
the stylus 100 will send minimum information for identifying the
capability information CP, which is a piece of information of a
size that can be sent in one time slot (shortened information)
using one time slot s1 rather than sending all the capability
information CP including the data format DFmt in step S7 (step S8).
It is preferred that this information should, for example, be
information that permits identification, with a given probability,
of whether or not the associated capability information CP is
authentic, such as the hash value CP_Hash of 20 bits or less (e.g.,
16 bits) of the capability information CP. In the description given
below, it is assumed that the hash value CP_Hash is used as
shortened information. When sending the hash value CP_Hash in step
S8, the stylus 100 will perform a process of deriving the hash
value CP_Hash from the capability information CP prior to the
transmission.
FIG. 17 is a diagram illustrating an example of allocation of time
slot(s) to the hash value CP_Hash of the capability information CP.
As illustrated in the same figure, the transmission of the hash
value CP_Hash is completed only in the time slot s1 of the frame
Fn. As a result, the interactive data DF can be sent in the time
slot s1 from the next frame Fn+1.
Thus, in the system 1 according to the present embodiment, after
the capability information CP becomes known to the sensor
controller 31 once (after the stylus 100 is paired with the sensor
controller 31), each time the stylus 100 enters the sensing range
SR, the stylus 100 can notify the sensor controller 31 of the
capability information CP (including the data format DFmt) by
sending shortened information (specifically, the hash value
CP_Hash) in place of sending the capability information CP at has
already been sent once. It is possible for the sensor controller 31
to identify the capability information CP of the approaching stylus
100 with a probability that does not substantially cause any
practical problem by simply receiving shortened information in one
time slot.
It should be noted that although, in the present embodiment, a
description has been given assuming that the sensor controller 31
unconditionally accepts the capability information CP sent by the
stylus 100, the sensor controller 31 may determine that part or
whole of information specified in the capability information CP is
not accepted in accordance with its own resources and notify
details of the determination to the stylus 100. In this case, the
stylus 100 does not send information that is not accepted by the
sensor controller 31. Details in this regard will be described
later with reference to FIG. 22.
<A2-2. Communication of the Data D>
After the transmission of the capability information CP or the hash
value CP_Hash is completed, the stylus 100 sends a data signal
including the data D (step S10 to step S15). Specifically, the
stylus 100 detects the beacon signal BS (step S10).
After detecting the beacon signal BS in step S10 (affirmative
determination in step S10), the stylus 100 resets a consecutive
non-detection counter to 0 (step S11). Then, the stylus 100 sends a
data signal including the interactive data DF in the format
(typically 11 to 14 bits) specified in the data format DFmt of the
capability information CP at least once per frame F (step S12).
It should be noted that although, in the present embodiment, a
description will be given assuming that the stylus 100 decides on
the time slot to be used for transmission of the data D, the sensor
controller 31 may decide on the time slot to be used for
transmission of the data D and notify the details of the decision
to the stylus 100. Details in this regard will be described later
with reference to FIG. 22.
FIG. 18 is a diagram illustrating an example of allocation of time
slots to the interactive data DF and the noninteractive data DINF.
In the example depicted in the same figure, the 14-bit interactive
data DF, which is a piece of interactive data having a typical
size, is sent using four time slots s2, s6, s10, and s14 per frame
F (data signals DF1, DF2, DF3, and DF4). In these four time slots
s2, s6, s10, and s14, the interactive data DF is sent one piece at
a time. According to the allocation of time slots according to this
example, as illustrated in FIG. 18, not only within each individual
frame F but also across multiple frames F, the interval between the
time slots used for transmission of the interactive data DF is
maintained (the interval between the data signal DF4 (time slot
s14) sent last in the frame Fn+1 and a data signal DF5 (time slot
s2) sent first in a next frame Fn+2 is three time slots which is
the same as that within the individual frame F). This makes it
possible to send the interactive data DF periodically at the fixed
period T (=four time slots). Such a feature of the system 1 is
preferred for an application of the system controller 32 that
requires the acquisition of the interactive data DF at regular
intervals.
It should be noted that the value having the period T of four time
slots depicted in FIG. 18 is the shortest under the condition in
which the time slots s0 and s1 (and a time slot s15 which will be
described later) are reserved (i.e., under the condition in which
the time slot s0 is reserved for transmission of the beacon signal
BS, the time slot s1 is reserved for transmission of a response
signal to the beacon signal BS, and the time slot s15 is reserved
for transmission of the noninteractive data DINF). Setting the
period T to be the shortest value allows for improvement of the
number of transmissions of the interactive data DF. It is also
possible for the sensor controller 31 to obtain more detailed
coordinate data of the stylus 100.
FIG. 19 is a diagram illustrating another example of allocation of
time slots to the interactive data DF and the noninteractive data
DINF. In the example depicted in the same figure, the 14-bit
interactive data DF, which is a piece of interactive data having a
typical size, is sent using four time slots s3, s7, s11, and s15
per frame F (data signals DF1, DF2, DF3, and DF4). Such allocation
of time slots also allows for periodic transmission of the
interactive data DF at the shortest period T (=four time slots) as
in the example depicted in FIG. 18.
Referring back to FIG. 14, the stylus 100 sends the noninteractive
data DINF at a rate of once every plurality of frames F (once every
several hundred frames F) (step S13). It should be noted that, as
described above, the stylus 100 may send the noninteractive data
DINF in response to polling (request to send) from the sensor
controller 31. In this case, polling from the sensor controller 31
is contained in the beacon signal BS as a command.
Referring again to FIG. 18, the noninteractive data DINF is sent in
the time slot s15 in this example. In the example depicted in FIG.
18, the time slot s15 is usually not used. However, such a time
slot s15 is used to send the noninteractive data DINF once every
plurality of frames F, making it possible to send the
noninteractive data DINF without affecting the transmission period
T of the interactive data DF.
In the example depicted in FIG. 19, on the other hand, the
noninteractive data DINF is sent in the time slot s1. The time slot
s1 is originally used to send a response signal (capability
information CP and hash value CP_Hash) to the beacon signal BS as
described above. However, the probability that the time slot s1
will be actually used to send a response signal is lower than the
probability for other time slots. The occurrence of collision
between a response signal and the noninteractive data DINF as a
result of the transmission of the noninteractive data DINF in the
time slot s1 is limited to the case in which the stylus 100
communicates the noninteractive data DINF once every plurality of
frames F at the same time as another (new) stylus 100 happens to
enter the sensing range SR and to send a response signal to the
beacon signal BS. Therefore, there is practically no problem even
if the stylus 100 sends the noninteractive data DINF in the time
slot s1, and the time slots that are available in limited quantity
can be efficiently used. In addition, the time slots s3, s7, s11,
and s15 can be used for transmission of the other data D
(interactive data DF) by not transmitting the noninteractive data
DINF in the time slot s15 and releasing the time slot s15. In this
case, the time slots s2, s6, s10, and s14 and the time slots s3,
s7, s11, and s15 can be assigned to different styluses 100. This
allows the plurality of styluses 100 to send the interactive data
DF at the transmission periods T (i.e., through time division
multiplexing).
FIG. 20 is a diagram illustrating an example of allocation of time
slots to the interactive data DF and the noninteractive data DINF
when the interactive data DF includes the custom data CD. FIG. 20
depicts a case in which the interactive data DF includes the 11-bit
pen pressure value TiP, the 2-bit barrel button state BB, the 1-bit
inversion Inv, and the 8-bit custom data CD. It should be noted
that the values of the custom data flag CDf and the custom data
size CDS depicted in FIG. 9 are both 1. The size of the interactive
data DF in this case is 22 bits, which is a size larger than 16
bits that can be sent in one time slot. Therefore, the stylus 100
sends the interactive data DF using two consecutive time slots as
illustrated in FIG. 20. Using such allocation of time slots permits
transmission at the fixed period T even if the size of the
interactive data DF is larger than the size that can be sent in one
time slot.
FIG. 21 is a diagram illustrating an example of allocation of time
slots and frequencies to the interactive data DF and the
noninteractive data DINF when the interactive data DF includes the
orientation OR. In the example depicted in the same figure, two
frequencies f0 and f1 are used, and three time slots are used at
the frequency f0, and four time slots are used at the frequency f1
to send the interactive data DF. Then, the orientation OR is sent
using two time slots at the frequency f0 and three time slots at
the frequency f1 or a total of five time slots. Such allocation of
time slots and frequencies permits transmission at the fixed period
T even if the size of the interactive data DF is large enough to be
sent using seven time slots. It should be noted, however, that the
interval T in this case is longer than the interval T in FIG. 18 to
FIG. 20 as can be understood by comparing FIG. 21 against FIG. 18
to FIG. 20. It should be noted that if such frequency multiplexing
cannot be used, the data may be sent using a total of seven time
slots that are spread across the two or more frames F.
<A2-3. Operation of the Stylus 100 after Leaving the Sensing
Range SR>
Referring back to FIG. 14, if the beacon signal BS is no longer
detected in step S10 (negative determination in step S10), the
stylus 100 determines whether or not the consecutive non-detection
counter value is larger than a given threshold Th (step S14). When
determining that the consecutive non-detection counter value is not
larger, the stylus 100 will increment the consecutive non-detection
counter value by 1 (step S15) and returns to step S10. On the other
hand, when the stylus 100 determines that the consecutive
non-detection counter value is larger in step S14, the pen raising
operations C4 and C5 illustrated in FIG. 1 are performed. This
means that the stylus 100 has moved out of the sensing range SR,
and the stylus 100 is restored to step S2, that is, the state in
which the stylus 100 may accept replacement of the refill body 121
or operation of the tail switch 103 by the user.
Next, FIG. 15 is a diagram illustrating a flow of operation of the
sensor controller 31. The sensor controller 31 initiates the
operation described in section "B 1" below after power is turned
on.
<B1. Reception of the Capability Information CP>
The sensor controller 31 repeatedly send the beacon signal BS in
the time slot s0 (step S20) and each time goes on standby to wait
for a response signal Ack from the stylus 100 in the time slot s1
(step S21).
When receiving the downlink signal DS which is the response signal
Ack (i.e., downlink signal DS received in the time slot s1)
(affirmative determination in step S21) in step S21, the sensor
controller 31 will treat the data included in the received response
signal Ack as the hash value CP_Hash of the capability information
CP (step S22). Then, the sensor controller 31 determines whether or
not the hash value CP_Hash matches any one of the hash values
CP_Hash stored in the past in step S33 which will be described
later (step S23). When determining that there is the matching hash
value CP_Hash, the sensor controller 31 will determine details of
the capability information CP (including the data format DFmt) of
the currently approaching stylus 100 using the capability
information CP stored in association with that hash value CP_Hash
(step S30).
On the other hand, when determining in step S23 that there is no
matching hash value CP_Hash, the sensor controller 31 will
accumulate the data included in the response signal Ack as part of
the capability information CP (step S24). Then, the sensor
controller 31 determines whether or not all the capability
information CP has been accumulated as a result of the repetition
of the processes up to this point (step S25). When determining that
all the capability information CP has been accumulated, the sensor
controller 31 will determine details of the capability information
CP (including the data format DFmt) of the currently approaching
stylus 100 (step S30). On the other hand, when determining that all
the capability information CP has yet to be accumulated, the sensor
controller 31 will return to step S20 to repeat the transmission of
the beacon signal BS.
The sensor controller 31 that determined the details of the
capability information CP in step S30 derives the hash value
thereof and stores the hash value in a storage area in association
with the capability information CP as associated data (step S33).
The storage area of the associated data created as described above
(associated data storage area) can be implemented as a so-called
hash table that retains values in relation to hash values as
keys.
Next, the sensor controller 31 obtains the refill body type ID
included in the capability information CP. Then, the sensor
controller 31 sets a position deriving parameter corresponding to
the obtained refill body type ID (step S34). The position deriving
parameter is a parameter used by the sensor controller 31 to derive
the position of the stylus 100 from the data signal received by the
sensor 30 and varies depending on the shape of the electrode 102.
For example, the electrode 102 of the refill body 121A depicted in
FIG. 5A and the electrode 102 of the refill body 121B depicted in
FIG. 5B differ in the manner in which the data signal spreads on
the touch surface 3a. Therefore, the range of data signals, which
the sensor controller 31 should cover when deriving the position,
varies depending on the type of electrode 102. On the other hand,
as for the refill body 121C depicted in FIG. 5C, only the data
signal sent out from the electrode 102-1 is used to derive the
position, and the data signal sent out from the electrode 102-2 is
used to detect the inclination of the stylus 100. Therefore, the
sensor controller 31 needs to distinguish between the data signals
sent from the electrodes 102-1 and 102-2, respectively, based for
example on the reception intensities of the respective data
signals. The position deriving parameter specifies a different
position deriving method depending on the shape of the electrode
102, and the sensor controller 31 is configured to derive the
position of the stylus 100 by processing the data signal received
from the stylus 100 based on the position deriving parameter as
illustrated in step S42, which will be described later.
<B2. Reception of the Data D>
Next, the sensor controller 31 sends the beacon signal BS again in
the time slot s0 (step S40). Then, the sensor controller 31
determines whether or not some kind of data signal has been
detected in time slots other than the time slots s0 and s1 (step
S41), and when determining that a data signal has been detected,
the sensor controller 31 will derive the position of the stylus 100
based on the position deriving parameter, which has been set in
step S34 (step S42), and reset a consecutive non-reception counter
to 0 (step S43). Thereafter, the sensor controller 31 receives the
interactive data DF by extracting the interactive data DF from the
detected data signal (step S44). The sensor controller 31 also
receives the noninteractive data DINF once every plurality of
frames F by extracting the noninteractive data DINF from the
detected data signal (step S45).
On the other hand, when determining in step S41 that the data
signal has yet to be detected, the sensor controller 31 will
determine whether or not the consecutive non-reception counter
value is larger than the given threshold Th (step S46). When
determining that the consecutive non-reception counter value is not
larger, the sensor controller 31 will increment the consecutive
non-reception counter value by 1 (step S47) and return to step S40.
Meanwhile, when determining in step S46 that the consecutive
non-reception counter value is larger, this means that the stylus
100 has moved out of the sensing range SR. Therefore, the sensor
controller 31 returns to step 20 to continue with the
processes.
As described up to this point, according to the method using the
stylus 100 and the sensor controller 31, the stylus 100, and the
sensor controller 31 according to the present embodiment, the
stylus 100 sends the capability information CP including the refill
body type ID in response to a given trigger that occurs when the
pen lowering operation C1 takes place, i.e., in response to
reception of the beacon signal BS, thus making it possible to send
the refill body type ID from the stylus 100 to the sensor
controller 31 only when the pen lowering operation C1 is performed.
Therefore, it is possible to efficiently send the refill body type
ID from the stylus 100 to the sensor controller 31.
Also, once the capability information CP is shared with the sensor
controller 31, it is possible to notify the sensor controller 31 of
the capability information CP by sending only the hash value
CP_Hash rather than the entire capability information CP. As a
result, even under a condition in which the stylus 100 frequently
enters and leaves the sensing range SR in a repeated manner, the
time required for the sensor controller 31 to identify the
capability information CP can be shortened.
When the hash value CP_Hash is sent in step S8 in FIG. 14, the
stylus 100 performs a process of deriving the hash value CP_Hash
from the capability information CP prior to the transmission, and
this derivation may be performed based on the entire capability
information CP or based on only part thereof. A detailed
description will be given below of the process of deriving the hash
value CP_Hash based on only part of the capability information
CP.
First, the capability information CP depicted in FIG. 8 includes
first capability information that is not changed by user operation
or setting from the sensor controller 31 and second capability
information that can be changed by user operation or setting from
the sensor controller 31. First capability information is, for
example, information indicating types of sensors such as pen
pressure sensor and angular sensor of the stylus 100; information
indicating whether or not the stylus 100 has the barrel button 104
(information indicated by the number of barrel buttons BBN depicted
in FIG. 9; BBN=0 indicates that the stylus 100 has no barrel button
104, and BBN 0 indicates that the stylus 100 has the barrel
button(s) 104); 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 depicted in FIG.
10; for example, ORC=1 indicates that the stylus 100 has no twist
detection sensor, and ORC=2 indicates that the stylus 100 has a
twist detection sensor); and information indicating whether or not
the stylus 100 has any other sensor (information indicated by the
custom data flag CDf depicted in FIG. 9). Information indicating
whether the stylus 100 is capable of specifying the color of a line
drawn by the stylus 100 (information indicated by the color Col
depicted in FIG. 8) may also be included in first capability
information. Although not depicted in FIG. 8 or other figures, the
capability information CP can include information identifying the
function assigned to each of the one or more barrel buttons 104.
Such information may be a piece of first capability information.
This information includes information for distinguishing between
primary and secondary barrel buttons 104 when there are two barrel
buttons 104, or information indicating that the style Styl turns
into an eraser while the barrel button 104 is held pressed, for
example.
On the other hand, second capability information includes the
refill body type ID and other information identifying, for example,
the color and width of a line drawn by the stylus 100 or the brush
type such as a pencil type and a ballpoint pen type. These are
indicated by the color Col and the style Styl depicted in FIG. 8.
Because the user identifier (UID) is information that may be used
to identify inking information such as color and width, the user
identifier (UID) may also be used as the second capability
information.
When deriving the hash value CP_Hash, the stylus 100 may derive the
hash value CP_Hash based only on the portion of the capability
information CP relating to second capability information. This
makes it possible to reduce the possibility that the same hash
value CP_Hash may be derived for different pieces of the capability
information CP (possibility that the hash values may collide). For
example, it is possible to downsize information that serves as a
source for deriving the hash value, as compared to when the hash
value CP_Hash is derived based on the entire capability information
CP, by deriving the hash value CP_Hash based only on the portion
relating to the second capability information. The smaller the size
of information that serves as a source for deriving the hash value,
the smaller the possibility of collision between hash values.
Therefore, it is possible to reduce the possibility of collision
between hash values by taking the above measure.
On the other hand, when determining in step S23 depicted in FIG. 15
that no hash value matching the received hash value CP_Hash is
stored in the associated data storage area, the sensor controller
31 may send a request to send the entire capability information CP
to the stylus 100. It should be noted that this transmission should
preferably be conducted by including the above request as a command
in the beacon signal BS. When this request is received, it is only
necessary for the stylus 100 to determine that the stylus 100 has
yet to be paired in step S6 depicted in FIG. 14. Doing so makes it
possible to send the entire capability information CP from the
stylus 100 to the sensor controller 31.
Alternatively, the sensor controller 31 may decide not to accept
part or whole of the capability information CP sent by the stylus
100 in accordance with its own resources, rather than
unconditionally accepting the capability information CP. Still
alternatively, the sensor controller 31 may determine the time
slots to use for transmission of the data D on its own. A
description will be given below in this regard with reference to
FIG. 22.
FIG. 22 is a diagram illustrating a modification example of the
flow of operation of the sensor controller 31 depicted in FIG. 15.
FIG. 22 depicts only an extracted part of the flow depicted in FIG.
15.
As illustrated in FIG. 22, when receiving all the capability
information CP in step S25 or obtaining the capability information
CP from the associated data storage area in step S23, the sensor
controller 31 according to this modification example will
temporarily determine the data format DFmt based on the received or
obtained capability information CP and on information on available
resources (step S26). Information on available resources refers,
for example, to time slot vacancies. Then, the sensor controller 31
sends the command that specifies the temporarily determined data
format DFmt to the stylus 100 as part of the beacon signal BS (step
S27).
Thereafter, the sensor controller 31 attempts to detect the
response signal Ack sent by the stylus 100 (step S28), and when the
response signal Ack is not detected, the sensor controller 31 will
bring its process back to step S20 depicted in FIG. 15 by assuming
that the stylus 100 has moved out of the sensing range SR or did
not accept the temporarily determined data format DFmt. On the
other hand, when the response signal Ack is received in step S28,
the sensor controller 31 will determine the details of the
capability information CP (including the data format DFmt) based on
the temporarily determined details (step S30).
After step S30, the sensor controller 31 determines offset
information and interval information based on the determined data
format DFmt (step S31). Offset information is information that
indicates, of the plurality of time slots forming the frame F,
those used to send at least part of the interactive data DF. More
specifically, the offset information indicates the distance in time
between the first time slot that sends the interactive data DF out
of the plurality of time slots forming the frame F and the
beginning of the frame F. In the examples illustrated in FIG. 18,
FIG. 20, and FIG. 21, for example, the offset information is 2, and
in the example illustrated in FIG. 19, the offset information is 3.
On the other hand, interval information is information that
indicates the transmission period of the interactive data DF. In
the examples illustrated in FIG. 18 to FIG. 20, for example, the
interval information is 4, and in the example illustrated in FIG.
21, the interval information is 8. In short, the offset information
and the interval information specify when a certain piece of
individual interactive data of the one or more pieces of individual
interactive data is sent. The offset and interval information,
together with the data format DFmt, defines the format that
specifies the configuration of the data signal including the data
D. Unlike the offset information, the interval information can be
represented by how often the transmission is performed, and can be
indicated by an identifier indicating the transmission period or
how frequently the transmission is performed.
After determining offset information and interval information in
step S31, the sensor controller 31 sends a command that indicates
the determined offset information and interval information to the
stylus 100 as part of the beacon signal BS (step S32). From this
step onward, the stylus 100 sends the interactive data DF using the
time slot indicated by the specified offset information and
interval information.
As described above, the sensor controller 31 may decide on the
capability information CP of the stylus 100 as well as the time
slot to be used by the stylus 100 to send the data D. This way, the
sensor controller 31 may take the initiative in communicating with
the stylus 100.
A description will be given next of the system 1 according to a
second embodiment of the present invention. The system 1 according
to the present embodiment differs from the system 1 according to
the first embodiment in that two hash values are used as hash
values of the capability information CP. In the description given
below, the same components as those in the first embodiment are
denoted by the same reference symbols, and a description will be
given with focus on differences from the first embodiment.
FIG. 23 is a diagram illustrating a flow of operation of the stylus
100 and the sensor controller 31 according to the present
embodiment. The same figure illustrates a flow of operation
relating to the process in which the sensor controller 31 receives
the capability information CP from the stylus 100. A description
will be given below of the operation of the stylus 100 and the
sensor controller 31 according to the present embodiment with
reference to FIG. 23.
First, when power is turned on or a change that affects the hash
value is made to the capability information CP (corresponds to
affirmative determination in step S2 of FIG. 14), the stylus 100
will derive two hash values #1 and #2 (first and second hash
values) based on its own capability information CP (steps S50 and
S51). The two hash values #1 and #2 may be derived using two
different kinds of hash functions (algorithms) such as 13-bit CRC
and 16-bit FNV. Alternatively, higher and lower order bit strings
of a hash value derived by a single hash function may be used
respectively as the hash values #1 and #2. Another possible process
is to derive the hash value #1 based on the first capability
information descried above and derive the hash value #2 based on
the second capability information.
After entering the sensing range SR of the sensor controller 31
(refer to FIG. 1) and detecting the beacon signal BS sent by the
sensor controller 31 (steps S60 and S52), the stylus 100 sends only
the hash value #1 first (step S53). This transmission is conducted
by including the hash value #1 in a response signal to the beacon
signal BS.
When detecting the response signal to the beacon signal BS (step
S61), the sensor controller 31 will extract the hash value #1 (or
the information deemed to be the has value #1) therefrom and
determine whether or not the hash value #1 is stored in the
associated data storage area (step S62). When not detecting the
response signal in step S61, the sensor controller 31 will return
to step S60 to send the beacon signal BS again in the next
frame.
When determining in step S62 that the hash value #1 is not stored
in the associated data storage area, the sensor controller 31 will
read the capability information CP from the stylus 100 (step S63).
This reading is conducted specifically by including a command Get
(CP) indicating a request for the capability information CP in the
beacon signal BS to be sent in the next frame. When the stylus 100
sends the capability information CP in response thereto (step S54),
the sensor controller 31 derives the hash value #2 based on the
received capability information CP and stores the hash value #2 in
the associated data storage area in association with the received
hash value #1 and capability information CP (step S64). It should
be noted that the sensor controller 31 may derive the hash value #1
anew in this step S64.
On the other hand, when determining in step S62 that the hash value
#1 is stored in the associated data storage area, the sensor
controller 31 will read the hash value #2, stored in association
with the received hash value #1, and send the hash value #2 to the
stylus 100 (step S65). This transmission is also conducted by
including the read hash value #2 in the beacon signal BS to be sent
in the next frame. When receiving the hash value #2 sent as
described above, the stylus 100 will determine whether or not the
hash value #2 matches the hash value #2 derived in step S51 (step
S56). When the two values match, the stylus 100 will send the
response signal Ack, and when the two values do not match, the
stylus 100 will send a fail signal Fail. These transmissions are
conducted by including the response signal Ack or the fail signal
Fail in a response signal to the beacon signal BS. Then, when
sending the fail signal Fail, the stylus 100 will return to step
S52 to continue with the processes, and when sending the response
signal Ack, the stylus 100 will terminate the detection process of
the sensor controller 31 to proceed with the data signal
transmission process described above (processes from step S10
onward depicted in FIG. 14). The sensor controller 31 determines
whether the response signal Ack has been detected in response to
the hash value #2 sent in step S65 (step S66). When detecting the
response signal Ack, the sensor controller 31 will terminate the
detection process of the stylus 100 to proceed with the data signal
reception process (processes from step S40 onward depicted in FIG.
15), and when not detecting the response signal Ack (or when
detecting the fail signal Fail), the sensor controller 31 will
return to step S63 and proceed with the capability information CP
reading process again.
As described above, the system 1 according to the present
embodiment allows the sensor controller 31 to reconfirm a match
between the capability information CP stored in its own associated
data storage area and the capability information CP available with
the stylus 100 using the hash value #2 stored in association with
the received hash value #1. This makes it possible to engage in
communication using the correct capability information CP in a more
reliable manner.
Although preferred embodiments of the present invention have been
described above, the present invention is in no way limited by
these embodiments, and it is a matter of course that the present
invention can be carried out in various forms.
For example, although, in each of the above embodiments, the
derivation of coordinate data (X,Y) indicating the position of the
stylus 100 and the transmission of the interactive data DF and so
on are conducted by using the same downlink signal DS, they may be
accomplished by the different downlink signals DS as illustrated in
FIG. 24. FIG. 24 depicts an example in which a position signal
dedicated for deriving coordinate data (X,Y) and the interactive
data DF are sent in two different downlink signals DS,
respectively, in a time-divided manner. The sensor controller 31
derives coordinate data (X,Y) indicating the position of the stylus
100 based only on the first downlink signal DS, and thereafter
suitably obtains the interactive data DF sent by the stylus
100.
In each of the above embodiments, an example was described in which
the stylus 100 and the sensor controller 31 communicated
bidirectionally. In a further aspect, the present invention is
suitably applicable in a unidirectional communication embodiment in
which the stylus 100 unidirectionally communicates with the sensor
controller 31. A detailed description will be given below.
FIG. 25 is a diagram illustrating a flow of operation of the stylus
100 according to a modification example of the present invention.
FIG. 26 is a diagram illustrating a flow of operation of the sensor
controller 31 according to the present modification example.
A description will be given first of the operation of the stylus
100 with reference to FIG. 25. First, as for steps S1 to S3, the
operation is the same as that described with reference to FIG. 14.
After step S3, the stylus 100 according to the present modification
example determines whether or not the pen pressure value detected
by the operation state detection circuitry 105 has reached a value
(a defined value) larger than 0 (step S70), instead of detecting
the beacon signal BS (step S4) as depicted in FIG. 14. The beacon
signal BS is not detected because the sensor controller 31 in the
present modification example does not send the beacon signal BS.
The pen pressure value larger than 0 normally means that the pen
moving operation C3 (refer to FIG. 1) is in progress following the
pen touch operation C2 (refer to FIG. 1). Therefore, the detection
of the pen touch operation C2 is substantially performed in step
S70.
The stylus 100 according to the present modification example sends
information on the capability information CP including the refill
body type ID in response to an affirmative determination in step
S70 (i.e., detection of the pen touch operation C2) used as a
trigger (a trigger that occurs when the pen lowering operation
takes place) (step S71). Information sent here may be the
capability information CP itself or information indicating that no
change has been made to the capability information CP (non-change
information). Also, if it is possible to store the capability
information CP in the sensor controller 31 in advance, the
capability information CP may be in the form of information that
allows for the sensor controller 31 to identify the capability
information CP, such as the hash value CP_Hash or the user
identifier UID described above. If the stylus 100 is unable to send
all the capability information CP in one shot because of its large
size, the stylus 100 may send the capability information CP a
plurality of times in batches as in step S7 depicted in FIG.
14.
The processes after the transmission of information on the
capability information CP in step S71 are basically the same as
those from step S10 onward described in FIG. 14. It should be
noted, however, that, in the present modification example, it is
determined whether or not the pen pressure value is 0 or not, in
place of the detection of the beacon signal BS in step S10 (step
S72). The reason why the beacon signal BS is not detected is the
same as in step S70 (i.e., the beacon signal BS is not sent by the
sensor controller 31). The pen pressure value equal to 0 normally
means that the pen raising operations C4 and C5 (refer to FIG. 1)
have been performed. Therefore, the detection of the pen raising
operations C4 and C5 is substantially performed in step S72.
A description will be given next of the operation of the sensor
controller 31 according to the present modification example with
reference to FIG. 26. The sensor controller 31 according to the
present modification example detects a signal from the stylus 100
(step S80). Then, the sensor controller 31 determines first whether
or not the capability information CP (or part thereof) is included
in that signal (step S81). When the capability information CP (or
part thereof) is included, the sensor controller 31 accumulates the
data included in the signal as the capability information CP (or
part thereof) (step S83). Then, the sensor controller 31 determines
whether or not all the capability information CP has been
accumulated as a result of the repetition of the processes up to
this point (step S84). When determining that all the capability
information CP has been accumulated, the sensor controller 31 will
determine details of the capability information CP (including the
data format DFmt) of the currently approaching stylus 100 based on
the capability information CP accumulated in step S83 (step S85).
On the other hand, when determining that all the capability
information CP has yet to be accumulated, the sensor controller 31
will return to step S80 to repeat the detection of a signal.
On the other hand, when determining in step S81 that the capability
information CP (part thereof) is not included, the sensor
controller 31 will determine details of the capability information
CP (including the data format DFmt) of the currently approaching
stylus 100 based on a previous accumulation result (step S86).
Describing specifically, when non-change information described
above (i.e., information indicating that no change has been made to
the capability information CP) is included in the signal from the
stylus 100, the sensor controller 31 determines details of the
capability information CP of the currently approaching stylus 100
based on the latest capability information CP that was received and
accumulated previously. On the other hand, when configured to be
able to accumulate the capability information CP in association
with the hash values CP_Hash, the sensor controller 31 reads the
capability information CP associated with the hash value CP_Hash
included in the signal from the stylus 100 and determines details
of the capability information CP of the currently approaching
stylus 100 based on the read capability information CP. Further,
when configured to be able to accumulate the capability information
CP in association with the user identifiers UID, the sensor
controller 31 reads the capability information CP associated with
the user identifier UID included in the signal from the stylus 100
and determines details of the capability information CP of the
currently approaching stylus 100 based on the read capability
information CP.
The processes after the determination of details of the capability
information CP in step S85 or step S86 are basically the same as
those from step S34 onward described in FIG. 15. It should be
noted, however, that because the sensor controller 31 according to
the present modification example does not send any signals, the
beacon signal BS is not sent in step S40. Also, the process in step
S33 depicted in FIG. 15, that is, the process of deriving the hash
value of the capability information CP and storing the hash value
in the storage area in association with the capability information
CP as associated data may need not be performed. The sensor
controller 31 according to the present modification example may
store a hash value and the capability information CP in association
pursuant to an explicit user instruction, but need not do so during
lowering of the pen (unless there is a user instruction). Even if a
hash value is calculated based on the capability information CP,
which is received during lowering of the pen, and is stored in
association with the capability information CP, the stylus 100 has
no way of knowing the condition of the sensor controller 31
(because there is no communication from the sensor controller 31).
Therefore, the stylus 100 cannot determine whether the capability
information CP has been correctly conveyed to the sensor controller
31 by simply sending only the hash value. In order to ensure that
the capability information CP is conveyed correctly, therefore, the
capability information CP itself should be sent. This is true also
when the user identifier UID and the capability information CP are
stored in association. When the sensor controller 31 according to
the present modification example is to store the hash value or the
user identifier UID in association with the capability information
CP, it should do so pursuant to a clear (explicit) user instruction
rather than during lowering of the pen.
In the present modification example, the stylus 100 is configured
to send the capability information CP in response to a trigger of
detecting that the pen pressure value becomes greater than 0 (i.e.,
detection of the pen touch operation C2). Such a trigger may be
used also in the first and second embodiments described above. For
example, if the stylus 100 is configured to determine whether the
pen pressure value has become greater than 0 in addition to
determining whether the beacon signal BS has been detected in step
S10 of FIG. 14 and step S52 of FIG. 23, it is possible to ensure
that the stylus 100 sends the capability information CP either when
the beacon signal BS is detected or when the pen pressure value
becomes greater than 0.
Although an example was described in each of the above embodiments
in which the refill body type ID is used by the sensor controller
31 to set a position deriving parameter, the refill body type ID
may also be used for other purposes in addition to the purpose of
setting a position deriving parameter. An example thereof will be
described below.
FIG. 27A and FIG. 27B are diagrams illustrating the stylus 100
according to modification examples of the present invention. FIG.
27A illustrates a case in which a refill body 121D having a hard
pen tip is attached to the stylus 100, and FIG. 27B illustrates a
case in which a refill body 121E having a soft pen tip like a brush
is attached to the stylus 100. It should be noted that the
electrode 102 is not depicted in FIG. 27A and FIG. 27B.
In the example depicted in FIG. 27A, when the user applies a
pressure P (or force P) to the touch surface 3a via the pen tip,
all the pressure P is directly applied to the operation state
detection circuitry 105. Therefore, the pen pressure value sent
from the stylus 100 to the sensor controller 31 becomes a value P
equal to the pressure applied to the pen tip by the touch surface
3a. In the example depicted in FIG. 27B, on the other hand, even
when the user applies the pressure P to the touch surface 3a via
the pen tip, the pressure applied to the operation state detection
circuitry 105 is smaller than P (P/3 in the example depicted). The
reason for this is that part of the pressure P to be conveyed to
the operation state detection circuitry 105 is absorbed by the
flexibility of the brush and by the pressure (or force) generated
between the housing and the refill body 121E. Therefore, the pen
pressure value sent from the stylus 100 to the sensor controller 31
is smaller than P, such as P/3, in a special nonlinear
function.
As described above, a pen pressure value smaller than the original
pen pressure value P may be conveyed to the sensor controller 31
depending on the type of the refill body 121. The sensor controller
31 according to the present modification example uses the refill
body type ID in order to convert the pen pressure value, which is
conveyed as a value smaller than the original pen pressure value
(e.g., P/3), into the original pen pressure value (e.g., P,
hereinafter referred to as a "pen pressure level").
Describing in detail, the sensor controller 31 according to the
present modification example stores a function (pen pressure curve;
method for deriving a pen pressure level) for converting the pen
pressure value received from the stylus 100 into a pen pressure
level for each of the refill body types ID. Then, the sensor
controller 31 selects a pen pressure curve corresponding to the
refill body type ID received from the stylus 100 and converts the
pen pressure value received from the stylus 100 into a pen pressure
level using the selected pen pressure curve.
For example, the sensor controller 31 stores Pb=Pa as a pen
pressure curve for the refill body 121D depicted in FIG. 27A, where
Pa is the pen pressure value received from the stylus 100, and Pb
is the pen pressure level after conversion. On the other hand, the
sensor controller 31 stores Pb=Pa.times.3 as a pen pressure curve
for the refill body 121E depicted in FIG. 27B. As a result, the pen
pressure level Pb that appears when the user applies the pressure P
to the touch surface 3a via the pen tip is P for both the refill
body 121D (=P) and the refill body 121E (=P/3.times.3). Thus, the
present modification example allows the sensor controller 31 to
obtain the original pen pressure value regardless of the type of
the refill body 121.
As a further example, it is possible to use refill body information
so as to identify the appropriate electrode or signal distribution
shape for detection of not only the pen pressure but also the
inclination angle and other data of the stylus 100. In these cases
also, the present invention allows efficient conveyance of the
refill body information to the sensor controller 31 separately from
other data that is repeatedly sent.
DESCRIPTION OF REFERENCE SYMBOLS
1 System 3 Electronic apparatus 3a Touch surface 30 Sensor 30X, 30Y
Linear electrode 31 Sensor controller 32 System controller 40
Selecting circuit 41x, 41y Conductor selection circuit 44x, 44y
Switch 49 Detecting circuit 50 Receiving circuit 51 Amplifying
circuit 52 Detecting circuit 53 AD converter 60 Transmitting
circuit 61 Control signal supply circuit 62 Switch 63 Direct
spreading circuit 64 Spreading code holding circuit 65 Transmitting
guard circuit 70 Logic circuit 80 MCU 100 Stylus 101 Battery 102
Electrode 103 Tail switch 104 Barrel button 105 Operation state
detection circuitry 106 Stylus controller IC 110 Communication
circuitry 111 Capability information updating circuitry 112
Interactive data acquisition circuitry 113 Noninteractive data
acquisition circuitry 120 Refill body holder 121, 121A to 121C
Refill body 123, D1, D0, T1 to T3 Terminal BB Barrel button state
BBN Number of barrel buttons BL Battery level BS Beacon signal C1
Pen lowering operation C2 Pen touch operation C3 Pen moving
operation C4, C5 Pen raising operation CBS Custom button size CD
Custom data CDf Custom data flag CDS Custom data size COS Custom
orientation size CP Capability information CP_Hash Hash value CPS
Custom pen pressure size Col Color D Data DF Interactive data DFmt
Data format DINF Noninteractive data DS Downlink signal F Frame H1
to H3 Recessed portion L1 to L3 Wiring segment OCT Orientation code
table OR Orientation ORC Orientation code ORR Orientation
resolution PL Number of pen pressure reading levels Rx Receiving
circuit (Receiver) SR Sensing range Styl Style TaP Tangential pen
pressure value TaPf Tangential pen pressure flag TiP Pen pressure
value Tx Transmitting circuit (Transmitter)
The various embodiments described above can be combined to provide
further embodiments. All of the U.S. patents, U.S. patent
application publications, U.S. patent applications, foreign
patents, foreign patent applications and non-patent publications
referred to in this specification and/or listed in the Application
Data Sheet are incorporated herein by reference, in their entirety.
Aspects of the embodiments can be modified, if necessary to employ
concepts of the various patents, applications and publications to
provide yet further embodiments.
These and other changes can be made to the embodiments in light of
the above-detailed description. In general, in the following
claims, the terms used should not be construed to limit the claims
to the specific embodiments disclosed in the specification and the
claims, but should be construed to include all possible embodiments
along with the full scope of equivalents to which such claims are
entitled. Accordingly, the claims are not limited by the
disclosure.
* * * * *