GB2527586A - Apparatus, method and computer program for providing a common process module - Google Patents

Apparatus, method and computer program for providing a common process module Download PDF

Info

Publication number
GB2527586A
GB2527586A GB1411441.7A GB201411441A GB2527586A GB 2527586 A GB2527586 A GB 2527586A GB 201411441 A GB201411441 A GB 201411441A GB 2527586 A GB2527586 A GB 2527586A
Authority
GB
United Kingdom
Prior art keywords
input
input device
input data
data
remote
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB1411441.7A
Other versions
GB201411441D0 (en
Inventor
Jari Olavi Saukko
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Priority to GB1411441.7A priority Critical patent/GB2527586A/en
Publication of GB201411441D0 publication Critical patent/GB201411441D0/en
Publication of GB2527586A publication Critical patent/GB2527586A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0231Cordless keyboards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/163Wearable computers, e.g. on a belt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/169Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated pointing device, e.g. trackball in the palm rest area, mini-joystick integrated between keyboard keys, touch pads or touch stripes
    • G06F1/1692Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated pointing device, e.g. trackball in the palm rest area, mini-joystick integrated between keyboard keys, touch pads or touch stripes the I/O peripheral being a secondary touch screen used as control interface, e.g. virtual buttons or sliders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1698Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a sending/receiving arrangement to establish a cordless communication link, e.g. radio or infrared link, integrated cellular phone
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/0202Constructional details or processes of manufacture of the input device
    • G06F3/0219Special purpose keyboards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A common process module 105 processes first input data 106 provided by a first input device and second input data 108 provided by a second input device to generate first and second output data 107, 109. The first output data is indicative of a user input at a touchscreen and the second output data is indicative of an input at the second input device. The apparatus may be a tablet computer or smartphone. The second input device may be located remotely from the apparatus and may be connected via a wire or a wireless radio signal. The second input device may be a touch sensor, such as a capacitive sensor, and may be configured to detect the presence of an object or a liquid. The remote second input device may be used as an alternative input device to the touchscreen for providing input relating to the graphical user interface. It may also be used as a remote control for a smartphone, or as a remote sensor.

Description

TITLE
Apparatus, method and computer program for providing a common process module
TECHNOLOGICAL FIELD
Embodiments of the present invention relate to apparatus, method and computer program for providing a common process module. In particular, they relate to apparatus, method and computer program for providing a common process module to process input data from input devices.
BACKGROUND
In recent years it has become known to have electronic devices, such as computers and smartphones with touchscreens to enable a user to input data. The user may provide a user input by touching the screen and/or hovering over the touchscreen, for example, with one or more fingers.
BRIEF SUMMARY
According to various, but not necessarily all, embodiments of the invention there is provided an apparatus comprising a controller configured to cause the apparatus at least to perform provision of a common process module configured to: process first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and process second input data provided by a second input device to generate second output data indicative of an input at the second input device.
According to various, but not necessarily all, embodiments of the invention there is provided a method comprising providing a common process module that: processes first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and processes second input data provided by a second input device to generate second output data indicative of an input at the second input device.
According to various, but not necessarily all, embodiments of the invention there is provided a computer program that, when run on a computer, performs: providing a common process module to: process first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and process second input data provided by a second input device to generate second output data indicative of an input at the second input device According to various, but not necessarily all, embodiments of the invention there is provided an apparatus comprising: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to perform a method comprising providing a common process module that: processes first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and processes second input data provided by a second input device to generate second output data indicative of an input at the second input device.
According to various, but not necessarily all, embodiments of the invention there is provided an apparatus comprising means configured to cause the apparatus at least to perform a method comprising providing a common process module that: processes first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and processes second input data provided by a second input device to generate second output data indicative of an input at the second input device.
According to various, but not necessarily all, embodiments of the invention there are provided examples as claimed in the appended claims.
BRIEF DESCRIPTION
For a better understanding of various examples that are useful for understanding the brief description, reference will now be made by way of example only to the accompanying drawings in which: Fig 1 shows an apparatus 101 comprising a controller 100; Fig 2 shows an apparatus in which the controller 100 comprises a processor 202; Fig 3 shows schematically another example of an apparatus 101; Fig 4 shows a system 400 comprising apparatus 101 electrically connected to a remote input device 401; Fig 5 shows a system 500 comprising apparatus 101 and a remote input device 501; Fig 6 shows a further example system 600; Fig 7 shows schematically an example of a second input device 701 for providing second input data to apparatus 101; Fig 8 an example of a system 800 in which a second input device 801 is attached to an item of clothing 803; Fig 9 shows schematically an example system 900 in which a second input device 901 is attached to a pipe 902; Fig 10 illustrates an example of a method 1000 that may, for example, be performed by the apparatus 101; and Fig 11 illustrates another example of a method 1100 that may, for example, be performed by the apparatus 101.
DETAILED DESCRIPTION
The Figures illustrate examples of an apparatus 101 comprising: a controller 100 configured to cause the apparatus 101 at least to perform provision of a common process module 105 configured to process first input data 106 provided by a first input device to generate first output data 107 indicative of a user input at a touchscreen and process second input data 108 provided by a second input device to generate second output data 109 indicative of an input at the second input device.
This provides the technical effect of processing the input data of a second input device using the same controller as a first input device and so a separate touch processor is not required for the second input device. Also, it minimizes the amount of memory used to store program instructions for processing input data. For example, where program instructions for processing input data of a touchscreen already exist, the same program instructions may be used to process input data received from a second input device.
The apparatus 101 may be configured to process data received from a touchscreen.
In example embodiments, the apparatus 101 may comprise a touchscreen 301 configured to provide the first input data 106 and a housing 303 containing the controller 100. The touchscreen 301 may be mounted on or within the housing 100.
For example the apparatus may comprise a computer system having a touchscreen, such as a tablet computer, or a laptop with a touchscreen, or a smartphone, etc. The apparatus may also comprise an input port 302 configured to receive the second input data 108 from a second input device located remotely from the housing of the apparatus. The word "remotely" or "remote" as used herein refers to it being outside of and not forming a part of the housing. That is, the second input device is outside of and does not form a part of the housing of apparatus.
Fig 1 shows an apparatus 101 comprising: a controller 100 configured to cause the apparatus 101 at least to perform provision of a common process module 105 configured to process first input data 106 provided by a first input device to generate first output data 107 indicative of a user input at a touchscreen and process second input data 108 provided by a second input device to generate second output data 109 indicative of an input at the second input device.
Implementation of the controller 100 may be as controller circuitry. The controller may be implemented in hardware alone, have certain aspects in software including firmware alone or can be a combination of hardware and software (including firmware).
As illustrated in Fig. 2 the controller 100 may be implemented using instructions that enable hardware functionality, for example, by using executable computer program instructions 204 in a general-purpose or special-purpose processor 202 that may be stored on a computer readable storage medium (disk, memory etc.) to be executed by such a processor 202.
The processor 202 is configured to read from and write to the memory 203. The processor 202 may also comprise an output interface via which data and/or commands are output by the processor 202 and an input interface via which data and/or commands are input to the processor 202.
The memory 203 stores a computer program 204 comprising computer program instructions (computer program code) that controls the operation of the apparatus 201 when loaded into the processor 202. The computer program instructions, of the computer program 204, provide the logic and routines that enables the apparatus to perform the methods illustrated in Figs 10 and 11. The processor 202 by reading the memory 203 is able to load and execute the computer program 204.
The apparatus 101 of Fig 2 therefore comprises: at least one processor 202; and at least one memory 203 including computer program code 204 the at least one memory 203 and the computer program code 204 configured to, with the at least one processor 202, cause the apparatus 101 at least to perform: provision of a common process module that processes first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen and processes second input data provided by a second input device to generate second output data indicative of an input at the second input device.
Although Fig 2 illustrates the controller 100 comprising a processor operating in accordance with computer program code 204 stored in memory 203, other processing means, such as an application specific circuit (ASIC) may be used to provide the common process module.
Although the memory 203 is illustrated as a single component/circuitry it may be implemented as one or more separate components/circuitry some or all of which may be integrated/removable and/or may provide permanent/semi-permanent/ dynam ic/cached storage.
Although the processor 202 is illustrated as a single component/circuitry it may be implemented as one or more separate components/circuitry some or all of which may be integrated/removable. The processor 202 may be a single core or multi-core processor.
References to computer-readable storage medium', computer program product', tangibly embodied computer program' etc. or a controller', computer, processor' etc. should be understood to encompass not only computers having different architectures such as single /multi-processor architectures and sequential (Von Neumann)/parallel architectures but also specialized circuits such as field-programmable gate arrays (FPGA), application specific circuits (ASIC), signal processing devices and other processing circuitry. References to computer program, instructions, code etc. should be understood to encompass software for a programmable processor or firmware such as, for example, the programmable content of a hardware device whether instructions for a processor, or configuration settings for a fixed-function device, gate array or programmable logic device etc. As used in this application, the term circuitry' refers to all of the following: (a) hardware-only circuit implementations (such as implementations in only analog and/or digital circuitry) and (b) to combinations of circuits and software (and/or firmware), such as (as applicable): (i) to a combination of processor(s) or (ii) to portions of processor(s)/software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present.
This definition of circuitry' applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term "circuitry" would also cover an implementation of merely a processor (or multiple processors) or portion of a processor and its (or their) accompanying software and/or firmware.
The term "circuitry" would also cover, for example and if applicable to the particular claim element, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in a server, a cellular network device, or other network device.
Another example of an apparatus 101 is shown schematically in Fig 3. In this example, the apparatus 101 comprises at least one processor 202 and at least one memory 203 including computer program code 204, and also includes a touchscreen 301, an input port 302 and a housing 303. The touchscreen 301 may form part of the outer surface of the apparatus 101, as is known for example in mobile phones. The touchscreen 301 may be mounted on or within the housing 303.
The touchscreen 301 may comprise a display 305 configured to display images under the control of the processor 202. In the present example, the touchscreen 301 also comprises a touch panel 306 configured to generate data in response to receiving touch inputs. Thus, a user may interact with a graphical user interface displayed on the touchscreen 301 by touching the touchscreen.
As illustrated in Fig 3, the computer program 204 may arrive at the apparatus 101 via any suitable delivery mechanism 311. The delivery mechanism 311 may be, for example, a non-transitory computer-readable storage medium, a computer program product, a memory device, a record medium such as a compact disc read-only memory (CD-ROM) or digital versatile disc (DVD), an article of manufacture that tangibly embodies the computer program 204. The delivery mechanism may be a signal configured to reliably transfer the computer program 204. The apparatus 101 may propagate or transmit the computer program 204 as a computer data signal.
In some, but not necessarily all examples the touch panel may be a capacitive sensor. The touch panel may also be configured to detect movement of an object within a space adjacent to the touchscreen. That is, when the touchscreen is positioned horizontally and facing upwards, the touch panel may be configured to detect movement of an object within a space directly above the touchscreen.
Therefore, a user may provide inputs to the apparatus 101 by, for example, moving or positioning a hand above the touchscreen. The touchscreen is configured to generate data in response to such user inputs and the generated data is provided to the processor 202 as first input data.
In the example of Fig 3, the second input data received by the processor 202 is received at the input port 302. In an example, the input pod 302 may be a socket for receiving a plug belonging to a second input device in the form of remote input device to enable the remote input device to electrically connect to the apparatus by wire, or it may be a part of a wireless receiver, such as a radio receiver. The radio receiver may be configured to receive signals via a known protocol, such as Bluetooth, or by a wireless local area network, or other known wireless communication system.
A system 400 comprising apparatus 101 electrically connected to a second input device 401 is shown in Fig 4. The second input device 401 is located remotely from the apparatus 101, and therefore the second input device 401 is a remote input device. In the present example, the apparatus 101 is electrically connected to the remote input device 401 by one or more wires 402. A plug 403 which is attached to the one or more wires provides electrical connection to the input port 302, which in the present example is in the form of a socket 302. The wires 402 and plug 403 may be integral to the remote input device 401.
In the example of Fig 4, the second input device 401 comprises a touch sensor in the form of a touch panel 404 having a touch sensitive surface 405. That is, the second sensitive surface 405 is configured to provide an electrical output depending upon the presence of an object touching or near to its surface. The touch panel 404 may be a capacitive touch sensing panel, and may be configured to receive inputs by movement of an object into a space adjacent to the touch sensitive surface 405.
Alternatively the touch panel may be configured as a resistive touch sensing panel and only be sensitive to pressure applied to the surface. In an example, the touch sensor of the remote input device 401 is of the same design as the touch sensor 306 of the touchscreen 301. In an example, the second data generated by the remote input device 401 has the same format as the first data generated by the touchscreen 301. Consequently, no additional processing of the second data is required before it is processed by the common process module 105.
A user may provide inputs to the touchscreen 301, relating to a graphical user interface displayed on the touchscreen, such that the touch panel 306 generates first input data that is provided to the common process module 105. The common process module processes the input data to generate first output data 107 indicative of the input provided by the user. For example, the first output data may indicate that a user has input one of a number of gestures such as a touch to the touchscreen at a particular position, swiped across the touchscreen in a particular direction, swiped across the touchscreen from a first position to a second position, held a finger (or other object) over the touchscreen, etc. The first output data 107 may result in the processor 202 controlling the apparatus 101, for example by changing the graphical user interface, initializing an application, providing an input to an application that is currently running, providing values to an application, inputting characters, etc. The remote input device 401 may also be used to provide input data to the apparatus. In response to detecting an input, second input data is generated by the remote input device 401 and provided to the common process module 105. The common process module processes the second input data to generate second output data 109. For example, the common process module may be configured to process the second input data to determine output data representing an input vector having at least two dimensions, which may for example represent the position of a user input or a velocity of a user input. Where the common process module is configured to recognize user gestures comprising movement across the touchscreen, the common process module may also recognize gestures comprising movement across the touch sensitive surface 405 of the remote input device 401.
In an example, the remote input device is used as an alternative input device to the touchscreen for providing input relating to the graphical user interface. In this instance, the processor is configured to process the second output data 109 in the same manner as the first input data 107.
Alternatively, the remote input device 401 may be used to provide an input to the apparatus 101 that is unrelated to the information that is currently being displayed on the display 305 of the touchscreen 301. For example, the remote input device may be provided with a graphic, for example by defining buttons, a keypad, or keyboard outline onto its outer surface (for example by printing) to indicate to a user where or how to make a user input, or the touch panel may be attached to another object, such as a display, that provides such indications to a user. Alternatively, the remote input device 401 may be used as a sensor to detect the presence of something other than a user, such as a water level within a tank, orfluid flow through a pipe.
In each of these cases (where the remote input device 401 is not used to interact with the graphical user interface) the processor 202 determines whether the input data to be processed by the common process module 105 is first input data received from the touchscreen or second input data received from the remote input device, and it further processes the resulting output data in dependence of whether the input data is first input data or second input data. That is, the computer program code 204 is configured to cause the at least one processor 202 to determine whether input data is first input data received from a first input device or second input data received form a second input device, and process the first output data 107 in accordance with a first process 406 and process second output data 109 in accordance with a second process 407.
For example, the first process 406 may relate to the graphical user interface displayed on the touchscreen 301, and the processor 202 may be configured to perform one of a number of operations that are related to the graphical user interface when the processor determines that the input data is first input data received from the touchscreen 301. In addition, the processor 202 may be configured to perform one of a number of operations that are unrelated to the graphical user interface when the processor determines that the input data is second input data received from the remote input device 401. For example, the remote input device 401 may be associated with a specific application 407 defined by the computer program code 204, and in response to receiving second input data from the remote input device, the processor 202 may be configured to initiate the application or provide the output data 109 to the application 406.
Further details of the remote input device 401 are described below with reference to Fig 8.
A system 500 comprising apparatus 101 and a remote input device 501 are shown in Fig 5. The system 500 is similar to that of Fig 4, and may operate in a similar manner to system 400. However, the input port 302 of the apparatus 101 is provided by a radio transceiver 502 configured to receive radio signals comprising second input data from a radio transceiver 503 belonging to the remote input device 501.
Therefore, during use, the remote input device 501 receives inputs, for example by a user and, in response, generates input data. The input data is transmitted via the radio transmitter 503 of the remote input device 501 to the radio receiver 502 of the apparatus 101 and provided to the common process module 105. In alternative examples, the transceiver 503 is replaced by a radio transmitter, and/or the radio transceiver 502 is replaced by a radio receiver.
A further example system 600 is shown in Fig 6. The system 600 comprises an apparatus 101 which comprises a processor 202 operating in accordance with program code 204 stored in memory 203. The program code 204 is configured to, with the at least one processor 202, provides a common process module 105 configured to process first input data provided by a first input device 301 to generate first output data 107 indicative of a user input at a touchscreen and process second input data provided by a second input device 601 to generate second output data 109 indicative of an input at the second input device. As described above, the second input device may be a remote input device that provides the second input data to the processor 202 via a communication link 620 that may be by wire or wireless. The apparatus 101 further comprises a radio transceiver 621 and a communication module 622 configured to provide wireless communication with other devices via the radio transceiver 621. For example, the apparatus 101 may comprise a mobile phone and the radio transceiver 621 may be configured to provide radio communication over a telecommunications network 623 to one or more other devices 624. In an alternative example, the radio transceiver 621 is replaced by a radio transmitter.
In an example use of the system of Fig 6, the second input device 601 is configured to detect user inputs or inputs generated by another object or a liquid such as water.
On the detection of an input, the second input device provides second input data to the common process module 105 provided by the processor 202. The common process module 105 is configured to process the second input data to generate second output data, and in the present example, when the processor 202 determines that the input data is second input data it initiates the communication module 622 and/or provides the output data to the communication module 622. The communication module 622 in response to being initiated, and/or on receipt of the second output data, is configured to cause the radio transceiver to transmit a signal via the telecommunications network 623, representing the second output data.
An example of a second input device 701 for providing second input data to apparatus 101 is shown schematically in Fig 7. The second input device 701 comprises an input sensor 702, an amplifier 703, an analog to digital converter 704, and interface converter 705, an output 706 and a controller 707.
The input sensor, as previously discussed, may be in the form of a touch panel having a touch sensitive surface. Furthermore, the touch sensitive surface may be sensitive to the positioning or movement of objects in a space adjacent to the touch sensitive surface but up to several centimeters away from the surface. Therefore, for example, a user may provide user inputs without the need to actually touch the sensing surface.
The touch panel may be formed of layers of conductive elements. In cases where transparency is required, the conductive elements may be formed of a transparent material such as indium tin oxide (ITO), silver nanowires, carbon nanotubes, etc. and formed on a transparent sheet, such as formed from polyethylene terephthalate (PET). Where transparency is not necessary, the conductive elements may be formed of a metallic conductor, such as copper.
Although the touch panel of the second input device is generally shown in the Figures as having a rectangular shape, the touch panel may be provided in the form of another shape, for example star-shaped, circular or square.
The input sensor 702 operates under signals provided by the controller 707 and provides an output to the amplifier 703. The amplifier amplifies the received signal from the input sensor 702 and provides an output signal to the analog to digital convertor 704, which converts the received analog signal to provide a digital output signal. This digital output signal is received at the interface converter 705 which converts the digital output signal into an appropriate form for transmission. For example, the interface controller 705 may provide an output signal for transmission on a serial peripheral interface (SPI) bus or Inter-Integrated Circuit (12C) bus.
The signal produced by the interface controller is provided to the output 706 for transmission to apparatus 101. The output 706 may comprise wires for carrying the output signal to the apparatus, or may comprise a transmitter for transmitting the output signal by radio. In an example, the output 706 includes a Bluetooth adapter for transmitting the output signal by Bluetooth.
An example of a system 800 is shown in Fig 8. In this example, the system comprises an apparatus 101 in the form of a mobile phone having a touchscreen 301 and a second input device 801 attached to a sleeve of an item of clothing 803.
The system 800 is configured in accordance the system 500 shown in Fig 5, and therefore a user may provide inputs to the second input device 801 which transmits second input data to the phone 101 via wireless communication. In an alternative example, the clothing may be provided with electrical conductors for providing a wired connection between the input device 801 and phone 101.
As shown in Fig 8, graphical indications 804 may be provided over the sensing surface of the second input device 801, to indicate the position and/or type of input gestures that may be provided to the second input device 801.
The system 800 may be used, for example, to provide easy access to the controls of an application running on the mobile phone. For example, the mobile phone may be configured to receive second input signals from the second input device to control operations of a music player, such as volume control, play, stop, pause etc. Another example system 900 is shown schematically in Fig 9. In this example, the system comprises an apparatus 101 in the form of a mobile phone having a touchscreen 301 and a remote second input device 901 attached to a pipe 902 configured to carry water. In this example, the second input device 901 comprises a capacitive sensor having one or more elements which have capacitances that depend upon the presence and composition of neighboring materials. The second input device detects the presence or absence or quantity of water in the pipe and generates data indicating this. The data is transmitted to the apparatus 101 as second input data configured to be processed by the common process module (105) provided by the processor (102) of the apparatus 101.
Examples of the use of the apparatus 101 in combination with second input device, other that the examples of Figs 8 and 9, are envisaged. For example, such a system may be used in the home, in industry, in cars, boats or other vehicles. For example, the system may be used within a security system in such scenarios.
Fig 10 illustrates an example of a method 1000 that may, for example, be performed by the apparatus 101.
The method 1000 comprises, at block 1001 causing an apparatus to provide a common process module to process first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen. At block 1002 the common process module is caused to process second input data provided by a second input device to generate second output data indicative of an input at the second input device.
Fig 11 illustrates another example of a method 1100 that may, for example, be performed by the apparatus 101.
The method 1100, comprises the blocks 1001 and 1002 of Fig 10 and also comprises, at block 1101, determining whether input data is first input data received from a first input device. When it is determined that the input data is first input data, the first output data is processed at block 1102 by first computer program instructions. For example, the first computer program instructions may define a first process, such as first process 406 of Fig 4.
At block 1103, it is determined whether the received input data is second input data received from a second input device. When it is determined that the input data is second input data, the second output data is processed at block 1104 by second computer program instructions. For example, the second computer program instructions may define a second process, such as second process 407 of Fig 4.
In an example, the first computer program instructions define a first program, such as an operating system or an application, and the second process instructions define a different second program such as a (different) application. In an example, the different second program may cause the second output data to be wirelessly transmitted as described above with reference to Fig 6.
In an example, whether the input data is first input data or second input data as indicated at blocks 1101 and 1103 is determined by determining which input port of the processor the input data is received at.
The blocks illustrated in the Figs 10 and 11 may represent steps in a method and/or sections of code in the computer program 204. The illustration of a particular order to the blocks does not necessarily imply that there is a required or preferred order for the blocks and the order and arrangement of the block may be varied.
Furthermore, it may be possible for some blocks to be omitted.
The term comprise' is used in this document with an inclusive not an exclusive meaning. That is any reference to X comprising Y indicates that X may comprise only one Y or may comprise more than one Y. If it is intended to use comprise' with an exclusive meaning then it will be made clear in the context by referring to comprising only one or by using "consisting".
In this brief description, reference has been made to various examples. The description of features or functions in relation to an example indicates that those features or functions are present in that example. The use of the term example' or for example' or may' in the text denotes, whether explicitly stated or not, that such features or functions are present in at least the described example, whether described as an example or not, and that they can be, but are not necessarily, present in some of or all other examples. Thus example' for example' or may' refers to a particular instance in a class of examples. A property of the instance can be a property of only that instance or a property of the class or a property of a sub-class of the class that includes some but not all of the instances in the class. It is therefore implicitly disclosed that a features described with reference to one example but not with reference to another example, can where possible be used in that other example but does not necessarily have to be used in that other example.
For example, with regard to Fig 4 it was stated that the remote input device may be provided with a graphic, for example by defining buttons, a keypad, or keyboard outline onto its outer surface, for example by printing, but the feature of printed graphics on the second user input device could also apply to other examples such as that of Fig 5.
Although embodiments of the present invention have been described in the preceding paragraphs with reference to various examples, it should be appreciated that modifications to the examples given can be made without departing from the scope of the invention as claimed.
Features described in the preceding description may be used in combinations other than the combinations explicitly described.
Although functions have been described with reference to certain features, those functions may be performable by other features whether described or not.
Although features have been described with reference to certain embodiments, those features may also be present in other embodiments whether described or not.
Whilst endeavoring in the foregoing specification to draw attention to those features of the invention believed to be of particular importance it should be understood that the Applicant claims protection in respect of any patentable feature or combination of features hereinbefore referred to and/or shown in the drawings whether or not particular emphasis has been placed thereon.
I/we claim:

Claims (38)

  1. CLAIMS1. An apparatus comprising a controller configured to cause the apparatus at least to perform provision of a common process module configured to: process first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and process second input data provided by a second input device to generate second output data indicative of an input at the second input device.
  2. 2. Apparatus according to claim 1, further comprising a touchscreen configured to provide the first input data and a housing containing the controller, wherein the touchscreen is mounted on or within the housing.
  3. 3. Apparatus according to claim 1 or claim 2, wherein the apparatus further comprises an input port configured to receive the second input data from a second input device located remotely from the housing.
  4. 4. Apparatus according to claim 3, wherein the controller is configured to determine whether input data is first input data received from a first input device or second input data received from a second input device, and process the first output data in accordance with first program instructions and process second output data in accordance with second program instructions
  5. 5. Apparatus according to any one of claims 1 to 4, wherein the apparatus is configured to receive the second input data from a remote input device via a wire.
  6. 6. Apparatus according to any one of claims 1 to 4, wherein the apparatus is configured to receive the second input data from a remote input device via a radio signal.
  7. 7. Apparatus according to any one of claims 2 to 6, wherein the touchscreen is configured to generate the first input data in response to movement of an object into a space adjacent to the touchscreen.
  8. 8. Apparatus according to any one of claims 1 to 7, wherein the common process module is configured to process the second input data and determine an input vector having at least two dimensions.
  9. 9. Apparatus according to claim 8, wherein the input vector represents a position of an input.
  10. 10. Apparatus according to any one of claims 1 to 8, wherein the input vector represents a velocity of a user input.
  11. 11. Apparatus according to any one of claims 1 to 10, wherein the common process module is configured to identify user gestures comprising movement across the touchscreen.
  12. 12. Apparatus according to any one of claims 1 to 11, further comprising a remote input device configured to provide the second input data, and wherein the remote input device comprises a sensor having a touch sensitive surface.
  13. 13. Apparatus according to any one of claims 1 to 12, further comprising a remote input device configured to provide the second input data, and wherein the remote input device comprises a capacitive sensor.
  14. 14. Apparatus according to any one of claims 1 to 12, further comprising a remote input device configured to provide the second input data, and wherein the remote input device comprises a capacitive sensor configured to detect movement of an object into a space adjacent to the capacitive sensor.
  15. 15. Apparatus according to any one of claims 2 to 14, further comprising a remote input device comprising a touch sensor, wherein the second data generated by the remote input device has the same format as the first data generated by the touchscreen.
  16. 16. Apparatus according to any one of claims 2 to 15, further comprising a remote input device configured to provide the second input data, wherein the touchscreen comprises a first touch sensor, and the remote input device comprises a second touch sensor of the same design as the first touch sensor.
  17. 17. Apparatus according to any one of claims I to 16, further comprising a remote user input device configured to provide the second input data, wherein the remote user input device is configured to enable user inputs.
  18. 18. Apparatus according to any one of claims 1 to 16, further comprising a remote input device configured to provide the second input data, wherein the remote input device is configured to detect presence of an object or a liquid.
  19. 19. Apparatus according to any one of claims 3 to 18, further comprising a radio transmitter] and wherein the controller is further configured to cause the radio transmitter to transmit a message in response to processing the second input data received from the remote input device.
  20. 20. A method comprising providing a common process module that: processes first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and processes second input data provided by a second input device to generate second output data indicative of an input at the second input device.
  21. 21. A method according to claim 20 further comprising receiving the first input data from a local touchscreen located within an apparatus and receiving the second input data from an input device remote from the apparatus.
  22. 22. A method according to claim 21, further comprising determining whether the input data is first input data received from a first input device or second input data received from as second input device, and processing the first output data using first process instructions and second output data using second process instructions.
  23. 23. A method according to any one of claims 20 to 22, further comprising receiving the second input data from a remote input device via a wire.
  24. 24. A method according to any one of claims 20 to 22, further comprising receiving the second input data from a remote input device via a radio signal.
  25. 25. A method according to any one of claims 20 to 24, further comprising generating the first input data at a touchscreen in response to detecting movement of an object in a space adjacent to the touchscreen.
  26. 26. A method according to any one of claims 20 to 25, wherein the common process module processes the second input data to determine an input vector having at least two dimensions.
  27. 27. A method according to claim 26, wherein the input vector represents a position of an input.
  28. 28. A method according to claim 26, wherein the input vector represents a velocity of a user input.
  29. 29. A method according to any one of claims 20 to 27, wherein the common process module identifies user gestures comprising movement across the touchscreen.
  30. 30. A method according to any one of claims 20 to 29, further comprising generating the second input data in response to receiving an input at a sensor having a touch sensitive surface.
  31. 31. A method according to any one of claims 20 to 30, further comprising generating the second input data in response to receiving an input at a capacitive sensor.
  32. 32. A method according to any one of claims 20 to 31, further comprising generating the second input data in response to detecting movement of an object into a space adjacent to a capacitive sensor.
  33. 33. A method according to any one of claims 20 to 32, further comprising generating the first data in response to receiving a user input at a local touch sensitive panel and generating the second data in response to receiving a user input at a remote touch sensitive panel having the same format as the local touch sensitive panel.
  34. 34. A method according to any one of claims 20 to 33, further comprising receiving the second input data from a remote input device, and, in response to processing the second input data, transmitting a message.
  35. 35. A computer program that, when run on a computer, performs: providing a common process module to: process first input data provided by a first input device to generate first output data indicative of a user input at a touchscreen; and process second input data provided by a second input device to generate second output data indicative of an input at the second input device.
  36. 36. A computer program that, when run on a computer, performs the method of any one of claims 20 to 34.
  37. 37. An apparatus comprising: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to perform the method of any one of claims 20 to 34.
  38. 38. An apparatus comprising means configured to cause the apparatus at least to perform the method of any one of claims 20 to 34.
GB1411441.7A 2014-06-27 2014-06-27 Apparatus, method and computer program for providing a common process module Withdrawn GB2527586A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1411441.7A GB2527586A (en) 2014-06-27 2014-06-27 Apparatus, method and computer program for providing a common process module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1411441.7A GB2527586A (en) 2014-06-27 2014-06-27 Apparatus, method and computer program for providing a common process module

Publications (2)

Publication Number Publication Date
GB201411441D0 GB201411441D0 (en) 2014-08-13
GB2527586A true GB2527586A (en) 2015-12-30

Family

ID=51410218

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1411441.7A Withdrawn GB2527586A (en) 2014-06-27 2014-06-27 Apparatus, method and computer program for providing a common process module

Country Status (1)

Country Link
GB (1) GB2527586A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100231352A1 (en) * 2009-03-16 2010-09-16 Apple Inc. Accessory identification for mobile computing devices
US20110199727A1 (en) * 2010-01-28 2011-08-18 Brian Probst Tablet computer case and associated methods
KR20110120002A (en) * 2010-04-28 2011-11-03 지앤아이(주) Mouse-pad of entering data
US20120032894A1 (en) * 2010-08-06 2012-02-09 Nima Parivar Intelligent management for an electronic device
WO2012054643A1 (en) * 2010-10-19 2012-04-26 Tsi Incorporated System and apparatus for using a wireless smart device to perform field calculations
US20130310658A1 (en) * 2012-04-26 2013-11-21 Nathan W. Ricks Activity Measurement Systems
US20140176471A1 (en) * 2012-12-24 2014-06-26 Chiun Mai Communication Systems, Inc. Touch-sensitive electronic device and method for controlling applications using external keypad

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100231352A1 (en) * 2009-03-16 2010-09-16 Apple Inc. Accessory identification for mobile computing devices
US20110199727A1 (en) * 2010-01-28 2011-08-18 Brian Probst Tablet computer case and associated methods
KR20110120002A (en) * 2010-04-28 2011-11-03 지앤아이(주) Mouse-pad of entering data
US20120032894A1 (en) * 2010-08-06 2012-02-09 Nima Parivar Intelligent management for an electronic device
WO2012054643A1 (en) * 2010-10-19 2012-04-26 Tsi Incorporated System and apparatus for using a wireless smart device to perform field calculations
US20130310658A1 (en) * 2012-04-26 2013-11-21 Nathan W. Ricks Activity Measurement Systems
US20140176471A1 (en) * 2012-12-24 2014-06-26 Chiun Mai Communication Systems, Inc. Touch-sensitive electronic device and method for controlling applications using external keypad

Also Published As

Publication number Publication date
GB201411441D0 (en) 2014-08-13

Similar Documents

Publication Publication Date Title
AU2017259344B2 (en) Method and apparatus for controlling multi-window display in interface
CN103914646B (en) Touch event processing method and the portable device for realizing the method
US20130167090A1 (en) Device, method, and storage medium storing program
EP2770422A2 (en) Method for providing a feedback in response to a user input and a terminal implementing the same
JP2015531139A5 (en)
CN105700789B (en) A kind of picture sending method and terminal device
US10209816B2 (en) Coordinate measuring apparatus for measuring input position of a touch and a coordinate indicating apparatus and driving method thereof
US10037135B2 (en) Method and electronic device for user interface
US20140198059A1 (en) Electronic device with touch-sensitive display and gesture-detection
CN102707885B (en) A kind of method of operating of touch-screen and terminal
US20140118273A1 (en) Method and apparatus for controlling virtual screen
US20150220266A1 (en) Information processing terminal apparatus controlling display device to display window in relationship to peripheral equipment
EP3575945B1 (en) Information display method and mobile terminal
CN105700749B (en) A kind of touch control method and terminal device
CN105677081B (en) A kind of touch control method and terminal device
KR102106354B1 (en) Method and apparatus for controlling operation in a electronic device
EP2778858A1 (en) Electronic device including touch-sensitive keyboard and method of controlling same
US20140198058A1 (en) Electronic device with touch-sensitive display and gesture-detection
CN104185823A (en) Display and method in electric device
CN105739859A (en) Reading marking method and terminal device
GB2527586A (en) Apparatus, method and computer program for providing a common process module
CN103870139A (en) Input interface calling method and electronic device
US20140232659A1 (en) Methods, apparatuses, and computer program products for executing functions based on hover gestures or touch gestures
EP2946269B1 (en) Electronic device with touch-sensitive display and gesture-detection, method for operating same, and computer-readable storage device
CN110874141A (en) Icon moving method and terminal equipment

Legal Events

Date Code Title Description
COOA Change in applicant's name or ownership of the application

Owner name: NOKIA TECHNOLOGIES OY

Free format text: FORMER OWNER: NOKIA CORPORATION

WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)