Note: Descriptions are shown in the official language in which they were submitted.
CA 02752314 2011-09-13
METHOD AND APPARATUS FOR CONTROLLING A MULTI-MODE
KEYBOARD
FIELD
[0001] The specification relates generally to keyboards, and specifically to a
method and
apparatus for controlling a multi-mode keyboard of a portable electronic
device.
BACKGROUND
[0002] Portable electronic devices, such as a cellular telephone or personal
digital
assistants ("PDA"), are capable of ever diverse functionalities. Being able to
provide
diverse functionalities generally necessitate the capability of accepting
disparate forms
of input. Keyboards of portable electronic devices generally lack space; the
lack of
space makes it difficult to provide means to receive disparate forms of input.
SUMMARY
[0003]An aspect of this specification provides a multi-mode keyboard for a
portable
electronic device, the keyboard comprising: a layer of flexible transparent
touch sensors
for receiving touch input; a layer of flexible output device; and a dome sheet
for
receiving key click input.
[0004]The keyboard can be configured for switching from a first mode to a
second mode.
The first mode can be an alphanumeric keypad mode and the second mode can be a
navigation mode. The keyboard can be configured for switching from a key click
input
mode to a touch input mode.
[0005]The layer of flexible output device can comprise: a first light guide
film having
first indicia viewable when the multi-mode keyboard is operating in the first
mode; and
a second light guide film having second indicia viewable when the multi-mode
keyboard is operating in the second mode.
[0006] The first indicia can comprise at least alphanumeric characters. The
second
indicia can comprise a plurality of navigation characters.
[0007] The second indicia can include one of a telephone dial pad, a gaming
layout, a
symbol layout, a gesture arrow layout and a command layout.
CA 02752314 2011-09-13
[0008] The multi-mode keyboard can further comprise a layer of keycaps.
[0009] The multi-mode keyboard can further include a printed circuit board
having a
plurality of circuit traces. The dome sheet can include a plurality of domes,
each dome
can be in alignment with a corresponding circuit trace.
[0010] The layer of flexible output device can comprise a layer of flexible
display for
displaying first indicia when the multi-mode keyboard is operating in a first
mode and
for displaying second indicia when the multi-mode keyboard is operating in a
second
mode.
[0011] Another aspect of this specification provides a method for controlling
a multi-
mode keyboard comprising: receiving first input data via the keyboard; and if
the first
input data results in a key click input received from a first input key,
switching the
multi-mode keyboard from an inactive mode to a first mode displaying a first
indicia on
the keyboard; if the first input data results in a key-click input received
from a second
input key, switching the multi-mode keyboard from the inactive mode to a
second
mode displaying a second indicia on the keyboard.
[0012] The method can further comprise: receiving second input data from the
keyboard;
and if the second input data is a touch input or a key click input received
from the
second input key, switching the keyboard from the first mode to the second
mode; if the
second input data is a key click input received from the first input key,
switching from
the second mode to the first mode.
[0013] The first mode can be a keypad mode and the second mode can be a
navigation
mode.
[0014] The first input key can be a non-navigation key and the second input
key can be a
navigation key.
[0015] The first indicia and the second indicia can be displayed on a layer of
flexible
display.
2
CA 02752314 2011-09-13
[0016] Another aspect of this specification provides a multi-mode keyboard for
a portable
electronic device having a processor, the keyboard comprising: a layer of
flexible
transparent touch sensors for receiving touch input; a flexible display layer
configured
for displaying at least one indicia thereon; a dome sheet for receiving key
click input,
the dome sheet including a plurality of domes; a printed circuit board
including a
plurality of circuit traces, each circuit trace corresponding to one of the
domes; a layer
of keycaps placed on top of said layer of flexible transparent touch sensors,
each
keycap in alignment with a corresponding one of said domes and a corresponding
one
of said circuit traces; wherein the keyboard can be configured for switching
between a
first mode and a second mode based on whether touch input or key click input
is
received by the processor.
[0017] The flexible display layer can be configured for displaying first
indicia when the
keyboard operates in the first mode, and second indicia when the keyboard
operates in
the second mode.
[0018] The first mode can include a keypad mode and the second mode can
include a
navigation mode.
BRIEF DESCRIPTIONS OF THE DRAWINGS
[0019] Implementations are described with reference to the following figures,
in which:
[0020] FIG. 1 is a front view of a portable electronic device operating in two
modes,
according to an implementation;
[0021] FIG. 2 is a block diagram of components of the portable electronic
device of FIG.
1;
[0022] FIG. 3 is an exploded perspective view of the keyboard of the portable
electronic
device of FIG. 1, according to an implementation;
[0023] FIG. 4 is a block diagram of the layers of the keyboard of FIG. 3;
[0024] FIG. 5 is a top view of a first indicia disposed on a layer of flexible
output device
of the keyboard of FIG. 3;
3
CA 02752314 2011-09-13
[0025] FIG. 6 is a top view of a second indicia disposed on the layer of
flexible output
device of the keyboard of FIG. 3;
[0026] FIG. 7 is an exploded perspective view of the keyboard of the portable
electronic
device of FIG. 1, according to another implementation;
[0027] FIG. 8 is a block diagram of the layers of the keyboard of FIG. 7;
[0028] FIG. 9 is a top view of a first indicia disposed on a first light guide
film of the
keyboard of FIG. 7;
[0029] FIG. 10 is a top view of a second indicia disposed on a second light
guide film of
the keyboard of FIG. 7;
[0030] FIG. 11 is an exploded perspective view of the keyboard of the portable
electronic
device of FIG. 1, according to yet another implementation;
[0031] FIG. 12 is a block diagram of the layers of the keyboard of FIG. 11;
[0032] FIG. 13 is a flowchart showing a method for turning on the keyboard;
[0033] FIG. 14 is a flowchart showing a method for processing input when the
keyboard
is operating in a first mode; and
[0034] FIG. 15 is a flowchart showing a method for processing input when the
keyboard
is operating in a second mode.
DETAILED DESCRIPTION OF THE IMPLEMENTATIONS
[0035] FIG 1 depicts a portable electronic device 100 with its keyboard 208
operating in
a first or keypad mode 100-M1 and a second or navigation mode 100-M2. When
operating in the keypad mode 100-M1, the portable electronic device 100
displays
alphanumeric characters on keyboard 208. When operating in the navigation mode
100-M2, the portable electronic device 100 displays sets of chevrons on
keyboard 208.
Further details of these modes will be provided below.
4
CA 02752314 2011-09-13
[00361 Referring now to Figure 2, a block diagram of certain components within
the
portable electronic device 100 is shown. In the present implementation, the
portable
electronic device 100 is a cellular telephone. It will be understood, however,
that the
portable electronic device 100 is not limited to cellular telephones. Other
portable
electronic devices are possible, such as a wireless personal digital assistant
(PDA).
[00371 The portable electronic device 100 includes a processor 200 connected
to a read-
only-memory (ROM) 202, which stores the boot firmware basic input/output
system
(BIOS) to be executed when the portable electronic device 100 is turned on.
The
processor 200 is also connected to a random access memory unit (RAM) 204 and a
persistent storage device 206 that contains a plurality of applications
executable by the
processor 200 that enables the portable electronic device 100 to perform
certain
functions including, for example, PIN message functions, SMS message functions
and
cellular telephone functions, and an attachment viewer application for viewing
attachments (e.g. document attachments to emails or documents from other
sources,
such as web servers). The processor 200 receives input from input devices such
as the
keyboard 208. The processor 200 outputs to various output devices, such as an
LCD or
touch-sensitive display 210. Timers 211 are connected to processor 200 to
implement
timers such as a keypad mode timer 212 and a navigation mode timer 213 to
switch
from one mode of keyboard 208 to another mode (more details of the keypad mode
timer 212 and navigation mode timer 213 will be provided below). It is
understood
that, in some implementations, some or all of timers 211 can also be a part of
processor
200. A microphone 214 and a phone speaker 215 are connected to the processor
200
for cellular telephone functions. The processor 200 is also connected to a
modem and
radio device 216. The modem and radio device 216 is used to connect to
wireless
networks and transmit and receive voice and data communications through an
antenna
218. A content store 220, which is generally a file storage system for the
portable
electronic device 100, is also provided.
[00381 As shown in Figure 3, the keyboard 208 comprises a layer of keycaps
300, a layer
of flexible transparent touch sensors 305, a layer of flexible output device
310, a dome
sheet 315, and a circuit board (PCB) 321. The layer of keycaps 300 comprises a
CA 02752314 2011-09-13
plurality of keys and is a passive layer disposed as the top most layer of the
keyboard
208. The keycaps 300 are configured to protect the lower layers from physical
damage
and to demarcate the keys of the keyboard 208.
100391 The layer of flexible transparent touch sensors 305 comprises
capacitive touch
sensors. It will be understood that other touch sensors are possible, such as
resistive
touch sensors. The layer of flexible transparent touch sensors 305 is capable
of
receiving touch input. Input data representative of touch input (i.e., input
that does not
result in a tactile feedback) received by the layer of flexible transparent
touch sensors
305 is transmitted to the processor 200 (see figure 4). For the purpose of
this
application, unless otherwise specified, touch input comprises input data
representative
of touch input received by the processor 200 from the layer of flexible
transparent
touch sensors 305. Touch input can comprise the location from which the touch
input
was received, and pressure or force can be deduced from the size and/or shape
of the
touch input. Multi-touch input can also be utilized in the present disclosure.
100401 The dome sheet 315 comprises a plurality of domes 317 spaced from each
other
according to the layout of the keyboard 208. Each dome 317 comprises a sensor
to
receive "key click" input from the depression of that key. The compression or
collapsing of the dome 317 results in a tactile feedback or "key click",
indicating to the
user that the key has been pressed and that input has been sent to the
processor 200 (see
figure 4). More specifically, during key click input, a key is depressed and
the
corresponding dome 317 compresses and contacts a corresponding circuit trace
319 on
the circuit board 321, sending an input to the processor 200. For the purpose
of this
application, unless otherwise specified, key click input comprises input data
representative of key click input received by the processor 200 from the
contact of the
domes 317 with the corresponding circuit traces 319.
[0041] Figure 4 depicts the layers of the keyboard 208 that are accessible by
the
processor 200. The processor 200 can receive input from the layer of flexible
transparent touch sensors 305 and the contact of the domes 317 of the dome
sheet 315
with corresponding circuit traces 319 (see figure 3) on the circuit board 321.
The
keyboard 208 can operate in an inactive mode, the first 100-M1, and the second
mode
6
CA 02752314 2011-09-13
100-M2. The processor 200 can control the layer of flexible output device 310
to
display information according to the mode of the keyboard.
[0042] The present disclosure provides details where the first mode 100-MI is
a keypad,
key-click, or tactile feedback mode, and the second mode 100-M2 is a
navigation,
touch, or gesture input mode. However, it is understood that more than two
mode or
other modes or both are contemplated.
[0043] When operating in the keypad mode 100-M1, individual key caps are
depressed,
collapsing the respective domes 317 and providing input to the processor 200
via the
circuit traces 319. When operating in the navigation mode 100-M2, the key caps
and
corresponding domes are not depressed, but rather the user swipes/slides their
finger (or
an input device such as a stylus) across the key caps, with the input being
recognized
by the corresponding touch sensors 305. In other words, the present disclosure
provides a single keyboard 208 that is configured for providing both key click
input and
touch input. It is further contemplated that such a configuration enables the
form factor
of the device 200 to remain small and compact, as it is not necessary to
provide both a
touch screen and a physical keyboard with depressible keys.
[0044] Figure 5 depicts a first indicia 325 disposed on output device 310 when
keyboard
208 is operating in the first or keypad mode 100-M1. That is, the keyboard 208
presents the first indicia 325 to indicate that the keyboard 208 can receive
and process
key click input. The first indicia 325 comprise first input keys 335, which in
this
embodiment can be alphanumeric characters 335 and four navigation chevrons 340
emanating from the center of a second input key 345, which in some embodiments
can
be a navigation key 345.
[0045] Figure 6 depicts the second indicia 350 disposed on output device 310
when
keyboard 208 is operating in the second or navigation mode 100-M2. The second
indicia 347 comprise four sets of chevrons 350 emanating from a common center.
Each set of chevrons 350 is oriented substantially perpendicular to its
neighbouring sets
of chevrons 350. The second indicia 347 further comprise a ring 355
circumscribing
the navigation key 345. That is, the keyboard 208 presents the second indicia
325 to
7
CA 02752314 2011-09-13
indicate that the keyboard 208 can receive and process touch input from the
surface of
the keyboard 208, including the locations of the chevrons 350.
[00461 Both touch input and key click input can be received from the
navigation key 345.
The navigation key 345 can be a key dedicated to switching from the first mode
100-
M1 to the second mode 100-M2 (either by receiving key click input or touch
input at
the navigation key 345) and to provide a means to input a selection.
Alternatively, the
processor 200 can be programmed to automatically switch between the first and
second
modes based on an active application (i.e., the keyboard 208 can operate in
the first
mode 100-Ml when an email application is in use, and can operate in second
mode
100-M2 when a browser application is in use) or based on predetermined
criteria set up
by the user.
[00471 Referring to figure 7, a specific contemplated variation of keyboard
208 (see
figures 3 and 4) is indicated at 208a. Keyboard 208a contains several of the
same
components as keyboard 208, or variations on them, and accordingly, like
components
bear like references, except followed by the suffix "a". Of note is that in
keyboard
208a, a first light guide film 360 and a second light guide film 365 replace
the layer of
flexible output device 310. The first light guide film 360 and the second
light guide
film 365 can comprise, for example, commercially available light guide films
such as
those sold by Silitech . Generally, a light guide film can comprise indicia
and light
emitting diodes (LEDs). Activating a light guide film comprises turning on the
LEDs
to illuminate the indicia on the light guide film.
[00481 Figure 8 depicts the layers of the keyboard 208a that are accessible by
the
processor 200a. The processor 200a can receive input from the layer of
flexible
transparent touch sensors 305a and the contact of domes 317a with
corresponding
circuit traces 319a on circuit board 321a (see also figure 7). The processor
200a can
control (for example, activate or deactivate) the first light guide film 360
and the
second light guide film 365.
[00491 Figure 9 depicts the first indicia 325, as described above, disposed on
the first
light guide film 360. Activating the first light guide film 360 comprises
illuminating
8
CA 02752314 2011-09-13
the alphanumeric characters 335 and the navigation chevrons 340 with the LEDs
(not
shown) of the first light guide film 360. The illuminated alphanumeric
characters 335
indicate that the keyboard 208a is operating in the first mode 100-M1 and is
capable of
receiving and processing key click input.
[0050] Figure 10 depicts the second indicia 347 disposed on the second light
guide film
365. Activating the second light guide film 365 comprises illuminating the
second
indicia with the LEDs (not shown) of the second light guide film 365. The
illuminated
sets of chevrons 350 indicate that the keyboard 208a is operating in the
second mode
100-M2 and is capable of receiving and processing touch input.
[00511 Referring to figure 11, another specific contemplated variation of
keyboard 208
(see figures 3 and 4) is indicated at 208b. Keyboard 208b contains several of
the same
components as keyboard 208, or variations on them, and accordingly, like
components
bear like references, except followed by the suffix "b". Of note is that in
keyboard
208b, a layer of flexible display 370 replaces the layer of flexible output
device 310.
The layer of flexible display 370 can also comprise a flexible OLED display,
or in
some cases an e-ink display. The layer of flexible display 370 can display the
first
indicia 325 or the second indicia 347 depending on the active mode of the
keyboard
208b. The first indicia 325 and second indicia 347 are substantially the same
as those
described above. The layer of flexible display 370 is flexible enough to
enable the
dome sheet 315b to receive key click input applied to a surface of the layer
of keycaps
300b that is distal from the dome sheet 315b. When the keyboard 208b is
operating in
the keypad mode 100-MI, the layer of flexible display 370 displays the first
indicia
(i.e., alphanumeric characters 355). When the keyboard 208b is operating in
the
navigation mode 100-M2, the layer of flexible display 370 displays the second
indicia
(i.e., sets of chevrons 350).
[0052] Figure 12 depicts the layers of the keyboard 208b that are accessible
by the
processor 200b. The processor 200b can receive input from the layer of
flexible
display 370 and the contact of the domes 317 with corresponding circuit traces
on the
circuit board 321b (see also figure 11). The processor 200b can also output
onto the
layer of flexible display 370 by instructing the layer of flexible display 370
to render
images such as the first indicia 325 and second indicia 347.
9
CA 02752314 2011-09-13
[0053] FIG. 13 depicts a method 1300 that can be performed by the processor
200 for
turning on the keyboard 208, 208a, or 208b from an inactive mode. Block 1305
comprises waiting for input data. For example, the processor 200 waits for
input data
from the keyboard 208, 208a, or 208b. Block 1310 comprises receiving input
data. For
example, the processor 200 receives input data from the keyboard 208, 208a, or
208b.
Block 1315 comprises determining whether a key click input was received from
block
1310. For example, the processor 200 compares the input data received from
block
1310 to data representative of key click input. When the input data is not
equal to data
representative of key click input (e.g., the input data equals to data
representative of
touch input received from the layer of flexible transparent touch sensors
305), the
method 1300 returns to block 1305. When the input data equals data
representative of
key click input, the method 1300 advances to block 1320.
[0054] Block 1320 comprises determining whether navigation key click input was
received from block 1310. For example, the processor 200 compares the input
data
from block 1310 to data representative of second input key or navigation key
click
input. When the input data equals to data representative of navigation key
click input,
the method 1300 advances to block 1505 of the method 1500. That is, the
keyboard
208, 208a, or 208b enters the navigation mode 100-M2. More details of the
method
1500 will be provided below. When the input data is not equal to data
representative of
navigation key click input (that is, a key click input was received from a
first input key
355 [i.e., a key other than the navigation key 345]), the method 1300 advances
to block
1405 of the method 1400. That is, the keyboard 208, 208a, or 208b enters the
keypad
mode 100-M1. More details of the method 1400 will be provided below.
[0055]FIG. 14 depicts a method 1400 performed by the processor 200 to process
input
when the keyboard 208, 208a, or 208b operates in the keypad mode 100-M1.
[0056] Block 1405 comprises activating keypad mode 100-M1. For example, the
processor 200 displays the first indicia 325 on the layer of flexible output
device 310
and starts the keypad mode timer 212 (see figure 2) for timing switching
between the
keypad mode and the inactive mode. The keypad mode timer 212 can also be a
software delay. The duration of the keypad mode timer 212 can be arbitrarily
set to a
CA 02752314 2011-09-13
default value, pre-programmed when the portable electronic device 100 is
initially
configured, or specified by the user of the portable electronic device 100,
etc. As
explained above, the first indicia 325 comprise the alphanumeric characters
335 and the
navigation chevrons 340. In the keyboard 208a implementation, displaying the
first
indicia 325 comprises activating the first light guide film 360. Activating
the first light
guide film 360 comprises illuminating the first indicia with the LEDs (not
shown) of
the first light guide film 360. In the keyboard 208b implementation,
displaying the first
indicia 325 comprises displaying the first indicia 325 on the layer of
flexible display
370.
[0057] Block 1410 comprises determining whether the keypad mode timer 212 has
expired. For example, the processor 200 compares the state of the keypad mode
timer
212 to a condition representative of the keypad mode timer 212 having expired
(for
example, if the keyboard 208 has not been in use for a predetermined period of
time
[such as 60 seconds, for example]). When the state of the keypad mode timer
212 is
not equal to the condition representative of the keypad mode timer 212 having
expired,
the method 1400 advances to block 1413.
[0058] Block 1413 comprises receiving input data from the keyboard 208, 208a,
or 208b.
For example, the processor 200 receives input data from the keyboard 208,
208a, or
208b. Block 1415 comprises determining whether non-navigation key touch input
has
been received. For example, the processor 200 compares the input data received
from
block 1413 to data representative of non-navigation key touch input (i.e.,
touch input
such as swiping movement across one or more of the second input keys 335 that
does
not result in depression of the corresponding domes 317). When the input data
equals
data representative of non-navigation key touch input, the method 1400
advances to
block 1417.
[0059] Block 1417 comprises resetting the keypad mode timer 212. For example,
the
processor 200 resets the keypad mode timer 212 (e.g., the keypad mode timer
212 is set
to zero and restarted). The method 1400 returns to block 1410. Block 1410 is
processed in substantially the same manner as described above. When the input
data is
11
CA 02752314 2011-09-13
not equal to data representative of non-navigation key touch input, the method
1400
advances to block 1420.
[00601 Block 1420 comprises determining whether non-navigation key click input
has
been received. For example, the processor 200 compares the input data to data
representative of non-navigation key click input. When the input data equals
data
representative of non-navigation key click input (i.e., actuation of one of
the
alphanumeric keys 335, resulting in compression of the corresponding dome 317
and
contact with the corresponding circuit trace 319), the method 1400 advances to
block
1425.
100611 Block 1425 comprises processing the input data. For example, the
processor 200
processes the input data (e.g., if the portable electronic device 100 is
currently waiting
to receive typing input for an email application (not shown) and the input
data
represents a letter "a", the letter "a" is displayed on LCD display 210).
After such
processing, the method 1400 returns to block 1417. Block 1417 is processed in
substantially the same manner as described above. When the input data is not
equal to
data representative of non-navigation key click input, the method 1400
advances from
block 1420 to block 1430.
100621 Block 1430 comprises determining whether navigation key click input has
been
received. For example, the processor 200 compares the input data to data
representative of navigation key click input. When the input data equals to
data
representative of navigation key click input (i.e., actuation of the
navigation key 345
such that the corresponding dome 317 is depressed and contacts the
corresponding
circuit trace 319), the method 1400 advances to block 1435.
[00631 Block 1435 comprises processing the selection that caused the input
data to be
received from block 1413. For example, if the navigation key click input was
received
while the cursor (not shown) was on a link to a website, the processor 200 can
take
appropriate actions to respond to the selection (e.g., launch a web browser
(not shown)
to access the link).
12
CA 02752314 2011-09-13
[0064] Block 1445 comprises deactivating the keypad mode 100-M1. For example,
the
processor 200 clears the first indicia 325 from the layer of flexible output
display 310
and turns off the keypad mode timer 212. In the keyboard 208a implementation,
the
processor 200a deactivates the first light guide film 360 (i.e., there is no
backlighting of
the keys) and turns off the keypad mode timer 212. In the keyboard 208b
implementation, the processor 200b clears the first indicia 325 from the layer
of
flexible display 370 and turns off the keypad mode timer 212. The method 1400
advances to block 1505 of the method 1500 to start the second mode 100-M2.
That is,
block 1445 prepares the keyboard 208, 208a, 208b to switch from the first mode
100-
Ml to the second mode 100 M2 by turning off the first mode 100-M1. When the
input
data is not equal to data representative of navigation key click input, the
method 1400
advances to block 1440.
[0065] Block 1440 comprises determining whether navigation key touch input has
been
received. For example, the processor 200 compares the input data to data
representative of navigation key touch input (i.e., touch input on the
navigation key that
does not result in depression of the corresponding dome 317). When the input
data
equals to data representative of navigation key touch input, the method 1400
advances
to block 1445. Block 1445 is processed in substantially the same manner as
described
above. When the input data is not equal to data representative of navigation
key touch
input, the method 1400 advances to block 1417. Block 1417 is processed in
substantially the same manner as described above.
[0066] When the keypad mode timer 212, from the comparison made in block 1410,
equals to the condition representative of the keypad mode timer 212 having
expired, the
method 1400 advances to block 1450. Block 1450 is processed in substantially
the
same manner as block 1445, such that the keypad mode 100-M1 is deactivated.
The
method 1400 advances to block 1305 of the method 1300. That is, the keyboard
208,
208a, or 208b is placed in the inactive mode.
[0067] In the implementations employing the use of light guides, when
operating in
inactive mode, light guides can be turned off such that although the
characters on the
keyboard 208 can still be seen, there is no backlighting of the keys. When
employing
13
CA 02752314 2011-09-13
an OLED display, which does not include the use of light guides, the inactive
mode is
such that the OLED has a faded intensity when compared to the first mode 100-M
1 and
second mode 100-M2.
[0068] In some implementations, the keyboard 208 can display alphanumeric
characters
335 in the keypad mode 100-M1 with the chevrons 350 displayed in a faded
intensity
and the keyboard 208 can display chevrons 350 in the navigation mode 100-M2
with
the alphanumeric characters 335 in a faded intensity.
[00691 FIG. 15 depicts a method 1500 performed by the processor 200 to process
input
when the keyboard 208, 208a or 208b is operating in the navigation mode 100-
M2.
[0070] Block 1505 includes activating navigation mode. For example, the
processor 200
displays the second indicia 347 on the layer of flexible output device 310 and
starts the
navigation mode timer 213 (see figure 2) for timing switching between the
keypad
mode and the navigation mode. The keypad mode timer 213 can also be a software
delay. The duration of the navigation mode timer 213 can be arbitrarily set to
a default
value, pre-programmed when the portable electronic device 100 is initially
configured,
and specified by the user of the portable electronic device 100, etc. As
mentioned
above, in the present embodiment, the second indicia 347 comprise the four
sets of
chevrons 350 and the ring 355. In the keyboard 208a implementation, displaying
the
second indicia comprises activating the second light guide film 365.
Activating the
second light guide film 365 comprises illuminating the second indicia 347 with
the
LEDs (not shown) of the second light guide film 365. In the keyboard 208b
implementation, displaying the second indicia 347 comprises displaying the
second
indicia 347 on the layer of flexible display 370.
[0071] Block 1510 comprises determining whether the navigation mode timer 213
has
expired. For example, the processor 200 compares the state of the navigation
mode
timer 213 to a condition representative of the navigation mode timer 213
having
expired (for example, if the keyboard 208 has not been in use for a
predetermined
period of time [such as 60 seconds, for example]). When the state of the
navigation
14
CA 02752314 2011-09-13
mode timer 213 is not equal to the condition representative of the navigation
mode
timer 213 having expired, the method 1500 advances to block 1513.
[0072] Block 1513 comprises receiving input data from the keyboard 208, 208a
or 208b.
For example, the processor 200 receives input data from the keyboard 208,
208a, 208b,
such as a swiping movement across the keycaps in an upward direction.
[0073]Block 1515 comprises determining whether key touch input has been
received.
For example, the processor 200 compares the input data (i.e., the swiping
movement
described above) received from block 1513 to data representative of key touch
input
(i.e., input that does not result in depression of the corresponding domes
317). When
the input data equals data representative of key touch input, the method 1500
advances
to block 1520.
[0074] Block 1520 comprises processing the input data. For example, processor
200
processes the input data (e.g., if the portable electronic device 100 is
currently waiting
to receive pointer movement input for a map application (not shown) and the
input
data represents a movement to the left, the pointer (not shown) on LCD display
210 is
displayed as being moved to the left).
[0075] At block 1522, the processor 200 resets the navigation mode timer 213
(for
example, the navigation mode timer 213 is set to zero and restarted). The
method 1500
returns to block 1510. Block 1510 is processed in substantially the same
manner as
described above. When the input data does not equal to data representative of
key
touch input, the method 1500 advances to block 1525.
[0076] Block 1525 comprises determining whether navigation key click input has
been
received. For example, the processor 200 compares the input data to data
representative of navigation key click input (i.e., key click input received
from second
input key 345). When the input data equals to data representative of
navigation key
click input, the method 1500 advances to block 1530.
[0077] Block 1530 comprises processing the selection that caused the input
data to be
received from block 1513. For example, if the navigation key click input was
received
CA 02752314 2011-09-13
while the cursor (not shown) was on a link to a website, the processor 200 can
take
appropriate actions to respond to the selection (e.g., launch a browser (not
shown) to
access the link). The method 1500 then returns to block 1522. Block 1522 is
processed
in substantially the same manner as described above. When the input data does
not
equal data representative of navigation key click input, the method 1500
advances to
block 1535.
[00781 Block 1535 comprises determining whether non-navigation key click input
has
been received. For example, the processor 200 compares the input data to data
representative of non-navigation key click input (i.e., key click input
received from first
input key 335). When the input data equals data representative of non-
navigation key
click input, the method 1500 advances to block 1540.
[00791 Block 1540 comprises deactivating the navigation mode. For example, the
processor 200 clears the second indicia 347 from the layer of flexible output
display
310 and turns off the navigation mode timer 213. In the keyboard 208a
implementation, the processor 200 deactivates the second light guide film 365
and turns
off the navigation mode timer 213. In the keyboard 208b implementation, the
processor 200b clears the second indicia 347 from the layer of flexible
display 370 and
turns off the navigation mode timer 213. The method 1500 advances to block
1405 of
the method 1400. That is, the keyboard 208, 208a, or 208b enters the keypad
mode
100-Ml. When the input data is not equal to data representative of non-
navigation key
click input, the method 1500 advances to block 1522. Block 1522 is processed
in
substantially the same manner as described above.
[00801 When the navigation mode timer 213, from the comparison made in block
1510,
equals to the condition representative of the navigation mode timer 213 having
expired,
the method 1500 advances to block 1540. Block 1540 is processed in
substantially the
same manner as described above. The method 1500 advances to block 1405 of the
method 1400. That is, the keyboard 208, 208a, or 208b enters the keypad mode
100-
M1.
16
CA 02752314 2011-09-13
[00811 It is understood that the first and second modes of the keyboard 208
can include
additional modes (with additional layouts in which other characters are
displayed on the
flexible output device 310) other than those described above. For example, the
flexible
output device 310 could also include a numeric mode (where the display
includes a
telephone dial pad layout), an alphabetic mode (where the display includes
alphabetic
characters only layout), a symbol mode (where common symbols and characters
such
as "/", "?", "!", and "@" are arranged, for example), a gaming mode, a gesture
arrow
mode, a command mode (for example, when in an email application, the keyboard
could display commands/icons for "reply", "forward", "send", and "delete"), a
secondary language mode, a scrolling mode (where vertical arrows appear on the
keyboard 208, 208a, 208b such that the user can gesture up/down to initiate
scrolling of
a page on the display) and a virtual navigation module mode. In the keyboard
208a
implementation, including additional layout comprises including additional
light guide
films. In the keyboard 208b implementation, including additional layouts
comprises
configuring the processor 208b to generate the additional layouts on the layer
flexible
display 370.
[00821 Those skilled in the art will now recognize certain advantages from
this
specification. A portable electronic device typically has limited space on its
keyboard.
The functionalities of portable electronic devices are increasing and becoming
more
diverse increasing the need for the portable electronic devices to accept more
input as
well as accepting more disparate forms of input. This specification can
obviate or at
least mitigate at least some of these problems by accommodating any number of
keyboard layouts. The keyboard 208, 208a, 208b can switched between layouts
based
on input received via keyboard 208, 208a, 208b or application being utilized.
The
keyboard 208, 208a, 208b enables the form factor of the device 100 to remain
small
and compact, as it is not necessary to provide both a touch screen and a
physical
keyboard with depressible keys.
[00831 It will now be apparent that the blocks of the methods 1300, 1400, and
1500 can
be varied and likewise that many specific design choices can be made relative
to how to
implement various blocks in the methods 1300, 1400, and 1500. In some
17
CA 02752314 2011-09-13
implementations, the functionality of the portable electronic device 100 can
be
achieved using a computing apparatus that has access to a code memory (not
shown)
which stores computer-readable program code for operation of the computing
apparatus. The computer-readable program code could be stored on a
nontransitory
computer readable storage medium which is fixed, tangible and readable
directly by
these components, (e.g., removable diskette, CD-ROM, ROM, fixed disk, USB
drive).
Alternatively, the computer-readable program code could be stored remotely but
transmittable to these components via a modem or other interface device
connected to a
network (including, without limitation, the Internet) over a transmission
medium. The
transmission medium can be either a non-wireless medium (e.g., optical and/or
digital
and/or analog communications lines) or a wireless medium (e.g., microwave,
infrared,
free-space optical or other transmission schemes) or a combination thereof.
[00841 A portion of the disclosure of this patent document contains material
which is
subject to copyright protection. The copyright owner has no objection to the
facsimile
reproduction by any one the patent document or patent disclosure, as it
appears in the
Patent and Trademark Office patent file or records, but otherwise reserves all
copyrights whatsoever.
[00851 Persons skilled in the art will appreciate that there are yet more
alternative
implementations and modifications possible for implementing the
implementations, and
that the above implementations and examples are only illustrations of one or
more
implementations. The scope, therefore, is only to be limited by the claims
appended
hereto.
18