Remote control method of electronic equipment and related equipment
By installing control accessories on a personal computer (PC) and establishing a connection with the server when the PC enters a non-working state, the problem of the PC not being able to remotely control when it is in a non-working state is solved, and a stable remote control function is achieved.
Patent Information
- Application Number
- CN202311036641.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-16
- Publication Date
- 2025-02-21
AI Technical Summary
The prior art is difficult to implement remote control when a personal computer (PC) is in a shutdown, sleep or sleep state.
By installing a control accessory on the PC, after the PC enters a non-operating state, the accessory is powered by the controlled device using a preset interface and establishes a connection with the server to receive and forward remote control instructions.
It realizes that remote control can still be performed when the PC is in a non-working state, enriches the scenario of remote control and improves the stability of control.
Smart Images

Figure CN119493600A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of electronic technology, and in particular to a remote control method for electronic equipment and related equipment. Background Art
[0002] Personal computers (PCs) are usually bulky and difficult to carry / move. Even lightweight notebook PCs are still not portable enough compared to mobile phones and tablet computers. Therefore, users are increasingly paying attention to remotely controlling PCs through devices such as mobile phones or tablet computers.
[0003] However, in order to remotely control a PC, the remote PC usually needs to remain powered on and connected to the Internet. If the PC is in a non-working state such as shutdown, sleep, or hibernation, the PC cannot be remotely controlled. Therefore, there is an urgent need for a method that can achieve remote control when the PC is in a non-working state such as shutdown, sleep, or hibernation. Summary of the invention
[0004] The embodiments of the present application provide a remote control method for an electronic device and related devices, which can realize remote control of a PC even if the PC is in a non-working state such as shutdown, sleep or hibernation.
[0005] To achieve the above objectives, the embodiments of the present application adopt the following technical solutions:
[0006] In a first aspect, a remote control method for an electronic device is provided, the method being applied to a control accessory, the control accessory being plugged into a preset interface of a controlled device and supporting a master device to remotely control the controlled device, the control accessory being powered by the controlled device through the preset interface. The method comprises:
[0007] After the controlled device enters a non-working state, the control accessory will establish a first connection with the server through the network configuration information of the controlled device. Specifically, the controlled device being in a non-working state may include: the controlled device being in a shutdown state, a dormant state, a sleeping state, or a powered-on but faulty state. The network configuration information includes information for accessing the network and login information of the server. Afterwards, the control accessory may receive a first remote control instruction from the master device to the controlled device forwarded by the server based on the first connection. Then, the control accessory forwards the first remote control instruction to the controlled device. The first remote control instruction is used to control the controlled device to switch from a non-working state to a working state, so that the controlled device switches from a non-working state to a working state in response to the first remote control instruction.
[0008] The controlled device is in a non-working state, which means that the controlled device has no way to establish a connection with the server and receive the remote control instructions forwarded by the server. In this solution, the control accessory is plugged into the preset interface of the controlled device, and the controlled device can power the control accessory through the preset interface. At the same time, when the controlled device enters a non-working state, the control accessory can establish a first connection with the server based on the network configuration information of the controlled device. Afterwards, the control accessory can receive the remote control instructions from the main control device forwarded by the server based on the first connection. Furthermore, the control accessory can forward the remote control instructions to the controlled device through the preset interface, thereby realizing remote control of the controlled device in a non-working state. In addition, the remote control scenarios can also be enriched.
[0009] In a possible implementation of the first aspect, before the controlled device enters a non-working state and the control accessory establishes a first connection with the server through the network configuration information of the controlled device, the method further includes: when the controlled device is in a working state, the control accessory can obtain the configuration information of the controlled device from the controlled device. So that the control accessory can establish a connection with the server based on the network configuration information in the configuration information after the controlled device enters a non-working state. Specifically, the control accessory accesses the network through the information for accessing the network in the network configuration information, and establishes a first connection with the server through the login information of the server. Therefore, after the controlled device enters a non-working state, the controlled device can be remotely controlled with the help of the control accessory.
[0010] In a possible implementation of the first aspect, the controlled device includes a main chip and an embedded controller EC, a serial port line is provided between the main chip and a preset interface, and a serial port line is provided between the EC and the preset interface. When the controlled device is in a non-working state, the main chip of the controlled device is in a non-working state. The method also includes: the main chip enters a non-working state, and the control accessory establishes a first serial port connection with the EC. In this solution, the control accessory can specifically forward a first remote control instruction to the EC based on the first serial port connection. The first remote control instruction is used by the EC to control the main chip to perform an operation corresponding to the first remote control instruction based on the first remote control instruction and enter a working state.
[0011] EC is usually kept running all the time. In this solution, after the controlled device enters the non-working state, the control accessory can establish a serial port connection with the EC of the controlled device and communicate with the EC through the serial port connection. The EC in the controlled device is connected to the main chip, and the EC can control the main chip to perform operations. This ensures that when the controlled device is in a non-working state, the controlled device can still be remotely controlled with the help of the control accessory.
[0012] In a possible implementation of the first aspect, the method further includes: the main chip is in a non-working state, and the control accessory obtains state information of the main chip in the non-working state from the EC through the first serial port connection. The state information of the non-working state includes the shutdown state of the main chip and / or the power information of the controlled device. Afterwards, the control accessory synchronizes the state information of the non-working state to the main control device through the server.
[0013] In this solution, when the controlled device is in a non-working state, the control accessory can obtain the non-working state information of the controlled device through the EC, and synchronize the non-working state information to the main control device through the server. Therefore, the non-working state information of the controlled device can be displayed on the main control device for the user to view.
[0014] In a possible implementation of the first aspect, the method further includes: the control accessory can also receive a heartbeat packet from the EC based on the first serial port connection, and maintain the serial port connection between the control accessory and the EC according to the heartbeat packet of the EC. For example, when the control accessory does not receive the heartbeat packet of the EC after a timeout, it can be determined that the serial port connection between the EC and the control accessory is disconnected.
[0015] In a possible implementation of the first aspect, the method further includes: after the control accessory receives the heartbeat packet of the EC based on the first serial port connection, it can also return a feedback message of successful reception to the EC. The feedback message can be used by the EC to determine whether the control accessory is in a normal state. Specifically, if the EC times out without receiving the feedback message of the control accessory, it indicates that an abnormality may have occurred in the control accessory.
[0016] In a possible implementation of the first aspect, the method further includes: after the main chip switches from a non-working state to a working state, the control accessory disconnects the first serial port connection and establishes a second serial port connection with the main chip. The control accessory receives a heartbeat packet from the main chip based on the second serial port connection. The control accessory can determine whether the main chip remains in a working state based on the heartbeat packet. Specifically, if the control accessory times out and does not receive a heartbeat packet from the main chip, it can be determined that the main chip has entered a non-working state. In this way, it is convenient for the control accessory to quickly sense that the main chip has entered a non-working state, so that the control accessory can establish a connection with the server in a timely manner to promptly restore the remote control capability of the controlled device. In a scenario where the controlled device suddenly goes offline (such as a failure), the control accessory promptly establishes a connection with the server, and the remote control capability of the main control device over the controlled device can be promptly restored, thereby improving the stability of remote control.
[0017] In a possible implementation of the first aspect, the method further includes: after the control accessory receives the heartbeat packet from the main chip based on the second serial port connection, it can also return a feedback message to the main chip indicating that the heartbeat packet has been successfully received. The feedback message can be used by the main chip to determine whether the control accessory is in a normal state. Specifically, if the EC times out without receiving the feedback message from the control accessory, it indicates that an abnormality may have occurred in the control accessory.
[0018] In a possible implementation of the first aspect, the method further includes: if the control accessory receives a first notification message from the EC, determining that the controlled device enters a non-working state. In this solution, after the main chip enters the non-working state, the EC can sense the state change of the main chip. The control accessory can obtain the message that the main chip enters the non-working state through the EC, thereby establishing a connection with the server to achieve remote control of the controlled device in the non-working state.
[0019] In a possible implementation of the first aspect, the method further includes: after the main chip switches from a non-working state to a working state, the control accessory disconnects the first serial port connection with the EC and establishes a second serial port connection with the main chip. If the control accessory receives a second notification message from the main chip based on the second serial port connection, it determines that the controlled device has entered a non-working state. The second notification message is sent before the main chip enters a non-working state. In this solution, the main chip may also actively notify the control accessory that the main chip is about to enter a non-working state when receiving an event that triggers the switching to a non-working state. In this way, the control accessory obtains the notification message sent to it by the main chip, and can establish a connection with the server to achieve remote control of the controlled device in a non-working state.
[0020] In a possible implementation of the first aspect, the method further includes: the control accessory is powered by the controlled device through a preset interface, which may specifically include: when the main chip is in a working state, the control accessory is powered by the main chip through a preset interface. When the main chip is in a non-working state, the control accessory is powered by the EC through a preset interface. In this way, when the controlled device is in a working state or a non-working state, the control accessory is plugged into the preset interface of the controlled device to obtain power for the controlled device. This ensures that when the controlled device is in a non-working state, the control accessory can still work normally (such as sensing that the controlled device has entered a non-working state, establishing a connection with the server, etc.).
[0021] In a possible implementation of the first aspect, after the control accessory establishes a first connection with the server, the above method may further include: the control accessory starts a reconnection function. The reconnection function includes: when the controlled device is in a non-working state, if the first connection between the control accessory and the server is disconnected, the control accessory automatically re-requests to re-establish a connection with the server. In this way, if the controlled device is in a non-working state, then after the control accessory establishes a first connection with the server, if the first connection is disconnected due to power failure or network failure of the control accessory or power failure or network failure of the server, the control accessory may try to re-establish a connection with the server when conditions are met (such as the control accessory is reconnected to the network or power is restored). Thereby, the connection between the control accessory and the server is guaranteed, and the stability of remote control of the controlled device is improved.
[0022] In a possible implementation of the first aspect, after the main chip enters the working state, the control accessory will also respond to the stop reconnection instruction of the main chip and turn off the reconnection function. In this way, after the main chip enters the working state, when the main chip needs to establish a connection with the server, the problem of the control accessory reconnecting to the server to preempt the connection between the main chip and the server can be avoided.
[0023] In a possible implementation of the first aspect, after the control accessory forwards the first remote control instruction to the controlled device, the method further includes: the main chip switches from a non-working state to a working state, and the control accessory receives configuration information of the controlled device synchronized from the main chip, and the configuration information includes network configuration information. After the main chip switches to a working state, the control accessory can receive the configuration information synchronized from the main chip to the control accessory. Therefore, after the main chip enters a non-working state, the control accessory can connect to the server based on the network configuration information in the configuration information, thereby realizing remote control of the controlled device in the non-working state of the controlled device.
[0024] In a possible implementation manner of the first aspect, the configuration information further includes device configuration information, where the device configuration information is used to describe a capability of controlling the accessory.
[0025] In a possible implementation of the first aspect, the device configuration information further includes authentication information, which is used to verify the legitimacy of the user when remotely controlling the controlled device. Using the authentication information to verify the legitimacy of the user can ensure the information security of the controlled device.
[0026] In a possible implementation manner of the first aspect, the device configuration information further includes server authentication information, where the server authentication information is used to register an account and password of the server, and a password.
[0027] In a second aspect, the present application also provides a remote control method for an electronic device, the method being applied to a controlled device, the controlled device comprising a preset interface. The preset interface of the controlled device is used to plug in a control accessory, and the controlled device supplies power to the control accessory plugged in the preset interface; the controlled device supports the master device to remotely control the controlled device. The method comprises:
[0028] The controlled device is in a non-working state, and receives a first remote control instruction from the control accessory and forwarded by the server to the controlled device through a preset interface. The non-working state includes: shutdown, dormant state, sleeping state, or powered on but faulty state. The first remote control instruction is used to control the controlled device to switch from the non-working state to the working state. Then, the controlled device responds to the first remote control instruction, executes an operation corresponding to the first remote control instruction, and switches to the working state.
[0029] In this solution, the preset interface of the controlled device is plugged with a control accessory. When the controlled device is in a non-working state, there is no way to establish a connection with the server and cannot receive remote control instructions forwarded by the server. However, the controlled device can use the control accessory to receive remote control instructions from the master device forwarded by the server. Therefore, when the controlled device is in a non-working state, it can also receive remote control instructions with the help of the control accessory and respond to them. In this way, remote control of the controlled device in a non-working state is realized, and the remote control scenarios are enriched.
[0030] In a possible implementation of the second aspect, the method further includes: the controlled device switches to a working state, and the controlled device synchronizes configuration information to the control accessory. The configuration information includes network configuration information and device configuration information. The network configuration information is used to control the accessory to access the network and connect to the server. The device configuration information is used to describe the capabilities of the control accessory on the server. Thus, the control accessory can access the network and establish a connection with the server when the controlled device is in a non-working state, thereby facilitating remote control of the controlled device in a non-working state.
[0031] In a possible implementation manner of the second aspect, the device configuration information further includes authentication information, where the authentication information is used to verify the legitimacy of the user when remotely controlling the controlled device.
[0032] In a possible implementation manner of the second aspect, the device configuration information further includes server authentication information, where the server authentication information is used to register an account and password of the server and to update the password.
[0033] In a possible implementation of the second aspect, the controlled device synchronizes configuration information with the control accessory, which may specifically include: the controlled device obtains the configuration information saved by the control accessory. If the controlled device compares the latest configuration information in the controlled device with the configuration information saved by the control accessory and finds that it is inconsistent, the controlled device synchronizes the configuration information with the control accessory. If the configuration information saved by the control accessory is consistent with the latest configuration information of the controlled device, the controlled device may no longer synchronize the configuration information with the control accessory. In this way, it is possible to avoid the controlled device synchronizing repeated configuration information with the control accessory, reduce the number of write times to the memory in the control accessory, and increase the service life of the control accessory.
[0034] In a possible implementation of the second aspect, if the controlled device compares the latest configuration information in the controlled device and the configuration information saved by the control accessory and is inconsistent, then the controlled device synchronizes the configuration information to the control accessory, which may specifically include: if the controlled device compares the latest configuration information in the controlled device and the configuration information saved by the control accessory and is inconsistent, then the controlled device synchronizes the updated configuration information to the control accessory. In this way, it is possible to avoid the controlled device synchronizing repeated configuration information to the control accessory, reduce the number of writes to the memory in the control accessory, and increase the service life of the control accessory.
[0035] In a possible implementation of the second aspect, the controlled device includes a main chip and an embedded controller EC. A serial port line is provided between the main chip and the preset interface, and a serial port line is provided between the EC and the preset interface. In this implementation, the controlled device is in a non-working state, including: the main chip is in a non-working state. In this scheme, the main chip is in a non-working state, and the EC supplies power to the control accessories plugged into the preset interface through the serial port line between the main chip and the preset interface. The main chip is in a working state, and the main chip supplies power to the control accessories plugged into the preset interface through the serial port line between the main chip and the preset interface. In this way, when the controlled device is in a working state or a non-working state, the control accessories are plugged into the preset interface of the controlled device, and the controlled device can obtain power supply. Thereby ensuring that when the controlled device is in a non-working state, the control accessories can still work normally (such as sensing that the controlled device has entered a non-working state, establishing a connection with the server, etc.).
[0036] In a possible implementation of the second aspect, a first remote control instruction of a main control device for a controlled device is received from a control accessory and forwarded by a server through a preset interface, including: an EC establishes a first serial port connection with the control accessory; and an EC receives the first remote control instruction forwarded by the server from the control accessory based on the first serial port connection. EC is usually kept running all the time. In this solution, after the controlled device enters a non-working state, the EC of the controlled device can establish a serial port connection with the control accessory and communicate with the control accessory through the serial port connection. The EC in the controlled device is connected to the main chip, and the EC can control the main chip to perform operations. This ensures that when the controlled device is in a non-working state, remote control of the controlled device can still be achieved with the help of the control accessory.
[0037] In a possible implementation of the second aspect, the method further includes: the main chip is in a non-working state, and the EC obtains status information of the main chip in a non-working state. Then, the EC synchronizes the status information of the non-working state to the main control device by controlling accessories and servers. The status information of the non-working state includes the shutdown state of the main chip and / or the power information of the controlled device. In this solution, when the controlled device is in a non-working state, the EC can obtain the status information of the controlled device in a non-working state, and synchronize the status information of the non-working state to the main control device by controlling accessories and servers. Thereby, it is convenient to display the status information of the controlled device in a non-working state on the main control device for the user to review.
[0038] In a possible implementation of the second aspect, the EC may also send a heartbeat packet of the EC to the control accessory based on the first serial port connection. The heartbeat packet of the EC may be used by the control accessory to maintain the serial port connection between the control accessory and the EC. For example, when the control accessory does not receive the heartbeat packet of the EC after a timeout, it may be determined that the serial port connection between the EC and the control accessory is disconnected.
[0039] In a possible implementation of the second aspect, the EC may also receive a feedback message of successful reception of a heartbeat packet returned by the control accessory based on the first serial port connection. The EC may also determine whether the control accessory is in a normal state based on the feedback message. Specifically, if the EC times out without receiving a feedback message from the control accessory, the EC may determine that an abnormality may have occurred in the control accessory. This facilitates the perception of the state of the control accessory when the controlled device is in a non-working state.
[0040] In a possible implementation of the second aspect, the method further includes: after the main chip switches to the working state, the EC disconnects the first serial port connection with the control accessory, and the main chip establishes a second serial port connection with the control accessory. The main chip sends a heartbeat packet to the control accessory based on the second serial port connection. The heartbeat packet is used to determine that the main chip has switched to a non-working state when the control accessory has not received the heartbeat packet after a timeout. In this way, it is easy for the control accessory to quickly sense that the main chip has entered a non-working state, so that the control accessory can establish a connection with the server in a timely manner and restore the remote control capability of the controlled device in a timely manner. In a scenario where the controlled device suddenly goes offline (such as a failure), the control accessory can establish a connection with the server in a timely manner based on the heartbeat packet, and can restore the remote control capability of the main control device to the controlled device in a timely manner, thereby improving the stability of remote control.
[0041] In a possible implementation of the second aspect, the main chip receives a feedback message indicating successful reception of a heartbeat packet returned by the control accessory based on the second serial port connection. The feedback message can be used by the main chip to determine whether the control accessory is in a normal state. Specifically, if the EC times out without receiving a feedback message from the control accessory, it can be determined that an abnormality may have occurred in the control accessory. This facilitates the perception of the state of the control accessory when the controlled device is in a working state.
[0042] In a possible implementation manner of the second aspect, the method further includes: after the EC detects that the main chip is switched to a non-working state, sending a first notification message to the control accessory, so that the control accessory determines that the main chip is switched to a non-working state based on the first notification message. The message that the main chip enters a non-working state can be notified to the control accessory by the EC, so that the control accessory establishes a connection with the server to achieve remote control of the controlled device in the non-working state.
[0043] In a possible implementation of the second aspect, when the main chip receives an event that triggers the main chip to switch to a non-working state, the main chip sends a second notification message to the control accessory, and switches to a non-working state in response to the event. The second notification message is used to notify the control accessory to determine that the main chip has switched to a non-working state. The message that the main chip enters a non-working state can also be actively notified to the control accessory by the main chip before switching to a non-working state, so that after receiving the second notification message, the control accessory establishes a connection with the server to achieve remote control of the controlled device in a non-working state.
[0044] In a possible implementation of the second aspect, the method further includes: after the controlled device switches to the working state, the controlled device establishes a connection with the server. Based on the connection, the controlled device receives a second remote control instruction from the master device forwarded by the server, and the second remote control instruction includes a shutdown instruction, a hibernation instruction, a sleep instruction, a restart instruction, a video playback instruction, a music playback instruction, or a volume adjustment instruction. Then, the controlled device responds to the second remote control instruction and performs the operation corresponding to the second remote control instruction. In this solution, after the controlled device switches the working state, remote control can no longer be achieved with the help of control accessories. Instead, the controlled device directly establishes a connection with the server, so that the controlled device can directly receive the remote control instruction from the master device from the server and respond to it. In addition, remote control of the controlled device in the working state is achieved.
[0045] In a possible implementation of the second aspect, before the controlled device establishes a connection with the server, the method may further include: the controlled device sends a stop reconnection instruction to the control accessory, and the stop reconnection instruction is used to instruct the control accessory to turn off the reconnection function. The reconnection function includes: when the first connection between the control accessory and the server is disconnected, the control accessory automatically re-requests to establish a connection with the server. After the controlled device establishes a connection with the server, the connection between the control accessory and the server is disconnected. If the control accessory turns on the reconnection function, the control accessory will reconnect to the server. The connection between the control accessory and the server will preempt the connection between the controlled device and the server. Therefore, in this solution, before the controlled device establishes a connection with the server, the controlled device sends a stop reconnection instruction to the control accessory, so that the control accessory turns off the reconnection function. After that, the controlled device establishes a connection with the server, and the control accessory will no longer reconnect to the server. This avoids the problem of the controlled accessory preempting the connection to the server after the controlled device is connected to the server.
[0046] In a possible implementation manner of the second aspect, after the controlled device enters the working state, the main chip may establish a connection with the server, and the main chip may receive the second remote control instruction from the main control device forwarded by the server.
[0047] In a possible implementation manner of the second aspect, after the controlled device enters the working state, the main chip may specifically send a stop reconnection instruction to the control accessory.
[0048] In a third aspect, a control accessory is provided, which includes: a preset interface, a wireless communication module, a memory, and one or more processors; the preset interface, the wireless communication module, the memory, and the processor are coupled. The preset interface is used for the control accessory to be plugged into the controlled device, and the controlled device supplies power to the control accessory, and supports data transmission between the control accessory and the controlled device. The memory is used to store network configuration information of the controlled device; the network configuration information includes information for accessing the network and login information of the server. The memory also stores computer program code, which includes computer instructions. When the computer instructions are executed by the processor, the control accessory executes the remote control method of the electronic device of any one of the above-mentioned first aspects.
[0049] In a possible implementation manner of the third aspect, the wireless communication module, memory, and processor are integrated in a preset chip, and the preset chip is connected to a preset interface.
[0050] In a fourth aspect, an electronic device is provided, which may be the above-mentioned controlled device. The controlled device includes: a preset interface, a memory, a wireless communication module and one or more processors. The preset interface, the memory, the wireless communication module are coupled to the processor. The preset interface of the controlled device is used to plug in the control accessories, power the control accessories, and transmit data with the control accessories. The memory is used to store computer-executable instructions. When the electronic device is running, the processor executes the computer-executable instructions stored in the memory so that the electronic device executes the remote control method of the electronic device as described in any one of the above-mentioned second aspects.
[0051] In a possible implementation of the fourth aspect, the processor of the electronic device includes a main chip and an embedded controller EC. A serial port line is provided between the main chip and the preset interface, and a serial port line is provided between the EC and the preset interface. In this implementation, when the main chip is in a non-working state, the EC supplies power to the control accessory through the preset interface. When the main chip is in a working state, the main chip supplies power to the control accessory through the preset interface.
[0052] In a fifth aspect, a communication system is provided, the communication system comprising: a master control device, a controlled device, a server and a control accessory. The control accessory is plugged into a preset interface of the controlled device, and the controlled device supplies power to the control accessory through the preset interface.
[0053] At the same time, the controlled device supports the master device to remotely control the controlled device.
[0054] The controlled device is used for: when the controlled device is in working state, synchronizing the network configuration information of the controlled device to the control accessory through a preset interface; wherein the network configuration information includes information for accessing the network and login information of the server.
[0055] The control accessory is used to establish a first connection with a server through network configuration information if the controlled device is in a non-working state.
[0056] The control accessory is also used for: based on the first connection, receiving a first remote control instruction from the master device to the controlled device forwarded by the server, and sending the first remote control instruction to the controlled device.
[0057] The controlled device is also used to: respond to the first remote control instruction, execute an operation corresponding to the first remote control instruction, and switch to a working state.
[0058] In a possible implementation of the fifth aspect, the controlled device includes a main chip and an EC. When the main chip is in a non-working state, the EC of the controlled device is used to obtain and synchronize state information of the controlled device in the non-working state to the control accessory. The control accessory is also used to synchronize the state information of the non-working state to the main control device through the server after receiving the state information of the non-working state synchronized by the controlled device.
[0059] In a possible implementation of the fifth aspect, after the controlled device enters the working state, the main chip establishes a second connection with the server. The main chip receives a second remote control instruction from the main control device through the server interface and executes an operation corresponding to the second remote control instruction.
[0060] In a possible implementation manner of the fifth aspect, when the controlled device is in a working state, the main chip sends a heartbeat packet of the main chip to the control accessory.
[0061] In a possible implementation of the fifth aspect, the control accessory is further used to establish a first connection with the server through network configuration information when a heartbeat packet from the main chip is not received within a timeout period.
[0062] In a possible implementation manner of the fifth aspect, the control accessory is further configured to return a feedback message indicating successful reception of the heartbeat packet to the main chip after receiving the heartbeat packet from the main chip.
[0063] In a possible implementation manner of the fifth aspect, the control accessory is further used to enable a reconnection function after the control configuration accessory establishes a first connection with the server.
[0064] In a possible implementation of the fifth aspect, after the controlled device enters the working state, before the main chip establishes the second connection with the server, the main chip sends a stop reconnection instruction to the control accessory. The control accessory is further configured to shut down the reconnection function in response to the stop reconnection instruction.
[0065] In a sixth aspect, a computer-readable storage medium is provided, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer can execute the remote control method of an electronic device according to any one of the first aspect or the second aspect.
[0066] In a possible implementation manner of the sixth aspect, the computer is an electronic device (such as a controlled device), or the computer is a control accessory.
[0067] In a seventh aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the remote control method of an electronic device according to any one of the first aspect or the second aspect.
[0068] In a possible implementation manner of the seventh aspect, the computer is an electronic device (such as a controlled device), or the computer is a control accessory.
[0069] In an eighth aspect, a device (for example, the device may be a chip system) is provided, the device including a processor for supporting a computer to implement the functions involved in the first aspect or the second aspect. In one possible design, the device also includes a memory for storing program instructions and data necessary for the computer. When the device is a chip system, it may be composed of a chip, or may include a chip and other discrete devices.
[0070] Among them, the technical effects brought about by any design method in the third aspect to the eighth aspect can refer to the technical effects brought about by different design methods in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] Figure 1 A schematic diagram of an operation interface for remotely controlling a PC using a mobile phone provided in an embodiment of the present application;
[0072] Figure 2 A schematic diagram of a scenario in which a mobile phone remotely controls a PC provided in an embodiment of the present application;
[0073] Figure 3 A schematic diagram of a scenario in which a mobile phone remotely controls a PC provided in an embodiment of the present application;
[0074] Figure 4 A schematic diagram of the architecture of a communication system provided in an embodiment of the present application;
[0075] Figure 5 A schematic diagram of the structure of a controlled device provided in an embodiment of the present application;
[0076] Fig. 6A A schematic diagram of a connection between a control accessory and a controlled device provided in an embodiment of the present application;
[0077] Figure 6B A schematic diagram of a scenario in which a mobile phone remotely controls a PC through a control accessory provided in an embodiment of the present application;
[0078] Figure 6C A schematic diagram of a scenario in which a mobile phone remotely controls a PC through a control accessory provided in an embodiment of the present application;
[0079] Fig.6D A schematic diagram of a scenario in which a mobile phone remotely controls a PC through a control accessory provided in an embodiment of the present application;
[0080] Fig. 7A A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0081] Figure 7B A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0082] Figure 7C A schematic diagram of a scenario in which a mobile phone remotely controls a PC through a control accessory provided in an embodiment of the present application;
[0083] Figure 8 A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0084] Fig. 9 A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0085] Fig.10 A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0086] Fig.11 A flowchart of a remote control method for an electronic device provided in an embodiment of the present application;
[0087] Fig.12 A schematic diagram of the structure of a chip system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0088] Personal computers are usually bulky and difficult to carry / move. Even lightweight notebook PCs are still not portable enough compared to mobile phones and tablet computers. Therefore, users are paying more and more attention to remotely controlling PCs through devices such as mobile phones or tablet computers.
[0089] Figure 1 FIG. 1 shows a schematic diagram of an operation interface for remotely controlling a PC via a mobile phone. Figure 1As shown, the mobile phone displays a desktop 100, which includes a setting application icon 101, and may also include other application icons, such as a weather application icon and the like.
[0090] The mobile phone may receive an operation on the setting application icon 101, and in response to the operation, the mobile phone displays a setting details interface 102. The setting details interface 102 includes a plurality of setting sub-options, such as more connection options 103.
[0091] The mobile phone may receive an operation on the more connection option 103, and in response to the operation, the mobile phone displays a more connection details page 104. The more connection details page 104 includes a variety of connection sub-options, such as an option 105 to connect to my PC.
[0092] The mobile phone may receive an operation on the option 105 of connecting to my PC, and in response to the operation, the mobile phone displays a page 106 of PCs to which the mobile phone is connected. In the page 106, the mobile phone displays a list of PCs pre-added by the mobile phone, such as laptops and personal computers. There are many ways to add a PC, such as scanning a QR code of a controlled PC to obtain an ID of the controlled PC, or obtaining an ID of the controlled PC through Bluetooth, Wi-Fi transmission, etc.
[0093] The mobile phone can receive the operation on the option 107 corresponding to my laptop shown in page 106, and in response to the operation, display the remote control interface 108 for my laptop. It can be understood that in this example, the mobile phone is the master device in the remote control, and the laptop is the controlled device in the remote control.
[0094] The remote control interface 108 displays the current status of the laptop, such as being in a shutdown state. The remote control interface 108 also displays icons for power on / off / sleep wake-up / hibernation wake-up, and other options, such as sleep / hibernation options, restart options, play music, play video, increase volume, and decrease volume. It can be understood that the above Figure 1 The remote control interface for the PC in the mobile phone shown is only an example. In other embodiments, the remote control interface may include other content.
[0095] However, in order to remotely control a PC, the remote PC usually needs to remain powered on and connected to the Internet. If the PC is in a non-working state such as shutdown, sleep or hibernation, it is impossible to remotely control the PC using other electronic devices.
[0096] For example, please refer to Figure 2, when the laptop is powered on and connected to the mobile phone, the current laptop is powered on. The mobile phone receives an operation on the power on / power off / sleep wake up / hibernation wake up icon 202 shown in the remote control interface 201. Since the current state of the PC is powered on, the operation triggers a remote shutdown command. In response to the operation, the mobile phone can send a remote shutdown command to "my laptop" through the server, thereby controlling the corresponding laptop to shut down.
[0097] After the notebook computer is shut down, the mobile phone will usually be disconnected from the notebook computer. At the same time, the mobile phone can display a prompt message indicating that the notebook computer is offline on the remote control interface 201. Afterwards, the mobile phone can no longer remotely control the notebook computer.
[0098] In other examples, the laptop is turned on and still connected to the phone. When the user closes the laptop screen, the laptop usually goes into sleep mode, such as Figure 3 In this case, the laptop will also be disconnected from the phone, resulting in the phone no longer being able to remotely control the laptop.
[0099] In addition to the above two scenarios, the laptop computer may also enter a non-working state if the laptop computer fails, enters a sleep state when a timer is reached, or enters a sleep state or shuts down in response to a user's operation on the laptop computer.
[0100] When the laptop enters a non-working state, if the user needs to use the laptop remotely, the user must first perform a local power-on operation, hibernation wake-up operation, or sleep wake-up operation on the laptop, that is, switch the laptop to a working state before remote control can be achieved through other devices. In this way, the use scenarios of remote control are relatively limited. Moreover, in the scenario where the laptop fails, the user's remote control of the laptop will be suddenly interrupted, and the stability of remote control is insufficient. Therefore, there is an urgent need for a method that can remotely control the PC through other devices when the PC is in a non-working state such as shutdown, sleep or hibernation.
[0101] Based on this, an embodiment of the present application proposes a remote control method for an electronic device. In this solution, a control accessory that can be connected to a controlled device is designed, and with the help of the control accessory connected to the controlled device, the controlled device can still be remotely controlled when the controlled device is in a non-working state.
[0102] The control accessory can be connected to the controlled device. For example, the control accessory can be plugged into the controlled device through a preset interface on the controlled device (such as a universal serial bus (USB) interface). The control accessory is integrated with a chip that implements the wireless communication function, which can support the control accessory to establish a long connection with the server and receive remote control instructions for the controlled device from the main control device through the server. Then the control accessory can forward the remote control instructions to the controlled device based on the connection with the controlled device. The control accessory, the main control device, the controlled device and the server constitute a communication system.
[0103] Specifically, the controlled device includes at least a main chip and an embedded controller (EC). When the controlled device is in a working state, the main chip is connected to a preset interface and supplies power to the preset interface. After the controlled device is turned off or enters a sleep / hibernation mode, the EC is connected to the preset interface and supplies power to the preset interface. In the remote control method of the electronic device, the control accessory is plugged into the preset interface of the controlled device and connected to the controlled device. After the controlled device is turned off, enters a sleep / hibernation mode, or is in a powered-on state but fails, the control accessory can establish a long connection with the server. For example, when the controlled device is in a powered-off state, the control accessory can receive a remote power-on instruction from the main control device forwarded by the server based on the long connection. Then, the control accessory interacts with the controlled device through the EC based on the above remote power-on instruction to control the main chip to start. After the main chip of the controlled device is started, the controlled device can establish a long connection with the server through the main chip, thereby realizing remote control through the long connection between the main chip and the server, and the main control device and the server.
[0104] Combination Figure 4 , the architecture of the communication system consisting of the above-mentioned control accessories, the main control device, the controlled device and the server is introduced.
[0105] like Figure 4 As shown, the communication system may include a master control device, a server and a controlled device. Figure 4 The number of each device is shown as one by way of example, but the number of the master device, the server, and the controlled device can be one or more, respectively, and this is not limited in the embodiments of the present application.
[0106] The main control device can be equipped with Or portable terminal devices with other operating systems, the product forms of the main control device include but are not limited to: mobile phones, tablet computers, desktop computers, laptop computers, handheld computers, notebook computers, ultra-mobile personal computers (ultra-mobile personal computers, UMPC), netbooks, personal digital assistants (personal digital assistants, PDA), wearable devices, vehicle-mounted devices or other types of electronic devices, etc.
[0107] In the embodiment of the present application, the main control device can establish a communication connection with the server and perform data communication based on the communication connection. Specifically including:
[0108] (1) When the controlled device is in working state, after the main control device detects the remote control operation input by the user, in response to the remote control operation, it can send a command for remotely controlling the controlled device (such as shutdown, restart, play video, play music, etc.) to the server based on the communication connection. Since the controlled device is in working state, the server will forward the remote control command to the main chip of the controlled device for execution.
[0109] (2) When the controlled device is not in operation, after the main control device detects the remote control operation input by the user, in response to the remote control operation, it can send instructions for remotely controlling the controlled device (such as power on, sleep wake-up, hibernation wake-up, and restart instructions) to the server based on the communication connection. Since the controlled device is not in operation, the server will forward the remote control instruction to the control accessory connected to the controlled device, and the control accessory will forward the remote control instruction to the EC of the controlled device, and then the EC will control the main chip of the controlled device to perform corresponding operations, such as startup (corresponding to the power on instruction), sleep wake-up, hibernation wake-up, or restart.
[0110] (3) The master control device can also receive status information of the controlled device forwarded by the server based on the communication connection (such as power-on status, power-off status, dormant status, sleep status, fault status, and power status information).
[0111] The controlled device can be equipped with Or portable terminal devices with other operating systems, the product forms of the controlled devices include but are not limited to: mobile phones, tablet computers, desktop computers, laptop computers, notebook computers, super mobile personal computers, netbooks, as well as augmented reality (AR) devices, virtual reality (VR) devices, artificial intelligence (AI) devices, wearable devices, vehicle-mounted devices, smart home devices and / or smart city devices, etc.
[0112] In the embodiment of the present application, the controlled device can establish a communication connection (i.e., the above-mentioned long connection) with the server, and perform data communication based on the communication connection. Specifically, it includes:
[0113] When the controlled device is turned on and not faulty (working state), the main chip of the controlled device is in working state. Therefore, the controlled device can establish a communication connection with the server through the main chip and perform data communication based on the communication connection. For example, the main chip can receive remote control instructions of the main control device forwarded by the server based on the communication connection (such as shutdown, hibernation, sleep, restart, or play music instructions). Afterwards, the main chip directly responds to the remote control instructions to perform the corresponding tasks. For another example, the controlled device can also send status information of the controlled device (such as power-on status, power status, etc.) to the server based on the communication connection established between the main chip and the server.
[0114] In the controlled device, a bus connection can be used between the main chip and the EC.
[0115] Based on the bus connection between the main chip and the EC, the EC can query the status information of the controlled device from the main chip, including but not limited to: power-on status, power-off status, sleep status, hibernation status, fault status, or power status information, etc. And, when the main chip is in a non-working state, based on the bus connection between the main chip and the EC, the EC can control the main chip to perform corresponding operations in response to remote control instructions received from the control accessories.
[0116] The controlled device includes a preset interface for connecting the controlled device with the control accessory. Exemplarily, the preset interface can be a USB interface. Further, in the controlled device, a serial port line can be provided between the main chip and the USB interface, and a serial port line is also provided between the EC and the USB interface. Specifically, the serial port line can be a Universal Asynchronous Receiver / Transmitter (UART) connection. UART is a universal serial data bus used for asynchronous communication.
[0117] In the embodiment of the present application, the control accessory can be plugged into the controlled device. Exemplarily, the control accessory is plugged into the controlled device via a USB interface. From the above description of the controlled device, it can be seen that serial lines are respectively set between the main chip and EC in the controlled device and the USB interface. Therefore, when the control accessory is connected to the controlled device, the main chip and EC of the controlled device can establish communication connections with the control accessory respectively.
[0118] Based on the communication connection between the main chip and the control accessory, the main chip can synchronize configuration information and send heartbeat packets to the control accessory. Among them, the configuration information synchronized by the main chip to the control accessory may specifically include: network configuration information and device configuration information. The network configuration information includes information for accessing the network and server login information. Among them, the control accessory can access the network using the same information for accessing the network as the main chip. The control accessory can use the same server login information as the main chip to establish a long connection with the server. The device configuration information may include a device model, which is used to describe the capabilities of the control accessory on the server, such as remote wake-up capability, remote restart capability, and power reporting capability. The device configuration information may also include device information, authentication information, and the like of the controlled device. The device configuration information may also be used to include server authentication information, which may be used to register an account and password on the server, and to update the password.
[0119] Based on the communication connection between the control accessory and the EC, the control accessory can send corresponding remote control instructions to the EC based on the remote control instructions received from the server. And based on the communication connection between the control accessory and the EC, the EC can send the status information of the controlled device to the control accessory, including but not limited to: the status of power on, power off, sleep, hibernation, fault, or power status, etc.
[0120] Regarding the connection relationship and data interaction between the main chip and EC of the controlled device, the control accessories and the main chip of the controlled device, and the control accessories and the EC of the controlled device, the specific implementation can refer to the description below.
[0121] The server is equivalent to a remote transfer device between the master device and the controlled device, or between the master device and the control accessory, and is used to provide remote control services for the master device. The server can be specifically used to: receive remote control instructions sent by the master device, and send the remote control instructions to the controlled device or the control accessory, so that the controlled device performs the corresponding task according to the remote control instructions. The server can also be used to: receive status information of the controlled device sent by the controlled device or the control accessory, and send the status information to the master device, so that the master device can display the status of the controlled device to the user. In some embodiments, the server can specifically be a cloud server.
[0122] The following, combined Figure 5 The hardware structure of the controlled device in the above communication system is introduced. Figure 5 As shown, the controlled device may include: a main chip 301, an EC 302, a communication module 303, a memory 304, a display screen 305, a button 306, a universal serial bus 307, and a USB interface 308. It is understandable that the hardware architecture illustrated in the embodiment of the present application does not constitute a specific limitation on the controlled device. In other embodiments of the present application, the controlled device may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0123] The main chip 301 may include one or more processing units, for example: the main chip 301 may include AP, modem processor, GPU, ISP, internal control accessories, memory, video codec, DSP, baseband processor, and / or NPU, etc. Among them, different processing units can be independent devices or integrated in one or more processors. Among them, the internal control accessories can be the nerve center and command center of the controlled device. The internal control accessories can generate operation control signals according to the instruction opcode and timing signal to complete the control of instruction fetching and execution. Usually, when the controlled device is turned off, dormant, sleeping, etc., the main chip 301 is powered off, and the main chip 301 will only be powered on when the controlled device is turned on.
[0124] A high-speed cache memory may also be provided in the main chip 301. In some embodiments, the high-speed cache memory may store instructions or data that have just been used or are cyclically used by the main chip 301. If the main chip 301 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the main chip 301, and thus improves the efficiency of the system.
[0125] The main chip 301 may include one or more interfaces. The interface may include an inter-integrated circuit (I2C) interface, a pulse code modulation (PCM) interface, a UART interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, and / or a USB interface.
[0126] EC 302 is equivalent to a single-chip microcomputer. Usually, EC302 is always powered on except when the controlled device runs out of power or the battery is damaged. EC 302 also includes a non-volatile memory that stores independently running software. EC 302 controls the power-on timing of the computer motherboard, manages battery charging and discharging, and provides conventional IO functions such as keyboard matrix interface, intelligent fan interface, and serial port. In an embodiment of the present application, when the main chip 301 is in a non-working state, EC302 can respond to remote control instructions from the control accessories to control the main chip to perform corresponding tasks. In addition, EC302 can also obtain status information of the main chip 301.
[0127] The communication function of the controlled device can be realized through an antenna, a communication module 303, a modem processor, and a baseband processor.
[0128] The antenna is used to transmit and receive electromagnetic wave signals. Each antenna in the controlled device can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve the utilization of the antenna. For example, the antenna can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.
[0129] The modem processor may include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be sent into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After the low-frequency baseband signal is processed by the baseband processor, it is passed to the application processor. The application processor outputs a sound signal through an audio device, or displays an image or video through a display screen. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the main chip 301 and be set in the same device as the communication module 303 or other functional modules.
[0130] The communication module 303 may include one or more, for example, the main chip 301 integrates a communication module 303. The communication module 303 can provide solutions for wireless communications including WLAN (such as Wi-Fi network), BT, GNSS, FM, NFC, IR, etc. applied to the controlled device. The communication module 303 can be one or more devices integrating at least one communication processing module. The communication module 303 receives electromagnetic waves via an antenna, demodulates and filters the electromagnetic wave signals, and sends the processed signals to the main chip 301. The communication module 303 can also receive the signal to be sent from the main chip 301, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna. In an embodiment of the present application, the main chip 301 of the controlled device can establish a communication connection with the server through the communication module 303, and realize data communication between the controlled device and the server based on the communication connection.
[0131] In the embodiment of the present application, the antenna of the controlled device is coupled to the communication module 303, so that the controlled device can communicate with the server through wireless communication technology. The wireless communication technology may include WLAN, BT, GNSS, NFC, FM, and / or IR technology, etc. The GNSS may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a Beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS) and / or a satellite based augmentation system (SBAS).
[0132] The controlled device realizes the display function through GPU, display screen 305, and application processor. GPU is a microprocessor for image processing, connecting display screen 305 and application processor. GPU is used to perform mathematical and geometric calculations for graphics rendering. The main chip 301 may include one or more GPUs, which execute program instructions to generate or change display information.
[0133] The display screen 305 is used to display images, videos, etc. The display screen 305 includes a display panel. The display panel can be a liquid crystal display (LCD). The display screen panel can also be made of an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), miniLED, microLed, micro-oled, quantum dot light emitting diodes (QLED), etc. In some embodiments, the controlled device may include 1 or N display screens 305, where N is a positive integer greater than 1.
[0134] The memory 304 may include one or more RAMs and one or more NVMs. The RAM can be directly read and written by the main chip 301, and can be used to store executable programs (such as machine instructions) of the operating system or other running programs, and can also be used to store user and application data, etc. The NVM can also store executable programs and store user and application data, etc., and can be loaded into the random access memory in advance for direct reading and writing by the main chip 301.
[0135] RAM may include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM, for example, the fifth generation DDR SDRAM is generally referred to as DDR5 SDRAM), etc.;
[0136] NVM can include disk storage devices and flash memory. Flash memory can be divided into NOR FLASH, NAND FLASH, 3D NAND FLASH, etc. according to the operating principle. It can be divided into single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc. according to the potential level of the storage unit. It can be divided into universal flash storage (UFS) and embedded multi media card (eMMC) according to the storage specification.
[0137] The bus 307 may be connected via any one or more types of interfaces such as the aforementioned I2C interface, PCM interface, UART interface, MIPI interface, GPIO interface, and / or USB interface. It is understood that Figure 5 The modules are connected via bus 307. Based on the bus connection between the main chip 301 and EC 302, EC 302 can control the main chip 301 to start working based on the remote control command received from the control accessory; and based on the bus connection between the main chip 301 and EC 302, EC 302 can query the status information of the controlled device from the main chip 301.
[0138] The key 306 includes a power button, etc. The key 306 may be a mechanical key or a touch key. The controlled device may receive key input and generate key signal input related to user settings and function control of the controlled device.
[0139] The USB interface 308 is an interface that complies with the USB standard specification, and specifically can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc. The USB interface 308 can be used to connect a charger to charge the controlled device, and can also be used to transmit data between the controlled device and the peripheral device. In the embodiment of the present application, the USB interface 308 can be used to connect a control accessory so that when the controlled device is in a non-working state, the main control device can remotely control the controlled device through the control accessory.
[0140] Fig. 6AThe connection method between the control accessory and the controlled device in some embodiments is shown. Exemplarily, the laptop computer 401 (i.e., the above-mentioned controlled device) includes a preset interface 1 (such as a USB interface), and the control accessory 403 has a preset interface 2 (such as a USB interface). The preset interface 1 corresponds to the preset interface 2. The preset interface 2 of the control accessory 403 can be connected to the controlled device by accessing the USB interface through the preset interface 1 of the laptop computer 401. It should be noted that inside the laptop computer 401, a serial port line is provided between the main chip of the laptop computer 401 and the preset interface 1, and a serial port line is also provided between the EC of the laptop computer 401 and the preset interface 1. Therefore, after the control accessory 403 is connected to the preset interface 1, the main chip and EC of the laptop computer can both establish a serial port connection with the control accessory based on their respective serial port lines. It can be understood that Fig. 6A The control accessory 403 shown is only an example of one form of the control accessory.
[0141] In some embodiments, the control accessory may integrate a chip that implements wireless communication functions. A storage module may also be provided in the control accessory, which may be used to store configuration information synchronized from the main chip of the controlled device to the control accessory. The storage module of the control accessory may specifically be a non-volatile memory, such as a flash memory.
[0142] The control accessories involved in the embodiments of the present application need to be used when powered on. It can be seen from the above description that the control accessories are plugged into the controlled device through a preset interface. When the controlled device is in working state, the main chip is connected to the preset interface to supply power to the preset interface; after the controlled device is shut down or enters sleep / hibernation mode, the EC supplies power to the preset interface. In other words, after the control accessory is connected to the controlled device, when the controlled device is in working state, the main chip of the controlled device can supply power to the control accessory. When the controlled device is in non-working state, the EC of the controlled device can supply power to the control accessory.
[0143] Figure 6B As shown, the control accessory 403 is plugged into the laptop computer 401 through the USB interface on the laptop computer. In the embodiment of the present application, when the laptop computer 401 is in the shutdown state, the mobile phone does not display the disconnection from the laptop computer, but can still display the remote control interface 404 for the laptop computer. The user can still operate on the remote control interface 404 to send remote control instructions to the laptop computer 401. Since the current laptop computer 401 is in the shutdown state, the user is supported to control the startup of the laptop computer 401 through the mobile phone, so the startup / shutdown / sleep wakeup / hibernation wakeup icon 405 can be displayed on the remote control interface 404.
[0144] In response to the user's triggering operation on the power on / off / sleep wake-up / hibernation wake-up icon 405 of the remote control interface 404, the mobile phone can forward the remote power on command to the control accessory 403 through the server. After receiving the remote power on command from the mobile phone with the help of the control accessory, the laptop 401 can perform the power on operation.
[0145] After the laptop 401 is turned on, the main chip can establish a long connection with the server, and the main chip can synchronize the status information of the laptop 401 to the server based on the long connection. Then, the server can send the received status information of the laptop 401 to the mobile phone. The mobile phone can update the remote control interface based on the status information, such as Figure 6B The remote control interface 406 is shown. In the remote control interface 406, the current state of the PC is turned on. In addition, since the laptop 401 is turned on, the remote control interface 406 can also display the task options that allow the mobile phone to remotely control the laptop when the laptop is turned on.
[0146] In other examples, such as Figure 6C As shown, the control accessory 403 is plugged into the laptop computer 401 through the USB interface on the laptop computer. In the embodiment of the present application, the laptop computer 401 is in a sleep state, and the laptop computer 401 displays a sleep interface 407. The mobile phone can still display a remote control interface 408 for the laptop computer. Since the laptop computer 401 is currently in a sleep state, it supports the user to control the laptop computer 401 to wake up from sleep through the mobile phone, so the remote control interface 408 can display a power on / off / sleep wake up / hibernation wake up icon 409.
[0147] In response to the user's triggering operation of the power on / off / sleep wake-up / hibernation wake-up icon 409 of the remote control interface 408, the mobile phone can forward the remote sleep wake-up instruction to the control accessory 403 through the server. After receiving the remote sleep wake-up instruction from the mobile phone with the help of the control accessory, the laptop 401 can perform the sleep wake-up operation. After the laptop 401 switches from the sleep state to the working state, the main interface 410 can be displayed.
[0148] Similarly, after the laptop 401 is awakened from sleep, the main chip can synchronize the status information of the laptop 401 to the mobile phone through the long connection established with the server. Thus, the mobile phone updates the remote control interface based on the received status information, such as Figure 6C The remote control interface 411 is shown. When the display screen of the notebook computer 401 is in a closed state and the notebook computer is turned on, the user can still remotely control the notebook computer to perform some operations through the mobile phone.
[0149] In other examples, such as Fig.6DAs shown, when the display screen of the laptop computer 401 is closed and the laptop computer 401 enters a sleep state, the mobile phone can still display a remote control interface 412 for the laptop computer. The remote control interface 412 includes icons 413 for power on / off / sleep wake-up / hibernation wake-up.
[0150] In response to the user's triggering operation of the power on / off / sleep wake-up / hibernation wake-up icon 413 of the remote control interface 412, the mobile phone can forward the remote sleep wake-up instruction to the control accessory 403 through the server. After receiving the remote sleep wake-up instruction from the mobile phone with the help of the control accessory, the laptop 401 can perform the sleep wake-up operation.
[0151] Similarly, after the laptop 401 is awakened from sleep, the main chip can synchronize the status information of the laptop 401 to the mobile phone through the long connection established with the server. Thus, the mobile phone updates the remote control interface based on the received status information, such as Fig.6D The remote control interface 414 is shown. When the display screen of the notebook computer 401 is in a closed state and the notebook computer is turned on, the user can still remotely control the notebook computer to perform some operations through the mobile phone.
[0152] The following is a brief introduction to several technical terms involved in this application:
[0153] Long connection is a relative concept of short connection. Short connection means that the control accessory and the server establish a connection each time they need to send data, and disconnect after the data is sent. That is, each established connection is only used to complete one data sending operation. Long connection means that the control accessory and the server do not disconnect after establishing the connection and sending the data, but continue to maintain the connection. When data needs to be sent later, the data can be sent directly on the maintained connection. When the control accessory and the server maintain a long connection, the control accessory and the server can send multiple data packets continuously on one connection. Moreover, during the long connection, if no data packets are sent for a long time, the control accessory and the server are usually required to detect the current communication link to detect the failure of the communication link in time.
[0154] The reconnection function includes: after the control accessory disconnects the persistent connection with the server, the control accessory can automatically re-request to establish a new persistent connection with the server. For example, if the control accessory suddenly loses power and disconnects the persistent connection with the server, after the power is restored, the control accessory will automatically trigger a request to re-request to establish the persistent connection with the server.
[0155] In an embodiment of the present application, when the control accessory determines that the main chip is in a non-working state, the control accessory can establish a long connection with the server to implement a remote control function.
[0156] The main chip is in a working state including: the state where the controlled device is powered on and not faulty. Specifically, when the controlled device is powered on, the main chip is powered on, and thus has working conditions. Furthermore, if the controlled device is not faulty, the main chip can work normally.
[0157] The main chip is in a non-working state, including but not limited to: the controlled device is turned off, asleep, hibernating, or turned on but faulty.
[0158] When the main chip of the controlled device is in working state, it means that the controlled device is in working state. When the main chip of the controlled device is in non-working state, it means that the controlled device is in non-working state.
[0159] Generally, when the main chip is in a non-working state, the control accessory is in a working state. Specifically, when the control accessory determines that the main chip is in a non-working state, the control accessory establishes a long connection with the server to remotely control the controlled device.
[0160] The remote control method of an electronic device provided in the embodiment of the present application can be specifically applied to a scenario where the main control device remotely controls the controlled device through a server with the help of a control accessory when the main chip of the controlled device is in a non-working state. And the method can also be applied to a scenario where the main control device remotely controls the controlled device directly through a server when the main chip of the controlled device is in a working state.
[0161] The following will describe in detail the remote control method of the electronic device provided by the embodiment of the present application in conjunction with the accompanying drawings. Fig. 7A , which shows a flow chart of a remote control method for an electronic device provided in an embodiment of the present application. In this embodiment, the master control device is a mobile phone and the controlled device is a laptop computer. In this embodiment, the remote control method for the above electronic device can be divided into the following stages:
[0162] Phase 1: The process of synchronizing configuration information after the laptop computer (main chip) is in working state and connected to the control accessories.
[0163] Phase 2: Remote control process when the laptop (main chip) is in working state.
[0164] Phase 3: The laptop (main chip) is in a non-working state, and the control accessories establish a connection with the EC and the server.
[0165] Phase 4-1: The laptop computer (main chip) is in a non-working state, and the mobile phone remotely controls the process of the laptop computer through the control accessories.
[0166] Phase 4-2: The laptop computer (main chip) is in a non-working state, and the laptop computer executes a process in response to a local user operation.
[0167] Next, the detailed processes of the above stages will be explained respectively. Figure 7B , the above-mentioned stage 1 may specifically include S501 and S502.
[0168] S501. The main chip establishes a serial port connection with the control accessory.
[0169] The serial port connection established between the main chip and the control accessory can be recorded as a second serial port connection. For example, the user can manually operate the control accessory to plug it into a preset interface (such as a USB interface) of the laptop computer. Figure 6A-6D ,as well as Fig. 7A As shown, the control accessory is connected to the laptop. When the laptop is turned on and the laptop is connected to the control accessory, the main chip of the laptop can establish a connection with the control accessory. The main chip establishes a connection with the control accessory, and specifically, the main chip sends a serial port connection instruction to the control accessory. The control accessory responds to the serial port connection instruction and establishes a second serial port connection with the main chip. Furthermore, after the control accessory successfully establishes the second serial port connection with the main chip, it can also return a feedback message of successful connection to the main chip.
[0170] It should be noted that the user can plug the control accessory into the preset interface of the laptop before turning on the laptop. In this case, the laptop can detect that the preset interface has been connected to the control accessory after turning on. At this time, the laptop can establish a second serial port connection with the control accessory after turning on.
[0171] Alternatively, the user may also plug the control accessory into the preset interface of the laptop after the laptop is turned on. In this case, the laptop can detect whether the preset interface is connected to the control accessory when it is turned on. After the laptop detects that the preset interface is connected to the control accessory when it is turned on, it can establish a second serial port connection with the control accessory.
[0172] S502. The main chip synchronizes configuration information to the control accessory and sends a heartbeat packet.
[0173] Combined with the above description, it can be seen that the configuration information synchronized by the main chip to the control accessories can specifically include: network configuration information and device configuration information. Among them, the network configuration information can specifically include information for accessing the network (such as Wi-Fi information) and server login information (such as server domain name, registration port login account and password, etc.). The device configuration information can specifically include device model, PC (in this embodiment, a laptop) authentication information and server authentication information, etc.
[0174] Table 1 shows information synchronized from a main chip of a notebook computer to a control accessory in some embodiments.
[0175] Table 1
[0176]
[0177]
[0178] The device model is stored in the control accessory and is used to describe the capability of the control accessory on the server.
[0179] The device information indicates the device information of the laptop computer. The main chip synchronizes the device information to the control accessory, which can be used by the control accessory to determine the connected PC. In addition, the control accessory can also generate a root key based on the device information, and the root key is used to encrypt the storage information of the control accessory.
[0180] The Wi-Fi information includes the SSID and password of the Wi-Fi that the laptop has connected to before. The laptop can connect to the Wi-Fi based on the SSID and password of the Wi-Fi that it has connected to before. After the main chip synchronizes the Wi-Fi information to the control accessory, the control accessory can connect to the corresponding Wi-Fi network based on the SSID and password of the Wi-Fi.
[0181] The PC authentication information is used when the main chip or control accessory of the laptop receives a remote control instruction for the laptop to verify the authority of the sender of the remote control instruction to confirm whether the sender has the authority to remotely control the laptop. The main chip will only perform the operation corresponding to the remote control instruction if the sender of the remote control instruction has the remote control authority for the laptop. The control accessory will forward the remote control instruction to the EC only if the sender of the remote control instruction has the remote control authority for the laptop.
[0182] The server authentication information is used by the main chip of the notebook computer to register the account and password with the server, as well as to update the password.
[0183] The url, port, device ID and password in the server login information are used for the main chip or control accessory of the laptop to establish a connection with the server. The authCode, authCodeID and devSecretKey in the server login information can be used to encrypt the transmission information between the main chip or control accessory of the laptop and the mobile phone, and can also be used for the main chip or control accessory to update the server login password.
[0184] Furthermore, after the control accessory receives the configuration information synchronized by the main chip, the configuration information can be stored in the control accessory. As shown in Table 2, the configuration information stored in the control accessory from the notebook computer is described.
[0185] Table 2
[0186]
[0187] As can be seen from Table 1, the Wi-Fi information includes the SSID and password of the Wi-Fi that the laptop has connected to. After the control accessory receives and saves the configuration information synchronized by the main chip to the control accessory, when the control accessory needs to establish a long connection with the server, the control accessory can first obtain the Wi-Fi information from the storage area of the control accessory. Then, the control accessory logs in to the Wi-Fi network based on the SSID and password of the Wi-Fi in the Wi-Fi information.
[0188] After the control accessory is connected to the network, it can send a connection request to the server. As can be seen from Table 1, the laptop synchronizes the url, port and server login information to the control accessory, and the server login information includes the device ID and password. The control accessory can determine the access address of the server based on the url and port. After that, the control accessory can send a connection request to the server based on the device ID and password and the access address of the server. After receiving the connection request, the server can verify the device ID and password carried therein, and establish a connection with the control accessory after the verification is passed.
[0189] When the control accessory is connected to the laptop for the first time, the control accessory does not store the configuration information of the laptop, so the control accessory cannot connect to the Internet or log in to the server. The mobile phone also has no way to forward remote control commands through the server and the control accessory to remotely control the laptop to perform operations such as starting up, restarting, waking up from hibernation, or waking up from sleep when the laptop is not in working state.
[0190] In some embodiments, the laptop computer can trigger the main chip to synchronize configuration information with the control accessory each time the main chip and the control accessory establish a second serial port connection. When the control accessory receives the configuration information synchronized by the main chip, if the control accessory has not saved the configuration information, the control accessory can directly save the configuration information; if the control accessory has saved the configuration information of the last synchronization, the control accessory can overwrite the saved configuration information storage with the latest received configuration information.
[0191] This is not the first time that the control accessory is connected to the laptop computer, and the configuration information of the laptop computer may have been stored in the control accessory. However, the configuration information of the laptop computer may be updated, such as updates to the network configuration information, server login information, etc. Therefore, in other embodiments, after the main chip of the laptop computer establishes a second serial port connection with the control accessory, the laptop computer may first detect whether the configuration information stored in the control accessory is consistent with the latest configuration information of the laptop computer. If they are consistent, the laptop computer does not need to synchronize information with the control accessory; if they are inconsistent, the laptop computer needs to synchronize information with the control accessory. Therefore, the synchronization of configuration information in the above S502 can be specifically executed when the laptop computer (main chip) detects that the configuration information stored in the control accessory is inconsistent with the latest configuration information of the laptop computer.
[0192] Furthermore, in some embodiments, when the laptop detects that the configuration information stored in the control accessory is inconsistent with the latest configuration information of the laptop, the laptop can also compare the latest configuration information in the laptop with the configuration information saved in the control accessory to determine which configuration information has been updated. Then, the laptop can only synchronize the updated configuration information to the control accessory. For example, when the laptop detects that the network configuration information stored in the control accessory is inconsistent with the latest network configuration information of the laptop, the laptop can synchronize the network configuration information to the control accessory after it is turned on. If other configuration information saved by the control accessory is the same as the latest configuration information of the laptop, the main chip can no longer synchronize this part of the configuration information to the control accessory. In this way, it is possible to avoid the controlled device synchronizing repeated configuration information to the control accessory, reduce the number of writes to the memory in the control accessory, and increase the service life of the control accessory.
[0193] In addition, after the laptop is turned on, the main chip can enter the working state. When the main chip is in the working state, in order to realize the remote control of the laptop, the main chip can establish a long connection with the server. Afterwards, the server can forward the remote control instructions from the mobile phone to the main chip of the laptop based on the long connection, thereby realizing the remote control of the laptop in the working state.
[0194] Therefore, in the above-mentioned stage 1, after the laptop is turned on, in addition to establishing a second serial port connection with the control accessory and synchronizing configuration information, the main chip can also establish a long connection with the server. The specific implementation process of the main chip establishing a long connection with the server can refer to the description of the following embodiment. Afterwards, when the mobile phone receives a remote operation triggered by the user on the remote control interface, it can send a remote control instruction corresponding to the remote operation to the server. Figure 1The remote control interface 108 shows a remote control operation, and the remote control command may be a command such as shutdown, hibernation, sleep, restart, play music, play video, or increase / decrease the volume. Figure 7B Stage 2 shown includes S5021-S5024.
[0195] S5021. The main chip establishes a long connection with the server.
[0196] S5022. The mobile phone sends remote control commands such as shutdown / restart / sleep / hibernate / play video / play music to the server.
[0197] For example, the mobile phone may respond to the user in the following manner: Figure 1 The operation of the remote control interface 108 shown in the figure sends a remote control instruction to the server. It can be understood that when the notebook computer is in working state, the remote control instruction that the mobile phone can send to the notebook computer is only an example. In other embodiments, the remote control instruction can also include other instructions.
[0198] S5023. The server forwards remote control commands such as shutdown / restart / sleep / hibernate / play video / play music to the main chip.
[0199] S5024. The main chip responds to the remote control command and executes operations such as shutdown / restart / sleep / hibernation / play video / play music.
[0200] In this way, when the laptop is in working state, the mobile phone can remotely control the laptop in working state through the long connection established between the server and the main chip of the laptop.
[0201] Please continue to refer to Figure 7B The above-mentioned stage 3 may specifically include S503-S507:
[0202] S503. The control accessory senses that the notebook computer enters a non-working state.
[0203] The laptop computer is in a non-working state, which may include: the laptop computer is turned off, enters a dormant or sleeping state, causing the main chip to suddenly lose power and stop working; or the laptop computer is turned on but a fault occurs, causing the main chip to be powered on but unable to work normally. It should be noted that the laptop computer is turned off, which may be the main chip responding to the user's local operation on the laptop computer or responding to the remote control command of the mobile phone forwarded by the server.
[0204] In some embodiments, the method of controlling the accessory to sense that the laptop computer enters a non-working state includes but is not limited to:
[0205] (1) Determined based on the heartbeat packet status between the main chip and the control accessory. When the main chip is in working state, it will periodically send heartbeat packets to the control accessory. When the control accessory times out and does not receive the heartbeat packet, it is determined that the main chip is in a non-working state.
[0206] In some embodiments, after the main chip receives the operation input of shutdown, hibernation or sleep, if the main chip is powered off and stops working before sending the instruction of logging into the server to the control accessory, the main chip cannot send heartbeat packets to the control accessory regularly based on the second serial port connection between the main chip and the control accessory. The control accessory can then determine that the heartbeat between the main chip and the main chip is lost based on the long period of time when the heartbeat packet from the main chip is not received. Afterwards, the control accessory accesses the network according to the network configuration information in the configuration information, and then establishes a long connection with the server according to the server login information in the configuration information, such as the first connection below.
[0207] Alternatively, in other embodiments, when the laptop is powered on but in a faulty state, the main chip is powered on but cannot work normally, and the main chip cannot periodically send heartbeat packets to the control accessory based on the second serial port connection, and the control accessory can then determine that the heartbeat between the main chip and the control accessory is lost. Afterwards, the control accessory accesses the network according to the network configuration information in the configuration information, and then establishes a long connection with the server according to the server login information in the configuration information.
[0208] (2) Determined based on the notification sent by the main chip to the control accessory. When the main chip receives the input of shutdown, sleep or sleep, it can notify the control accessory to log in to the server. That is, the main chip notifies the control accessory to establish a long connection with the server before powering off, so that the control accessory determines that the main chip is in a non-working state. Among them, the shutdown, sleep or sleep input received by the main chip can be an operation acting on a laptop computer, or it can be a remote control instruction sent by the server to the main chip.
[0209] In some embodiments, after the main chip of the notebook computer receives the input of shutdown, hibernation or sleep, the main chip will first send a command to the control accessory to log in to the server. Based on the command, the control accessory accesses the network according to the network configuration information in the configuration information, and then establishes a long connection with the server according to the server login information in the configuration information. Then the main chip is powered off and stops working, so that the notebook computer enters the shutdown, hibernation or sleep state.
[0210] (3) Determining the state of the laptop computer based on the EC sending to the control accessory. Specifically, the laptop computer also includes an EC, and the EC can periodically obtain the state of the main chip. Furthermore, the EC can send a notification message to the control accessory when the state of the laptop computer changes, so that the control accessory can confirm that the main chip has switched to a non-working state based on the notification.
[0211] In some embodiments, if the main chip receives an operation input of shutdown, hibernation or sleep, or the laptop is turned on but in a faulty state, the main chip will enter a non-working state. The EC can monitor the state change of the main chip. Therefore, in some embodiments, after monitoring that the main chip switches to a non-working state, the EC can send a notification message to the control accessory. This allows the control accessory to access the network and establish a long connection with the server.
[0212] The control accessory can monitor whether the main chip is in a non-working state through the above method. When it is detected that the main chip enters a non-working state (that is, the laptop enters a non-working state), the control accessory can connect to the Internet in time and establish a long connection with the server, so as to facilitate remote control when the laptop is in a non-working state.
[0213] S504. Control the accessory to access the network based on the information for accessing the network in the network configuration information.
[0214] Specifically, after receiving the configuration information in S502, the control accessory can parse out information for accessing the network (such as a Wi-Fi account and password) therefrom, and then the control accessory can access the network based on the network configuration information.
[0215] S505. Control the accessory to establish a first connection with the server based on the login information of the server in the network configuration information.
[0216] Specifically, after receiving the configuration information in S502, the control accessory can parse the server login information (such as the server URL and port, login account and password) from it, and then establish a first connection with the server based on the server login information. The first connection is the long connection mentioned above. In addition, when the control accessory requests the server to establish the first connection, it will also carry the identification of the laptop computer, which can be pre-parsed from the device configuration information.
[0217] Furthermore, after the server receives the first connection request sent by the control accessory, the login account and password may be verified. If the verification is successful, the server may establish the first connection with the control accessory and return a message to the control accessory indicating that the first connection has been successfully established. Afterwards, the server may also store the identification of the laptop computer for subsequent sending of the remote control command sent by the mobile phone to the corresponding laptop computer based on the identification of the laptop computer.
[0218] It should be noted that after the laptop computer enters the non-working state, since the main chip is switched to the non-working state, the second serial port connection between the main chip and the control accessory will be automatically disconnected.
[0219] S506. Control the accessory to establish a serial port connection with the EC.
[0220] The serial port connection established between the control accessory and the EC can be named as the first serial port connection. Exemplarily, the EC and the control accessory establish a connection, specifically, after the EC senses that the laptop computer has entered a non-working state, the EC sends a serial port connection instruction to the control accessory. The control accessory responds to the serial port connection instruction and establishes the first serial port connection between the EC. Furthermore, after successfully establishing the first serial port connection, the control accessory can also return a feedback message of successful connection to the EC.
[0221] After the control accessory establishes a connection with the server, the connection between the control accessory and the server may be disconnected due to some reasons (such as power failure or network disconnection of the control accessory). If the connection between the control accessory and the server is disconnected and the laptop is still in a non-working state, the remote control function of the laptop will be temporarily unavailable. Optionally, to avoid this situation, after the control accessory establishes a connection with the server, the control accessory can enable a reconnection function, such as S507.
[0222] S507. Control the accessory to enable the reconnection function.
[0223] For details about the reconnection function, please refer to the previous description. Specifically, the control accessory is pre-configured with the reconnection function. After the control accessory successfully establishes the first connection with the server, the reconnection function can be automatically enabled by default. It should be noted that the control accessory can execute S506 first and then S507; it can also execute S507 first and then S506; or, the control accessory can also execute S506 and S507 at the same time.
[0224] From the above description, it can be seen that after the reconnection function is turned on, the control accessory can automatically reconnect to the server after the connection between the control accessory and the server is disconnected. After the control accessory establishes a connection with the server, turn on the reconnection function. After the connection between the control accessory and the server is abnormally disconnected, the control accessory can reconnect to the server when conditions permit (such as the control accessory is reconnected to the network and the power is restored). The remote control function of the laptop computer through the control accessory can be quickly restored, improving the stability of remote control. Among them, the abnormal disconnection of the connection between the control accessory and the server may be that the control accessory is disconnected from the network, the power is off, or the server connection is preempted by other devices, etc.
[0225] In the prior art, after the laptop enters the non-working state, the mobile phone will not be able to remotely control the laptop. In some examples, the remote control interface for the laptop on the mobile phone can show that the laptop is offline, such as Figure 2 or Figure 3However, in the embodiment of the present application, after the laptop computer enters the non-working state, the control accessory connected to the laptop computer can connect to the server, and the mobile phone can continue to control the laptop computer with the help of the control accessory. Therefore, in the embodiment of the present application, after the laptop computer enters the non-working state, after the control accessory establishes a connection with the server, the mobile phone can still display the remote control interface of the laptop computer. Figure 6B The remote control interface 404 is shown.
[0226] Or, in other examples, when a laptop computer enters a non-working state and a mobile phone remotely controls the laptop computer through a control accessory, the mobile phone can prompt the user with a prompt message. Figure 7C The remote control interface 70 shown in FIG. 7 includes a prompt message 71 for prompting the user that the laptop is currently being remotely controlled via the control accessory. The prompt message 71 may be displayed in the remote control interface 70 in the form of a floating window.
[0227] Specifically, after the laptop enters the non-working state, the server may synchronize the status information of the laptop to the mobile phone after obtaining the status information of the laptop in the non-working state. When the laptop is in the non-working state, the server may obtain the status information of the laptop in the non-working state including:
[0228] (1) The server determines that the laptop computer has entered a non-working state based on the disconnection between the main chip of the laptop computer and the server. It is understandable that after the laptop computer enters a non-working state, the main chip also enters a non-working state, so the connection between the main chip and the server will be disconnected. After the server detects that the connection between the main chip and the server is disconnected, it can be determined that the laptop computer has entered a non-working state.
[0229] (2) The server determines the status information of the laptop computer synchronized to the server by the control accessory. As can be seen from the description of stage 3, after the laptop computer enters the non-working state, the control accessory will establish the first connection with the server. Figure 4 As can be seen from the description, when the control accessory is connected to the server, the control accessory can obtain the status information of the laptop from the EC of the laptop. Then, the control accessory synchronizes the working status of the laptop to the server. Therefore, after the laptop enters the non-working state, the server can also obtain the status information of the laptop through the control accessory.
[0230] Furthermore, after the mobile phone receives the status information of the non-working status of the notebook computer synchronized from the server to the mobile phone, the display content of the remote control interface can be updated based on the status information.
[0231] In addition, after the laptop computer enters the non-working state in stage 3, the control accessory will establish a first connection with the server. Therefore, the server can also obtain the online status of the control accessory. In some examples, the laptop computer can also synchronize the online status of the control accessory to the mobile phone, so that the mobile phone updates the remote control interface in combination with the online status of the control accessory and the non-working state of the laptop computer.
[0232] For example, when the laptop is currently in shutdown state, the mobile phone can update the current state of the PC in the remote control interface to shutdown state. When the laptop is currently in hibernation / sleep state, the mobile phone can update the current state of the PC in the remote control interface to hibernation / sleep state; and so on. Moreover, since the control accessory is online, the mobile phone can still remotely control the laptop with the help of the control accessory. Therefore, the mobile phone can adaptively adjust the supported remote control operation options; for example, the options for remote control operations that are not supported are grayed out or not displayed.
[0233] Since the control accessory establishes the first connection with the server in stage 3, the user can remotely control the laptop to switch to working state through the mobile phone when the laptop is in non-working state. Stage 4-1 is the process in which the laptop switches from non-working state to working state in response to the remote control command, and the main chip establishes a connection with the server. Please continue to refer to Figure 7B , this stage 4-1 may include S508-S518.
[0234] S508. The mobile phone sends a first remote control instruction to the server.
[0235] The first remote control instruction may specifically include a power-on, sleep wake-up, sleep wake-up or restart instruction. Specifically, the mobile phone may respond to the user's remote control interface (such as Figure 1 The remote control interface 108 is shown in FIG. 1 , and the first remote control instruction is sent to the server. In some embodiments, the first remote control instruction carries a sender identifier, which is a mobile phone identifier in this embodiment, for subsequent verification of the user authority to send the first remote control instruction.
[0236] In some embodiments, the mobile phone can log in to the server in advance and add the laptop computer to the server to subscribe to the server for remote control of the laptop computer. Afterwards, the mobile phone can send instructions for starting up, waking up from sleep, waking up from sleep, or restarting the laptop computer to the server based on user operations.
[0237] S509. The server forwards the first remote control instruction to the control accessory based on the first connection.
[0238] S510. The control accessory forwards the first remote control instruction to the EC based on the serial port connection.
[0239] Optionally, for the first remote control instruction received from the server, the control accessory may first perform an authority check on the sender of the first remote control instruction, and then forward the first remote control instruction to the EC after determining that the sender of the first remote control instruction is an authorized master device.
[0240] Specifically, the control accessory stores device configuration information synchronized from the main chip to the control accessory, including PC authentication information. The control accessory can verify the authority of the sender of the first remote control instruction based on the PC authentication information and the sender identifier carried in the first remote control instruction.
[0241] S511.EC controls the main chip to start up, wake up from sleep, wake up from sleep or restart.
[0242] Specifically, after receiving the first remote control instruction, the EC can parse it to obtain the corresponding instruction content. Then, the EC can send a notification to the main chip according to the instruction content, so that the main chip can perform operations such as startup, sleep wake-up, sleep wake-up or restart.
[0243] S512. The main chip starts up and the notebook computer switches to working state.
[0244] Usually, after the main chip is successfully started, the laptop can work normally. Therefore, after the main chip is started, the laptop switches to a working state, or the laptop switches to a powered-on and non-faulty state.
[0245] It can be seen from the above description that after the main chip is successfully started, the main chip can establish a connection with the server to realize remote control of the laptop. Combined with the description of stage 3, it can be seen that in some embodiments, the control accessory turns on the reconnection function after establishing the first connection with the server. Therefore, if the server disconnects the first connection with the control accessory, the control accessory may try to reconnect to the server. When the main chip of the laptop establishes a connection with the server, the first connection between the control accessory and the server is usually disconnected. In order to avoid the situation where the main chip establishes a connection with the server and the first connection is disconnected, and the control accessory reconnects to the server, the main chip can send a notification message to the control accessory before establishing a connection with the server, so that the control accessory stops reconnecting to the server; such as S513 and S514. In this way, it can be avoided that the control accessory reconnects to the server to preempt the main chip's login on the server, thereby avoiding the problem of disconnection between the main chip and the server. It can be understood that if the control accessory turns on the reconnection function, S513 and S514 need to be executed. If the control accessory does not turn on the reconnection function, S513 and S514 do not need to be executed.
[0246] S513. The main chip sends a stop reconnection instruction to the control accessory.
[0247] Combining S501 and S502 of stage 1, it can be known that after the laptop computer is turned on, the main chip needs to establish a serial port connection (such as a second serial port connection) with the control accessory, synchronize information with the control accessory, and send a heartbeat packet. Later in stage 3, after the laptop computer enters a non-working state, the main chip switches to a non-working state, and the second serial port connection between the main chip and the control accessory will be automatically disconnected. Therefore, in some embodiments, before the main chip sends a stop reconnection instruction to the control accessory, the main chip needs to re-establish a serial port connection with the control accessory. That is, before S513, the above method may also include: the main chip re-establishes a second serial port connection with the control accessory. So that the main chip is based on the re-established second serial port connection and sends a stop reconnection instruction to the control accessory based on the second serial port connection.
[0248] In addition, since the laptop computer has resumed working state, it can communicate with the server through the main chip to realize the remote control function of the laptop computer by the mobile phone, and it is no longer necessary to forward the remote control instructions from the server through the control accessory. Therefore, in some embodiments, after S512, the above method may also include: EC disconnects the first serial port connection with the control accessory. Combined with the above description, it can be seen that the control accessory is connected to the laptop computer through the same USB interface, and the main chip and EC of the laptop computer must establish a serial port connection with the control accessory based on the USB interface. Usually, only one of the main chip and EC can establish a serial port connection with the control accessory through the USB interface at the same time. Therefore, in some embodiments, EC disconnects the first serial port connection with the control accessory, which can be executed before the main chip re-establishes the second serial port connection with the control accessory.
[0249] In other embodiments, if the same USB interface supports maintaining two serial port connections at the same time, the above step of the EC disconnecting the first serial port connection with the control accessory can also be performed after the main chip re-establishes the second serial port connection with the control accessory. Alternatively, in other embodiments, the EC disconnecting the first serial port connection with the control accessory can also be performed at the same time as the main chip re-establishes the second serial port connection with the control accessory.
[0250] In the technical solution provided in the embodiment of the present application, after the main chip resumes working state, the EC will disconnect the serial port connection with the control accessory, thereby avoiding the problem that the main chip and the EC send messages to the control accessory at the same time, causing the control accessory to make errors. At the same time, this can also reduce the work of the EC and reduce unnecessary power consumption.
[0251] S514. Control the accessory to turn off the reconnection function.
[0252] After the main chip resumes working, the main chip first notifies the control accessory to turn off the reconnection function, and then the main chip reconnects to the server. This can avoid the problem that after the server establishes a connection with the server, the control accessory seizes the connection to the server.
[0253] S515. The main chip establishes a second connection with the server based on the server login information.
[0254] The laptop computer stores server login information (such as login account and password), which is the same as the server login information in the network configuration information synchronized by the main chip to the control accessory after the laptop computer is turned on in stage 1.
[0255] Exemplarily, the above S515 may specifically include the main chip sending a connection request to the server based on the server login information. The server establishes a second connection with the main chip in response to the connection request.
[0256] Furthermore, after the main chip establishes a second connection with the server, the laptop can receive the mobile phone remote control instructions forwarded from the server based on the second connection between the main chip and the server, such as shutdown, restart, music playing, volume adjustment, etc., thereby realizing the mobile phone remote control of the laptop. In addition, the laptop can also synchronize the current status information of the laptop (such as power-on status, power level, etc.) to the server through the main chip.
[0257] S516. The server disconnects the first connection with the control accessory.
[0258] In some embodiments, after receiving the connection request sent by the main chip, the server may disconnect the first connection with the control accessory before establishing the second connection with the main chip. Alternatively, in other embodiments, the server may disconnect the first connection with the control accessory after establishing the second connection with the main chip in response to the connection request of the main chip. Alternatively, the server may disconnect the first connection with the control accessory while establishing the second connection with the main chip. The order in which the server establishes the second connection and disconnects the first connection is not limited in the embodiments of the present application.
[0259] In the technical solution provided in the embodiment of the present application, after the laptop computer is switched to the working state, the server can directly communicate with the main chip of the laptop computer, so the server will disconnect the first connection with the control accessory. In this way, when the server forwards the remote control instructions from the mobile phone to the laptop computer, it can more accurately select the object to be forwarded (control accessory or main chip). At the same time, the control accessory disconnects the first connection, which can reduce the work of the control accessory and reduce unnecessary power consumption.
[0260] When the laptop computer is not in working state, the control accessory is also connected to the network in order to realize the communication function with the server. After the laptop computer is switched to working state, the laptop computer can communicate with the server through the main chip and realize the function of remotely controlling the laptop computer by mobile phone. In other words, after the laptop computer is switched to working state, the control accessory no longer needs to be connected to the network. Optionally, after the main chip of the laptop computer establishes a second connection with the server, the laptop computer can also notify the control accessory to disconnect from the network and clear some data stored in the control accessory, such as S517 and S518.
[0261] S517. The main chip sends a notification message of releasing resources to the control accessory.
[0262] S518. Control accessories to release resources.
[0263] Specifically, the control accessory releases resources, which may include: exiting the network, clearing temporary data in RAM. The network that the control accessory exits is the network that the control accessory accesses based on the network configuration information. The temporary data in RAM may include: data parsed from the heartbeat packet into the memory, remote control instructions received from the server, and other information.
[0264] In the technical solution provided in the embodiment of the present application, after the main chip of the laptop computer establishes a second connection with the server, the control accessory can release resources, thereby reducing the work of the control accessory and allowing the control accessory to enter a low-power working mode.
[0265] The above stage 4-1 introduces the operation of remotely controlling the laptop computer to start up, wake up from hibernation, wake up from sleep, or restart through a mobile phone when the laptop computer is in a non-working state. It is understandable that after the laptop computer enters a non-working state, the user can also perform operations such as starting up, waking up from hibernation, waking up from sleep, or restarting the laptop computer locally to switch the laptop computer to a non-faulty state when it is turned on, that is, the main chip enters a working state. After this, it is no longer necessary to remotely control the laptop computer through the control accessories. At this time, the control accessories can also log out of the server, etc. As in stage 4-2, this stage 4-2 can specifically include S531-S538:
[0266] S531. The main chip receives local power-on, sleep wake-up, sleep wake-up or restart operations.
[0267] Local operations specifically refer to operations performed by users on the laptop. For example, the laptop detects that the user is Figure 1The pressing operation of the power-on button 200 of the laptop shown in the figure can be regarded as the user performing the power-on operation locally on the laptop. After the user performs the pressing operation on the button 200, the main chip can detect the power-on operation triggered by the pressing operation.
[0268] S532. The main chip starts up and the notebook computer switches to working state.
[0269] S533. The main chip sends a stop reconnection instruction to the control accessory.
[0270] S534. Control the accessory to turn off the reconnection function.
[0271] S535. The main chip establishes a second connection with the server based on the server login information.
[0272] S536. The server disconnects the first connection with the control accessory.
[0273] S537. The main chip sends a notification message of releasing resources to the control accessory.
[0274] S538. Control accessories to release resources.
[0275] It should be noted that the specific implementation process of S533-S538 can refer to the introduction of S513-S518, which will not be repeated here. It can be understood that the above-mentioned stage 4-1 and stage 4-2 are execution processes corresponding to two different situations, and are two parallel stages.
[0276] In the technical solution provided in the embodiment of the present application, after the laptop computer switches to the working state in response to the operation performed locally by the user, the control accessory disconnects from the server and releases related resources, which can reduce the work of the control accessory and enable the control accessory to enter a low-power working mode.
[0277] Next, each of the above stages is described in more detail. Figure 8 , which shows the specific implementation process of the above-mentioned stage 1. In stage 1, the laptop computer can start up in response to the power-on command and then enter the working state. Among them, the power-on command can be a power-on command triggered by the user's local operation on the laptop computer, or it can be a remote power-on command received by the laptop computer from a mobile phone through a control accessory. Stage 1 includes S601-S608:
[0278] S601. The main chip sends a first serial port connection request to the control accessory.
[0279] S602. Control the accessory to establish a second serial port connection with the main chip in response to the first serial port connection request, and feed back a message indicating that the second serial port is successfully established to the main chip.
[0280] S603. The main chip queries the configuration information saved by the control accessory.
[0281] S604. The main chip determines whether the control accessory has saved the configuration information of the laptop computer, and whether the configuration information saved by the control accessory is consistent with the latest configuration information of the laptop computer.
[0282] If the main chip determines that the control accessory does not save the configuration information from the laptop, the control accessory may be connected to the laptop for the first time. In order to remotely control the laptop when it is not working through the control accessory, the main chip needs to synchronize all the configuration information of the laptop to the control accessory, including network configuration information and device configuration information.
[0283] If the main chip inquires and determines that the configuration information of the laptop computer is stored in the control accessory, the main chip can compare whether the configuration information currently stored in the control accessory is the same as the latest configuration information of the laptop computer.
[0284] If the configuration information currently saved by the main chip and the control accessory is inconsistent with the latest configuration information of the laptop, the main chip needs to synchronize the latest configuration information to the control accessory.
[0285] S605. The main chip synchronously updates the configuration information of the control accessory based on the second serial port connection.
[0286] In some embodiments, when the determination result of S604 is no, the main chip may send all configuration information, including network configuration information and device configuration information, to the control accessory, so that the control accessory can save the latest configuration information of the notebook computer.
[0287] In other embodiments, the main chip may also send updated configuration information to the control accessory when the judgment result of S604 is no. For example, the main chip queries and determines that the current Wi-Fi list of the laptop has added some Wi-Fi compared to the Wi-Fi information saved by the control accessory. At this time, the main chip can send the newly added Wi-Fi information to the control accessory, so that the control accessory can save the newly added Wi-Fi information of the laptop. For another example, the main chip queries and determines that the server account currently logged in by the laptop has been updated compared to the server login information saved by the control accessory. At this time, the main chip can send the latest server login information to the control accessory, so that the control accessory updates the saved server login information. In this way, the main chip only needs to send the updated configuration information to the control accessory when the configuration information saved by the control accessory is not the latest configuration information, which reduces the work of the main chip and reduces the workload.
[0288] If the judgment result of S604 is yes, it means that the configuration information currently saved by the control accessory is the latest configuration information of the laptop computer. At this time, the main chip does not need to repeatedly send configuration information to the control accessory. In this way, the number of write times of the control accessory can be reduced and the service life of the control accessory can be increased. It is understandable that if the main chip does not need to send repeated configuration information to the control accessory after the second serial port connection is established between the main chip and the control accessory, the main chip can directly send a heartbeat packet to the control accessory. It should be noted that the judgment result of S604 is yes in the case of Figure 8 Not shown.
[0289] S606. Control the accessory to save the connection and send the network configuration information and the device configuration information.
[0290] Optionally, after the main chip establishes a serial port connection with the control accessory, the main chip can also continue to send heartbeat packets to the control accessory based on the serial port connection. The control accessory receives the heartbeat packet and can determine that the main chip is in working state and the serial port connection between the main chip and the control accessory still exists.
[0291] S607. The main chip sends a heartbeat packet to the control accessory.
[0292] It is understandable that the main chip sends a heartbeat packet to the control accessory, which can be specifically that when the main chip is in working state, a data packet is sent to the control accessory at intervals of a preset time period. It is understandable that the control accessory can determine that the main chip is in working state by continuously receiving the heartbeat packet. On the contrary, if the control accessory times out and does not receive the heartbeat packet, the control accessory can determine that the main chip has switched to a non-working state. In this way, the control accessory can sense the working state switch of the main chip in a timely manner, thereby quickly establishing a connection with the server to keep the remote control function available.
[0293] Among them, the time threshold used by the control accessory to determine whether the main chip is switched to a non-working state can be set according to actual conditions. For example, the time threshold can be set to the normal time interval for the main chip to send a heartbeat packet, that is, the above-mentioned preset time period. For example, the control accessory starts timing from the last time it receives a heartbeat packet from the main chip. When the timing time reaches the preset time period and no new heartbeat packet is received, the control accessory considers that the main chip is switched to a non-working state. Alternatively, the above-mentioned time threshold can also be set to the time length of two preset time periods. For example, the control accessory starts timing from the last time it receives a heartbeat packet from the main chip. When the timing time reaches 2*preset time period and no new heartbeat packet is received, the control accessory considers that the main chip is switched to a non-working state. In other embodiments, the time threshold used by the control accessory to determine whether the main chip is switched to a non-working state can also be set to other values, and the time threshold is greater than or equal to the preset time period.
[0294] Among them, the heartbeat packet sent to the control accessory for the first time after the main chip switches the working state can be considered to be used for heartbeat establishment.
[0295] It should be noted that the main chip can start sending heartbeat packets to the control accessory after the main chip and the control accessory establish a second serial port connection. That is, regardless of whether the main chip synchronizes configuration information to the control accessory, the main chip can start sending heartbeat packets to the control accessory after establishing a connection with the control accessory.
[0296] After the main chip establishes a serial port connection with the control accessory, a heartbeat packet is sent to the control accessory, so that the control accessory can sense whether the main chip is in working state based on the heartbeat packet.
[0297] Further, in some embodiments, the control accessory can return a successful reception feedback message to the main chip each time after receiving the heartbeat packet sent by the main chip. In this way, the main chip can determine the state of the control accessory based on the successful reception feedback message of the heartbeat packet returned by the control accessory.
[0298] S608. Control the accessory to return a feedback message indicating successful reception of the heartbeat packet to the main chip.
[0299] For example, if the main chip times out and does not receive the feedback message of successful heartbeat packet reception returned by the control accessory, it may indicate that the control accessory has failed. At this time, the main chip can issue a reminder on the laptop to remind the user to check the control accessory. This ensures that the control accessory remains available and that the control accessory can be used to achieve remote control when the laptop is switched to a non-working state, thereby ensuring the stability of remote control.
[0300] Combined with the description of the above embodiment, it can be known that after the main chip of the laptop enters the working state, it can establish a communication connection with the server and receive the remote control instructions of the mobile phone forwarded by the server based on the communication connection. That is the above stage 2. In S5021 of the above stage 2, the specific implementation process of the main chip establishing a long connection with the server can refer to the description of the main chip establishing a second connection with the server in the following stage 4-1 or stage 4-2.
[0301] In the technical solution provided in the embodiment of the present application, each time the laptop is turned on, after the main chip switches to the working state, it will establish a connection with the control accessory and synchronize the configuration information of the laptop to the control accessory. Therefore, after the main chip switches to the non-working state, that is, after the laptop enters the non-working state, the control accessory can establish a connection with the server, and remote control of the laptop in the non-working state can be achieved with the help of the control accessory. This can enrich the use scenarios of remote control, and remote control can still be achieved when the laptop is in a non-working state.
[0302] Fig. 9 The specific implementation process of the above-mentioned stage 3 is shown. It can be understood that the prerequisite for stage 3 is that the laptop is turned on. Among them, the laptop in stage 3 enters a non-working state, which can be specifically that the laptop fails in the turned-on state, such as S701:
[0303] S701. The laptop computer fails and the main chip switches to a non-working state.
[0304] Alternatively, the laptop computer in stage 3 enters a non-working state, or the laptop computer receives a shutdown, hibernation or sleep operation locally; such as S702-S703.
[0305] S702. The main chip detects a local shutdown, hibernation or sleep operation.
[0306] S703. The laptop computer enters shutdown / hibernation / sleep state, and the main chip switches to non-working state.
[0307] Alternatively, since the main chip is in working state when entering stage 3, it can be seen from the description of the above embodiment that when the main chip is in working state, a long connection between the main chip and the server (established in S5021 of stage 2) can be established, and the remote control instruction of the mobile phone forwarded by the server can be received. Therefore, the laptop computer in stage 3 enters a non-working state, or the laptop computer enters a shutdown, hibernation or sleep state in response to the remote control instruction received by the main chip from the mobile phone. Such as S704-S706.
[0308] S704. The mobile phone sends a second remote control instruction to the server.
[0309] In some embodiments, the second remote control instruction may specifically include a shutdown, hibernation or sleep instruction. Specifically, the mobile phone may send the remote control instruction to the server in response to the user's operation.
[0310] S705. Forward the second remote control instruction to the main chip based on the second connection.
[0311] S706. The laptop computer enters shutdown / hibernation / sleep state, and the main chip switches to a non-working state.
[0312] After the main chip switches to the non-working state, it cannot normally send heartbeat packets to the control accessory. Therefore, the control accessory can determine whether the main chip has entered the non-working state based on the reception of the heartbeat packets sent by the main chip.
[0313] It can be understood that the above S701, S702-S703, and S704-S706 are three different situations that cause the notebook computer to enter a non-working state.
[0314] S707. The control accessory times out and fails to receive the heartbeat packet sent by the main chip.
[0315] After the control accessory times out and fails to receive the heartbeat packet sent by the main chip, it can be determined that the main chip has entered a non-working state. Thereafter, in order to achieve remote control of the laptop computer when the main chip is in a non-working state, the control accessory can start to access the network and establish a connection with the server, such as S708-S710.
[0316] S708. Control the accessory to access the network based on the information for accessing the network in the network configuration information.
[0317] S709. Control the accessory to send a first connection request to the server based on the login information of the server in the network configuration information.
[0318] In some embodiments, the first connection request sent by the control accessory to the server may carry a login account and password.
[0319] S710. The server establishes a first connection in response to the first connection request, and feeds back a message of successful establishment to the control accessory.
[0320] In some embodiments, the server may verify the login account and password. If the verification is successful, the server may establish a first link with the control accessory and return a message indicating that the first connection is successfully established to the control accessory.
[0321] In addition, since the main chip has entered a non-working state, the control accessories need to rely on the EC of the laptop to communicate with the control accessories to achieve remote control of the laptop. Therefore, the EC needs to establish a serial port connection with the control accessories, such as S711-S713.
[0322] S711.EC senses that the main chip has entered a non-working state.
[0323] Specifically, the EC can continuously obtain the working state of the main chip. Therefore, after the main chip enters a non-working state, the EC can sense the state change of the main chip.
[0324] S712. EC sends a second serial port connection request to the control accessory.
[0325] S713. Control the accessory to establish the first serial port connection in response to the second serial port connection request, and feedback a message indicating successful establishment.
[0326] S714. EC sends an EC heartbeat packet to the control accessory based on the first serial port connection.
[0327] After the EC establishes the first serial port connection with the control accessory, the EC continues to send the EC heartbeat packet to the control accessory, so that the control accessory can sense that the EC and the control accessory are connected.
[0328] Combination Figure 4 It can be seen that when the control accessory establishes a connection with the EC, the control accessory can forward remote control instructions to the EC. The EC can obtain the status information of the controlled device by querying the main chip, and synchronize the status information to the control accessory. Therefore, in some embodiments, after the EC successfully establishes a first serial port connection with the control accessory, the EC can also synchronize the status information of the laptop (such as power level and other information) to the control accessory based on the first serial port connection. In this way, the control accessory can obtain the status information of the laptop through the EC when the laptop is not in a working state, and forward the status information to the mobile phone through the server for the user to view. In the example, the EC can obtain the status information of the laptop every preset time period, and send the status information of the laptop to the control accessory.
[0329] S715. Control the accessory to enable the reconnection function.
[0330] In the technical solution provided in the embodiment of the present application, after the laptop enters the non-working state, the control accessory will establish a connection with the server and the EC, so as to facilitate the remote control of the laptop when the laptop is not working. In addition, while the laptop remains in the non-working state, the control accessory turns on the reconnection function, so that the connection between the control accessory and the server can be restored in time when it is abnormally disconnected. Therefore, when the laptop is in the non-working state, the connection between the control accessory and the server is continuously kept alive, improving the stability of remote control.
[0331] Fig.10 The specific implementation process of the above-mentioned stage 4-1 is shown. Stage 4-1 describes the specific implementation process of forwarding remote control instructions to the laptop computer through the control accessories connected to the laptop computer when the laptop computer is in a non-working state to achieve remote control.
[0332] S801. The mobile phone sends a first remote control instruction to the server.
[0333] Specifically, the mobile phone can respond to the user's remote control interface (such as Figure 1 The remote control interface 108 is operated to send a first remote control instruction to the server.
[0334] S802. The server forwards the first remote control instruction to the control accessory based on the first connection.
[0335] It can be seen from the description of the above embodiments that the first remote control instruction may specifically include instructions such as power on, sleep wake-up, sleep wake-up or restart.
[0336] S803. Control the accessory to forward the first remote control instruction to the EC based on the first serial port connection.
[0337] S804.EC controls the main chip to start up / wake up from sleep / wake up from sleep or restart.
[0338] The EC can parse the first remote control instruction to obtain the specific content of the remote control instruction, and then control the main chip to execute the operation corresponding to the instruction.
[0339] S805. The main chip starts up and the notebook computer switches to working state.
[0340] S806. The main chip notifies the EC that the laptop computer has been turned on.
[0341] S807.EC feeds back to the main chip that the laptop has been turned on.
[0342] S808.EC sends an instruction to disconnect the first serial port connection to the control accessory.
[0343] S809. Control the accessory to feed back to the main chip a message indicating that the first serial port connection was successfully disconnected.
[0344] S810.EC notifies the main chip that the first serial port connection has been disconnected.
[0345] S811. The main chip sends a third serial port connection request to the control accessory.
[0346] S812. Control the accessory to establish a second serial port connection in response to the third serial port connection request, and feedback the establishment success to the main chip.
[0347] In some embodiments, in S805, when the laptop computer switches from a non-working state to a working state, the main chip of the laptop computer will also synchronize configuration information to the control accessory. After the laptop computer re-establishes the second serial port connection with the control accessory, the main chip of the laptop computer synchronizes configuration information to the control accessory based on the re-established second serial port connection. It should be noted that the specific implementation process of the main chip synchronizing configuration information to the control accessory here can refer to S603-S606 of Phase 1, which will not be repeated here.
[0348] S813. The main chip sends a stop reconnection instruction to the control accessory based on the second serial port connection.
[0349] S814. Control the accessory to turn off the reconnection function.
[0350] S815. The main chip sends a second connection request to the server based on the login information of the server.
[0351] The notebook computer stores server login information (such as login account and password), which is the same as the server login information in the configuration information synchronized by the main chip to the control accessory after the notebook computer is turned on in stage 1. In some embodiments, the second connection request carries the server login information.
[0352] S816. The server establishes a second connection in response to the second connection request, and feeds back a message of successful establishment to the main chip.
[0353] In some embodiments, after receiving the second connection request sent by the main chip, the server can verify the login account and password carried therein. If the verification is successful, the server can establish a second connection with the control accessory and return a message of successful establishment of the second connection to the control accessory.
[0354] S817. The server disconnects the first connection with the control accessory.
[0355] S818. The main chip notifies the control accessory to release resources.
[0356] S819. Control accessories to release resources.
[0357] In the technical solution provided in the embodiment of the present application, when the laptop computer is not in working state, the laptop computer can be remotely controlled by connecting the control accessories of the laptop computer, which enriches the remote control scenarios. Moreover, when the laptop computer is in working state and suddenly experiences abnormal shutdown, hibernation or sleep, the user can still remotely control the laptop computer through the connection between the control accessories and the server. This increases the stability of remote control and avoids the problem of remote control interruption due to abnormalities of the laptop computer. Finally, the control accessories can be plugged into the laptop computer in the form of a USB device. For the laptop computer, it only needs to reserve a serial port line to the designated USB interface between the main chip and EC, without adding too much cost.
[0358] Fig.11 The specific implementation process of stage 4-2 is shown. Compared with stage 4-1, stage 4-2 is the process of restoring the notebook computer to a working state through operations performed locally by the user after the notebook computer enters a non-working state, and the interaction process between the main chip, EC and control accessories, and between the control accessories and the server. It specifically includes S901-S916.
[0359] S901. The main chip receives operations such as power-on, sleep wake-up, sleep wake-up, or restart executed locally on the notebook computer.
[0360] S902. The main chip executes corresponding operations and switches to a working state.
[0361] Afterwards, since the main chip resumes working state, the control accessory needs to disconnect from the server, and the EC disconnects from the control accessory, etc. This process is similar to the process after the main chip resumes working state in response to the first remote control instruction. Therefore, S903-S916 can refer to the specific description of S806-S819.
[0362] Some other embodiments of the present application provide a control accessory. The control accessory includes: a preset interface, a wireless communication module, a memory and one or more processors. The preset interface, the wireless communication module, the memory and the processor are coupled. The preset interface is used for the control accessory to be plugged into the controlled device, and the controlled device supplies power to the control accessory, and supports data transmission between the control accessory and the controlled device. The memory is used to save the network configuration information of the controlled device, and the network configuration information includes information for accessing the network and login information of the server. The memory also stores computer program code, and the computer program code includes computer instructions. When the computer instructions are executed by the processor, the control accessory executes the various steps executed by the control accessory in the above embodiments.
[0363] In some embodiments, the wireless optional module, memory and processor of the above-mentioned control accessory can be integrated into a preset chip, and the preset chip is connected to the preset interface of the control accessory.
[0364] Some other embodiments of the present application provide an electronic device, which may be the above-mentioned controlled device. The controlled device may include: a preset interface, a memory, a wireless communication module and one or more processors. The preset interface, the memory and the wireless communication module are coupled to the processor. The preset interface of the controlled device is used to plug in the control accessories, power the control accessories, and transmit data to the control accessories. The memory is also used to store computer program code, which includes computer instructions. When the processor executes the computer instructions, the computer can execute the various functions or steps performed by the controlled device in the above-mentioned method embodiment. When the computer is a controlled device, its structure can refer to Figure 5 The structure of the controlled device is shown.
[0365] In some embodiments, the processor of the electronic device includes a main chip and an EC. A serial port line is provided between the main chip and the preset interface of the controlled device, and a serial port line is provided between the EC and the preset interface of the controlled device. When the main chip is in a non-working state, the EC supplies power to the control accessory through the preset interface. When the main chip is in a working state, the main chip supplies power to the controlled device through the preset interface.
[0366] Some other embodiments of the present application provide a communication system, which includes: a master control device, a controlled device, a server and a control accessory. The control accessory is plugged into a preset interface of the controlled device, and the controlled device supplies power to the control accessory through the preset interface. At the same time, the controlled device supports the master control device to remotely control the controlled device. Among them:
[0367] The controlled device is used for: when the controlled device is in working state, the network configuration information of the controlled device is synchronized to the control accessory through a preset interface; wherein the network configuration information includes information for accessing the network and login information of the server.
[0368] The control accessory is used to: if the controlled device is in a non-working state, establish a first connection with the server through network configuration information.
[0369] The control accessory is further used for: based on the first connection, receiving a first remote control instruction from the master device to the controlled device forwarded by the server, and sending the first remote control instruction to the controlled device.
[0370] The controlled device is further used to: respond to the first remote control instruction, execute an operation corresponding to the first remote control instruction, and switch to a working state.
[0371] In some embodiments, the controlled device includes a main chip and an EC. When the main chip is in a non-working state, the EC of the controlled device is used to obtain and synchronize the state information of the controlled device in the non-working state to the control accessory. The control accessory is also used to synchronize the state information of the non-working state to the main control device through the server after receiving the state information of the non-working state synchronized by the controlled device.
[0372] In some embodiments, after the controlled device enters the working state, the main chip establishes a second connection with the server. The main chip receives a second remote control instruction from the main control device through the server interface and executes an operation corresponding to the second remote control instruction.
[0373] In some embodiments, when the controlled device is in working state, the main chip sends a heartbeat packet of the main chip to the control accessory.
[0374] In some embodiments, the control accessory is further used to establish a first connection with the server through network configuration information when a heartbeat packet from the main chip is not received within a timeout period.
[0375] In some embodiments, the control accessory is further configured to return a feedback message indicating successful reception of the heartbeat packet to the main chip after receiving the heartbeat packet from the main chip.
[0376] In some embodiments, the control accessory is further used to enable a reconnection function after the control configuration accessory establishes a first connection with the server.
[0377] In some embodiments, after the controlled device enters the working state, before the main chip establishes the second connection with the server, the main chip sends a stop reconnection instruction to the control accessory. The control accessory is further configured to shut down the reconnection function in response to the stop reconnection instruction.
[0378] For the specific implementation process of each step of the main control device, the server, the control accessories and the controlled device in the above communication system, reference may be made to the description of the remote control method of the electronic device in the above embodiment.
[0379] The present application also provides a chip system, such as Fig.12 As shown, the chip system 120 includes at least one processor 1201 and at least one interface circuit 1202. The processor 1201 and the interface circuit 1202 can be interconnected through lines. For example, the interface circuit 1202 can be used to receive signals from other devices (such as a computer's memory). For another example, the interface circuit 1202 can be used to send signals to other devices (such as processor 1201). Exemplarily, the interface circuit 1202 can read instructions stored in the memory and send the instructions to the processor 1201. When the instruction is executed by the processor 1201, the computer can execute the various steps in the above embodiments. Of course, the chip system can also include other discrete devices, which are not specifically limited in the embodiments of the present application.
[0380] The embodiment of the present application also provides a computer-readable storage medium, which includes computer instructions. When the computer instructions are executed on the above electronic device (such as the controlled device), the electronic device executes each function or step executed by the controlled device in the above method embodiment. When the computer instructions are executed on the above control accessory, the electronic device executes each function or step executed by the control accessory in the above method embodiment.
[0381] The embodiment of the present application also provides a computer program product, which, when executed on a computer, enables the computer to execute the functions or steps executed by the mobile phone in the above method embodiment. The computer may be an electronic device, such as a controlled device. The computer may also be a control accessory.
[0382] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0383] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0384] The units described as separate components may or may not be physically separated, and the components shown as units may be one physical unit or multiple physical units, that is, they may be located in one place or distributed in multiple different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0385] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0386] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium, including several instructions to enable a device (which can be a single-chip microcomputer, chip, etc.) or a processor (processor) to perform all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0387] The above contents are only specific implementation methods of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application shall be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims
1. A remote control method for an electronic device, characterized in that: The method is applied to a control accessory, the control accessory is used to be plugged into a preset interface of a controlled device and supports a master device to remotely control the controlled device, and the control accessory is powered by the controlled device through the preset interface; the method comprises: The controlled device enters a non-working state, and the control accessory establishes a first connection with the server through the network configuration information of the controlled device; the non-working state includes: shutdown, dormant state, sleeping state or powered-on but faulty state; wherein the network configuration information includes information for accessing the network and login information of the server; Based on the first connection, the control accessory receives the first remote control instruction of the master control device for the controlled device forwarded by the server, and forwards the first remote control instruction to the controlled device, wherein the first remote control instruction is used to control the controlled device to switch from the non-working state to the working state.
2. The method according to claim 1, characterized in that Before the controlled device enters a non-working state and the control accessory establishes a first connection with a server through network configuration information of the controlled device, the method further includes: The controlled device is in a working state, and the control accessory obtains configuration information of the controlled device from the controlled device, where the configuration information includes the network configuration information; The control accessory establishes a first connection with the server through the network configuration information of the controlled device, including: The control accessory accesses the network through the information for accessing the network in the network configuration information, and establishes the first connection with the server through the login information of the server.
3. The method according to claim 1 or 2, characterized in that: The controlled device includes a main chip and an embedded controller EC, a serial port line is provided between the main chip and the preset interface, and a serial port line is provided between the EC and the preset interface; wherein, when the controlled device is in the non-working state, the main chip of the controlled device is in the non-working state; the method further includes: The main chip enters the non-working state, and the control accessory establishes a first serial port connection with the EC; The control accessory forwards the first remote control instruction to the controlled device, where the first remote control instruction is used to control the controlled device to switch from the non-working state to the working state, including: The control accessory forwards the first remote control instruction to the EC based on the first serial port connection, and the first remote control instruction is used by the EC to control the main chip to perform an operation corresponding to the first remote control instruction and enter the working state based on the first remote control instruction.
4. The method according to claim 3, characterized in that The method further comprises: The main chip is in the non-working state, and the control accessory obtains the state information of the main chip in the non-working state from the EC through the first serial port connection; wherein the state information of the non-working state includes the shutdown state of the main chip and / or the power information of the controlled device; The control accessory synchronizes the status information of the non-working state to the main control device through the server.
5. The method according to claim 3 or 4, characterized in that: The method further comprises: After the main chip switches from the non-working state to the working state, the control accessory disconnects the first serial port connection and establishes a second serial port connection with the main chip; The control accessory receives a heartbeat packet from the main chip based on the second serial port connection; If the control accessory times out without receiving the heartbeat packet from the main chip, it is determined that the main chip has entered the non-working state.
6. The method according to claim 3 or 4, characterized in that: The method further comprises: The control accessory receives the first notification message from the EC, and determines that the controlled device enters the non-working state; or, After the main chip switches from the non-working state to the working state, the control accessory disconnects the first serial port connection with the EC and establishes a second serial port connection with the main chip; The control accessory determines that the controlled device has entered the non-working state when it receives a second notification message from the main chip based on the second serial port connection; wherein the second notification message is sent before the main chip enters the non-working state.
7. The method according to any one of claims 3 to 6, characterized in that: The control accessory is powered by the controlled device through the preset interface, including: The main chip is in the working state, and the control accessory is powered by the main chip through the preset interface; The main chip is in the non-working state, and the control accessory is powered by the EC through the preset interface.
8. The method according to any one of claims 1 to 7, characterized in that After the control accessory establishes a first connection with the server, the method further includes: The control accessory enables a reconnection function; the reconnection function includes: when the controlled device is in the non-working state, if the first connection between the control accessory and the server is disconnected, the control accessory automatically re-requests to establish a connection with the server.
9. The method according to any one of claims 2 to 8, characterized in that: The configuration information also includes device configuration information, where the device configuration information is used to describe the capability of the control accessory.
10. A remote control method for an electronic device, characterized in that: The method is applied to a controlled device, wherein the controlled device includes a preset interface; The preset interface of the controlled device is used to plug in the control accessory, and the controlled device supplies power to the control accessory plugged in the preset interface; The controlled device supports the master device to remotely control the controlled device; the method comprises: The controlled device is in a non-working state, and receives, through the preset interface, a first remote control instruction of the master control device for the controlled device from the control accessory and forwarded by the server; the non-working state includes: shutdown, dormant state, sleeping state, or powered-on but faulty state; the first remote control instruction is used to control the controlled device to switch from the non-working state to the working state; In response to the first remote control instruction, the controlled device executes an operation corresponding to the first remote control instruction and switches to the working state.
11. The method according to claim 10, characterized in that The method further comprises: The controlled device switches to the working state, and the controlled device synchronizes configuration information to the control accessory; the configuration information includes network configuration information and device configuration information; the network configuration information is used for the control accessory to access the network and connect to the server; the device configuration information is used to describe the capabilities of the control accessory on the server.
12. The method according to claim 11, characterized in that The controlled device synchronizes configuration information to the control accessory, including: The controlled device obtains the configuration information saved by the control accessory; If the controlled device compares the latest configuration information in the controlled device with the configuration information saved by the control accessory and finds that the information is inconsistent, the controlled device synchronizes the configuration information with the control accessory.
13. The method according to any one of claims 10 to 12, characterized in that: The controlled device includes a main chip and an embedded controller EC; a serial port line is provided between the main chip and the preset interface, and a serial port line is provided between the EC and the preset interface; The controlled device is in a non-working state, comprising: the main chip is in the non-working state; The controlled device supplies power to the control accessory plugged into the preset interface, including: The main chip is in the non-working state, and the EC supplies power to the control accessory plugged into the preset interface via a serial port line between the EC and the preset interface; The main chip is in the working state, and the main chip supplies power to the control accessory plugged into the preset interface via the serial port line between the main chip and the preset interface.
14. The method according to claim 13, characterized in that The receiving, through the preset interface, a first remote control instruction of the master device for the controlled device from the control accessory and forwarded by the server includes: The EC establishes a first serial port connection with the control accessory; The EC receives the first remote control instruction forwarded by the server from the control accessory based on the first serial port connection.
15. The method according to claim 13 or 14, characterized in that The method further comprises: The main chip is in a non-working state, and the EC obtains state information of the main chip being in the non-working state; The EC synchronizes the status information of the non-working state to the main control device through the control accessory and the server; the status information of the non-working state includes the shutdown state of the main chip and / or the power information of the controlled device.
16. The method according to any one of claims 13 to 15, characterized in that The method further comprises: After the main chip switches to the working state, the EC disconnects the first serial port connection with the control accessory, and the main chip establishes a second serial port connection with the control accessory; The main chip sends a heartbeat packet to the control accessory based on the second serial port connection; the heartbeat packet is used for the control accessory to determine that the main chip is switched to a non-working state when the control accessory fails to receive the heartbeat packet after a timeout.
17. The method according to any one of claims 13 to 15, characterized in that The method further comprises: After the EC detects that the main chip is switched to a non-working state, the EC sends a first notification message to the control accessory, so that the control accessory determines that the main chip is switched to a non-working state based on the first notification message; or, When the main chip receives an event that triggers the main chip to switch to a non-working state, the main chip sends a second notification message to the control accessory and switches to a non-working state in response to the event; the second notification message is used to notify the control accessory to determine that the main chip has switched to a non-working state.
18. The method according to any one of claims 10 to 17, characterized in that: The method further comprises: After the controlled device switches to a working state, the controlled device establishes a connection with the server; The controlled device receives, based on the connection, a second remote control instruction forwarded by the server from the master device, where the second remote control instruction includes a shutdown instruction, a hibernation instruction, a sleep instruction, a restart instruction, a video playback instruction, a music playback instruction, or a volume adjustment instruction; The controlled device executes an operation corresponding to the second remote control instruction in response to the second remote control instruction.
19. The method according to claim 18, characterized in that Before the controlled device establishes a connection with the server, the method further includes: The controlled device sends a stop reconnection instruction to the control accessory, and the stop reconnection instruction is used to instruct the control accessory to turn off the reconnection function; the reconnection function includes: when the first connection between the control accessory and the server is disconnected, the control accessory automatically re-requests to establish a connection with the server.
20. A communication system, characterized in that: The communication system comprises: a master control device, a controlled device, a server and a control accessory; the control accessory is plugged into a preset interface of the controlled device, and the controlled device supplies power to the control accessory through the preset interface; the controlled device supports the master control device to remotely control the controlled device; The controlled device is used for: when the controlled device is in working state, synchronizing the network configuration information of the controlled device to the control accessory through the preset interface; wherein the network configuration information includes information for accessing the network and login information of the server; The control accessory is used to: if the controlled device is in a non-working state, establish a first connection with the server through the network configuration information; The control accessory is further used for: receiving, based on the first connection, a first remote control instruction of the master device for the controlled device forwarded by the server, and sending the first remote control instruction to the controlled device; The controlled device is further configured to: in response to the first remote control instruction, execute an operation corresponding to the first remote control instruction and switch to the working state.
21. A control accessory, characterized in that: The control accessory includes: a preset interface, a wireless communication module, a memory and one or more processors; the preset interface, the wireless communication module, the memory and the processor are coupled; the preset interface is used for the control accessory to be plugged into the controlled device, and the controlled device supplies power to the control accessory and supports data transmission between the control accessory and the controlled device; the memory is used to save the network configuration information of the controlled device, and the network configuration information includes information for accessing the network and login information of the server; the memory also stores computer program code, and the computer program code includes computer instructions, and when the computer instructions are executed by the processor, the control accessory executes the method as described in any one of claims 1-9.
22. The control accessory according to claim 21, characterized in that The wireless communication module, the memory and the processor are integrated in a preset chip, and the preset chip is connected to the preset interface.
23. An electronic device, characterized in that: The electronic device is a controlled device; The controlled device comprises: a preset interface, a memory, a wireless communication module and one or more processors, wherein the preset interface, the memory, the wireless communication module are coupled to the processor; The preset interface of the controlled device is used to plug in the control accessory, supply power to the control accessory, and perform data transmission with the control accessory; The memory stores computer program code, which includes computer instructions. When the computer instructions are executed by the processor, the electronic device executes the method according to any one of claims 10 to 19.
24. The electronic device according to claim 23, characterized in that: The processor includes a main chip and an embedded controller EC; a serial port line is provided between the main chip and the preset interface, and a serial port line is provided between the EC and the preset interface; When the main chip is in a non-working state, the EC supplies power to the control accessory through the preset interface; When the main chip is in working state, the main chip supplies power to the control accessory through the preset interface.
25. A computer-readable storage medium, characterized in that: The method comprises computer instructions, which, when executed on a computer, cause the computer to execute the method according to any one of claims 1 to 19.