External Keyboard Simulating Soft Keyboard Conflict on Apple Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
APPLE devices experience conflicts between external keyboards and their soft keyboards when using the HID protocol, leading to the soft keyboard being disabled, which is inconvenient for users.
Innovation Solution
An external device simulates a keyboard by establishing a connection with the APPLE device via USB, managing data requests and responses, and sending appropriate commands to declare itself as a keyboard, allowing the soft keyboard to function alongside the external keyboard.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If the external keyboard communicates with the APPLE device through HID protocol, then the external keyboard can be used, but the soft keyboard of the APPLE device cannot be used
Solution Approach 1:
The external device dynamically switches between two modes: keyboard mode (when key press is detected) and data transmission mode (when send cache is cleared). This dynamic switching allows the system to adapt its behavior based on operational context, enabling both external keyboard functionality and soft keyboard availability without permanent conflict
Solution Approach 2:
The invention changes the communication protocol parameters by sending different types of data packets: HID keyboard reports when key presses are detected, and cache clearing commands when data transmission is needed. This parameter switching resolves the contradiction by allowing the same USB connection to serve different functions at different times
2Ease of operation
If the external device sends keyboard commands continuously, then keyboard functionality is maintained, but data transmission functionality is lost
Solution Approach 1:
The external device employs periodic action by alternating between keyboard command transmission (when keys are pressed) and data transmission (when send cache needs clearing). This periodic switching ensures both keyboard simulation and data transmission functions can operate effectively without one continuously blocking the other
Solution Approach 2:
The system uses self-service by automatically detecting when the send cache is cleared and autonomously switching to data transmission mode, and when key presses are detected, automatically returning to keyboard mode. This self-managed switching eliminates the need for external intervention and resolves the functional conflict
Data Source
AI summary
A method, an apparatus and a system for implementing an external device simulating a keyboard relates to the field of electronic technology. The external device generates key-value data in a case that a user pressing a key is detected, and sends a start command to an Apple device after receiving a data request sent by the Apple device. After receiving the start command, the Apple device exits a soft keyboard and continuously sends the data request to the external device. After receiving the data request, the external device sends an attaching report command including the key-value data to the Apple device. The Apple device displays the key-value data and continuously sends the data request to the external device. After receiving the data request, the external device sends an end command to the Apple device. The Apple device pops up the soft keyboard again after receiving the end command.


