Water wing plate bluetooth anti-misconnection method
Patent Information
- Application Number
- CN202611487200.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-23
- Publication Date
- 2026-10-27
AI Technical Summary
[0005]本申请的主要目的在于提供一种水翼板蓝牙防误连方法,旨在解决多套电动水上运动设备同时运行时中控器容易误连到其他设备的电池或遥控器的问题
[0016]本申请提出的水翼板蓝牙防误连方法,遥控器与目标电池共同生成校验码,并通过低压供电电压的幅值切换波形将校验码传递给中控器,使中控器在上电后基于校验码与携带相同校验码的遥控器和目标电池发起连接,从源头排除了中控器误连其他设备电池或遥控器的可能;在完成连接后,遥控器通过比较遥控计时时长与中控计时时长识别残余误连,对误连设备断开连接并加入黑名单后重新匹配连接,从而在多套设备同时运行的场景下保证遥控器、电池与中控器正确配对,避免误连干扰设备运行,提高设备运行的安全性。
Smart Images

Figure CN122994767A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of water sports equipment technology, and in particular to a method for preventing accidental Bluetooth connection of hydrofoils. Background Technology
[0002] Hydrofoils and other electric water sports equipment, as well as personal underwater vehicles, typically consist of a remote controller, a battery, and a central controller. The battery provides power to the device, the central controller controls its operation, and the remote controller receives user input and sends control commands to the battery and central controller. Currently, most electric water sports equipment uses Bluetooth for wireless communication between the remote controller, battery, and central controller.
[0003] When multiple devices operate simultaneously, the batteries of each device will simultaneously activate Bluetooth broadcasting. The central controller for each device also needs to locate its own battery and remote control via Bluetooth after power-on. Because the battery broadcasting names of each device are the same or similar, and there is a lack of an effective mechanism to distinguish between devices, the central controller can easily connect to the batteries or remote controls of other devices by mistake. This can lead to the central controller being unable to correctly control its own device, or even interfering with the operation of other devices, posing a safety hazard.
[0004] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention
[0005] The main purpose of this application is to provide a method for preventing accidental Bluetooth connection of hydrofoils, which aims to solve the problem that the central controller is easily mistakenly connected to the battery or remote control of other devices when multiple sets of electric water sports equipment are running at the same time.
[0006] To achieve the above objectives, the hydrofoil Bluetooth anti-misconnection method proposed in this application is applied to a remote control, which is used in conjunction with a battery and a central controller. The method includes: After the remote control is powered on, it starts timing and scans to receive the Bluetooth broadcast signals of each battery in order to obtain the signal strength of each battery. The target battery is determined based on the signal strength of each of the batteries, and a Bluetooth connection is established with the target battery. A verification code is generated together with the target battery, and a remote control broadcast name is generated based on the verification code; The remote control broadcasts a Bluetooth broadcast using the broadcast name and sends a power supply command to the target battery to make the target battery output a low-voltage power supply. A battery broadcast name is generated based on the check code and broadcast using the battery broadcast name via Bluetooth. The amplitude of the low-voltage power supply is switched to transmit the check code to the central controller, so that the central controller can initiate a connection with the remote control and the target battery respectively based on the check code after power-on. After completing the Bluetooth connection with the central controller, the system obtains the central controller timing duration sent by the central controller and the remote control timing duration counted by the remote controller since the start of timing. The remote control timing duration is compared with the central controller timing duration. If the remote control timing duration is less than the central controller timing duration, the system determines that the current connection is a false connection, disconnects the connection with the central controller and the target battery, and adds the central controller and the target battery to the blacklist. After determining that the current connection is a false connection, the system rescans and receives the Bluetooth broadcast signals of each battery, excludes the batteries in the blacklist from the batteries, re-identifies the target battery, re-matches and connects, and rejects the connection requests of the central controllers in the blacklist.
[0007] In one embodiment, the step of determining a target battery based on the signal strength of each of the batteries and establishing a Bluetooth connection with the target battery includes: When the remote control first establishes a pairing connection, the signal strength and broadcast name of each battery are obtained, wherein the signal strength is the received signal strength indication value of the Bluetooth broadcast signal; The signal strengths of each battery are sorted, and the battery with the strongest signal strength is identified as the target battery. Send a Bluetooth connection request to the target battery based on the target battery's broadcast name; After the target battery responds to the Bluetooth connection request, a Bluetooth connection is established with the target battery.
[0008] In one embodiment, the step of generating a verification code together with the target battery and generating a remote control broadcast name based on the verification code includes: Send the remote control's identification identifier to the target battery, and receive the target battery's identification identifier sent by the target battery; A first random number and a first timestamp are generated, and the first random number and the first timestamp are encrypted and sent to the target battery, wherein the first random number is a one-time random number; The target battery receives a second random number and a second timestamp encrypted by the target battery, wherein the second random number and the second timestamp are generated by the target battery, and the second random number is a one-time random number. The remote control and the target battery generate the verification code based on the remote control's identifier, the target battery's identifier, the first random number, the first timestamp, the second random number, and the second timestamp, respectively. The remote controller generates the remote controller broadcast name based on the check code.
[0009] In one embodiment, the identifier of the remote control is the MAC address of the remote control, and the identifier of the target battery is the MAC address of the target battery; The steps for the remote control and the target battery to generate the verification code based on the remote control's identifier, the target battery's identifier, the first random number, the first timestamp, the second random number, and the second timestamp include: The MAC address of the remote control, the MAC address of the target battery, the first random number, the first timestamp, the second random number, and the second timestamp are concatenated sequentially to obtain the concatenated data; The concatenated data is processed using a preset hash algorithm or a preset encryption algorithm to obtain intermediate data; The verification code is obtained by extracting a preset number of bits of data from the intermediate data. The verification code is a rolling code with a maximum of 16 bits. The rolling code changes with each matching connection as the first random number, the first timestamp, the second random number, and the second timestamp change.
[0010] In one embodiment, the step of the remote controller generating the remote controller broadcast name based on the check code includes: Retrieve the preset remote control name prefix; The remote control name prefix is concatenated with the check code to obtain the remote control broadcast name; The battery broadcast name is obtained by concatenating the preset battery name prefix with the check code of the target battery, wherein the remote control name prefix is different from the battery name prefix.
[0011] In one embodiment, the steps of broadcasting via Bluetooth using the remote control's broadcast name and sending a power supply command to the target battery to cause the target battery to output a low-voltage supply voltage, generating a battery broadcast name based on the checksum and broadcasting via Bluetooth using the battery broadcast name, switching the amplitude of the low-voltage supply voltage to transmit the checksum to the central controller, and enabling the central controller to initiate connections with the remote control and the target battery respectively based on the checksum after power-on, include: The remote control broadcast name is used for Bluetooth broadcasting; The power supply command is sent to the target battery. The power supply command is used to instruct the target battery to output a low-voltage power supply of 12V after the interlock detection between the target battery and the central controller passes. The battery broadcast name is generated based on the check code and used for Bluetooth broadcasting. The interlock detection is the detection of the interlock status between the target battery and the central controller before the target battery outputs the low-voltage power supply. A switching command is sent to the target battery, the switching command being used to instruct the target battery to switch the low-voltage supply voltage between 12V and 10V according to the check code, wherein the switching frequency of the low-voltage supply voltage does not exceed 8 Hz; The controller receives a connection request from the central controller, wherein the central controller detects the amplitude switching waveform of the low-voltage power supply voltage between 12V and 10V after power-on, parses the check code based on the amplitude switching waveform, generates a scan name that matches the broadcast name of the remote control and the broadcast name of the battery based on the check code, and sends connection requests to the remote control and the target battery respectively based on the scan name.
[0012] In one embodiment, after completing the Bluetooth connection with the central controller, the steps of obtaining the central controller timing duration sent by the central controller and the remote control timing duration counted by the remote controller since the start of timing, comparing the remote control timing duration with the central controller timing duration, and determining that the current connection is a false connection if the remote control timing duration is less than the central controller timing duration, disconnecting the connection with the central controller and the target battery, and adding the central controller and the target battery to the blacklist include: After completing the Bluetooth connection with the central controller, the remote controller stops timing and receives the central controller timing duration sent by the central controller, wherein the central controller timing duration is the duration obtained from the start of timing by the central controller when it is powered on until the timing stops when the Bluetooth connection with the remote controller is completed; The remote control timing duration is obtained from the start of timing by the remote control until the Bluetooth connection with the central controller is completed and the timing stops. The remote control timing duration is compared with the central control timing duration. If the remote control timing duration is less than the central control timing duration, the current connection is determined to be an erroneous connection. After determining that the current connection is a false connection, disconnect the Bluetooth connection with the central controller and the target battery, and add the identity of the central controller and the identity of the target battery to the blacklist.
[0013] In one embodiment, comparing the remote control timing duration with the central control timing duration, and determining that the current connection is a false connection if the remote control timing duration is less than the central control timing duration, includes the following steps: Determine whether the remote control timing duration is less than the central control timing duration; If the remote control timing duration is less than the central control timing duration, the current connection is determined to be a misconnection. In the case of a correct connection, the central controller only powers on after the target battery responds to the power supply command and outputs the low-voltage power supply voltage, and the remote control timing duration is greater than the central control timing duration. If the remote control timing duration is greater than the central controller timing duration, the current connection is determined to be a correct connection, and the Bluetooth connection with the central controller and the target battery is maintained.
[0014] In one embodiment, after determining that the current connection is a false connection, the steps of rescanning and receiving the Bluetooth broadcast signals of each battery, excluding batteries located in the blacklist from each battery, re-identifying the target battery, re-pairing and connecting, and rejecting the connection requests of the central controller located in the blacklist include: After determining that the current connection is a false connection, the system rescans and receives the Bluetooth broadcast signals broadcast by each of the batteries to obtain the signal strength, broadcast name and identification of each battery. The identification identifier of each battery is compared with the identification identifier recorded in the blacklist, wherein the blacklist records the identification identifier of the central controller and the identification identifier of the target battery; Eliminate batteries whose identifiers are in the blacklist from the batteries to obtain a candidate battery set; The target battery is re-determined based on the signal strength of each battery in the candidate battery set, and a Bluetooth connection request is sent to the re-determined target battery based on the broadcast name of the re-determined target battery. During the reconnection process, if a connection request is received from a central controller recorded in the blacklist, the connection request is rejected.
[0015] In one embodiment, the method further includes: After the remote control is powered on, the pairing record stored locally on the remote control is queried. The pairing record contains the battery identification and the central controller identification obtained by the remote control during the historical pairing connection process. If the pairing record contains the identity of a paired battery, the remote control will directly initiate a Bluetooth connection to the paired battery based on the identity of the paired battery to skip the pairing stage. The pairing stage includes scanning and receiving, determining the target battery, generating a checksum together, switching the amplitude of the low-voltage power supply voltage, and comparing the remote control timing duration with the central control timing duration. After establishing a Bluetooth connection with the paired battery, the remote control sends a power supply command to the paired battery to cause the paired battery to output the low-voltage power supply voltage. The remote controller receives a connection request sent by the paired central controller. After the paired central controller is powered on by the low-voltage power supply output by the paired battery, it directly sends the connection request to the remote controller based on the pairing record stored locally on the paired central controller. After completing the Bluetooth connection with the paired central controller, the remote control stops timing.
[0016] The proposed method for preventing misconnection of Bluetooth devices to hydrofoils involves the remote controller and the target battery jointly generating a verification code. This code is then transmitted to the central controller via a waveform that switches the amplitude of the low-voltage power supply. Upon power-up, the central controller initiates a connection with the remote controller and the target battery carrying the same verification code, eliminating the possibility of the central controller misconnecting to other devices' batteries or remote controllers. After the connection is established, the remote controller identifies any remaining misconnections by comparing the remote control's timing duration with the central controller's timing duration. Misconnected devices are then disconnected, added to a blacklist, and reconnected. This ensures correct pairing of the remote controller, battery, and central controller even when multiple devices are operating simultaneously, preventing misconnections from interfering with device operation and improving device safety. Attached Figure Description
[0017] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a flowchart illustrating an embodiment of the Bluetooth anti-misconnection method for hydrofoils in this application. Figure 2 For this application Figure 1 A detailed flowchart of step S200; Figure 3 For this application Figure 1 Detailed flowchart of step S300; Figure 4 For this application Figure 3 A detailed flowchart of step S340; Figure 5 For this application Figure 3 A detailed flowchart of step S350; Figure 6 For this application Figure 1 Detailed flowchart of step S400; Figure 7 For this application Figure 1 Detailed flowchart of step S500; Figure 8 For this application Figure 7 A detailed flowchart of step S530; Figure 9 For this application Figure 1 A detailed flowchart of step S600; Figure 10 This is a flowchart illustrating another embodiment of the Bluetooth anti-misconnection method for hydrofoils in this application.
[0020] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0021] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0022] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0023] The main solution of this application embodiment is as follows: the remote controller acts as the execution subject. After scanning each battery, it determines the target battery based on the signal strength of each battery and establishes a Bluetooth connection with the target battery. It generates a different verification code for each pairing connection together with the target battery. The remote controller and the target battery generate a new broadcast name based on the verification code and rebroadcast it. The target battery transmits the verification code to the central controller of this device through the amplitude switching waveform of the low voltage supply voltage. The central controller initiates a connection with the remote controller and the target battery carrying the same verification code based on the verification code. After the connection is completed, the remote controller identifies and eliminates false connections by comparing the remote control timer duration with the central controller timer duration. It avoids repeated false connections through a blacklist and uses a memory function to allow paired devices to skip the pairing stage and connect directly.
[0024] In this embodiment, for ease of description, the following description uses a remote control as the execution subject.
[0025] In existing technologies, remote controls, batteries, and central controllers of electric water sports equipment mostly communicate via Bluetooth. Each device relies on a fixed broadcast name to discover and connect to the others. When multiple devices operate simultaneously, the batteries in each device simultaneously activate their Bluetooth broadcasts. After powering on, the central controller of each device needs to scan for and connect to the batteries and remote controls of its own device. Because there is no effective mechanism for distinguishing between devices, the central controller can easily connect to the batteries or remote controls of other devices by mistake, leading to control errors and even affecting the safe operation of other devices.
[0026] To address the aforementioned issues, the researchers first proposed a checksum-based anti-misconnection scheme: After the battery is powered on, it broadcasts externally using a default broadcast name, such as "BMS DEF NAME"; the remote control scans and connects to the battery, exchanging MAC addresses; the remote control and battery generate a checksum based on the MAC address; the remote control sends a command to the battery to enable 12V power supply, and the battery, after receiving the command and passing the interlock test with the central controller, officially outputs 12V; the remote control and battery generate new broadcast names based on the checksum; after the battery outputs 12V, the central controller powers on, and the remote control sends a command to the battery, causing the battery's output voltage to switch between 12V and 10V; the central controller detects the voltage waveform between 12V and 10V, parses the MAC address checksum from the waveform according to a pre-agreed protocol, and generates the broadcast name to be scanned; the remote control and battery disconnect, and broadcasting is restarted with the new broadcast name; the central controller scans and connects to the remote control and battery based on the generated broadcast name, thus completing the connection. In this scheme, the verification code is generated solely from the MAC address. This is a static verification code that remains unchanged for a long period, making it easy for other devices to obtain and copy, thus compromising the reliability of preventing accidental connections.
[0027] Further research by the developers revealed that replacing the static verification code with a rolling code—that is, generating random numbers and timestamps separately from the remote control and battery, and sending them via hashing or other encryption methods—can improve the security of the verification code. However, the switching frequency between 12V and 10V in the low-voltage power supply is limited to a maximum of 8Hz. This switching frequency is constrained by the voltage switching frequency of the DC-DC circuit in the battery and the limitations of the capacitors in the power circuit. Furthermore, if the rolling code is too long, the matching stage of parsing the rolling code by detecting the voltage waveform will be too time-consuming for the central controller. Therefore, the rolling code should not exceed 16 bits.
[0028] The R&D team also considered adding a response mechanism after the central controller detects the voltage waveform, but found that the voltage switching between 12V and 10V is achieved by the battery's DC-DC low-voltage power supply circuit. The central controller can only collect and identify voltage changes through the ADC, and it is impossible to implement a bus response mechanism similar to the IIC bus in the hardware. Therefore, this approach is not feasible.
[0029] To address the issue of concurrent conflicts that can easily occur when multiple devices are powered on simultaneously, the R&D team discovered that simply using the unique IDs or serial numbers of the remote control, battery, and central controller to generate a binding code for three-way binding was insufficient to resolve the conflict. After repeated testing and comparison, the R&D team ultimately determined the following optimized solution: During the initial pairing connection, the device connects to the nearest device based on Bluetooth signal strength; both the remote control and central controller start timing upon power-on and stop timing after connection is complete. After pairing, the central controller sends its own timing duration to the remote control, which then compares its own timing duration with the central controller's. If the remote control's timing duration is less than the central controller's, it indicates a misconnection. In this case, the remote control disconnects and adds the connected central controller and battery to its blacklist before reconnecting; the remote control, battery, and central controller all have a memory function, skipping the pairing phase and connecting directly if they have already been paired.
[0030] This application provides a solution that dynamically generates a rolling code checksum each time the remote control and target battery are paired and connected. The remote control and target battery each generate a new broadcast name based on the checksum and rebroadcast it. The target battery transmits the checksum to the central controller of the device via a waveform that switches the amplitude of its low-voltage supply voltage. The central controller generates a broadcast name to scan based on the checksum and initiates connections with both the remote control and the target battery, eliminating the possibility of the central controller mistakenly connecting to other devices. After connection is established, the remote control identifies residual misconnections by comparing its own timing duration with the central controller's timing duration, adds the misconnected devices to a blacklist, and re-pairs. Paired devices utilize a memory function to skip the pairing phase and connect directly, thus ensuring correct pairing of the remote control, battery, and central controller even when multiple devices are operating simultaneously.
[0031] As can be seen from the above embodiments, this application overcomes the problem that the central controller is prone to being mistakenly connected to the batteries or remote controllers of other devices when multiple devices are running simultaneously by using a combination of technical means such as dynamic rolling code, low-voltage power supply amplitude switching waveform transmission verification code, timing duration comparison to identify misconnection, blacklist re-matching, and direct connection of memory function. This achieves the technical effect of ensuring the correct pairing of remote controllers, batteries and central controllers and improving the safety of device operation.
[0032] It should be noted that the executing entity in this embodiment can be an electronic device with data processing, Bluetooth communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or it can be a dedicated remote control that is paired with the hydrofoil. The following description uses a remote control as an example to illustrate this embodiment and the subsequent embodiments.
[0033] Based on this, this application provides a method for preventing accidental Bluetooth connection to hydrofoils, referring to... Figure 1 , Figure 1This is a flowchart illustrating an embodiment of the Bluetooth anti-misconnection method for hydrofoil panels in this application.
[0034] In this embodiment, the method for preventing accidental Bluetooth connection of hydrofoils includes steps S100 to S600: Step S100: After the remote control is powered on, it starts timing and scans to receive the Bluetooth broadcast signals of each battery to obtain the signal strength of each battery. Step S200: Determine the target battery based on the signal strength of each battery, and establish a Bluetooth connection with the target battery; Step S300: Generate a verification code together with the target battery, and generate a remote control broadcast name based on the verification code; Step S400: Use the remote control broadcast name to broadcast via Bluetooth and send a power supply command to the target battery so that the target battery outputs a low-voltage power supply voltage. Generate a battery broadcast name based on the check code and use the battery broadcast name to broadcast via Bluetooth. Switch the amplitude of the low-voltage power supply voltage to transmit the check code to the central controller so that the central controller can initiate a connection with the remote control and the target battery respectively based on the check code after power-on. Step S500: After completing the Bluetooth connection with the central controller, obtain the central controller timing duration sent by the central controller and the remote control timing duration counted by the remote controller since the start of timing. Compare the remote control timing duration with the central controller timing duration. If the remote control timing duration is less than the central controller timing duration, determine that the current connection is a false connection, disconnect the connection with the central controller and the target battery, and add the central controller and the target battery to the blacklist. In step S600, after determining that the current connection is a false connection, the system rescans and receives the Bluetooth broadcast signals of each battery, excludes batteries in the blacklist from each battery, re-identifies the target battery, re-matches and connects, and rejects the connection requests of the central controller in the blacklist.
[0035] In this embodiment, the remote control refers to a wireless control device held and operated by the user, used to issue control commands to the battery and the central controller; the battery refers to a battery device that provides power to the hydrofoil and has Bluetooth communication capabilities; the central controller refers to a controller that controls the operating status of the equipment during the operation of the hydrofoil; the Bluetooth broadcast signal refers to the broadcast data packets that the device periodically sends to the outside world according to the Bluetooth protocol; the broadcast name refers to the name carried in the Bluetooth broadcast signal to identify the device, for example, the default broadcast name "BMS DEF NAME" can be used to broadcast to the outside world after the battery is powered on.
[0036] As can be understood, signal strength refers to the received signal strength indication value of the Bluetooth broadcast signal. The greater the signal strength, the closer the battery that sends the Bluetooth broadcast signal is to the remote control. The target battery refers to the battery that the remote control determines to establish a Bluetooth connection among the batteries it scans based on the signal strength of each battery.
[0037] It should be noted that the checksum is a set of dynamic verification data jointly generated by the remote control and the target battery after establishing a Bluetooth connection, used for this pairing connection; the remote control broadcast name is a new broadcast name generated by the remote control based on the checksum; and the battery broadcast name is a new broadcast name generated by the target battery based on the checksum. For example, the remote control broadcast name can be "HC CRC NAME", and the battery broadcast name can be "BMS CRC NAME", where NAME represents the string corresponding to the checksum.
[0038] In this embodiment, the power supply command refers to the command sent by the remote control to the target battery to instruct the target battery to output a low-voltage power supply; the switching command refers to the command sent by the remote control to the target battery to instruct the target battery to switch the amplitude of the low-voltage power supply; the low-voltage power supply voltage refers to the voltage output by the target battery through its output terminal to power the central controller during the Bluetooth connection phase; the amplitude switching waveform refers to the waveform formed by the change of the amplitude of the low-voltage power supply over time. It should be noted that the power bus can output both low-voltage and high-voltage power supplies. The low-voltage power supply only powers the central controller during the Bluetooth connection phase, and small-scale switching of the low-voltage power supply amplitude will not affect the operation of the central controller. The high-voltage power supply powers the central controller, ESC, and motor during normal system operation, and the high-voltage power supply needs to remain stable without significant fluctuations. The ESC refers to the electronic speed controller used to drive the motor.
[0039] It is understandable that the central control timing duration refers to the duration counted by the central control unit since it is powered on; the remote control timing duration refers to the duration counted by the remote control since it starts timing; misconnection means that the remote control is connected to a central control unit or battery other than this set of equipment, that is, the current connection is not a correct connection; the blacklist refers to the list of central control units and target batteries that were determined to be misconnected in this pairing connection recorded in the remote control.
[0040] It should be noted that the pairing connection refers to the process of the remote control executing steps S100 to S600 in order to complete the pairing connection with the battery and the central controller; the pairing stage refers to the process of the remote control performing scanning reception, determining the target battery, jointly generating a verification code, switching the amplitude of the low voltage power supply voltage, and comparing the timing duration in order to establish a connection during the pairing connection process.
[0041] In this embodiment, regarding step S100, after the hydrofoil is powered on, the remote control powers on and starts timing, while simultaneously scanning the Bluetooth broadcast signals of surrounding batteries. When multiple devices are powered on simultaneously, each battery broadcasts its Bluetooth signal using its own broadcast name. The remote control obtains the broadcast name of each battery and the signal strength of each received Bluetooth broadcast signal by scanning. The timing is used to compare with the timing duration of the central controller in subsequent step S500 to identify incorrect connections.
[0042] In this embodiment, regarding step S200, the remote control determines a target battery from the scanned batteries based on the signal strength of each battery and establishes a Bluetooth connection with the target battery. As one implementation, the remote control can determine the battery with the strongest signal strength as the target battery, thereby achieving proximity-based connection and avoiding connection to batteries of other devices that are far away when multiple devices are running simultaneously. As another implementation, the remote control can also randomly select any battery from those with signal strength exceeding a preset strength threshold as the target battery; this embodiment does not limit this selection. The preset strength threshold refers to a pre-set minimum signal strength value, such as -70 dBm.
[0043] In this embodiment, for step S300, the remote control and the target battery jointly generate a verification code. The verification code is dynamic data unique to this pairing connection. The remote control and the target battery independently calculate the same verification code based on the same data they each possess. The verification code is not transmitted in plaintext over the Bluetooth link, making it difficult for other devices to obtain. The remote control generates a broadcast name based on the verification code, so that the central controller can locate the remote control after power-on. As one implementation, the remote control and the target battery can exchange MAC addresses and combine them with randomly generated numbers and timestamps to jointly generate the verification code, ensuring that the verification code is different for each pairing connection. As another implementation, the remote control and the target battery can also jointly generate the verification code based solely on their respective identifiers and the random number generated for this pairing connection.
[0044] In this embodiment, for step S400, the remote controller broadcasts via Bluetooth using its remote controller broadcast name and sends a power supply command to the target battery. The target battery responds to the power supply command by outputting a low-voltage power supply, and the central controller powers on after receiving the low-voltage power supply. The target battery also generates a battery broadcast name based on a checksum and broadcasts it via Bluetooth using that name, while switching the amplitude of the low-voltage power supply, thus transmitting the checksum as a voltage amplitude switching waveform to the central controller. Since the central controller is powered by the low-voltage power supply output from the target battery, only the central controller of this device can detect the amplitude switching waveform carrying the checksum from the power supply line. After powering on, the central controller initiates connections with both the remote controller broadcasting using its remote controller broadcast name and the target battery broadcasting using its battery broadcast name, based on the checksum. During this process, the remote controller and the target battery can disconnect their Bluetooth connection after generating a new broadcast name and completing the low-voltage power supply amplitude switching, and then restart broadcasting with the new broadcast name so that the central controller can scan for connections; alternatively, the remote controller and the target battery can maintain their existing Bluetooth connection, which is not limited in this embodiment. As an example, the amplitude of the low-voltage supply voltage can be switched between 12V and 10V, or between 12V and 9V or two other amplitudes, as long as the switched voltage is not lower than the minimum voltage value required for the central controller to maintain normal operation.
[0045] In this embodiment, regarding step S500, after the remote controller completes the Bluetooth connection with the central controller, it obtains the central controller timing duration sent by the central controller and simultaneously obtains the remote controller timing duration counted from the start of the timing process, and compares the two. It can be understood that, under correct connection conditions, the central controller only powers on after the target battery responds to the power supply command and outputs a low-voltage supply voltage; that is, the remote controller's power-on time is earlier than the central controller's power-on time. Therefore, the remote controller timing duration must be greater than the central controller timing duration. If the remote controller timing duration is less than the central controller timing duration, it indicates that the central controller was powered on before the remote controller, meaning the currently connected central controller is powered by a battery from another device, and the current connection is definitely a mistaken connection. At this time, the remote controller determines the current connection to be a mistaken connection, disconnects the Bluetooth connection with the central controller, cancels the Bluetooth connection with the target battery, and adds both the central controller and the target battery to the blacklist.
[0046] In this embodiment, for step S600, after the remote controller determines that the current connection is a false connection, it rescans and receives the Bluetooth broadcast signals of each battery, excludes the batteries in the blacklist from the scanned batteries, re-identifies the target battery from the remaining batteries, and re-matches and connects. During the re-matching and connecting process, it rejects the connection requests sent by the central controller in the blacklist to avoid connecting to the device that has been determined to be a false connection again.
[0047] In this embodiment, a verification code is generated jointly by the remote controller and the target battery. This verification code is then transmitted to the central controller via a waveform that switches the amplitude of the low-voltage power supply. This ensures that the central controller can only establish connections with remote controllers and target batteries carrying the same verification code, preventing the central controller from mistakenly connecting to other device batteries or remote controllers. Simultaneously, a secondary verification of the connection is performed by comparing the remote controller's timing duration with the central controller's timing duration. Even if different sets of devices generate the same verification code, a misconnection can be identified and disconnected. The misconnected device is then added to a blacklist for reconnection. Compared to existing technologies that rely on fixed broadcast names and static verification codes, this application ensures correct pairing of the remote controller, battery, and central controller in scenarios where multiple devices operate simultaneously, preventing misconnections from interfering with device operation and improving device safety.
[0048] In one feasible implementation, step S200 includes steps S210 to S240, wherein: Step S210: When the remote control is paired for the first time, obtain the signal strength and broadcast name of each battery, where the signal strength is the received signal strength indication value of the Bluetooth broadcast signal; Step S220: Sort the signal strength of each battery and determine the battery with the strongest signal strength as the target battery; Step S230: Send a Bluetooth connection request to the target battery based on the target battery's broadcast name; Step S240: After the target battery responds to the Bluetooth connection request, establish a Bluetooth connection with the target battery.
[0049] In this embodiment, the first pairing connection refers to the first time the pairing connection process is executed after the remote control is powered on, that is, when the remote control does not have a pairing record generated by a previous pairing connection stored locally; the received signal strength indicator value refers to the power strength of the received signal measured by the Bluetooth receiver, usually expressed in dBm; the nearest connection refers to selecting the battery closest to the remote control to establish a Bluetooth connection.
[0050] In this embodiment, during the initial pairing connection, the remote control scans and obtains the signal strength and broadcast name of each battery, sorts the signal strength of each battery, and identifies the battery with the strongest signal strength as the target battery. In other words, it selects the battery closest to the remote control as the connection target. In scenarios where multiple devices are powered on simultaneously, the battery of the device itself is usually closest to its own remote control, and the battery with the strongest signal strength is typically the battery of that device, thus reducing the probability of connecting to batteries of other devices. After identifying the target battery, the remote control sends a Bluetooth connection request to the target battery based on its broadcast name. Once the target battery responds to the Bluetooth connection request, a Bluetooth connection is established with the target battery.
[0051] In this embodiment, by sorting by signal strength and selecting the battery with the strongest signal strength for the nearest connection, the remote control can usually connect to the battery of the device when multiple devices are powered on at the same time, reducing the occurrence of misconnection from the connection source. Moreover, the selection rules for the connection object are simple, require no additional hardware support, and are easy to implement.
[0052] In one feasible implementation, step S300 includes steps S310 to S350, wherein: Step S310: Send the remote control's identification identifier to the target battery, and receive the target battery's identification identifier sent by the target battery. Step S320: Generate a first random number and a first timestamp, encrypt the first random number and the first timestamp, and send them to the target battery, wherein the first random number is a one-time random number; Step S330: Receive the second random number and the second timestamp sent by the target battery in encrypted form, wherein the second random number and the second timestamp are generated by the target battery, and the second random number is a one-time random number; In step S340, the remote control and the target battery generate verification codes based on the remote control's identifier, the target battery's identifier, a first random number, a first timestamp, a second random number, and a second timestamp, respectively. Step S350: The remote control generates a remote control broadcast name based on the check code.
[0053] Understandably, the identity identifier refers to information used to uniquely identify a device, such as a MAC address or device serial number; a one-time random number refers to a random number used only once for each matching connection; the first timestamp refers to the timestamp corresponding to the moment when the remote control generates the first random number, and the second timestamp refers to the timestamp corresponding to the moment when the target battery generates the second random number.
[0054] In this embodiment, the remote controller sends its own identity identifier to the target battery and receives the target battery's identity identifier, completing the exchange of identity identifiers between the two parties. The remote controller generates a first random number and a first timestamp, encrypts the first random number and the first timestamp, and sends them to the target battery; the remote controller receives a second random number and a second timestamp encrypted by the target battery. Through encrypted transmission, the random number and timestamp cannot be eavesdropped on by other devices during transmission. After the exchange is completed, the remote controller and the target battery independently calculate and generate the same checksum based on the six data items: the remote controller's identity identifier, the target battery's identity identifier, the first random number, the first timestamp, the second random number, and the second timestamp. Since the first random number, the first timestamp, the second random number, and the second timestamp are different in each matching connection, the checksum is also different in each matching connection, i.e., the checksum is dynamically changing. The remote controller generates a remote controller broadcast name based on the checksum. As an example, the remote controller and the target battery can also use a hash method to send the random number and timestamp, i.e., send the random number and timestamp along with their hash values, and the receiver verifies the integrity of the random number and timestamp through the hash value. This embodiment does not limit this approach. It is understandable that the target battery and the remote control calculate and generate the check code in the same way, and both use the same six data items, so the check code values calculated by both parties are the same.
[0055] In this embodiment, the verification code is generated by the identity identifiers of both parties, a random number that is different for each matching connection, and a timestamp. The random number and timestamp are encrypted before being sent, so other devices cannot obtain all the data required to generate the verification code, nor can they predict the verification code for this matching connection. The verification code changes with each matching connection, so even if a historical verification code is leaked, it cannot be used for the next matching connection, thereby improving the reliability of preventing false connections.
[0056] In one feasible implementation, the remote control's identifier is the remote control's MAC address, and the target battery's identifier is the target battery's MAC address; step S340 includes steps S341 to S343, wherein: Step S341: The MAC address of the remote control, the MAC address of the target battery, the first random number, the first timestamp, the second random number and the second timestamp are concatenated in sequence to obtain the concatenated data; Step S342: Perform calculations on the concatenated data using a preset hash algorithm or a preset encryption algorithm to obtain intermediate data; Step S343: Extract a preset number of bits of data from the intermediate data to obtain a check code. The check code is a rolling code with a maximum of 16 bits. The rolling code changes with each matching connection as the first random number, the first timestamp, the second random number, and the second timestamp change.
[0057] In this embodiment, the MAC address refers to the physical address of the device's network card, typically composed of 12 hexadecimal digits, which uniquely identifies the device; concatenation refers to joining multiple data segments together in a preset order to form a new data segment, where the preset order refers to the pre-agreed concatenation sequence; the preset hash algorithm refers to a hash algorithm pre-set and stored in the remote control and the target battery, such as the MD5 algorithm or the SHA-256 algorithm; the preset encryption algorithm refers to an encryption algorithm pre-set and stored in the remote control and the target battery, such as the AES algorithm; intermediate data refers to the output result of the hash operation or encryption operation; the rolling code refers to a dynamic checksum that changes with each matching connection; and the preset bit length refers to a pre-set bit length, such as 16 bits.
[0058] In this embodiment, the remote control and the target battery sequentially concatenate the MAC address of the remote control, the MAC address of the target battery, a first random number, a first timestamp, a second random number, and a second timestamp to obtain concatenated data. A preset hash algorithm or a preset encryption algorithm is used to process the concatenated data to obtain intermediate data. A preset number of bits is extracted from the intermediate data to obtain a checksum. For example, the MD5 algorithm is used to process the concatenated data to obtain 128 bits of intermediate data, and the first 16 bits are extracted as the checksum. Since the first random number, the first timestamp, the second random number, and the second timestamp change with each matching connection, the checksum is a rolling code that changes with each matching connection, and the rolling code has no more than 16 bits. It should be noted that if the rolling code is too long, when the target battery switches the low-voltage supply voltage amplitude according to the rolling code to transmit the verification code to the central controller, the central controller needs to detect a longer amplitude switching waveform, which increases the time consumed in the matching stage. The switching frequency of the low-voltage supply voltage amplitude is limited by the voltage switching frequency of the DC-DC circuit in the target battery and the limitations of the capacitors in the power circuit, and can only reach a maximum of 8 Hz. Therefore, limiting the number of bits of the rolling code to no more than 16 bits can ensure that the verification codes generated by different sets of equipment at the same time are different from each other, and can also avoid the matching stage from taking too long.
[0059] In this embodiment, a rolling code of no more than 16 bits is generated by using the MAC address as the identity identifier, performing hash or encryption operations on the concatenated data, and truncating a preset number of bits. On the one hand, this makes the generation process of the verification code irreversible and different for each matching connection, thus improving the security of the verification code. On the other hand, by controlling the number of bits of the verification code to within 16 bits, under the hardware limitation that the maximum switching frequency of the low-voltage power supply amplitude is only 8 Hz, the time required for the central controller to parse the verification code is shortened, avoiding excessive time consumption in the matching stage.
[0060] In one feasible implementation, step S350 includes steps S351 to S353, wherein: Step S351: Obtain the preset remote control name prefix; Step S352: Concatenate the remote control name prefix with the check code to obtain the remote control broadcast name; Step S353: The battery broadcast name is obtained by concatenating the preset battery name prefix and the check code of the target battery, wherein the remote control name prefix is different from the battery name prefix.
[0061] It should be noted that the preset remote control name prefix refers to the name prefix that is pre-set and stored in the remote control and used to constitute the remote control's broadcast name; the preset battery name prefix refers to the name prefix that is pre-set and stored in the target battery and used to constitute the battery's broadcast name. For example, the remote control name prefix could be "HC CRC", and the battery name prefix could be "BMS CRC".
[0062] In this embodiment, the remote control obtains a preset remote control name prefix and concatenates it with a checksum to obtain the remote control broadcast name. For example, concatenating "HC CRC" with the checksum yields a remote control broadcast name in the form of "HC CRC NAME". Correspondingly, the target battery obtains its broadcast name by concatenating a preset battery name prefix with a checksum. For example, concatenating "BMS CRC" with the checksum yields a battery broadcast name in the form of "BMS CRC NAME". The remote control name prefix and the battery name prefix are different to avoid the central controller confusing the remote control with the battery during scanning. Since the central controller has already parsed the checksum from the amplitude switching waveform in step S400, it only needs to use the same concatenation rules to generate a scan name that matches the remote control broadcast name and the battery broadcast name, thereby finding the remote control and battery of this device.
[0063] In this embodiment, by using a unified rule for generating broadcast names with a prefix and a checksum, the central controller only needs to know the checksum to reconstruct the remote control broadcast name and the battery broadcast name, without needing to perform additional information interaction with the remote control or the target battery, thus simplifying the scanning and connection process of the central controller; the remote control name prefix is different from the battery name prefix, further avoiding confusion during the scanning stage.
[0064] In one feasible implementation, step S400 includes steps S410 to S440, wherein: Step S410: Use the remote control's broadcast name to broadcast via Bluetooth; Step S420: Send a power supply command to the target battery. The power supply command is used to instruct the target battery to output a low-voltage power supply of 12V after the interlock detection between the target battery and the central controller passes. Generate a battery broadcast name based on the check code and use the battery broadcast name for Bluetooth broadcast. The interlock detection is the detection of the interlock status between the target battery and the central controller before the target battery outputs the low-voltage power supply. Step S430: Send a switching command to the target battery. The switching command is used to instruct the target battery to switch the low-voltage supply voltage between 12V and 10V according to the check code. The switching frequency of the low-voltage supply voltage does not exceed 8 Hz. Step S440: Receive connection request sent by the central controller. After power-on, the central controller detects the amplitude switching waveform of the low-voltage power supply between 12V and 10V, parses the check code based on the amplitude switching waveform, generates a scan name that matches the remote control broadcast name and the battery broadcast name based on the check code, and sends connection requests to the remote control and the target battery respectively based on the scan name.
[0065] In this embodiment, interlock detection refers to the detection of the interlock status between the target battery and the central controller before the target battery outputs a low-voltage supply voltage; switching frequency refers to the number of times the low-voltage supply voltage switches between 12V and 10V per unit time; scan name refers to the broadcast name generated by the central controller for scanning based on the check code.
[0066] In this embodiment, the remote controller uses a broadcast name for Bluetooth broadcasting. The remote controller sends a power supply command to the target battery. After the target battery passes the interlock detection with the central controller, it outputs a low-voltage 12V power supply, ensuring that the central controller only powers on after establishing an interlock relationship with the target battery. As an example, the interlock detection could be to check whether the power supply line between the target battery's output terminal and the central controller is connected before the target battery outputs the low-voltage power supply, or to check whether the load characteristics connected to the output terminal match the load characteristics of the central controller. The target battery generates a battery broadcast name based on the checksum and uses this name for Bluetooth broadcasting. It is understood that the amplitude of the output low-voltage power supply and the switching low-voltage power supply can be indicated by the same command or by different commands. This embodiment uses two separate commands: a power supply command and a switching command. The remote controller then sends a switching command to the target battery, which switches the low-voltage power supply between 12V and 10V according to the checksum, with a switching frequency not exceeding 8 Hz. After power-on, the central controller acquires the low-voltage supply voltage via an ADC and detects the amplitude switching waveform between 12V and 10V. Following a pre-agreed protocol, it parses the checksum from the amplitude switching waveform. This protocol can be an encoding method where the high and low amplitude changes of the low-voltage supply voltage correspond one-to-one with each bit of the checksum; for example, 12V represents bit 1 and 10V represents bit 0. The central controller reads the values of each bit sequentially from the amplitude switching waveform according to the pre-agreed bit order to obtain the checksum. Then, based on the checksum, it generates a scan name that matches the remote control's broadcast name and the battery's broadcast name, and sends connection requests to both the remote control and the target battery based on the scan name. The remote control receives the connection request from the central controller, completing the connection.
[0067] It should be noted that the low-voltage power supply only powers the central controller during the Bluetooth connection phase. Slight switching between 12V and 10V will not affect the normal operation of the central controller. The high-voltage power supply powers the central controller, ESC, and motor during system operation. The high-voltage power supply must remain stable and free from significant fluctuations. It should also be noted that the developers considered adding an IIC bus-like response mechanism after the central controller detects the amplitude switching waveform. However, since the voltage switching between 12V and 10V is achieved by the target battery's DC-DC low-voltage power supply circuit, the central controller can only acquire and identify voltage changes through the ADC. A bus response mechanism similar to the IIC bus cannot be implemented in hardware. Therefore, this implementation uses a passive detection method of the central controller to receive the verification code based on the amplitude switching waveform.
[0068] In this embodiment, through interlock detection, 12V power supply, amplitude switching between 12V and 10V, and a switching frequency limit of no more than 8 Hz, the verification code can be transmitted to the central controller without affecting its normal operation. Moreover, the transmission process only takes place on the low-voltage power supply line and will not affect the high-voltage power supply. The remote controllers and batteries of other devices cannot obtain the verification code. The central controller generates a scan name based on the verification code and performs directional scanning, further ensuring the correctness of the connected object.
[0069] In one feasible implementation, step S500 includes steps S510 to S540, wherein: Step S510: After completing the Bluetooth connection with the central controller, the remote controller stops timing and receives the central controller timing duration sent by the central controller, wherein the central controller timing duration is the duration obtained from the start of timing by the central controller when it is powered on until the timing stops when the Bluetooth connection with the remote controller is completed; Step S520: Obtain the remote control timing duration from the start of timing to the time when the Bluetooth connection with the central controller is completed and the timing stops; Step S530: Compare the remote control timing duration with the central control timing duration. If the remote control timing duration is less than the central control timing duration, the current connection is determined to be an incorrect connection. Step S540: After determining that the current connection is a mistaken connection, disconnect the Bluetooth connection with the central controller and the target battery, and add the identity of the central controller and the identity of the target battery to the blacklist.
[0070] It is understood that the timing duration refers to the length of time elapsed from the start of timing to the stop of timing. In this embodiment, both the remote controller and the central controller start timing after power-on and stop timing after establishing a Bluetooth connection with each other. The remote controller stops timing after establishing a Bluetooth connection with the central controller and receives the central controller timing duration sent by the central controller, where the central controller timing duration is the time obtained from the start of timing by the central controller after power-on until the time stops when the Bluetooth connection with the remote controller is established. The remote controller obtains its own remote timing duration obtained from the start of timing until the time stops when the Bluetooth connection with the central controller is established, and compares the remote controller timing duration with the central controller timing duration. If the remote controller timing duration is less than the central controller timing duration, the current connection is determined to be a false connection; after determining that the current connection is a false connection, the remote controller disconnects from the central controller's Bluetooth connection, cancels the Bluetooth connection with the target battery, and adds the identity identifier of the central controller and the identity identifier of the target battery to the blacklist.
[0071] In this embodiment, by clearly defining the start and end times of the remote control timing duration and the central control timing duration, the timing durations of the remote control and the central controller stop at the same time. The comparison result can reflect the power-on sequence of the remote control and the central controller, thereby identifying misconnections and avoiding misjudgments.
[0072] In one feasible implementation, step S530 includes steps S531 to S533, wherein: Step S531: Determine whether the remote control timing duration is less than the central control timing duration; Step S532: If the remote control timing duration is less than the central control timing duration, the current connection is determined to be an incorrect connection. In the case of a correct connection, the central controller will only power on after the target battery responds to the power supply command and outputs a low-voltage power supply voltage, and the remote control timing duration is greater than the central control timing duration. In step S533, if the remote control timing duration is greater than the central controller timing duration, the current connection is determined to be a correct connection, and the Bluetooth connection with the central controller and the target battery is maintained.
[0073] In this embodiment, a correct connection means that the remote control, battery, and central controller belong to the same set of devices. In this embodiment, the remote control determines whether its timing duration is less than the central controller's timing duration. If the remote control's timing duration is less than the central controller's timing duration, the current connection is determined to be a misconnection. Specifically, in a correct connection, the central controller only powers on after the target battery responds to the power supply command and outputs a low-voltage supply voltage. The remote control, however, has already been powered on and started timing before the central controller powers on; therefore, the remote control's timing duration must be greater than the central controller's timing duration. Conversely, if the remote control's timing duration is less than the central controller's timing duration, it means that the central controller was powered on before the remote control, and this central controller must be powered by the battery of another device; the current connection is definitely a misconnection.
[0074] In this embodiment, if the remote control timing duration is longer than the central control timing duration, the current connection is determined to be a correct connection, and the Bluetooth connection with the central controller and the target battery is maintained, thus completing the pairing connection. For example, if the remote control timing duration is 6 seconds and the central control timing duration is 4 seconds, the remote control timing duration is longer than the central control timing duration, and the current connection is determined to be a correct connection; if the remote control timing duration is 3 seconds and the central control timing duration is 5 seconds, the remote control timing duration is shorter than the central control timing duration, and the current connection is determined to be an incorrect connection.
[0075] In this embodiment, through bidirectional determination, the remote control can both identify and disconnect erroneous connections in a timely manner, and maintain the connection and end the matching process when the connection is determined to be correct, forming a complete connection confirmation mechanism. This determination process only requires comparing the magnitudes of two timing durations, making it simple to implement and requiring no additional hardware support.
[0076] In one feasible implementation, step S600 includes steps S610 to S650, wherein: Step S610: After determining that the current connection is a false connection, rescan the Bluetooth broadcast signals broadcast by each battery to obtain the signal strength, broadcast name and identity of each battery. Step S620: Compare the identification of each battery with the identification recorded in the blacklist, where the blacklist records the identification of the central controller and the identification of the target battery. Step S630: Exclude batteries whose identity identifiers are in the blacklist from the batteries to obtain a candidate battery set; Step S640: Based on the signal strength of each battery in the candidate battery set, the target battery is re-determined, and a Bluetooth connection request is sent to the re-determined target battery based on the broadcast name of the re-determined target battery. In step S650, during the reconnection process, if a connection request is received from a central controller recorded in the blacklist, the connection request is rejected.
[0077] It should be noted that the candidate battery set refers to the set of batteries remaining after excluding those whose identifiers are on the blacklist from the scanned batteries. In this embodiment, after determining that the current connection is a false connection, the remote control rescans and receives the Bluetooth broadcast signals broadcast by each battery to obtain the signal strength, broadcast name, and identifier of each battery; it compares the identifier of each battery with the identifiers recorded in the blacklist, where the blacklist records the identifier of the central controller and the identifier of the target battery; it excludes batteries whose identifiers are on the blacklist from the battery list to obtain the candidate battery set; for example, if battery A, battery B, and battery C are rescanned, and the blacklist records the identifier of battery B, then the candidate battery set consists of battery A and battery C.
[0078] In this embodiment, the target battery is re-determined based on the signal strength of each battery in the candidate battery set, and a Bluetooth connection request is sent to the re-determined target battery based on its broadcast name to re-establish a pairing connection. During the re-pairing process, if a connection request is received from a controller recorded in the blacklist, the connection request is rejected to avoid re-establishing a connection with a controller that has been determined to be a false connection.
[0079] In this embodiment, by comparing blacklists, filtering candidate battery sets, and rejecting connection requests from central controllers in the blacklist, the remote control will not reconnect to batteries and central controllers that have been determined to be incorrectly connected when re-matching. This ensures that each re-matching can avoid incorrect connection objects and improves the reliability of matching connections in scenarios where multiple devices are running simultaneously.
[0080] In one feasible implementation, the method further includes steps S710 to S750, wherein: Step S710: After the remote control is powered on, query the pairing record stored locally on the remote control. The pairing record contains the battery identification and the central controller identification obtained by the remote control during the historical pairing connection process. Step S720: If the pairing record contains the identity of the paired battery, the remote control will directly initiate a Bluetooth connection to the paired battery based on the identity of the paired battery to skip the pairing stage. The pairing stage includes scanning and receiving, determining the target battery, jointly generating a verification code, switching the amplitude of the low-voltage power supply voltage, and comparing the remote control timing duration with the central control timing duration. Step S730: After completing the Bluetooth connection with the paired battery, the remote control sends a power supply command to the paired battery so that the paired battery outputs a low-voltage power supply. Step S740: The remote controller receives a connection request sent by the paired central controller. After the paired central controller is powered on by the low-voltage power supply output from the paired battery, it directly sends a connection request to the remote controller based on the pairing record stored locally on the paired central controller. In step S750, after completing the Bluetooth connection with the paired central controller, the remote control stops timing.
[0081] It is understandable that the pairing record refers to the device identification record that the remote control acquires and stores locally on the remote control during the historical pairing connection process; the paired battery refers to the battery whose identification exists in the pairing record; and the paired central controller refers to the central controller whose identification exists in the pairing record.
[0082] In this embodiment, after each pairing connection is completed, the remote control saves the identification identifiers of the successfully connected battery and the central controller to the pairing record. After the remote control is powered on again, it queries the pairing record stored locally. If the pairing record contains the identification identifier of the paired battery, the remote control directly initiates a Bluetooth connection to the paired battery based on the identification identifier, skipping the pairing stage. The pairing stage includes scanning and receiving data, identifying the target battery, jointly generating a checksum, switching the amplitude of the low-voltage power supply, and comparing the remote control's timing duration with the central controller's timing duration.
[0083] In this embodiment, after establishing a Bluetooth connection with the paired battery, the remote control sends a power command to the paired battery, causing it to output a low-voltage power supply. The remote control, battery, and central controller all have memory functions. Upon powering on, the paired battery will accept Bluetooth connection requests initiated by the remote control based on its locally stored pairing history. After being powered on by the low-voltage supply from the paired battery, the paired central controller directly sends a connection request to the remote control based on its locally stored pairing history. The remote control receives the connection request, and after establishing a Bluetooth connection with the paired central controller, stops the timer, thus completing the connection.
[0084] In this embodiment, through the memory function of the remote control, battery and central controller, when the paired device is powered on again, it can skip the matching stages such as scanning and receiving, generating a verification code, switching the low voltage power supply amplitude and comparing the timing duration and connect directly, which shortens the connection time. Moreover, since the device identity in the pairing record is a device that has been verified and confirmed in the historical matching connection, the correctness of the connected object can still be guaranteed by direct connection.
[0085] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the Bluetooth anti-misconnection method for hydrofoils in this application. Any simple modifications based on this technical concept are within the protection scope of this application.
[0086] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0087] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. All equivalent structural transformations made under the technical concept of this application using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included within the scope of patent protection of this application.
Claims
1. A method for preventing accidental Bluetooth connection to a hydrofoil, characterized in that, Applied to a remote control, the remote control being used in conjunction with a battery and a central controller, the method includes: After the remote control is powered on, it starts timing and scans to receive the Bluetooth broadcast signals of each battery in order to obtain the signal strength of each battery. The target battery is determined based on the signal strength of each of the batteries, and a Bluetooth connection is established with the target battery. A verification code is generated together with the target battery, and a remote control broadcast name is generated based on the verification code; The remote control broadcasts a Bluetooth broadcast using the broadcast name and sends a power supply command to the target battery to make the target battery output a low-voltage power supply. A battery broadcast name is generated based on the check code and broadcast using the battery broadcast name via Bluetooth. The amplitude of the low-voltage power supply is switched to transmit the check code to the central controller, so that the central controller can initiate a connection with the remote control and the target battery respectively based on the check code after power-on. After completing the Bluetooth connection with the central controller, the system obtains the central controller timing duration sent by the central controller and the remote control timing duration counted by the remote controller since the start of timing. The remote control timing duration is compared with the central controller timing duration. If the remote control timing duration is less than the central controller timing duration, the system determines that the current connection is a false connection, disconnects the connection with the central controller and the target battery, and adds the central controller and the target battery to the blacklist. After determining that the current connection is a false connection, the system rescans and receives the Bluetooth broadcast signals of each battery, excludes the batteries in the blacklist from the batteries, re-identifies the target battery, re-matches and connects, and rejects the connection requests of the central controllers in the blacklist.
2. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, The steps of determining a target battery based on the signal strength of each of the batteries and establishing a Bluetooth connection with the target battery include: When the remote control first establishes a pairing connection, the signal strength and broadcast name of each battery are obtained, wherein the signal strength is the received signal strength indication value of the Bluetooth broadcast signal; The signal strengths of each battery are sorted, and the battery with the strongest signal strength is identified as the target battery. Send a Bluetooth connection request to the target battery based on the target battery's broadcast name; After the target battery responds to the Bluetooth connection request, a Bluetooth connection is established with the target battery.
3. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, The steps of generating a verification code together with the target battery, and generating a remote control broadcast name based on the verification code, include: Send the remote control's identification identifier to the target battery, and receive the target battery's identification identifier sent by the target battery; A first random number and a first timestamp are generated, and the first random number and the first timestamp are encrypted and sent to the target battery, wherein the first random number is a one-time random number; The target battery receives a second random number and a second timestamp encrypted by the target battery, wherein the second random number and the second timestamp are generated by the target battery, and the second random number is a one-time random number. The remote control and the target battery generate the verification code based on the remote control's identifier, the target battery's identifier, the first random number, the first timestamp, the second random number, and the second timestamp, respectively. The remote controller generates the remote controller broadcast name based on the check code.
4. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 3, characterized in that, The remote control is identified by its MAC address, and the target battery is identified by its MAC address. The steps for the remote control and the target battery to generate the verification code based on the remote control's identifier, the target battery's identifier, the first random number, the first timestamp, the second random number, and the second timestamp include: The MAC address of the remote control, the MAC address of the target battery, the first random number, the first timestamp, the second random number, and the second timestamp are concatenated sequentially to obtain the concatenated data; The concatenated data is processed using a preset hash algorithm or a preset encryption algorithm to obtain intermediate data; The verification code is obtained by extracting a preset number of bits of data from the intermediate data. The verification code is a rolling code with a maximum of 16 bits. The rolling code changes with each matching connection as the first random number, the first timestamp, the second random number, and the second timestamp change.
5. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 3, characterized in that, The step of generating the remote control broadcast name based on the check code includes: Retrieve the preset remote control name prefix; The remote control name prefix is concatenated with the check code to obtain the remote control broadcast name; The battery broadcast name is obtained by concatenating the preset battery name prefix with the check code of the target battery, wherein the remote control name prefix is different from the battery name prefix.
6. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, The steps of broadcasting via Bluetooth using the remote control's broadcast name and sending a power command to the target battery to cause the target battery to output a low-voltage supply voltage, generating a battery broadcast name based on the checksum and broadcasting via Bluetooth using the battery broadcast name, switching the amplitude of the low-voltage supply voltage to transmit the checksum to the central controller, and enabling the central controller to initiate connections with the remote control and the target battery respectively based on the checksum after power-on, include: The remote control broadcast name is used for Bluetooth broadcasting; The power supply command is sent to the target battery. The power supply command is used to instruct the target battery to output a low-voltage power supply of 12V after the interlock detection between the target battery and the central controller passes. The battery broadcast name is generated based on the check code and used for Bluetooth broadcasting. The interlock detection is the detection of the interlock status between the target battery and the central controller before the target battery outputs the low-voltage power supply. A switching command is sent to the target battery, the switching command being used to instruct the target battery to switch the low-voltage supply voltage between 12V and 10V according to the check code, wherein the switching frequency of the low-voltage supply voltage does not exceed 8 Hz; The controller receives a connection request from the central controller, wherein the central controller detects the amplitude switching waveform of the low-voltage power supply voltage between 12V and 10V after power-on, parses the check code based on the amplitude switching waveform, generates a scan name that matches the broadcast name of the remote control and the broadcast name of the battery based on the check code, and sends connection requests to the remote control and the target battery respectively based on the scan name.
7. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, After establishing a Bluetooth connection with the central controller, the following steps are taken: obtaining the central controller's timing duration sent by the central controller and the remote controller's timing duration calculated from the start of the timing process; comparing the remote controller's timing duration with the central controller's timing duration; if the remote controller's timing duration is less than the central controller's timing duration, determining that the current connection is a false connection; disconnecting the connection with the central controller and the target battery; and adding the central controller and the target battery to the blacklist. After completing the Bluetooth connection with the central controller, the remote controller stops timing and receives the central controller timing duration sent by the central controller, wherein the central controller timing duration is the duration obtained from the start of timing by the central controller when it is powered on until the timing stops when the Bluetooth connection with the remote controller is completed; The remote control timing duration is obtained from the start of timing by the remote control until the Bluetooth connection with the central controller is completed and the timing stops. The remote control timing duration is compared with the central control timing duration. If the remote control timing duration is less than the central control timing duration, the current connection is determined to be an erroneous connection. After determining that the current connection is a false connection, disconnect the Bluetooth connection with the central controller and the target battery, and add the identity of the central controller and the identity of the target battery to the blacklist.
8. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 7, characterized in that, The step of comparing the remote control timing duration with the central control timing duration, and determining that the current connection is a false connection if the remote control timing duration is less than the central control timing duration, includes: Determine whether the remote control timing duration is less than the central control timing duration; If the remote control timing duration is less than the central control timing duration, the current connection is determined to be a misconnection. In the case of a correct connection, the central controller only powers on after the target battery responds to the power supply command and outputs the low-voltage power supply voltage, and the remote control timing duration is greater than the central control timing duration. If the remote control timing duration is greater than the central controller timing duration, the current connection is determined to be a correct connection, and the Bluetooth connection with the central controller and the target battery is maintained.
9. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, After determining that the current connection is a false connection, the steps of rescanning and receiving Bluetooth broadcast signals from each battery, excluding batteries from the blacklist, re-identifying the target battery, re-pairing and connecting, and rejecting connection requests from controllers in the blacklist include: After determining that the current connection is a false connection, the system rescans and receives the Bluetooth broadcast signals broadcast by each of the batteries to obtain the signal strength, broadcast name and identification of each battery. The identification identifier of each battery is compared with the identification identifier recorded in the blacklist, wherein the blacklist records the identification identifier of the central controller and the identification identifier of the target battery; Eliminate batteries whose identifiers are in the blacklist from the batteries to obtain a candidate battery set; The target battery is re-determined based on the signal strength of each battery in the candidate battery set, and a Bluetooth connection request is sent to the re-determined target battery based on the broadcast name of the re-determined target battery. During the reconnection process, if a connection request is received from a central controller recorded in the blacklist, the connection request is rejected.
10. The method for preventing accidental Bluetooth connection to hydrofoils as described in claim 1, characterized in that, The method further includes: After the remote control is powered on, the pairing record stored locally on the remote control is queried. The pairing record contains the battery identification and the central controller identification obtained by the remote control during the historical pairing connection process. If the pairing record contains the identity of a paired battery, the remote control will directly initiate a Bluetooth connection to the paired battery based on the identity of the paired battery to skip the pairing stage. The pairing stage includes scanning and receiving, determining the target battery, generating a checksum together, switching the amplitude of the low-voltage power supply voltage, and comparing the remote control timing duration with the central control timing duration. After establishing a Bluetooth connection with the paired battery, the remote control sends a power supply command to the paired battery to cause the paired battery to output the low-voltage power supply voltage. The remote controller receives a connection request sent by the paired central controller. After the paired central controller is powered on by the low-voltage power supply output by the paired battery, it directly sends the connection request to the remote controller based on the pairing record stored locally on the paired central controller. After completing the Bluetooth connection with the paired central controller, the remote control stops timing.