[go: up one dir, main page]

HK1178640A - System and method for implementing a remote input device using virtualization techniques for wireless devices - Google Patents

System and method for implementing a remote input device using virtualization techniques for wireless devices Download PDF

Info

Publication number
HK1178640A
HK1178640A HK13106250.7A HK13106250A HK1178640A HK 1178640 A HK1178640 A HK 1178640A HK 13106250 A HK13106250 A HK 13106250A HK 1178640 A HK1178640 A HK 1178640A
Authority
HK
Hong Kong
Prior art keywords
protocol
wireless device
input hardware
media device
hardware
Prior art date
Application number
HK13106250.7A
Other languages
Chinese (zh)
Inventor
Kwang Wee Lee
Original Assignee
Cassis International Pte Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cassis International Pte Ltd. filed Critical Cassis International Pte Ltd.
Publication of HK1178640A publication Critical patent/HK1178640A/en

Links

Description

System and method for implementing a remote input device for a wireless device using virtualization technology
Cross Reference to Related Applications
The present application claims priority from U.S. provisional patent applications No. 61/206,454, No. 61/206,453, and No. 61/206,427 filed on day 1/30 in 2009, U.S. provisional patent application No. 61/206,797 filed on day 2/4 in 2009, and U.S. utility patent application No. 12/386,210 filed on day 14/4 in 2009, which are all incorporated herein by reference.
Technical Field
The present invention relates to systems and methods for implementing a remote input device for a wireless device using virtualization technology.
Background
Wireless device designs currently residing in handheld devices have full software layer functionality with a host processor and accompanying radio frequency hardware. The application and runtime environment depend on the hardware architecture of each particular handset. If a user changes handsets with some hardware architecture changes, the user applications and runtime environment on each handset lose portability and compatibility.
It may be desirable to have a system and method for implementing a remote input device for a wireless device using virtualization techniques. This makes the runtime environment and applications independent of the input device hardware implemented on the wireless device. A removable media device with a processor and installed software may be connected and remain functional with any other wireless device with a different input device hardware configuration.
Disclosure of Invention
Embodiments of the present invention may provide methods and systems that may include a remote processor package (package) located on removable media access input device hardware in a wireless device, where access occurs over a communication link. In one aspect, the present invention may provide a remote processor packaging system on a removable medium.
In one aspect, a system may include a wireless device including a processor, a memory, input hardware, and a protocol slave adapted to communicate with the input hardware; and a removable media device including a memory, a processor, and a protocol master adapted to communicate with a protocol slave of the wireless device. In another embodiment, the method may include emulating a hardware interface on a removable media device; mapping input hardware of the wireless device to an interface; mapping a processor of a media device to input hardware; wrapping the input hardware command and sending the input hardware command from the protocol master device of the media device to the protocol slave device of the wireless device; and executes commands on the input device.
Drawings
Features and other aspects of embodiments of the invention are explained in the following description, taken in connection with the accompanying drawings, wherein:
FIG. 1 depicts a radio modem control block diagram for a typical wireless handset;
FIG. 2 depicts a wireless device control block diagram having a processor and software application in accordance with an aspect of the present systems and methods;
FIG. 3 depicts a wireless device design having a single controller device and microcode in accordance with an aspect of the present systems and methods;
FIG. 4 depicts a second control block diagram of a wireless device design having a single controller device and microcode in accordance with an aspect of the present systems and methods;
FIG. 5 depicts a removable media device design having a VID system implemented using a single device driver module that contains a VID device driver, a VID core, and a VID protocol master in accordance with an aspect of the present systems and methods;
FIG. 6 depicts a removable media device design having a VID system implemented using a device driver module and an application, a VID core and VID protocol Master implemented in the application layer, and a VID device driver in the device driver module in accordance with an aspect of the present systems and methods;
FIG. 7 depicts a flowchart for detecting configurable and non-configurable properties of an input device on a wireless device, in accordance with an aspect of the present systems and methods;
FIG. 8 depicts a flowchart of a runtime configuration of input device attributes for a wireless device, in accordance with an aspect of the present systems and methods;
FIG. 9 depicts a flowchart of transferring input device event data from a removable media device to a wireless device, in accordance with an aspect of the present systems and methods;
FIG. 10 depicts a block diagram of a removable media device hardware design, in accordance with an aspect of the present systems and methods.
Detailed Description
Various embodiments of the present invention will now be described in more detail with reference to the accompanying drawings.
As shown in fig. 1, a typical configuration of a wireless handheld device 101 includes a processor 102 located in the handheld device 101. Current wireless handset designs 101 have all software layers stored in the handset 101 that use the main processor 102 and additional input hardware such as a touch screen 108, keyboard 113, or buttons 114. The current wireless handset design 101 includes software layers for: applications 103, runtime environment 104, radio frequency (GSM, CDMA, GPRS), WiFi, bluetooth, camera, audio codec, and GPS hardware framework 105, and embedded operating system kernel 106, all located in the wireless handset 101. In addition, the current wireless handset design 101 includes hardware device drivers 107 that interface with an LCD display or touch screen 108, radio hardware 109, audio codec 110, Bluetooth 111, WiFi 112, keyboard 113, and buttons 114. The input devices may include a keypad 113, a touch screen 108, and buttons 114.
This disclosure describes the system and method of the present invention in which the input device hardware of the wireless device can be remotely controlled by a removable media device having processing capabilities. In one aspect, implementing a Virtual Input Device (VID) on the operating system of the removable media device may allow remote control of the input device hardware of the wireless device. In another aspect, the VID may allow for a physical input device that is processed and controlled remotely through the removable media of the executable application.
FIG. 2 depicts a wireless device control block diagram with a VID system implemented in hardware and software according to one aspect. FIG. 3 depicts a wireless device design with a VID system implemented in hardware according to another aspect. Fig. 2 and 3 depict various aspects of implementing a wireless device according to the amount of hardware and software implemented. FIG. 5 depicts a removable media device design having a VID system implemented using a single device driver module containing a VID device driver (driver), VID core new, and VID protocol master according to another aspect. FIG. 6 depicts a removable media device design with a VID system implemented using a device driver module and an application, with a VID core (core) implemented in the application layer and a VID device driver in the VID protocol host and device driver modules, according to another aspect. Fig. 5 and 6 depict other aspects for implementing a removable media device software stack. The software stack may be implemented in a variety of ways, including the implementations described in fig. 5 and 6.
FIG. 4 depicts one aspect of a removable media device hardware design. In this aspect, the communication link 401 may be a bus, such as a USB, high speed digital data bus, or other removable card format bus. In other aspects, the communication link 401 may be a wireless connection. In another aspect, a single controller device may also communicate with one or more storage devices 402.
Fig. 10 depicts a removable media device 501, which in this case contains a system with processing power including a processor 1002, RAM 1001, ROM 1003, a communication link 401, and an embedded software package such as, but not limited to, USB dongle, SIM, SAM, SD, and other memory card form factor (form factor).
An embodiment of the present invention is the design of a VID system that enables input device data from the wireless device 201 to be delivered to the removable media device 501 and to remotely control the input device data from the wireless device 201 using configurable capabilities such as, but not limited to, thresholds, minimum, maximum, character case, and language from the removable media device 501. The removable media device 501 may be packaged in the form of a USB dongle, SIM, SAM, SD, and other memory cards and may be removable from the wireless device 201. Removable media device 501 is connected to wireless device 201 through a communication link 401 such as a USB or any removable card format bus. In another aspect, the communication link 401 may be wireless. The OS 106 and applications 103 on the removable media device 501 may use this technique to process and control input data and the configuration of physical input devices on the wireless device 201.
The VID system includes three components: a VID protocol 507 that handles the exchange of data and control signals, a VID core 506 that can handle data and control signals, and a VID device driver 505 that interacts with the embedded operating system kernel 106 providing the APIs needed by the kernel 106. The VID protocol may be further divided into two parts, a VID protocol Master 507 residing on the removable media device 501 that may process incoming data, and a protocol Slave 203 residing on the wireless device 201 that collects incoming data.
Wireless device requirements
Fig. 2 and 3 depict various embodiments of a wireless device. In one aspect, the wireless device 201 may be required to be able to communicate with the removable media device 501 using the communication link 401, be able to understand the VID protocol, be able to process control signals for the VID protocol, be able to collect input event data from the input device and send it over the protocol. In FIG. 2, the VID system is implemented in hardware and software using the VID protocol in the microprocessor space 202, slave 203 and OS, device drivers and registry 204. The registry may store configurable and non-configurable attributes of the wireless device. In another aspect, the wireless device may include a USB 205. FIG. 2 depicts a system that includes the hardware and software required for implementation, while FIG. 3 shows a system that uses an overall hardware design to handle the protocol, where the overall hardware design is capable of handling the entire wireless device system including using microcode and pure hardware logic in the registry 302 or a single controller device 301 to handle the VID protocol. In another aspect, the microcode may be hardware programming logic used in the design utilizing FPGA and ASIC hardware. Microcode may allow hardware transistor designs to be implemented using program code. In another aspect, the registry may store the configuration and capabilities of the input devices presented on the wireless device 201.
Removable media device requirements
Fig. 5 and 6 depict various embodiments of removable media devices. The removable media device 501 may be required to be able to communicate with the wireless device 201 using the communication link 401.
The removable media device 501 may require the operating system 106 or core logic to control the program flow and data flow in the system, may require the device driver 502 to control the communication link 401 to the wireless device 201, may require a device driver system for the VID that may emulate the presence of an input device for the removable media device 501 from the perspective of the OS 106. FIG. 5 depicts one implementation in which the VID driver system is implemented using a single module in the device driver layer 504. One or more other device drivers 503 may also be present in the device driver layer. FIG. 6 depicts one implementation of a VID driver system implemented using a mix of application layer 602 and device driver layer 601 modules. The VID device driver 505 in FIG. 6 may provide a driver API to the operating system 106 and allow insertion of input event data.
FIG. 5 shows a simpler software stack (stack) when the entire VID driver system is implemented entirely within the device driver layer 504. FIG. 6 illustrates a more complex but more manageable software stack where much of the logic and data control of the software stack, which may include the VID core 506 and VID protocol Master 507, is implemented in the user space application layer 602, which allows for easy updating of the stack.
Detecting configurable and non-configurable attributes
In one aspect, configurable and non-configurable properties of an input device on the wireless device 201 may be detected and communicated between the wireless device 201 and the removable media device 501, where the configurable and non-configurable properties may allow for proper initialization of the input device and proper initialization of the removable media device application 103 that will utilize the input device and may avoid unnecessary configuration steps that may cause the system to enter an unavailable state. According to one aspect, FIG. 7 depicts a flow diagram of a process that details the detection of configurable properties such as, but not limited to, thresholds, minimum, maximum, character case, and language of an input device on a wireless device.
From the start 701, the wireless device and removable media device are powered on and a connection is established 702 and the removable media device will detect the presence of the wireless device and notify the VID core 703. The VID core on the removable media device sends a query message 704 when the input device is connected to the wireless device and its configurable and non-configurable properties are present. The VID protocol master node sends the query message as a control signal to the wireless device 705 over the communication link. The VID protocol slave on the wireless device then reads the registration for the required information from memory or its registry 706 and returns it to the removable media device via the communication link 707. The VID protocol Master then receives the information and returns it to the VID core 708. The VID core then records the attributes 709 involved in the system and application configuration phase and ends the process 710.
Run-time (run-time) configuration
Another aspect allows runtime configuration of input device properties. The runtime configuration may involve a software system or software stack in the removable media device. Another aspect may allow for immediate changes to input device properties to better accommodate the operating mode of the system. In other aspects, in a more preferred manner, the applications 103 can change the input device settings to better conform to their dedicated applications 103. In another aspect, the application 103 may determine which result is "best," e.g., a gaming application may desire a faster refresh rate of data when compared to a file editing application. According to one aspect, FIG. 8 depicts a flow diagram of the following process, detailing the runtime configuration of input device properties.
From the start 801, a software system in the removable media device may detect the properties 802 of the input device by referring to the recorded configurable and non-configurable properties of the input device using the recorded properties. Detecting the attributes of the input devices may include detecting a mode that each input device can support. The software system in the removable media device may select the input data attributes 803 for the optimal result. At startup, the VID core may select the input device attributes as the default startup configuration. At run-time, the input device configuration may be selected by the application. If at runtime, the selected configuration may be passed from the application to the VID core 804 through a VID device driver using the provided kernel API. The VID core may forward the request as a control signal to the VID protocol Master 805 so that the VID protocol Master can send the request to the wireless device 806 over the communication link. The VID protocol slave on the wireless device may then process the request and may configure 807 the input device. The VID protocol slave on the wireless device may then send the operation result including success or failure and the resulting configuration attributes to the wireless media device over the communication link 808. The VID protocol Master can then receive the information and return the information to the VID core 809. The VID core may then record the current configuration attributes 810 that the software system and applications in the removable media device may later reference and end the process 811.
Input device event transfer
This feature may allow the system to emulate the presence of an input device and thus allow application 103 to use a remote physical input device as if the physical device were located in removable media device 501. An event may occur on an input device, such as pressing or releasing a button, moving or lifting a stylus, or a finger contacting a touch screen. The event data may be actual data, character codes for buttons, or coordinates for a stylus or touch screen. The VID device driver 505 is a device driver element of the OS 106 that can report the presence of the input device to the removable media device 201. VID device drivers 505 may also provide the following interfaces: the generic input device provides an interface to the software system in the removable media device 501. According to one aspect, FIG. 9 depicts a flow diagram of the following process detailing the process of transferring input device event data from a removable media device to a wireless device.
From the start 901, the VID protocol slave device can collect input device event data 902 from the physical devices present on the wireless device. The VID protocol slave may then encapsulate the data into VID protocol packets and may then send them 903 over the communication link. The VID protocol Master may thus receive the event data and may pass the event data to the VID core 904. The VID core may then send the event data to the VID device driver 905. The VID device driver may then send the event data to the OS 906, which will eventually interpret and process the input device event data, and end the process 907.
Protocol format for packets between wireless device and removable media device
As described above, data packets may be communicated between the wireless device 201 and the removable media device 501 and the VID protocol master 507 and protocol slave 203 communicate with each other. The following is a description of an example of a protocol that may be used in this communication:
protocol Packet (Protocol Header Guard) Protocol Header, body content, Protocol Trailer Guard (Protocol Trailer Guard) Protocol Packet (Protocol Packet)
Protocol Header (Protocol Header) Protocol ID, packet/body information
Body content (Body content) ═ at least one [ [ command ] [ result ] [ data payload ] ]
Protocol Header Guard (Protocol Header Guard) information at the beginning of a packet to allow separation between packets
Protocol id (protocol id) is a unique sequence of bytes that provides a very high probability of identifying a genuine packet as well as protocol header protection and protocol trailer protection
Packet/Body Information (Packet/Body Information) gives Information about the entire Packet and/or Body, such as, but not limited to, sequence number, size, type, interpretation method
Command (Command) information block for transmitting control signals between VID protocol master and VID protocol slave
Result (Result) is a block of information used to send event data and results between the VID protocol master and the VID protocol slave
Notification (Notify) is a block of information used to send event notifications to allow protocol slaves to transfer data without polling
Data Payload (Data Payload), a block of information used to transmit Data, such as but not limited to, incoming Data and current configuration, between a VID protocol master and a VID protocol slave
API between VID protocol master and VID protocol slave
In some aspects of the invention, the VID protocol master 507 may communicate with the VID protocol slave 203 using certain instructions, commands, and result codes. As described above, the VID core 506 may send commands to the VID protocol slave 203, for example. The VID protocol slave 203 may return the result code for the command to the VID core 506 based on the current input device information. The following are examples of command and result codes that may be used in implementing an aspect of the present invention:
DETECT (DETECT) a command to query a wireless device for attributes of a physical input device
SET (SET) -a command to SET configuration attributes of a physical input device on a wireless device
GET (GET) — a command to check the current configuration attributes of a physical input device on a wireless device
Notification (Notify) command for sending input device event data from a physical input device on a wireless device
OK/NOK equal to result of previous command
Advantages of embodiments of the invention may include one or more of the following: (1) because handheld devices only require implementation of the VID device driver system with a lower performance processor, the cost of the handheld device may be lower and shorter development times may be required; (2) since the user interface, runtime environment, and applications may already be implemented in the removable media device, there is no need to develop the user interface, runtime environment, and applications for the handheld device.
In one aspect, all applications and data stored on the removable media device are portable and can run on any handheld device that implements the VID device driver system. On the other hand, users may retain their applications and data even if the removable device is transferred to a handheld device with a different hardware design, as long as the VID device driver system is implemented.
Although illustrative embodiments have been illustrated and described in detail herein, it should be noted that many modifications and other embodiments will come to mind to one skilled in the art to which these embodiments pertain having the benefit of the teachings presented in the foregoing descriptions. For example, the scope of the invention is not necessarily limited to the performance of the foregoing steps in the order discussed in all cases. The terms and expressions which have been employed herein are used as terms of description and not of limitation, unless otherwise specified. Accordingly, the invention is not to be limited by the specific illustrated and described embodiments (or by the terms or expressions used to describe them), but only by the scope of the appended claims.

Claims (150)

1. A system for operating input hardware of a wireless device from a media device, the system comprising:
a wireless device, comprising:
a processor;
a memory coupled with the processor;
input hardware coupled with the processor; and
a protocol slave device adapted to run on the memory and the processor, wherein the protocol slave device is adapted to communicate with the input hardware and a media device.
2. The system of claim 1, wherein the protocol slave device is adapted to communicate with the media device through a protocol master device on the media device.
3. The system of claim 1, wherein the protocol slave is adapted to run a daemon.
4. The system of claim 1, wherein the protocol slave device is adapted to communicate with a media device over a communication link.
5. The system of claim 4, wherein the communication link is a data bus.
6. The system of claim 4, wherein the communication link is wireless.
7. The system of claim 1, wherein the protocol slave device is adapted to transmit data corresponding to one or more configuration settings of the input hardware to a media device.
8. The system of claim 7, wherein the configuration settings include settings corresponding to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
9. The system of claim 1, wherein the protocol slave device is adapted to receive data from a media device for configuring one or more settings of the input hardware.
10. The system of claim 1, wherein the protocol slave device is adapted to receive data from a media device for execution on the input hardware.
11. A system for operating input hardware of a wireless device from a media device, the system comprising:
a media device, comprising:
a first memory;
a processor coupled with the first memory; and
a protocol master adapted to run on the processor and the first memory, wherein the protocol master is adapted to communicate with input hardware of a wireless device.
12. The system of claim 11, wherein the media device is removably coupled with a wireless device.
13. The system of claim 11, wherein the media device is mechanically coupled to the wireless device.
14. The system of claim 11, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
15. The system of claim 11, wherein the media device is a removable media card.
16. The system of claim 11, wherein the first memory is RAM.
17. The system of claim 16, wherein the media device comprises a second memory, and wherein the second memory is ROM.
18. The system of claim 11, wherein the protocol master is adapted to communicate with input hardware of the wireless device over a communication link.
19. The system of claim 18, wherein the communication link is a data bus.
20. The system of claim 18, wherein the communication link is wireless.
21. The system of claim 11, wherein the processor is adapted to run an embedded operating system.
22. The system of claim 21, wherein the embedded operating system is Linux, Win CE, or Symbian.
23. The system of claim 11, wherein the processor is adapted to run an embedded graphics engine for providing a graphical user interface.
24. The system of claim 23, wherein the embedded graphics engine is X-Windows.
25. The system of claim 11, wherein the processor is adapted to run an embedded runtime environment.
26. The system of claim 25, wherein the runtime environment is MatchBox, Android, QT, MontaVista, or Openmoko.
27. The system of claim 11, wherein the protocol master is adapted to communicate with a protocol slave of a wireless device.
28. The system of claim 11, wherein the protocol master is adapted to run a daemon.
29. The system of claim 11, wherein the protocol master is adapted to communicate with input hardware of the wireless device using an application layer protocol.
30. The system of claim 11, wherein the protocol master is adapted to communicate with input hardware of the wireless device using a virtual input device driver layer protocol.
31. The system of claim 11, wherein the media device comprises a virtual input device core for emulating the input hardware of a wireless device.
32. The system of claim 11, wherein the protocol master is adapted to communicate input hardware data for execution on input hardware of the wireless device.
33. The system of claim 11, wherein the protocol master is adapted to transmit data corresponding to one or more input hardware settings of the input hardware of the wireless device to the wireless device.
34. The system of claim 33, wherein the input hardware settings include settings corresponding to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
35. The system of claim 11, wherein the protocol master is adapted to receive data from the wireless device corresponding to one or more configuration settings of input hardware of the wireless device.
36. The system of claim 35, wherein the configuration settings include settings corresponding to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
37. The system of claim 11, wherein the protocol master is adapted to communicate with the input hardware of the wireless device by transmitting the wrapped packet to the wireless device.
38. The system of claim 37, wherein the wrapped packet further comprises one or more of a protocol header protection, a protocol header, body content, and a protocol trailer protection.
39. The system of claim 37, wherein the wrapped packet further comprises body content comprising a data payload corresponding to one or more of input data and configuration.
40. The system of claim 37, wherein the wrapped packet further comprises a protocol header comprising body information identifying one or more of a protocol sequence number, size, type, and interpretation method.
41. The system of claim 37, wherein the wrapped packet further comprises body content, the body content comprising at least one command, result, or data payload.
42. A system for operating input hardware of a wireless device from a media device, the system comprising:
a wireless device, comprising:
a first processor;
a first memory coupled with the first processor;
input hardware coupled with the first processor; and
a protocol slave device adapted to run on the first memory and the first processor, wherein the protocol slave device is adapted to communicate with the input hardware; and the media device comprises:
a second memory;
a second processor coupled with the second memory; and
a protocol master adapted to run on the second processor and second memory, wherein the protocol master is adapted to communicate with the protocol slave of a wireless device, and the protocol slave is adapted to communicate with the protocol master of the media device.
43. The system of claim 42, wherein the protocol master is adapted to run a daemon.
44. The system of claim 42, wherein the protocol slave is adapted to run a daemon.
45. The system of claim 42, wherein the protocol slave device is adapted to communicate with the protocol master device over a communication link.
46. The system of claim 45, wherein the communication link is a data bus.
47. The system of claim 45, wherein the communication link is wireless.
48. The system of claim 42, wherein the protocol slave device is adapted to transmit data corresponding to one or more configuration settings of the input hardware to the protocol master device.
49. The system of claim 42, wherein the protocol master is adapted to transmit data corresponding to one or more display settings of the input hardware to the protocol slave.
50. The system of claim 49, wherein the display settings correspond to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
51. The system of claim 42, wherein the protocol master is adapted to transmit data for execution on the input hardware to the wireless device.
52. The system of claim 42, wherein the first memory is a buffer memory.
53. The system of claim 42, wherein the wireless device is a cellular telephone.
54. The system of claim 53, wherein the cellular telephone is OpenMokoneo FreeRunner.
55. The system of claim 42, wherein the input hardware comprises a touch screen.
56. The system of claim 42, wherein the first processor is a baseband processor.
57. The system of claim 42, wherein the wireless device further comprises one or more peripheral devices adapted to run on the first processor.
58. The system of claim 57, wherein at least one of the peripheral devices is radio hardware for receiving and transmitting radio signals.
59. The system of claim 58, wherein the radio hardware is adapted to receive or transmit one or more of CDMA, GPRS, GSM, bluetooth, and Wi-Fi signals.
60. The system of claim 57, wherein at least one of the peripheral devices is adapted to receive input from a user.
61. The system of claim 60, wherein the input represents one or more commands for controlling the input hardware of a wireless device.
62. The system of claim 57, wherein at least one of the peripheral devices comprises a keypad, joystick, button, keyboard, or trackball.
63. The system of claim 57, wherein at least one of the peripheral devices comprises an audio codec.
64. The system of claim 57, wherein at least one of the peripheral devices comprises a wireless network adapter.
65. The system of claim 42, wherein the wireless device further comprises a hardware configuration module for storing data corresponding to input hardware settings of the input hardware.
66. The system of claim 42, wherein the media device is removably coupled with a wireless device.
67. The system of claim 42, wherein the media device is mechanically coupled to a wireless device.
68. The system of claim 42, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
69. The system of claim 42, wherein the media device is a removable media card.
70. The system of claim 42, wherein the second memory is RAM.
71. The system of claim 70, wherein the media device comprises a third memory, and wherein the third memory is ROM.
72. The system of claim 42, wherein the second processor is adapted to run an embedded operating system.
73. The system of claim 72, wherein the embedded operating system is Linux, Win CE, or Symbian.
74. The system of claim 42, wherein the second processor is adapted to run an embedded graphics engine for providing a graphical user interface.
75. The system of claim 74, wherein the embedded graphics engine is X-Windows.
76. The system of claim 42, wherein the second processor is adapted to run an embedded runtime environment.
77. The system of claim 76, wherein the runtime environment is MatchBox, Android, QT, MontaVista, or Openmoko.
78. The system of claim 42, wherein the protocol master is adapted to communicate with the protocol slave using an application layer protocol.
79. The system of claim 42, wherein the protocol master is adapted to communicate with the protocol slave using a virtual input device driver layer protocol.
80. The system of claim 42, wherein the media device comprises a virtual input device core.
81. The system of claim 80, wherein the virtual input device core is programmed to emulate a hardware interface for communicating with a runtime environment.
82. The system of claim 42, wherein the protocol master is adapted to communicate with the protocol slave by transmitting the wrapped packet to the protocol slave.
83. The system of claim 82, wherein the wrapped packet further comprises one or more of protocol header protection, protocol header, body content, and protocol trailer protection.
84. The system of claim 82, wherein the wrapped packet further comprises body content including a data payload corresponding to one or more of input data and configuration.
85. The system of claim 82, wherein the wrapped packet further comprises a protocol header comprising body information identifying one or more of a protocol sequence number, size, type, and interpretation method.
86. The system of claim 82, wherein the wrapped packet further comprises body content, the body content comprising at least one command, result, or data payload.
87. A system for operating input hardware of a wireless device from a media device, the system comprising:
a wireless device, comprising:
means for processing;
means for storing coupled with the means for processing;
means for inputting data coupled with the storage device; and
means for opening a hardware command adapted to run on the means for storing and the means for processing, wherein the means for opening a hardware command is adapted to communicate with the media device and the means for inputting data.
88. A system for operating input hardware of a wireless device from a media device, the system comprising:
a media device, comprising:
means for processing;
means for storing coupled with the means for processing; and
means for emulating input hardware adapted to run on the means for storing and the means for processing, wherein the means for emulating input hardware is adapted to communicate with input hardware of a wireless device.
89. The system of claim 88, wherein the media device is removably coupled with a wireless device.
90. The system of claim 88, wherein the media device is mechanically connected to a wireless device.
91. The system of claim 88, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
92. A system for operating input hardware of a wireless device from a media device, the system comprising:
a wireless device, comprising:
a first means for processing;
first means for storing coupled with the first means for processing;
means for inputting data coupled with the first processing means; and
means for opening a hardware command adapted to run on the first storage means and the first processing means, wherein the means for opening a hardware command is adapted to communicate with the means for inputting data;
a media device, comprising:
a second means for processing;
second means for storing coupled with the second means for processing; and
means for emulating the means for inputting data adapted to run on the second storage means and the second processing means, wherein the means for opening a hardware command of a wireless device is adapted to communicate with the means for emulating a media device and the means for emulating is adapted to communicate with the means for opening a hardware command.
93. The system of claim 92, wherein the media device is removably coupled with the wireless device.
94. The system of claim 92, wherein the media device is mechanically connected to the wireless device.
95. The system of claim 92, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
96. A method for operating input hardware of a wireless device from a media device, comprising:
a. on the wireless device, mapping a processor of the media device by the protocol slave device;
b. receiving, at the wireless device, a wrapper packet containing the input hardware command from the media device;
c. opening, on the wireless device, the wrapped packet containing the input hardware command; and
d. the input hardware command is executed by the wireless device.
97. The method of claim 96, further comprising the step of communicating with a protocol master of a media device through the protocol slave.
98. The method of claim 96, wherein the wrapped packet is received from a protocol master of a media device.
99. The method of claim 96, further comprising the step of running a daemon on the protocol slave device.
100. The method of claim 97, wherein the communicating step further comprises communicating with the protocol master over a communication link.
101. The method of claim 100, wherein the communication link is a data bus.
102. The method of claim 100, wherein the communication link is wireless.
103. The method of claim 96, further comprising the step of transmitting data corresponding to the one or more configuration settings of the input hardware from the wireless device to the media device.
104. The method of claim 96, wherein the performing step is accomplished by input hardware of the wireless device.
105. A method for operating input hardware of a wireless device from a media device, comprising:
a. emulating, on a media device, a hardware interface in communication with a runtime environment;
b. mapping input hardware of the wireless device to the emulated hardware interface through a protocol master device on the media device, such that the media device operates as if directly connected with the input hardware;
c. packaging, by the protocol master on a media device, input hardware commands into packets;
d. transmitting, by the protocol master device on a media device, the wrapped packet containing the input hardware command to a wireless device; and
e. the command is executed by the media device as if the input hardware of the wireless device were directly connected to the media device.
106. The method of claim 105, wherein the media device is removably coupled with the wireless device.
107. The method of claim 105, wherein the media device is mechanically coupled to the wireless device.
108. The method of claim 105, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
109. The method of claim 105, wherein the media device is a removable media card.
110. The method of claim 105, further comprising the step of communicating with input hardware of the wireless device over a communication link.
111. The method of claim 110, wherein the step of communicating further comprises communicating with a protocol slave of the wireless device through the protocol master.
112. The method of claim 110, wherein the communication link is a data bus.
113. The method of claim 110, wherein the communication link is wireless.
114. The method of claim 105, further comprising the step of running a daemon on the protocol master.
115. The method of claim 110, wherein the communicating step further comprises communicating with input hardware of the wireless device using an application layer protocol.
116. The method of claim 110, wherein the communicating step further comprises communicating with input hardware of the wireless device using a virtual input device driver layer protocol.
117. The method of claim 105, wherein the protocol master is implemented by a programmed ASIC to communicate with an ASIC of a wireless device.
118. The method of claim 105, wherein the simulating step is performed by a virtual input device core.
119. The method of claim 105, further comprising the step of transferring one or more input hardware settings for input hardware of the wireless device from the media device to the wireless device.
120. The method of claim 119, wherein the input hardware settings include settings corresponding to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
121. The method of claim 105, further comprising the step of transferring input hardware data executing on the input hardware from the media device to the wireless device.
122. The method of claim 105, wherein the input hardware command includes one or more of querying configurable and non-configurable properties of input hardware on the wireless device, changing configuration settings for the input hardware, and detecting configuration settings of the input hardware.
123. The method of claim 105, wherein the performing step is performed by a processor of the media device.
124. The method of claim 105, wherein the wrapped packet further comprises one or more of protocol header protection, protocol header, body content, and protocol trailer protection.
125. The method of claim 105, wherein the wrapped packet further includes body content including a data payload corresponding to one or more of input data and configuration.
126. The method of claim 105, wherein the wrapped packet further comprises a protocol header including body information identifying one or more of a protocol sequence number, size, type, and interpretation method.
127. The method of claim 105, wherein the wrapped packet further comprises body content, the body content comprising at least one command, result, or data payload.
128. A method for operating input hardware of a wireless device from a media device, comprising:
a. emulating, on a media device, a hardware interface for communicating with a runtime environment;
b. mapping, by a protocol master of a media device, input hardware of a wireless device to the emulated hardware interface, such that the media device operates as if it were directly connected to the input hardware;
c. mapping, by a protocol slave of a wireless device, a processor of a media device to input hardware such that the input hardware operates as if directly connected with the processor;
d. sending, by the protocol master device, a wrapper packet containing an input hardware command to the protocol slave device of a wireless device;
e. receiving, by the protocol slave, the wrapped packet containing an input hardware command from the protocol master;
f. opening, on the wireless device, the wrapped packet containing the input hardware command; and
g. executing, by the wireless device, the input hardware command.
129. The method of claim 128, further comprising the step of running a daemon on the protocol master.
130. The method of claim 128, further comprising the step of running a daemon on the protocol slave device.
131. The method of claim 128, wherein the wrapped input hardware command is sent from the protocol master to the protocol slave over a communication link.
132. The method of claim 131, wherein the communication link is a data bus.
133. The method of claim 131, wherein the communication link is wireless.
134. The method of claim 128, wherein the media device is removably coupled with a wireless device.
135. The method of claim 128, wherein the media device is mechanically connected to a wireless device.
136. The method of claim 128, wherein the media device is attached to a SIM, SAM, SD, micro SD, or USB dongle form factor.
137. The method of claim 128, wherein the media device is a removable media card.
138. The method of claim 128, further comprising the step of communicating between the protocol slave and the protocol master using an application layer protocol.
139. The method of claim 128, further comprising the step of communicating between the protocol slave and the protocol master using a virtual input device driver layer protocol.
140. The method of claim 128, further comprising the step of transferring data corresponding to the one or more configuration settings of the input hardware from the wireless device to the media device.
141. The method of claim 128, further comprising the step of transferring one or more input hardware settings for input hardware of the wireless device from the media device to the wireless device.
142. The method of claim 141, wherein the input hardware settings include settings corresponding to one or more of a threshold, a minimum, a maximum, a character case, a language, a sensitivity, and a power.
143. The method of claim 128, further comprising the step of transferring input hardware data executing on the input hardware from the media device to the wireless device.
144. The method of claim 128, wherein the input hardware command includes one or more of querying configurable and non-configurable properties of input hardware on the wireless device, changing configuration settings for the input hardware, and detecting configuration settings of the input hardware.
145. The method of claim 128, wherein the performing step is performed by input hardware of the wireless device.
146. The method of claim 128, wherein the executing step further comprises executing the input hardware command on the media device as if the input hardware of the wireless device were directly connected to the media device.
147. The method of claim 128, wherein the wrapped packet further comprises one or more of protocol header protection, protocol header, body content, and protocol trailer protection.
148. The method of claim 128, wherein the wrapped packet further comprises body content including a data payload corresponding to one or more of input data and configuration.
149. The method of claim 128, wherein the wrapped packet further comprises a protocol header including body information identifying one or more of a protocol sequence number, size, type, and interpretation method.
150. The method of claim 128, wherein the wrapped packet further comprises body content, the body content comprising at least one command, result, or input payload.
HK13106250.7A 2009-04-14 2010-03-24 System and method for implementing a remote input device using virtualization techniques for wireless devices HK1178640A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/386,210 2009-04-14

Publications (1)

Publication Number Publication Date
HK1178640A true HK1178640A (en) 2013-09-13

Family

ID=

Similar Documents

Publication Publication Date Title
US8477082B2 (en) System and method for implementing a remote display using a virtualization technique
US20100199008A1 (en) System and method for implementing a remote input device using virtualization techniques for wireless device
US9414433B2 (en) System and method for remotely operating a wireless device using a server and client architecture
US11252724B2 (en) Electronic device for transmitting or receiving data in wireless communication system and method therefor
EP3190763A1 (en) Screen sharing method, sharing device and receiving device
WO2014114047A1 (en) Method for realizing selection of security unit in near field communication, mobile terminal and pos machine
CN103092648B (en) A kind of image upgrade method, system and subscriber equipment and personal computer
KR20150128256A (en) Server system having virtual android apparatus for interworking between application and real smart device
CN102301354A (en) System and method for managing a wireless device from removable media with processing capability
WO2010086714A1 (en) System and method for remotely operating a wireless device using a server and client architecture
HK1178640A (en) System and method for implementing a remote input device using virtualization techniques for wireless devices
CN202750089U (en) Bluetooth device and integrated peripheral devices
JP2002354063A (en) Wireless device, wireless card, information processing device, and device driver loading method
KR101863677B1 (en) System and method for interfacing between terminal and smart card
US9078282B2 (en) Method and apparatus for implementing network device function of wireless communication terminal
CN101630296A (en) USB (Universal Serial bus) attachment device and internal data transmission method thereof
EP2680638B1 (en) Method and device for sending and receiving data
US20180139795A1 (en) Wireless connecting method, computer, and non-transitory computer-readable storage medium
KR20040013356A (en) Portable terminal using a mobile phone as a peripheral device
WO2010086712A2 (en) System and method for managing a wireless device from removable media with processing capability
CN103024087B (en) Support massive store and the system and method for ethernet communication simultaneously
CN103246618B (en) Based on implementation method and the device of the USB function of embedded system
HK1165584A (en) System and method for implementing a remote display using a virtualization technique
HK1165585A (en) System and method for managing a wireless device from removable media with processing capability
HK1165583A (en) System and method for remotely operating a wireless device using a server and client architecture