Bluetooth mesh-based riding helmet earphone multi-terminal talkback synchronization method and system

By constructing a Bluetooth mesh self-organizing network and error detection, performing time compensation and voice activity monitoring, the problems of voice asynchrony and voice right-of-way conflict in Bluetooth 5.0 cycling helmet headsets were solved, enabling synchronous intercom between multiple terminals and ensuring the clarity and stability of the conversation.

CN121240195APending Publication Date: 2025-12-30SHENZHEN WEIMAITONG ELECTRONIC TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202511601442.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-04
Publication Date
2025-12-30

AI Technical Summary

Technical Problem

Existing Bluetooth 5.0 cycling helmet headsets suffer from issues such as voice packet loss, voice control conflicts, and unstable call quality during communication, making it difficult to achieve efficient synchronous intercom between multiple terminals.

Method used

By constructing a self-organizing network based on Bluetooth mesh, using temporary master nodes and topology networks for error detection and time compensation, terminal nodes are calibrated. Combined with voice activity monitoring and priority sorting, time slot allocation and multi-hop forwarding are performed. Finally, a low-latency decoder is used to decode and play synchronous voice frames, enabling synchronous intercom between multiple terminals.

Benefits of technology

It effectively eliminates node clock deviation, realizes the synchronization of voice overlay and echo in multi-person intercom, ensures clear and conflict-free long-distance dialogue between fleet leaders, and achieves zero-latency synchronous intercom between fleet leaders with instant voice communication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121240195A_ABST
    Figure CN121240195A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of wireless communication, in particular to a Bluetooth mesh-based riding helmet earphone multi-terminal talkback synchronization method and system, and the method comprises the steps: constructing a self-organizing network through a plurality of terminal nodes, carrying out the error detection of the self-organizing network, obtaining an error value, carrying out the time compensation of the terminal nodes, and obtaining a calibration terminal node, carrying out voice activity monitoring on the plurality of calibration terminal nodes to obtain a plurality of marked terminal nodes, carrying out time slot allocation on the plurality of ordered voice requests to obtain a plurality of voice frames with timestamps, carrying out multi-hop forwarding on the plurality of voice frames with timestamps to obtain a plurality of verification voice frames, carrying out timestamp sorting to obtain a plurality of sorted voice frames, and sending the sorted voice frames to a server; and performing synchronous error correction to obtain a plurality of synchronous voice frames, decoding and playing the plurality of synchronous voice frames to obtain a synchronous voice stream, and realizing multi-terminal synchronous talkback. According to the invention, the problems of difficult network establishment, asynchronous voice and speaking right conflict in the application of the riding helmet Bluetooth earphone can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of wireless communication, and in particular to a Bluetooth mesh-based multi-terminal intercom synchronization method and system for a cycling helmet headset. BACKGROUND

[0002] With the rapid development of the wireless communication industry, the Bluetooth mesh-based multi-terminal intercom synchronization for a cycling helmet headset is facing new challenges. The problems of network establishment difficulty, voice asynchronization and talk power conflict of the cycling helmet Bluetooth headset in application can be solved through the closed-loop design of Bluetooth mesh teaming, distributed time compensation, priority time slot allocation and multi-hop forwarding.

[0003] Currently, the cycling helmet Bluetooth headset based on Bluetooth 5.0 is mainly used to realize the communication dialogue in cycling. Although the cycling helmet Bluetooth headset based on traditional Bluetooth 5.0 can realize the dialogue in cycling, there are problems of voice packet loss, talk power conflict and unstable call quality in the dialogue process. Therefore, it is of great significance to optimize the Bluetooth mesh-based multi-terminal intercom synchronization for a cycling helmet headset for improving the application effect of the cycling helmet Bluetooth headset. SUMMARY

[0004] The present application provides a Bluetooth mesh-based multi-terminal intercom synchronization method and computer readable storage medium for a cycling helmet headset, which mainly aims to solve the problems of network establishment difficulty, voice asynchronization and talk power conflict of the cycling helmet Bluetooth headset in application.

[0005] To achieve the above-mentioned purpose, the present application provides a Bluetooth mesh-based multi-terminal intercom synchronization method for a cycling helmet headset, which comprises:

[0006] receiving a network forming instruction, and obtaining a plurality of terminal nodes by using the network forming instruction;

[0007] constructing a self-organizing network by using the plurality of terminal nodes, wherein the self-organizing network comprises a temporary master node and a topology network;

[0008] performing the following operations on each terminal node in the plurality of terminal nodes:

[0009] performing error detection by using the terminal node, the temporary master node and the topology network to obtain an error value;

[0010] performing time compensation on the terminal node by using the error value to obtain a calibrated terminal node;

[0011] summarizing the calibrated terminal node to obtain a plurality of calibrated terminal nodes;

[0012] performing voice activity monitoring on the plurality of calibrated terminal nodes to obtain a plurality of marked terminal nodes;

[0013] obtaining a plurality of voice requests based on a plurality of marker terminal nodes, performing priority sorting on the plurality of voice requests to obtain a plurality of ordered voice requests;

[0014] performing time slot allocation on the plurality of ordered voice requests to obtain a plurality of time-stamped voice frames;

[0015] performing multi-hop forwarding on the plurality of time-stamped voice frames to obtain a plurality of verification voice frames;

[0016] performing timestamp sorting on the plurality of verification voice frames to obtain a plurality of sorted voice frames;

[0017] performing synchronization error correction on the plurality of sorted voice frames to obtain a plurality of synchronized voice frames;

[0018] decoding and playing the plurality of synchronized voice frames by using a pre-constructed low-delay decoder to obtain a synchronized voice stream, thereby realizing multi-terminal synchronized talkback.

[0019] Optionally, the constructing a self-organizing network by using the plurality of terminal nodes comprises:

[0020] obtaining a signal strength and a residual power of each terminal node in the plurality of terminal nodes;

[0021] performing the following operations on each terminal node in the plurality of terminal nodes:

[0022] calculating a node quality factor by using the signal strength corresponding to the terminal node and the residual power corresponding to the terminal node, wherein a calculation formula is as follows:

[0023] ,

[0024] wherein, the node quality factor, a preset signal strength weight coefficient, the signal strength, a preset maximum signal strength, a preset minimum signal strength, a preset power weight coefficient, the residual power;

[0025] summarizing the node quality factors to obtain a plurality of node quality factors;

[0026] confirming a temporary master node and a plurality of child nodes based on the plurality of node quality factors;

[0027] obtaining a plurality of parent nodes by using the temporary master node and the plurality of child nodes;

[0028] An initial topology network is constructed by using a temporary master node, a plurality of child nodes and a plurality of parent nodes;

[0029] A plurality of individual links are obtained based on the initial topology network, wherein the individual links include the parent nodes and the child nodes;

[0030] The following operations are performed on each of the plurality of individual links:

[0031] Packet loss rate detection is performed by using the parent nodes and the child nodes in the individual links to obtain a packet loss rate value;

[0032] If the packet loss rate value is greater than or equal to a preset packet loss rate threshold, a candidate parent node is obtained based on a pre-constructed routing metric, the candidate parent node is used as a parent node, the step of performing packet loss rate detection by using the parent nodes and the child nodes in the individual links is returned until the packet loss rate value is less than the packet loss rate threshold, and the individual link is used as an optimized link;

[0033] The optimized links are summarized to obtain a self-organizing network.

[0034] Optionally, error detection is performed by using the terminal node, the temporary master node and the topology network to obtain an error value, including:

[0035] A reference clock value of the terminal node and a reference clock value of the temporary master node are obtained;

[0036] Time deviation calculation is performed by using the reference clock value of the terminal node and the reference clock value of the temporary master node to obtain a clock deviation value;

[0037] A set of relay nodes is confirmed by using the terminal node, the temporary master node and the topology network, wherein the set of relay nodes includes one or more relay nodes;

[0038] The following operations are performed on each of the set of relay nodes:

[0039] Delay detection is performed by using the terminal node and the relay nodes to obtain a delay value;

[0040] The delay values are summarized to obtain a plurality of delay values, and the plurality of delay values are algebraically added to obtain an end-to-end delay value;

[0041] The clock deviation value and the end-to-end delay value are algebraically added to obtain the error value.

[0042] Optionally, time compensation is performed on the terminal node by using the error value to obtain a calibrated terminal node, including:

[0043] An error adjustment direction and a target delay time are confirmed based on the error value;

[0044] An original playback timestamp of the terminal node is obtained;

[0045] adjusting the original play timestamp of the terminal node in time by using the error adjustment direction and the target delay time to obtain a calibrated timestamp;

[0046] obtaining a local play time of the terminal node;

[0047] synchronizing the local play time by using the calibrated timestamp to obtain a calibrated terminal node.

[0048] Optionally, the voice activity monitoring on the plurality of calibrated terminal nodes to obtain a plurality of marked terminal nodes comprises:

[0049] the following operations are performed on each of the plurality of calibrated terminal nodes:

[0050] audio signal collection on the calibrated terminal node by using a preset collection time interval to obtain an audio signal set, wherein the audio signal set comprises a plurality of audio signals;

[0051] constructing a timing curve by using the plurality of audio signals, obtaining a maximum change rate of the timing curve, comparing the maximum change rate with a preset change rate threshold, and if the maximum change rate is greater than or equal to the change rate threshold, marking the calibrated terminal node to obtain a marked terminal node;

[0052] summarizing the marked terminal nodes to obtain the plurality of marked terminal nodes.

[0053] Optionally, the priority sorting on the plurality of voice requests to obtain a plurality of ordered voice requests comprises:

[0054] obtaining a voice request quantity;

[0055] obtaining a request timestamp and a link signal strength of each of the plurality of voice requests to obtain a plurality of request timestamps and a plurality of link signal strengths, and the request timestamp and the link signal strength correspond to each other in a one-to-one manner;

[0056] normalizing the plurality of request timestamps and the plurality of link signal strengths respectively to obtain a plurality of normalized request timestamps and a plurality of normalized link signal strengths;

[0057] the following operations are performed on each of the plurality of voice requests:

[0058] performing priority calculation by using the normalized request timestamp corresponding to the voice request in the plurality of normalized request timestamps, the normalized link signal strength corresponding to the voice request in the plurality of normalized link signal strengths, and the voice request quantity to obtain a priority score, wherein the calculation formula of the priority score is as follows:

[0059] ,

[0060] wherein, represents a priority score, represents a preset time jitter coefficient, represents a normalized request timestamp, represents a preset signal weight coefficient, represents a normalized link signal strength, represents a preset congestion coefficient, represents a number of voice requests;

[0061] The priority scores are aggregated to obtain a plurality of priority scores, wherein the priority scores correspond to the voice requests one by one.

[0062] The plurality of voice requests are sorted using the plurality of priority scores to obtain a plurality of ordered voice requests.

[0063] Optionally, the plurality of ordered voice requests are allocated time slots to obtain a plurality of time-stamped voice frames, comprising:

[0064] The number of ordered voice requests is obtained.

[0065] The number of ordered voice requests and the preset maximum tolerance delay are used for width calculation to obtain a single micro-slot.

[0066] The plurality of ordered voice requests are allocated time slot numbers using the single micro-slot to obtain a plurality of time slot allocation voice frames.

[0067] Each of the plurality of time slot allocation voice frames is executed as follows:

[0068] The reference time and the actual processing time of the time slot allocation voice frame are obtained.

[0069] The reference time and the actual processing time are used for offset detection to obtain a local offset.

[0070] The reference time is adjusted using the local offset to obtain a calibrated start time.

[0071] The time slot allocation voice frame is frame header encapsulated using the calibrated start time to obtain a time-stamped voice frame.

[0072] The time-stamped voice frames are aggregated to obtain a plurality of time-stamped voice frames.

[0073] Optionally, the plurality of time-stamped voice frames are each multi-hop forwarded to obtain a plurality of verification voice frames, comprising:

[0074] Each of the plurality of time-stamped voice frames is executed as follows:

[0075] Cyclic redundancy check is performed on the timestamped voice frame using the calibration terminal node corresponding to the timestamped voice frame to obtain the check code;

[0076] The verification code is concatenated with the timestamped voice frame to obtain the verification voice frame;

[0077] The first relay frame is obtained by relaying the calibration terminal node, the temporary master node, and the verification voice frame.

[0078] The first relay frame is checked to obtain a check result, which includes whether it passes or fails.

[0079] If the verification result is successful, the first relay frame is broadcast to obtain the verification voice frame;

[0080] The verification voice frames are summarized to obtain multiple verification voice frames.

[0081] Optionally, the step of correcting synchronization errors in multiple sorted speech frames to obtain multiple synchronized speech frames includes:

[0082] For each of the multiple sorted speech frames, perform the following operation:

[0083] Obtain the local timestamp of the calibration terminal node corresponding to the sorted speech frame and the acquisition timestamp of the sorted speech frame.

[0084] The synchronization error is obtained by calculating the difference between the local timestamp and the collection timestamp.

[0085] The optimal offset is obtained by recursively estimating the synchronization error.

[0086] The sorted speech frames are time-shifted using the optimal offset to obtain synchronized speech frames;

[0087] By summing the synchronized audio frames, multiple synchronized audio frames are obtained.

[0088] To achieve the above objectives, the present invention also provides a multi-terminal intercom synchronization system for cycling helmet headsets based on Bluetooth mesh, comprising:

[0089] The self-connecting network construction module is used to receive networking instructions and use these instructions to acquire multiple terminal nodes.

[0090] A self-organizing network is constructed using multiple terminal nodes, which includes a temporary master node and a topology network.

[0091] The local time calibration module is used to perform the following operations on each of the multiple terminal nodes:

[0092] Error values ​​are obtained by using terminal nodes, temporary master nodes, and the topology network.

[0093] The time compensation of the terminal node is performed using the error value to obtain the calibrated terminal node;

[0094] By summing up the aforementioned calibration terminal nodes, multiple calibration terminal nodes are obtained;

[0095] The voice request sorting module is used to monitor the voice activity of multiple calibration terminal nodes and obtain multiple marked terminal nodes;

[0096] Multiple voice requests are obtained based on multiple marked terminal nodes, and the multiple voice requests are prioritized to obtain multiple ordered voice requests;

[0097] Multiple ordered voice requests are time-slotted to obtain multiple timestamped voice frames;

[0098] Multiple timestamped voice frames are forwarded via multiple hops to obtain multiple verification voice frames;

[0099] Multiple verification audio frames are sorted by timestamp to obtain multiple sorted audio frames.

[0100] The synchronization error adjustment module is used to correct the synchronization error of multiple sorted speech frames to obtain multiple synchronized speech frames.

[0101] By using a pre-built low-latency decoder to decode and play multiple synchronous voice frames, a synchronous voice stream is obtained, enabling synchronous intercom between multiple terminals.

[0102] To address the above problems, the present invention also provides an electronic device, the electronic device comprising:

[0103] Memory, storing at least one instruction; and

[0104] The processor executes the instructions stored in the memory to implement the above-described method for multi-terminal intercom synchronization of cycling helmet headsets based on Bluetooth mesh.

[0105] To address the aforementioned issues, the present invention also provides a computer-readable storage medium storing at least one instruction, which is executed by a processor in an electronic device to implement the aforementioned method for multi-terminal intercom synchronization of cycling helmet headsets based on Bluetooth mesh.

[0106] To address the problems described in the background section, this invention receives a networking command, acquires multiple terminal nodes using the command, and constructs a self-organizing network using these terminal nodes. The self-organizing network includes a temporary master node and a topology network. Therefore, in this embodiment, after receiving the networking command, manual pairing can generate a self-organizing network between headsets within seconds, eliminating the cumbersome reconnection issues of traditional chain relays. Furthermore, this invention performs the following operations on each of the multiple terminal nodes: error detection is performed using the terminal node, temporary master node, and topology network to obtain an error value; time compensation is applied to the terminal node using the error value to obtain a calibrated terminal node; and the calibrated terminal nodes are aggregated to obtain multiple calibrated terminal nodes. Thus, this embodiment, through distributed error detection and time compensation, eliminates clock deviations between nodes, effectively improving the problems of overlapping and asynchronous echoes in multi-person voice communication. Next, this invention monitors voice activity across multiple calibration terminal nodes to obtain multiple marked terminal nodes. Based on these marked terminal nodes, it acquires multiple voice requests, prioritizes these requests to obtain multiple ordered voice requests, allocates time slots to these ordered voice requests to obtain multiple timestamped voice frames, performs multi-hop forwarding on each of these timestamped voice frames to obtain multiple verification voice frames, and timestampedly sorts these verification voice frames to obtain multiple sorted voice frames. This embodiment of the invention automatically interrupts conversations through voice activity monitoring and priority time slot allocation, ensuring no overlap or missing words even when multiple people speak simultaneously. Furthermore, by utilizing multi-hop forwarding and timestamped sorting, the voice frames are restored and played in the correct order, achieving clear and conflict-free long-distance conversations even within a convoy. Furthermore, this invention corrects synchronization errors in the sorted voice frames to obtain multiple synchronized voice frames. A pre-built low-latency decoder decodes and plays these synchronized voice frames to obtain a synchronized voice stream, enabling synchronous intercom between multiple terminals. This embodiment of the invention, through final-level synchronization error correction and a low-latency decoder, adjusts and quickly decodes the remaining time difference, truly achieving zero-latency synchronous intercom within a convoy. Therefore, this invention can solve the problems of difficult network setup, voice asynchrony, and voice control conflicts in the application of Bluetooth headsets for cycling helmets. Attached Figure Description

[0107] Figure 1 This is a flowchart illustrating a method for synchronizing multi-terminal intercom in a cycling helmet headset based on Bluetooth mesh, according to an embodiment of the present invention.

[0108] Figure 2 This is a functional block diagram of a Bluetooth mesh-based multi-terminal intercom synchronization system for cycling helmets and headsets provided in an embodiment of the present invention.

[0109] Figure 3This is a schematic diagram of the structure of an electronic device that implements the Bluetooth mesh-based multi-terminal intercom synchronization method for cycling helmet headsets, according to an embodiment of the present invention.

[0110] Explanation of reference numerals in the attached figures:

[0111] 10. Electronic device; 11. Processor; 12. Memory; 13. Bus.

[0112] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0113] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0114] This application provides a method for multi-terminal intercom synchronization of cycling helmet headsets based on Bluetooth mesh. The executing entity of this method includes, but is not limited to, at least one of the following electronic devices that can be configured to execute the method provided in this application: a server, a terminal, etc. In other words, the method can be executed by software or hardware installed on a terminal device or a server device, and the software can be a blockchain platform. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cloud server cluster.

[0115] Reference Figure 1 The diagram shown is a flowchart illustrating a multi-terminal intercom synchronization method for a cycling helmet headset based on Bluetooth mesh, according to an embodiment of the present invention. In this embodiment, the multi-terminal intercom synchronization method for a cycling helmet headset based on Bluetooth mesh includes:

[0116] S1. Receive networking instructions, use the networking instructions to obtain multiple terminal nodes, and use the multiple terminal nodes to build a self-organizing network, wherein the self-organizing network includes a temporary master node and a topology network.

[0117] It should be explained that the construction of a self-organizing network using multiple terminal nodes includes:

[0118] Obtain the signal strength and remaining battery power of each of the multiple terminal nodes;

[0119] Perform the following operation on each of the multiple terminal nodes:

[0120] The node quality factor is calculated using the signal strength and remaining power of the terminal node. The calculation formula is as follows:

[0121] ,

[0122] in, Represents the node quality factor. This represents the preset signal strength weighting coefficient. Indicates signal strength. This indicates the preset maximum signal strength. This indicates the preset minimum signal strength. This represents the preset power weighting coefficient. Indicates the remaining battery power;

[0123] By summing up the node quality factors, multiple node quality factors are obtained;

[0124] A temporary master node and multiple child nodes were identified based on the quality factors of multiple nodes.

[0125] Multiple parent nodes are obtained using the temporary master node and multiple child nodes;

[0126] Construct an initial topology network using a temporary master node, multiple child nodes, and multiple parent nodes;

[0127] Based on the initial network topology, multiple individual links are obtained, where each individual link includes a parent node and a child node;

[0128] Perform the following operation on each of the multiple individual links:

[0129] Packet loss rate is detected by using the parent and child nodes in a separate link, and the packet loss rate value is obtained.

[0130] If the packet loss rate is greater than or equal to the preset packet loss rate threshold, then a candidate parent node is obtained based on the pre-built routing metric. The candidate parent node is used as the parent node, and the step of using the parent node and child node in the individual link to perform packet loss rate detection is returned until the packet loss rate is less than the packet loss rate threshold, and the individual link is used as the optimized link.

[0131] By summarizing the optimized links, a self-organizing network is obtained.

[0132] Furthermore, the networking command is triggered by the headphone button to wake up surrounding headphones and initiate the networking process.

[0133] For example, during a group outing, Xiao Zhang presses the button on his earphone to enter pairing mode (sends a network command), and Xiao Wang, Xiao Li, and Xiao Zhao around him simultaneously pair (receive the network command), using the four earphones of Xiao Zhang, Xiao Wang, Xiao Li, and Xiao Zhao as terminal nodes.

[0134] Understandably, a terminal node is a Bluetooth headset device built into a cycling helmet, equipped with a microphone, speaker, battery monitoring, and signal strength detection capabilities. Signal strength is the wireless signal strength received by the terminal node from other terminal nodes. Remaining battery power is the percentage of the terminal node's built-in battery power, used to assess its continuous operating time. The node quality factor is a comprehensive evaluation metric calculated using signal strength and remaining battery power to quantify the suitability of a terminal node as a network hub. The network hub is the core device responsible for connecting and managing communication between different terminal nodes, ensuring efficient voice transmission and processing. The signal strength weighting coefficient is a constant used to adjust the relative importance of signal strength when calculating the node quality factor. For example, 0.7. The maximum signal strength is the optimal signal strength value achievable under ideal conditions (no fading). For example, -40dBm. The minimum signal strength is the lowest signal strength threshold necessary to maintain effective communication. For example, -90dBm. The battery weighting coefficient is a constant used to adjust the relative importance of the remaining battery power factor when calculating the node quality factor. For example, 0.3.

[0135] Furthermore, identifying a temporary master node and multiple child nodes based on multiple node quality factors refers to the process of designating the terminal node corresponding to the node with the largest value among the multiple node quality factors as the temporary master node, and the remaining terminal nodes as child nodes. The temporary master node is the core node corresponding to the node with the largest value among the multiple node quality factors, used for initial coordination and management of the terminal nodes. Child nodes are terminal nodes attached to the temporary master node, used for receiving and sending voice. A parent node is a terminal node that provides relay forwarding services for one or more child nodes. Any terminal node (including the temporary master node and child nodes that have become parent nodes) can become a parent node. Child nodes access the network through their parent nodes and communicate with the temporary master node or other terminal nodes. The initial topology network is a mesh topology formed with the temporary master node as the root node and parent nodes initially assigned to all child nodes. Optionally, network topology discovery can be used as the method for obtaining the initial network topology. A separate link is the communication path between each pair of directly connected parent and child nodes in the initial topology network. Packet loss rate detection is a network testing method that evaluates the communication reliability of a link by sending test data packets from a parent node to a child node (or from a child node to a parent node) and calculating the percentage of test data packets successfully received by the receiving end. Packet loss rate detection is existing technology and will not be elaborated further here. The packet loss rate value is the proportion of data packets lost, calculated during the packet loss rate detection process, reflecting the link quality. For example, if 100 data packets are sent and 95 are received, the packet loss rate is 5%. The packet loss rate threshold is a preset value used to determine whether a link is acceptable. For example, 3%. If the packet loss rate value of a single link is greater than or equal to the packet loss rate threshold, the quality of that single link is considered unsatisfactory, and a new parent node needs to be selected for optimization. The routing metric is a predefined method for selecting a better parent node (alternate parent node) for the child nodes of a single link that needs optimization in the current network environment. Optionally, an artificial bee colony algorithm can be used as the routing metric. The alternative parent node is a node selected from the child nodes of a single link based on the routing metric that may provide a lower packet loss rate. An optimized link is a parent-child communication link that, after packet loss rate detection, is below a packet loss rate threshold. A self-organizing network is a wireless multi-hop network formed by connecting the parent nodes of all optimized links to temporary master nodes. In this wireless multi-hop network, terminal nodes can dynamically join and leave, and automatically maintain efficient communication paths, enabling group voice calls.

[0136] S2. Error detection is performed using terminal nodes, temporary master nodes, and the topology network to obtain error values. Time compensation is performed on the terminal nodes using the error values ​​to obtain calibrated terminal nodes. The calibrated terminal nodes are then aggregated to obtain multiple calibrated terminal nodes.

[0137] It should be explained that the error detection using terminal nodes, temporary master nodes, and the topology network to obtain error values ​​includes:

[0138] Obtain the reference clock value of the terminal node and the reference clock value of the temporary master node;

[0139] The time deviation is calculated using the reference clock value of the terminal node and the comparison clock value of the temporary master node to obtain the clock deviation value;

[0140] The relay node set is identified using terminal nodes, temporary master nodes, and the topology network. The relay node set includes one or more relay nodes.

[0141] Perform the following operation on each relay node in the relay node set:

[0142] Delay values ​​are obtained by using terminal nodes and relay nodes for delay detection.

[0143] Summarize the aforementioned delay values ​​to obtain multiple delay values. Add these multiple delay values ​​algebraically to obtain the end-to-end delay value.

[0144] The clock deviation value and the end-to-end delay value are algebraically added together to obtain the error value.

[0145] Furthermore, the reference clock value of the terminal node is the current timestamp of the terminal node's local hardware clock. The reference clock value of the ephemeral master node is the current timestamp of the ephemeral master node's local hardware clock. The local hardware clock is an independent, battery-powered timing circuit module embedded within the terminal node (headphone motherboard). Clock skew calculation is the process of calculating the time difference between the terminal node's reference clock value and the ephemeral master node's reference clock value. Specifically, the clock skew value is obtained by subtracting the ephemeral master node's reference clock value from the terminal node's reference clock value. The purpose is to measure the inconsistency between the two reference clock values ​​in time. The clock skew value is the time difference calculated using the clock skew. Specifically, the clock skew value represents the clock deviation between the terminal node and the ephemeral master node. If the clock skew value is negative, the terminal node's local time lags behind the ephemeral master node; if the clock skew value is positive, the terminal node's local time is ahead of the ephemeral master node. If the clock skew value is 0, it indicates that the terminal node and the ephemeral master node's clocks are synchronized. The relay node set is a collection containing one or more relay nodes. A relay node is a node that provides relay forwarding services for pre-acknowledged data packets on the communication path from the terminal node to the temporary master node.

[0146] Understandably, delay detection is the process of measuring the single-hop transmission time of a data packet from a terminal node to a relay node. Optionally, a Ping-Pong mechanism is used as the delay detection method. The delay value is the single-hop transmission time of the data packet between the terminal node and the relay node obtained through delay detection. The end-to-end delay value is the delay value of the data packet from the terminal node to the temporary master node, obtained by algebraically adding the delay values ​​of each relay node in the terminal node and relay node sets. The error value is a correction amount used for time compensation of the terminal node, obtained by algebraically adding the clock skew value and the end-to-end delay value.

[0147] It should be explained that the step of using error values ​​to perform time compensation on terminal nodes to obtain calibrated terminal nodes includes:

[0148] Based on the error value, confirm the error adjustment direction and target delay time;

[0149] Get the original playback timestamp of the terminal node;

[0150] The original playback timestamp of the terminal node is adjusted using the error adjustment direction and the target delay time to obtain the calibration timestamp;

[0151] Obtain the local playback time of the terminal node;

[0152] The local playback time is synchronized using the calibration timestamp to obtain the calibration terminal node.

[0153] Furthermore, the error adjustment direction is the adjustment direction of the local clock of the terminal node determined by the sign of the error value, wherein the error adjustment direction includes positive and negative directions.

[0154] For example, if the error value is positive, it means that the local clock of the terminal node is ahead of the local clock of the temporary master node, and a positive delay is needed (waiting for playback), and the error adjustment direction is positive; if the error value is negative, it means that the local clock of the terminal node is behind the local clock of the temporary master node, and a negative delay is needed (playing ahead), and the error adjustment direction is negative.

[0155] Understandably, the target delay time is the absolute value of the error. For example, if the error is -10ms, then the target delay time is 10ms. The original playback timestamp of the terminal node is the time point of the data packet (such as an audio frame) according to the playback schedule preset by the terminal node based on its local clock. For example, an audio packet is marked to be played at 1020ms local time. Time adjustment is the process of adjusting the original playback timestamp of the terminal node using the error adjustment direction and the target delay time. The adjustment process is as follows:

[0156] ,

[0157] in, Indicates the calibration timestamp. This represents the original playback timestamp of the terminal node. Let D represent the target delay time, and D represent the error adjustment direction. This indicates that the error adjustment direction is positive. This indicates that the error adjustment direction is negative.

[0158] Furthermore, the calibration timestamp is a time point calculated through time adjustment. The local playback time is a preset time point for the terminal node to play data packets. Synchronizing the local playback time using the calibration timestamp refers to aligning the local playback time with the calibration timestamp. Optionally, a timestamp alignment method can be used as the synchronization method. The calibration terminal node is the terminal node whose local playback time is aligned with the calibration timestamp.

[0159] S3. Perform voice activity monitoring on multiple calibration terminal nodes to obtain multiple marked terminal nodes.

[0160] It should be explained that the voice activity monitoring of multiple calibration terminal nodes to obtain multiple marked terminal nodes includes:

[0161] Perform the following operation on each of the multiple calibration terminal nodes:

[0162] Audio signals are acquired from the calibration terminal node using a preset acquisition time interval to obtain an audio signal set, which includes multiple audio signals.

[0163] A time-series curve is constructed using multiple audio signals. The maximum rate of change of the time-series curve is obtained. The maximum rate of change is compared with a preset rate of change threshold. If the maximum rate of change is greater than or equal to the rate of change threshold, the calibration terminal node is marked to obtain the marked terminal node.

[0164] By summing up the labeled terminal nodes, multiple labeled terminal nodes are obtained.

[0165] Furthermore, the acquisition time interval is the time interval between two consecutive audio signal acquisitions. For example, 20ms. Audio signal acquisition is the process of acquiring sound waves using the microphone of the calibration terminal node. This audio signal acquisition is existing technology and will not be described in detail here. An audio signal set is a collection containing multiple audio signals. An audio signal is a carrier of the amplitude values ​​of regular sound waves containing speech, music, and sound effects. A time-series curve is a curve showing the change of audio signals over time, constructed using multiple audio signals and their corresponding acquisition time intervals. The maximum rate of change is the maximum change in amplitude value of the time-series curve within one acquisition time interval. The rate of change threshold is a value used to determine whether the amplitude change is sufficient to identify valid speech activity. For example, 8. A labeled terminal node is the calibration terminal node corresponding to the time-series curve with a maximum rate of change greater than or equal to the rate of change threshold.

[0166] S4. Obtain multiple voice requests based on multiple marked terminal nodes, prioritize the multiple voice requests, and obtain multiple ordered voice requests.

[0167] It should be explained that the prioritization of multiple voice requests to obtain multiple ordered voice requests includes:

[0168] Get the number of voice requests;

[0169] Obtain the request timestamp and link signal strength of each of the multiple voice requests, resulting in multiple request timestamps and multiple link signal strengths, with a one-to-one correspondence between the request timestamps and the link signal strengths;

[0170] The multiple request timestamps and multiple link signal strengths are normalized respectively to obtain multiple normalized request timestamps and multiple normalized link signal strengths;

[0171] For each of the multiple voice requests, perform the following operation:

[0172] Priority is calculated by using the normalized request timestamps corresponding to multiple normalized request timestamps, the normalized link signal strengths corresponding to multiple normalized link signal strengths, and the number of voice requests. The priority score is calculated using the following formula:

[0173] ,

[0174] in, Indicates priority score, This represents the preset time jitter coefficient. Indicates the normalized request timestamp. This represents the preset signal weighting coefficient. Indicates the normalized link signal strength. This represents the preset congestion coefficient. Indicates the number of voice requests;

[0175] The priority scores are summed to obtain multiple priority scores, each of which corresponds one-to-one with a voice request;

[0176] Multiple voice requests are sorted using multiple priority scores to obtain multiple ordered voice requests.

[0177] Furthermore, a voice request is a control message sent by a terminal node requesting to occupy a voice channel for a call. The number of voice requests refers to the total number of voice requests. The request timestamp is a time stamp used by the terminal node when generating and sending its voice request packet, based on its local clock. The link signal strength is the signal reception strength of the temporary master node when it receives a voice request packet from a terminal node. The link signal strength is obtained by signal strength detection performed by the wireless communication chip built into the temporary master node; this signal strength detection is existing technology and will not be elaborated further. Normalization is a method of scaling a set of values ​​to between (0-1) to eliminate dimensional differences. Optionally, Min-Max normalization is used as the normalization method. The normalized request timestamp is the normalized request timestamp. The normalized link signal strength is the normalized link signal strength. Priority calculation is the process of calculating a priority score for each voice request. The priority score is a score obtained through priority calculation used to rank voice requests. The time jitter coefficient is a coefficient used to adjust the importance of the normalized request timestamp in the priority calculation. For example, 0.5. The signal weighting coefficient is a coefficient used to adjust the importance of normalized link signal strength in priority calculation. For example, 0.5. The congestion coefficient is a coefficient used to adjust the impact of the number of voice requests on the priority score. For example, 0.1. The number of voice requests is the total number of voice requests. Sorting multiple voice requests using multiple priority scores means arranging the multiple voice requests according to their corresponding priority scores from smallest to largest, and attaching a sequence number label to each voice request. The smaller the priority score, the higher the priority. Ordered voice requests are the sorted voice requests with sequence number labels.

[0178] S5. Allocate time slots for multiple ordered voice requests to obtain multiple timestamped voice frames.

[0179] It should be explained that the process of allocating time slots for multiple ordered voice requests to obtain multiple timestamped voice frames includes:

[0180] Get the number of ordered voice requests;

[0181] The width is calculated using the number of ordered voice requests and the preset maximum tolerable delay to obtain a single micro-slot;

[0182] Multiple time slots are allocated to multiple ordered voice requests using a single micro-time slot, resulting in multiple time slot allocated voice frames;

[0183] For each time-slot allocated speech frame in a multi-slot allocated speech frame, the following operation is performed:

[0184] Obtain the reference time and actual processing time of the time slot allocated speech frames;

[0185] Offset is detected using the reference time and the actual processing time to obtain the local offset;

[0186] The calibration start time is obtained by adjusting the reference time using the local offset;

[0187] The time-slot allocated speech frames are encapsulated with frame headers using the calibration start time to obtain time-stamped speech frames;

[0188] By summing the timestamped audio frames, multiple timestamped audio frames are obtained.

[0189] Furthermore, the number of ordered voice requests is the total number of ordered voice requests. The maximum tolerable delay is a preset maximum time delay between when a voice request is authorized and when data packets begin to be sent. For example, 100ms. Width calculation is the process of calculating a single micro-slot using the number of ordered voice requests and the maximum tolerable delay. Specifically, the calculation formula is as follows:

[0190] ,

[0191] in, It is a single micro-slot. For maximum tolerable delay, Number of ordered voice requests.

[0192] Understandably, a micro-slot is the width of the time window allocated to each ordered voice request, calculated using the width calculation method. For example, if the maximum tolerable delay is 100ms and the number of ordered voice requests is 5, then the micro-slot is 20ms. Slot number allocation follows the order of the ordered voice requests, assigning micro-slots to each ordered voice request within a specific transmission time interval, resulting in a slot-allocated voice frame. For example, the first ordered voice request is allocated slot 0 (transmitted within 0-20ms), the second ordered voice request is allocated slot 1 (transmitted within 20-40ms), and so on. A slot-allocated voice frame is a voice data frame with a predetermined transmission time period. For example, the first ordered voice request is transmitted within 0-20ms, and the second ordered voice request is transmitted within 20-40ms. The reference time is the absolute starting point at which the slot-allocated voice frame should theoretically begin transmission. For example, the reference time for the slot-allocated voice frame corresponding to the first ordered voice request is 0ms.

[0193] Furthermore, offset detection involves calculating the local offset using the actual processing time of the allocated voice frame and the reference time. Specifically, the local offset is obtained by subtracting the reference time from the actual processing time. The actual processing time is the actual transmission time of the allocated time slot for the ordered voice request confirmation. For example, if the first ordered voice request is allocated time slot 0 (0-20ms), and the actual transmission time is 5ms, then the actual processing time is 5ms. The local offset is the time difference obtained through offset detection. Adjusting the reference time using the local offset means compensating for the reference time with the local offset to obtain the calibration start time. For example, if the reference time is 100ms and a local offset of +3ms (delay) is detected, then the calibration start time is 97ms. This indicates that the terminal node corresponding to this ordered voice request needs to start the processing and transmission process 3ms earlier to send the data packet at 100ms, thus offsetting the effect of the local delay. The calibration start time is the absolute time point at which the allocated voice frame actually begins sending data packets, obtained after adjusting the local offset. Frame header encapsulation is the process of adding the calibration start time as a time information to the header of the time-slot allocated voice frame, forming a new and complete network data packet. This frame header encapsulation is existing technology and will not be described in detail here. The timestamped voice frame is encapsulated with a frame header and contains the voice data frame from the calibration start time.

[0194] S6. Perform multi-hop forwarding on multiple timestamped voice frames to obtain multiple verification voice frames.

[0195] It should be explained that the process of performing multi-hop forwarding on multiple timestamped voice frames to obtain multiple verification voice frames includes:

[0196] For each of the multiple timestamped speech frames, perform the following operation:

[0197] Cyclic redundancy check is performed on the timestamped voice frame using the calibration terminal node corresponding to the timestamped voice frame to obtain the check code;

[0198] The verification code is concatenated with the timestamped voice frame to obtain the verification voice frame;

[0199] The first relay frame is obtained by relaying the calibration terminal node, the temporary master node, and the verification voice frame.

[0200] The first relay frame is checked to obtain a check result, which includes whether it passes or fails.

[0201] If the verification result is successful, the first relay frame is broadcast to obtain the verification voice frame;

[0202] The verification voice frames are summarized to obtain multiple verification voice frames.

[0203] Furthermore, Cyclic Redundancy Check (CRBC) is a verification method used to detect whether data errors occur during transmission. The sending end generates a fixed-length binary checksum based on the data content, and the receiving end recalculates using the same algorithm. If the results match, the data is considered error-free. CRBC is existing technology and will not be elaborated further here. The checksum is a binary sequence obtained through CRBC and appended to the end of the original timestamped voice frame for the receiving end to verify the integrity of the data. Concatenating the checksum with the timestamped voice frame refers to directly appending the calculated checksum to the end of the original timestamped voice frame to obtain the checksum voice frame. The purpose is to send it together in subsequent transmissions. The checksum voice frame is the voice frame obtained by concatenating the checksum with the timestamped voice frame. Relay forwarding is the process where the calibration terminal node sends the checksum voice frame to the temporary master node, and the temporary master node continues to forward it to the next hop of the calibration terminal node. The purpose of relay forwarding is to gradually expand the transmission range through multi-hop methods, ensuring that the data can traverse complex network topologies to reach the target area. The first relay frame is the data frame received by the temporary master node after the calibration terminal node completes its initial transmission and is prepared for further forwarding. The verification process involves the temporary master node performing a cyclic redundancy check (CRC) operation on the checksum carried by the first relay frame after receiving it. This results in a new checksum for the first relay frame, which is then compared to the checksum within the verification voice frame to confirm whether bit errors, lost bits, or tampering occurred during the initial relay. This verification is existing technology and will not be elaborated further. The verification result is obtained by comparing the checksum of the first relay frame with the checksum of the verification voice frame. If the verification passes, the data is considered complete and reliable, and the first relay frame is broadcast. If the verification fails, the first relay frame is considered damaged and is discarded. Broadcasting the first relay frame means that when the verification passes, the temporary master node sends the first relay frame to all terminal nodes in the ad hoc network via a single-hop broadcast, ensuring all terminal nodes receive the verified voice data. The verification voice frame is a voice data frame that has undergone relay forwarding, verification, and broadcasting.

[0204] S7. Sort the multiple verification voice frames by timestamp to obtain multiple sorted voice frames.

[0205] It should be explained that timestamp sorting refers to the process of arranging all verification audio frames in order of arrival time, based on the request timestamps corresponding to each verification audio frame. The purpose of timestamp sorting is to eliminate the out-of-order arrival caused by multi-hop transmission, ensuring that the subsequent audio splicing, playback, or recognition results are consistent with the actual speech order. The sorted audio frames are the verification audio frames after being sorted by timestamp.

[0206] S8. Perform synchronization error correction on multiple sorted voice frames to obtain multiple synchronized voice frames. Use a pre-built low-latency decoder to decode and play the multiple synchronized voice frames to obtain a synchronized voice stream, thereby realizing multi-terminal synchronous intercom.

[0207] It should be explained that the step of correcting synchronization errors for multiple sorted speech frames to obtain multiple synchronized speech frames includes:

[0208] For each of the multiple sorted speech frames, perform the following operation:

[0209] Obtain the local timestamp of the calibration terminal node corresponding to the sorted speech frame and the acquisition timestamp of the sorted speech frame.

[0210] The synchronization error is obtained by calculating the difference between the local timestamp and the collection timestamp.

[0211] The optimal offset is obtained by recursively estimating the synchronization error.

[0212] The sorted speech frames are time-shifted using the optimal offset to obtain synchronized speech frames;

[0213] By summing the synchronized audio frames, multiple synchronized audio frames are obtained.

[0214] Furthermore, the local timestamp is the moment when the calibration terminal node receives the ordered voice frames. The acquisition timestamp is the acquisition time corresponding to the voice request corresponding to that acquisition timestamp. Difference calculation is the process of subtracting the acquisition timestamp from the local timestamp to obtain the synchronization error. The synchronization error is the instantaneous offset of the local clock of the calibration terminal node (receiving end), obtained by subtracting the acquisition timestamp from the local timestamp. A positive value indicates that the local clock is too late, and a negative value indicates that the local clock is too early. Recursive estimation is a process of smoothing the synchronization error using historical optimal offsets to obtain the optimal offset. Optionally, Kalman filtering is used as the recursive estimation method. The optimal offset is a smoothed clock offset estimate obtained through recursive estimation. Time shifting is the process of adjusting the playback time of the voice frames based on the optimal offset. For example, if the optimal offset is positive (indicating that the local clock is too late and the data arrives late), the playback time of the ordered voice frames needs to be advanced during playback, with the compensation amount being the optimal offset, to catch up with the timing of the sending end. If the optimal offset is negative (indicating that the local clock is too early and the data arrives too early), then the playback time of the sorted audio frame needs to be delayed during playback. The compensation amount is the absolute value of the optimal offset, in order to wait for the correct playback time. The synchronized audio frame is the audio frame after time shifting.

[0215] Understandably, a low-latency decoder is an audio decoder specifically designed for real-time voice communication. Optionally, an audio decoder can be used as the low-latency decoder. Decoding and playback involves using the low-latency decoder to decompress synchronous voice frames, obtaining audio sample data, and then playing the audio sample data through the speaker of the calibrated terminal node. Both the low-latency decoder and decoding and playback are existing technologies and will not be described in detail here. The synchronous voice stream is a continuous, coherent, and time-delay-free audio output formed by arranging multiple synchronous voice frames in the order of their acquisition timestamps and decoding them using the low-latency decoder.

[0216] To address the problems described in the background section, this invention receives a networking command, acquires multiple terminal nodes using the command, and constructs a self-organizing network using these terminal nodes. The self-organizing network includes a temporary master node and a topology network. Therefore, in this embodiment, after receiving the networking command, manual pairing can generate a self-organizing network between headsets within seconds, eliminating the cumbersome reconnection issues of traditional chain relays. Furthermore, this invention performs the following operations on each of the multiple terminal nodes: error detection is performed using the terminal node, temporary master node, and topology network to obtain an error value; time compensation is applied to the terminal node using the error value to obtain a calibrated terminal node; and the calibrated terminal nodes are aggregated to obtain multiple calibrated terminal nodes. Thus, this embodiment, through distributed error detection and time compensation, eliminates clock deviations between nodes, effectively improving the problems of overlapping and asynchronous echoes in multi-person voice communication. Next, this invention monitors voice activity across multiple calibration terminal nodes to obtain multiple marked terminal nodes. Based on these marked terminal nodes, it acquires multiple voice requests, prioritizes these requests to obtain multiple ordered voice requests, allocates time slots to these ordered voice requests to obtain multiple timestamped voice frames, performs multi-hop forwarding on each of these timestamped voice frames to obtain multiple verification voice frames, and timestampedly sorts these verification voice frames to obtain multiple sorted voice frames. This embodiment of the invention automatically interrupts conversations through voice activity monitoring and priority time slot allocation, ensuring no overlap or missing words even when multiple people speak simultaneously. Furthermore, by utilizing multi-hop forwarding and timestamped sorting, the voice frames are restored and played in the correct order, achieving clear and conflict-free long-distance conversations even within a convoy. Furthermore, this invention corrects synchronization errors in the sorted voice frames to obtain multiple synchronized voice frames. A pre-built low-latency decoder decodes and plays these synchronized voice frames to obtain a synchronized voice stream, enabling synchronous intercom between multiple terminals. This embodiment of the invention, through final-level synchronization error correction and a low-latency decoder, adjusts and quickly decodes the remaining time difference, truly achieving zero-latency synchronous intercom within a convoy. Therefore, this invention can solve the problems of difficult network setup, voice asynchrony, and voice control conflicts in the application of Bluetooth headsets for cycling helmets.

[0217] likeFigure 2 The diagram shown is a functional block diagram of a multi-terminal intercom synchronization system for cycling helmet headsets based on Bluetooth mesh, provided in an embodiment of the present invention.

[0218] The Bluetooth mesh-based multi-terminal intercom synchronization system 100 for cycling helmets and headsets described in this invention can be installed in an electronic device. Depending on the functions implemented, the Bluetooth mesh-based multi-terminal intercom synchronization system 100 may include a self-connecting network construction module 101, a local time calibration module 102, a voice request sorting module 103, and a synchronization error adjustment module 104. The module described in this invention can also be referred to as a unit, which refers to a series of computer program segments that can be executed by the processor of an electronic device and can perform a fixed function, and which are stored in the memory of the electronic device.

[0219] The self-connected network construction module 101 is used to receive networking instructions and use the networking instructions to obtain multiple terminal nodes.

[0220] A self-organizing network is constructed using multiple terminal nodes, which includes a temporary master node and a topology network.

[0221] The local time calibration module 102 is used to perform the following operations on each of the multiple terminal nodes:

[0222] Error values ​​are obtained by using terminal nodes, temporary master nodes, and the topology network.

[0223] The time compensation of the terminal node is performed using the error value to obtain the calibrated terminal node;

[0224] By summing up the aforementioned calibration terminal nodes, multiple calibration terminal nodes are obtained;

[0225] The voice request sorting module 103 is used to monitor the voice activity of multiple calibration terminal nodes and obtain multiple marked terminal nodes.

[0226] Multiple voice requests are obtained based on multiple marked terminal nodes, and the multiple voice requests are prioritized to obtain multiple ordered voice requests;

[0227] Multiple ordered voice requests are time-slotted to obtain multiple timestamped voice frames;

[0228] Multiple timestamped voice frames are forwarded via multiple hops to obtain multiple verification voice frames;

[0229] Multiple verification audio frames are sorted by timestamp to obtain multiple sorted audio frames.

[0230] The synchronization error adjustment module 104 is used to perform synchronization error correction on multiple sorted speech frames to obtain multiple synchronized speech frames.

[0231] By using a pre-built low-latency decoder to decode and play multiple synchronous voice frames, a synchronous voice stream is obtained, enabling synchronous intercom between multiple terminals.

[0232] In detail, the modules in the Bluetooth mesh-based cycling helmet headset multi-terminal intercom synchronization system 100 described in this embodiment of the invention employ the same methods as described above. Figure 1 The method described above uses the same technical means as the Bluetooth mesh-based multi-terminal intercom synchronization method for cycling helmet headsets, and can produce the same technical effect, so it will not be repeated here.

[0233] like Figure 3 The diagram shown is a structural schematic of an electronic device that implements a multi-terminal intercom synchronization method for cycling helmet headsets based on Bluetooth mesh, according to an embodiment of the present invention.

[0234] The electronic device 1 may include a processor 10, a memory 11 and a bus 12, and may also include a computer program stored in the memory 11 and capable of running on the processor 10, such as a Bluetooth mesh-based method program for synchronizing multi-terminal intercoms in cycling helmet headsets.

[0235] The memory 11 includes at least one type of readable storage medium, such as flash memory, portable hard drive, multimedia card, card-type memory (e.g., SD or DX memory), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 11 can be an internal storage unit of the electronic device 1, such as the portable hard drive of the electronic device 1. In other embodiments, the memory 11 can be an external storage device of the electronic device 1, such as a plug-in portable hard drive, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the electronic device 1. Furthermore, the memory 11 includes both internal storage units and external storage devices of the electronic device 1. The memory 11 can be used not only to store application software and various types of data installed on the electronic device 1, such as the code of a multi-terminal intercom synchronization method program for a Bluetooth mesh-based cycling helmet headset, but also to temporarily store data that has been output or will be output.

[0236] In some embodiments, the processor 10 may be composed of integrated circuits, such as a single packaged integrated circuit or multiple integrated circuits with the same or different functions, including combinations of one or more central processing units (CPUs), microprocessors, digital processing chips, graphics processors, and various control chips. The processor 10 is the control unit of the electronic device, connecting various components of the entire electronic device through various interfaces and lines. It executes programs or modules stored in the memory 11 (e.g., a multi-terminal intercom synchronization method program for a cycling helmet headset based on Bluetooth mesh), and calls data stored in the memory 11 to perform various functions of the electronic device 1 and process data.

[0237] The bus 12 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus 12 can be divided into an address bus, a data bus, a control bus, etc. The bus 12 is configured to realize the connection and communication between the memory 11 and at least one processor 10, etc.

[0238] Figure 3 Only electronic devices with components are shown; it will be understood by those skilled in the art that... Figure 3 The structure shown does not constitute a limitation on the electronic device 1, and may include fewer or more components than shown, or combine certain components, or have different component arrangements.

[0239] For example, although not shown, the electronic device 1 may also include a power supply (such as a battery) to power the various components. Preferably, the power supply can be logically connected to the at least one processor 10 through a power management system, thereby enabling functions such as charging management, discharging management, and power consumption management through the power management system. The power supply may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components. The electronic device 1 may also include various sensors, Bluetooth modules, Wi-Fi modules, etc., which will not be described in detail here.

[0240] Furthermore, the electronic device 1 may also include a network interface. Optionally, the network interface may include a wired interface and / or a wireless interface (such as a Wi-Fi interface, a Bluetooth interface, etc.), which is typically used to establish communication connections between the electronic device 1 and other electronic devices.

[0241] Optionally, the electronic device 1 may further include a user interface, which may be a display, an input unit (such as a keyboard), and optionally, a standard wired interface or a wireless interface. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, or an OLED (Organic Light-Emitting Diode) touchscreen, etc. The display may also be appropriately referred to as a screen or display unit, used to display information processed in the electronic device 1 and to display a visual user interface.

[0242] It should be understood that the embodiments described are for illustrative purposes only and are not limited to this structure in the scope of the patent application.

[0243] The Bluetooth mesh-based cycling helmet headset multi-terminal intercom synchronization method program stored in the memory 11 of the electronic device 1 is a combination of multiple instructions. When run in the processor 10, it can achieve the following:

[0244] Receive networking instructions and use them to acquire multiple terminal nodes;

[0245] A self-organizing network is constructed using multiple terminal nodes, which includes a temporary master node and a topology network.

[0246] Perform the following operation on each of the multiple terminal nodes:

[0247] Error values ​​are obtained by using terminal nodes, temporary master nodes, and the topology network.

[0248] The time compensation of the terminal node is performed using the error value to obtain the calibrated terminal node;

[0249] By summing up the aforementioned calibration terminal nodes, multiple calibration terminal nodes are obtained;

[0250] Voice activity monitoring was performed on multiple calibration terminal nodes to obtain multiple labeled terminal nodes;

[0251] Multiple voice requests are obtained based on multiple marked terminal nodes, and the multiple voice requests are prioritized to obtain multiple ordered voice requests;

[0252] Multiple ordered voice requests are time-slotted to obtain multiple timestamped voice frames;

[0253] Multiple timestamped voice frames are forwarded via multiple hops to obtain multiple verification voice frames;

[0254] Multiple verification audio frames are sorted by timestamp to obtain multiple sorted audio frames.

[0255] Synchronization error correction is performed on multiple sorted speech frames to obtain multiple synchronized speech frames;

[0256] By using a pre-built low-latency decoder to decode and play multiple synchronous voice frames, a synchronous voice stream is obtained, enabling synchronous intercom between multiple terminals.

[0257] Specifically, the processor 10's implementation method for the above instructions can be found in [reference needed]. Figures 1 to 3 The descriptions of the relevant steps in the corresponding embodiments are not repeated here.

[0258] Furthermore, if the modules / units integrated in the electronic device 1 are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. The computer-readable storage medium can be volatile or non-volatile. For example, the computer-readable medium may include: any entity or system capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, or a read-only memory (ROM).

[0259] The present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor of an electronic device, can perform the following:

[0260] Receive networking instructions and use them to acquire multiple terminal nodes;

[0261] A self-organizing network is constructed using multiple terminal nodes, which includes a temporary master node and a topology network.

[0262] Perform the following operation on each of the multiple terminal nodes:

[0263] Error values ​​are obtained by using terminal nodes, temporary master nodes, and the topology network.

[0264] The time compensation of the terminal node is performed using the error value to obtain the calibrated terminal node;

[0265] By summing up the aforementioned calibration terminal nodes, multiple calibration terminal nodes are obtained;

[0266] Voice activity monitoring was performed on multiple calibration terminal nodes to obtain multiple labeled terminal nodes;

[0267] Multiple voice requests are obtained based on multiple marked terminal nodes, and the multiple voice requests are prioritized to obtain multiple ordered voice requests;

[0268] Multiple ordered voice requests are time-slotted to obtain multiple timestamped voice frames;

[0269] Multiple timestamped voice frames are forwarded via multiple hops to obtain multiple verification voice frames;

[0270] Multiple verification audio frames are sorted by timestamp to obtain multiple sorted audio frames.

[0271] Synchronization error correction is performed on multiple sorted speech frames to obtain multiple synchronized speech frames;

[0272] By using a pre-built low-latency decoder to decode and play multiple synchronous voice frames, a synchronous voice stream is obtained, enabling synchronous intercom between multiple terminals.

[0273] In the embodiments provided by this invention, it should be understood that the disclosed devices, systems, and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative, and actual implementations may have other classification methods.

[0274] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0275] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.

[0276] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.

[0277] Furthermore, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or systems stated in a system claim may also be implemented by a single unit or system through software or hardware. The term "second class" is used to indicate names and does not indicate any specific order.

[0278] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims

1. A Bluetooth mesh-based multi-terminal intercom synchronization method for a cycling helmet headset, characterized in that, The method comprises: receiving a networking instruction, and acquiring a plurality of terminal nodes by using the networking instruction; constructing a self-organizing network by using the plurality of terminal nodes, wherein the self-organizing network comprises a temporary master node and a topology network; performing the following operations on each of the plurality of terminal nodes: performing error detection by using the terminal node, the temporary master node and the topology network to obtain an error value; performing time compensation on the terminal node by using the error value to obtain a calibrated terminal node; collecting the calibrated terminal nodes to obtain a plurality of calibrated terminal nodes; performing voice activity monitoring on the plurality of calibrated terminal nodes to obtain a plurality of marked terminal nodes; acquiring a plurality of voice requests based on the plurality of marked terminal nodes, and performing priority sorting on the plurality of voice requests to obtain a plurality of ordered voice requests; performing time slot allocation on the plurality of ordered voice requests to obtain a plurality of time-stamped voice frames; performing multi-hop forwarding on the plurality of time-stamped voice frames to obtain a plurality of verification voice frames; performing time stamp sorting on the plurality of verification voice frames to obtain a plurality of sorted voice frames; performing synchronization error correction on the plurality of sorted voice frames to obtain a plurality of synchronized voice frames; decoding and playing the plurality of synchronized voice frames by using a pre-constructed low-delay decoder to obtain a synchronized voice stream, thereby realizing multi-terminal synchronous talkback. 2.The Bluetooth mesh based multi-terminal intercom synchronization method for a cycling helmet headset according to claim 1, wherein, The method comprises: acquiring the signal strength and the remaining power of each of the plurality of terminal nodes; performing the following operations on each of the plurality of terminal nodes: calculating a node quality factor by using the signal strength corresponding to the terminal node and the remaining power corresponding to the terminal node, wherein the calculation formula is as follows: , wherein, represents a node quality factor, represents a preset signal strength weight coefficient, represents a signal strength, represents a preset maximum signal strength, represents a preset minimum signal strength, represents a preset power weight coefficient, represents a remaining power; collecting the node quality factors to obtain a plurality of node quality factors; confirming the temporary master node and a plurality of child nodes based on the plurality of node quality factors; acquiring a plurality of parent nodes by using the temporary master node, the plurality of child nodes; constructing an initial topology network by using the temporary master node, the plurality of child nodes and the plurality of parent nodes; acquiring a plurality of individual links based on the initial topology network, wherein the individual links comprise parent nodes and child nodes; performing the following operations on each of the plurality of individual links: performing packet loss rate detection by using the parent node and the child node in the individual link to obtain a packet loss rate value; if the packet loss rate value is greater than or equal to a preset packet loss rate threshold, acquiring a candidate parent node based on a pre-constructed routing metric, taking the candidate parent node as the parent node, returning to the step of performing packet loss rate detection by using the parent node and the child node in the individual link, until the packet loss rate value is less than the packet loss rate threshold, and taking the individual link as an optimized link; collecting the optimized links to obtain the self-organizing network. 3.The Bluetooth mesh based multi-terminal intercom synchronization method for a cycling helmet headset according to claim 2, wherein, The method comprises: acquiring a reference clock value of the terminal node and a reference clock value of the temporary master node; performing time deviation calculation by using the reference clock value of the terminal node and the reference clock value of the temporary master node to obtain a clock deviation value; confirming a relay node set by using the terminal node, the temporary master node and the topology network, wherein the relay node set comprises one or more relay nodes; performing the following operations on each of the relay nodes in the relay node set: The terminal node and the relay node are used for delay detection to obtain a delay value; The delay values are summarized to obtain a plurality of delay values, and the plurality of delay values are added to obtain an end-to-end delay value; The clock offset value and the end-to-end delay value are added to obtain an error value. 4.The Bluetooth mesh based multi-terminal intercom synchronization method for a cycling helmet headset according to claim 3, wherein, The terminal node is time compensated by using the error value to obtain a calibrated terminal node, including: An error adjustment direction and a target delay time are confirmed based on the error value; An original playing timestamp of the terminal node is obtained; The original playing timestamp of the terminal node is time adjusted by using the error adjustment direction and the target delay time to obtain a calibrated timestamp; A local playing time of the terminal node is obtained; The local playing time is synchronized by using the calibrated timestamp to obtain the calibrated terminal node. 5.The Bluetooth mesh based multi-terminal intercom synchronization method for cycling helmets according to claim 4, wherein, The plurality of calibrated terminal nodes are monitored for voice activity to obtain a plurality of marked terminal nodes, including: Each of the plurality of calibrated terminal nodes is executed as follows: Audio signal collection is performed on the calibrated terminal node by using a preset collection time interval to obtain an audio signal set, wherein the audio signal set includes a plurality of audio signals; A timing curve is constructed by using the plurality of audio signals, a maximum change rate of the timing curve is obtained, and the maximum change rate is compared with a preset change rate threshold value; if the maximum change rate is greater than or equal to the change rate threshold value, the calibrated terminal node is marked to obtain a marked terminal node; The marked terminal nodes are summarized to obtain the plurality of marked terminal nodes. 6.The Bluetooth mesh based multi-terminal intercom synchronization method for cycling helmets according to claim 5, wherein, The plurality of voice requests are prioritized to obtain a plurality of ordered voice requests, including: A voice request quantity is obtained; A request timestamp and a link signal strength of each of the plurality of voice requests are obtained to obtain a plurality of request timestamps and a plurality of link signal strengths, and the request timestamp and the link signal strength correspond to each other; The plurality of request timestamps and the plurality of link signal strengths are normalized to obtain a plurality of normalized request timestamps and a plurality of normalized link signal strengths; Each of the plurality of voice requests is executed as follows: A priority score is calculated by using a normalized request timestamp corresponding to the voice request in the plurality of normalized request timestamps, a normalized link signal strength corresponding to the voice request in the plurality of normalized link signal strengths, and the voice request quantity, wherein a calculation formula of the priority score is as follows: , wherein, represents a priority score, represents a preset time jitter coefficient, represents a normalized request timestamp, represents a preset signal weight coefficient, represents a normalized link signal strength, represents a preset congestion coefficient, represents a voice request number; The priority scores are summarized to obtain a plurality of priority scores, wherein the priority score corresponds to the voice request; The plurality of priority scores are used to sort the plurality of voice requests to obtain the plurality of ordered voice requests. 7.The Bluetooth mesh based multi-terminal intercom synchronization method for cycling helmets according to claim 6, wherein, The plurality of ordered voice requests are time slot allocated to obtain a plurality of time-stamped voice frames, including: An ordered voice request quantity is obtained; A single micro time slot is calculated by using the ordered voice request quantity and a preset maximum tolerance delay to obtain a single micro time slot; The plurality of ordered voice requests are time slot number allocated by using the single micro time slot to obtain a plurality of time slot allocated voice frames; Each of the plurality of time slot allocated voice frames is executed as follows: A reference time and an actual processing time of the time slot allocated voice frame are obtained; The local offset is detected by using the reference time and the actual processing time; The local offset is used to adjust the reference time to obtain a calibrated start time; The start time is used to encapsulate the frame header of the time slot allocation voice frame to obtain a time-stamped voice frame; The time-stamped voice frames are aggregated to obtain a plurality of time-stamped voice frames. 8.The Bluetooth mesh based multi-terminal intercom synchronization method for a cycling helmet headset according to claim 7, wherein, The plurality of time-stamped voice frames are all subjected to multi-hop forwarding to obtain a plurality of verification voice frames, including: Each of the plurality of time-stamped voice frames is subjected to the following operations: The time-stamped voice frame is subjected to cyclic redundancy check by using the calibration terminal node corresponding to the time-stamped voice frame to obtain a verification code; The verification code and the time-stamped voice frame are spliced to obtain a verification voice frame; The calibration terminal node, the temporary master node and the verification voice frame are used for relay forwarding to obtain a first relay frame; The first relay frame is checked to obtain a verification result, wherein the verification result includes pass or fail; If the verification result is pass, the first relay frame is broadcasted to obtain a verification voice frame; The verification voice frames are aggregated to obtain a plurality of verification voice frames. 9.The Bluetooth mesh based multi-terminal intercom synchronization method for a cycling helmet headset according to claim 8, wherein, The plurality of sorted voice frames are subjected to synchronization error correction to obtain a plurality of synchronization voice frames, including: Each of the plurality of sorted voice frames is subjected to the following operations: The local timestamp of the calibration terminal node corresponding to the sorted voice frame and the collection timestamp of the sorted voice frame are obtained; The local timestamp and the collection timestamp are subjected to difference calculation to obtain a synchronization error; The synchronization error is recursively estimated to obtain an optimal offset; The sorted voice frame is subjected to time translation by using the optimal offset to obtain a synchronization voice frame; The synchronization voice frames are aggregated to obtain a plurality of synchronization voice frames.

10. A Bluetooth mesh-based multi-terminal intercom synchronization system for a cycling helmet headset, characterized in that, The system includes: The self-connected network construction module is used to receive a networking instruction, and obtain a plurality of terminal nodes by using the networking instruction; The plurality of terminal nodes are used to construct a self-organizing network, wherein the self-organizing network includes a temporary master node and a topology network; The local time calibration module is used to perform the following operations on each of the plurality of terminal nodes: The error value is obtained by using the terminal node, the temporary master node and the topology network for error detection; The terminal node is subjected to time compensation by using the error value to obtain a calibrated terminal node; The plurality of calibrated terminal nodes are aggregated to obtain a plurality of calibration terminal nodes; The voice request sorting module is used to monitor voice activity of the plurality of calibration terminal nodes to obtain a plurality of marked terminal nodes; The plurality of voice requests are obtained based on the plurality of marked terminal nodes, and the plurality of voice requests are subjected to priority sorting to obtain a plurality of ordered voice requests; The plurality of ordered voice requests are subjected to time slot allocation to obtain a plurality of time-stamped voice frames; The plurality of time-stamped voice frames are all subjected to multi-hop forwarding to obtain a plurality of verification voice frames; The plurality of verification voice frames are subjected to timestamp sorting to obtain a plurality of sorted voice frames; The synchronization error adjustment module is used to correct the synchronization error of the plurality of sorted voice frames to obtain a plurality of synchronization voice frames; The plurality of synchronization voice frames are decoded and played by using a pre-constructed low-delay decoder to obtain a synchronization voice stream, realizing multi-terminal synchronous talkback.

Citation Information

Cited By

  • Motorcycle teaching and training complex environment high-penetration talkback control method and system

    CN122054223A

  • Motorcycle teaching and training complex environment high penetration intercom control method and system

    CN122054223B