Bluetooth audio broadcasting methods, systems and electronic devices

By extending the BIS protocol in the Bluetooth LE Audio specification and using control sub-events to schedule multiple devices, multiple devices can send BIS streams together, solving the problem of multi-point to multi-point communication and achieving more efficient wireless audio communication.

CN117528428BActive Publication Date: 2026-05-26SHANGHAI WU QI MICROELECTRONICS CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHANGHAI WU QI MICROELECTRONICS CO LTD
Filing Date
2023-11-21
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

The existing LE Audio Bluetooth specification is difficult to effectively support multi-point to multi-point wireless audio communication, and there are problems such as high difficulty in implementing communication networks and poor reliability.

Method used

By extending the BIS protocol in the Bluetooth LE Audio specification, the control subevent is used to schedule multiple devices in the system, enabling multiple devices to send BIS streams together. This is adjusted so that N out of T devices in the system send N BIS streams, where N is a natural number greater than or equal to 2, and T is a natural number greater than or equal to N.

Benefits of technology

It significantly improves the flexibility and reliability of multi-point to multi-point communication, reduces the difficulty of implementing and maintaining communication networks, and supports better multi-point to multi-point wireless audio communication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117528428B_ABST
    Figure CN117528428B_ABST
Patent Text Reader

Abstract

This invention discloses a Bluetooth audio broadcasting method, system, and electronic device, relating to the field of wireless communication technology. A Bluetooth audio broadcasting method, applied to a Bluetooth Low Energy audio communication system, utilizes the time slots of the Control sub-event configured in the Broadcast Iso-Streaming (BIS) protocol to schedule all T devices in the system to extend Bluetooth BIS broadcasting. Through this scheduling, the transmission of N BIS streams by only one broadcast source device in the system is adjusted to be transmitted by N BIS streams by N of the T devices in the system, where N is a natural number greater than or equal to 2, and T is a natural number greater than or equal to N. This invention leverages the communication characteristics of multi-point to multi-point wireless audio communication systems, solving the multi-point to multi-point communication problem by extending the BIS protocol in the Bluetooth LE Audio standard, thus better supporting multi-point to multi-point wireless audio communication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of wireless communication technology, and in particular to a Bluetooth audio broadcasting method, system, and electronic device. Background Technology

[0002] LE Audio (also known as LE Audio or Low Energy Audio) is a new technology introduced by the Bluetooth Special Interest Group (SIG) starting with specification 5.2. LE Audio is a next-generation Bluetooth audio technology standard that transmits synchronized audio data on top of Bluetooth Low Energy, expanding the application scenarios of traditional Bluetooth and improving the performance of standard Bluetooth audio.

[0003] According to the Bluetooth LE Audio specification, the audio transmission protocol is based on the Isochronous Channel (ISO Channel) protocol, which employs an isochronous synchronous transmission mechanism. Audio data transmission on the Isochronous Channel is carried out through two underlying technologies: Connected Isochronous Streams (CIS) links and Broadcast Isochronous Streams (BIS) links. Multiple CIS links can form a Connected Isochronous Group (CIG), and multiple BIS links can form a Broadcast Isochronous Group (BIG). The CIS link is characterized by point-to-point communication, supporting one-way or two-way audio services; the BIS link is characterized by one-way to multi-way broadcast communication, supporting one-way to multi-way audio services. In practical applications of LE Audio technology, besides point-to-point and point-to-multipoint transmission, there are also multipoint-to-multipoint wireless audio transmission applications. Examples include wireless microphones, multi-person wireless intercom systems, and motorcycle helmet network systems. When establishing multipoint-to-multipoint communication using the current LE Audio Bluetooth specification, communication can be based on connection-oriented isochronous stream (CIS) or broadcast-oriented isochronous stream (BIS). However, both methods generally suffer from significant implementation and maintenance difficulties, as well as poor communication reliability and robustness. In other words, multipoint-to-multipoint communication is difficult to support within the current LE Audio Bluetooth specification. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of existing technologies and provide a Bluetooth audio broadcasting method, system, and electronic device. The Bluetooth audio broadcasting solution provided by this invention solves the multi-point-to-multi-point communication problem by extending the BIS protocol in the Bluetooth LE Audio specification, thus better supporting multi-point-to-multi-point wireless audio communication.

[0005] To achieve the above objectives, the present invention provides the following technical solution:

[0006] A Bluetooth audio broadcasting method is applied to a Bluetooth Low Energy audio communication system. It utilizes the Control subevent configured in the Broadcast Isochronous Streaming (BIS) protocol to schedule all T devices in the system to extend Bluetooth BIS broadcasting. Through the aforementioned scheduling, the method changes the transmission of N BIS streams from a single broadcast source device in the system to a system in which N devices out of the T devices in the system transmit N BIS streams, where N is a natural number greater than or equal to 2, and T is a natural number greater than or equal to N.

[0007] Furthermore, during the aforementioned scheduling, the aforementioned broadcast source device sets the value of N according to the data stream sending device number threshold preset by the aforementioned system, and sends a control subevent.

[0008] At this time, the broadcast source device is configured to: obtain the system's data stream sending device number threshold, and let N be equal to the aforementioned data stream sending device number threshold, that is, the system allows a maximum of N devices to simultaneously send data streams to other devices in an equal time interval (ISO interval); based on the aforementioned N value, select N devices from all T devices in the system through Control subevent, and allocate idle BIS events to each of the selected N devices, so that each device occupies one BIS event to send its own data stream; and when a device finishes sending its data, reclaim the BIS event occupied by that device.

[0009] Furthermore, during the aforementioned scheduling, the aforementioned broadcast source device can also allocate the time slots of the recovered BIS events to other devices in the system that need them.

[0010] At this time, the broadcast source device is configured to: select a device as a subsequent transmitting device from other devices in the system through Control subevent configuration, and allocate the time slot of the aforementioned recycled BIS event to the selected subsequent transmitting device, thereby enabling the selected subsequent transmitting device to obtain data transmission rights.

[0011] Furthermore, after a device has finished transmitting data in its own BIS event, the last data packet is sent as a NULL packet;

[0012] At this time, the broadcast source device is configured to: monitor the data transmission information of the node devices, and when a node device sends a NULL packet, reclaim the time slot occupied by the BIS event corresponding to that node device.

[0013] Furthermore, the BIG events sent by the aforementioned broadcast source device include N BIS events and a Control subevent. Through the aforementioned Control subevent, the broadcast source device selects the corresponding device from T devices and configures the corresponding device to transmit data on one of the N BIS events.

[0014] Furthermore, the broadcast source device schedules other devices for data stream transmission based on the device's network access time. The device scheduling steps are as follows:

[0015] S1 initializes N BIS events in the BIG event to idle;

[0016] S2, arrange all T devices in the system in order, with the broadcast source device placed first, and the other devices sorted according to their network access time;

[0017] S3: Select the top N devices as the data stream sending devices, allocate N idle BIS events to the N devices for each device to send its own data; put the aforementioned N devices into the Working_list queue, put the remaining TN devices into the Idle_list queue, and set the Free_list queue to empty;

[0018] S4. Monitor the data transmission information of the aforementioned N devices. If any node device sends a NULL packet, reclaim the corresponding BIS event window and add the reclaimed BIS event to the Free_list queue. At the same time, put the devices that sent NULL packets into the end of the Idle_list queue in order and delete the devices that sent NULL packets from the Working_list queue.

[0019] S5, determine whether the aforementioned Free_list queue is empty; if yes, proceed to step S6; if no, proceed to step S7.

[0020] S6, keep the contents of the Control Subevent data packet CTRL packet unchanged, and wait to enter the next isochronous interval (ISO interval);

[0021] S7, if the determination is negative, starting from the head of the Idle_list queue, remove each device in sequence until the corresponding BIS event in the Free_list queue is filled, that is, allocate the reclaimed BIS event to the previously removed device; then add these devices to the Working_list queue, and by modifying the aforementioned CTRL packet, make these devices scheduled in the next equal time interval ISOinterval;

[0022] S8, set the Free_list queue to empty, and wait to enter the next ISO interval; when entering the next ISO interval, return to execute step S4; until all the data that needs to be sent has been sent.

[0023] Furthermore, the Control Subevent PDU for device scheduling is configured based on the Protocol Data Unit (PDU) packets of the broadcast isochronous BIS. The PDU packets of the BIS include at least a fixed-length header field and a variable-length payload field. In the Opcode field of the payload field, any value from 0xF8 to 0xFB is selected as the Control Subevent PDU for device scheduling.

[0024] Furthermore, the broadcast source device is also configured to: obtain a network access request from a device joining the system; after successful authentication, allocate an idle network ID to the aforementioned device based on the device's registration information, and increase the total number of devices T in the current system by 1, and then restart device scheduling according to the new total number of devices T; and obtain information about a device leaving the system, remove the corresponding device from the system, decrease the total number of devices T in the current system by 1, and then restart device scheduling according to the new total number of devices T.

[0025] The present invention also provides a Bluetooth Low Energy audio communication system, including a broadcast source device, which utilizes the aforementioned Bluetooth audio broadcasting method to construct multi-point to multi-point wireless audio data transmission.

[0026] The present invention also provides an electronic device, comprising: a transceiver, a memory, a processor, and a program stored in the memory and executable on the processor; the processor is configured to read the program in the memory to implement the steps of the method described above.

[0027] Compared with the prior art, the present invention, by adopting the above technical solution, has the following advantages and positive effects: The Bluetooth audio broadcasting solution provided by the present invention solves the multi-point to multi-point communication problem by extending the BIS protocol in the Bluetooth LE Audio specification, and can better support multi-point to multi-point wireless audio communication. Attached Figure Description

[0028] Figure 1 This is a timing diagram of data packets for a BIS arranged in a sequential manner as provided in the prior art.

[0029] Figure 2 The timing diagram of data packets for Bluetooth audio broadcasting is provided by the present invention when N=2 (two devices in the scheduling system send two BIS streams).

[0030] Figure 3 The logical flowchart of the scheduling algorithm provided by this invention.

[0031] Figure 4 The timing diagram of data packets for Bluetooth audio broadcasting is provided by the present invention under the conditions of T=6, N=3 (3 out of 6 devices in the scheduling system send 3 BIS streams).

[0032] Figure 5 This is a data structure diagram of the PDU packet for the BIS data packet provided in the LE Audio Bluetooth specification.

[0033] Figure 6 This refers to the definition information of the Opcode field of the Payload provided in the LE Audio Bluetooth specification.

[0034] Figure 7 A logical flowchart for adding the device to the network provided by the present invention.

[0035] Figure 8 This is a timing diagram of data packets for a device to actively leave the network, as provided by the present invention.

[0036] Figure 9 This invention provides a timing diagram of data packets when a device passively exits the network. Detailed Implementation

[0037] The Bluetooth audio broadcasting method, system, and electronic device disclosed in this invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that technologies (including methods and apparatus) known to those skilled in the art may not be discussed in detail, but where appropriate, the aforementioned known technologies are considered part of the specification. Furthermore, other examples of exemplary embodiments may have different values. The structures, proportions, sizes, etc., depicted in the accompanying drawings are only used to complement the content disclosed in the specification, for those skilled in the art to understand and read, and are not intended to limit the conditions under which the invention can be implemented. In the description of the embodiments of this application, " / " means "or," and "and / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" indicates: A and B exist alone, B exists alone, and A and B exist simultaneously. In the description of the embodiments of this application, "multiple" refers to two or more, and "multi-level" refers to two or more levels. Example

[0038] This invention addresses the application requirements of multi-point to multi-point wireless audio communication by extending the BIS protocol in the LE Audio Bluetooth specification to solve the multi-point to multi-point communication problem, thereby enabling LE Audio to better support multi-point to multi-point Bluetooth audio communication applications.

[0039] Broadcast audio is a new concept in Bluetooth technology. Its biggest difference from the classic Bluetooth audio profile is that it is unidirectional and unacknowledged. It can create a broadcast source that transmits without a receiver, and this broadcast can be received by any broadcast receiver within range. To support audio sharing, the LE Audio standard introduced Broadcast Isochronous Group (BIG) and Broadcast Isochronous Stream (BIS). Multiple BIS can form a Broadcast Isochronous Group (BIG). According to the BIS protocol in the current LE Audio Bluetooth specification, the broadcast source device (or master device) sends synchronization messages in the channel in broadcast form. Broadcast receiving devices (or slave devices) connected to the same channel receive synchronization messages by listening to the broadcast. That is, the broadcast source device acts as the sender of the broadcast signal, and one or more broadcast receiving devices act as the receivers of the broadcast signal. BIG events occur within each ISO Interval. A BIG can contain multiple BIS events. See [link to relevant documentation]. Figure 1 As shown, two BIG events (corresponding to two equal-time ISO intervals) are illustrated, namely BIG Event1 and BIG Event2. A BIG event can include multiple BIS events, such as... Figure 1The example demonstrates setting up two BIS events, BIS0 Event and BIS1 Event. Each BIS event sets the number of sub-events (NSE) of its sub-event to 2 (i.e., each event has 2 BIS sub-events). Each BIS event is separated by BIS Spacing (in the diagram, BIS Spacing is greater than sub_interval, and the BIS events are arranged sequentially). Functionally, according to the Bluetooth specification, each BIS can contain different audio streams. Figure 1 For example, BIS0 and BIS1 can be used to play two audio streams in a broadcast, or a movie in a home theater can be broadcast in Chinese and English through BIS0 and BIS1 respectively, allowing users to choose the appropriate language according to their preferences.

[0040] See also Figure 1 As shown, the BIG event also includes an optional Control Subevent. The Control Subevent differs from the BIS event; it primarily updates the BIG's configuration information and can be used to provide control information to each receiver acceptor, such as the Bluetooth channel map and other control information needed in broadcasting. The Control Subevent does not need to be included in every BIG event and is not counted in the subevent count (NSE); it is a completely independent subevent. According to the current BIS protocol, each BIS header of a BIS subevent within a BIG event containing a Control Subevent must set the Control Subevent Transmission Flag (CSTF) to 1 to indicate the presence of a Control Subevent in that BIG event. See also... Figure 1 As can be seen, BIG Event2 contains a Control Subevent, which corresponds to a transmission (Tx). The Control Subevent is transmitted after the final Subevent of the last BIS. The anchor point (or starting point) of each BIS event on the timeline is fixed; similarly, the anchor point of the Control Subevent is also fixed and can be obtained through the BIG Control Offset parameter (the BIG Control Offset represents the time from the BIG anchor point containing the control subevent to the start of the control subevent).

[0041] In the aforementioned prior art, the data carried by all subevents (se) in a BIS event is sent by the broadcast source device (or master device). Data on the BIS link can only be broadcast unidirectionally from one broadcast source device to multiple broadcast receiving devices (or slave devices) in a one-to-many manner.

[0042] This invention addresses the existing Bluetooth BIS broadcast by utilizing the Controlsubevent configured in the BIS to extend Bluetooth BIS broadcast, thereby better supporting multi-point to multi-point Bluetooth audio broadcast.

[0043] Specifically, this invention discloses a Bluetooth audio broadcasting method applied to a Bluetooth Low Energy audio communication system. This method utilizes the Control subevent configured in the Broadcast Isochronous Streaming (BIS) protocol to schedule all T devices in the aforementioned Bluetooth Low Energy audio communication system to extend Bluetooth BIS broadcasting. Through the aforementioned scheduling, the method changes the transmission of N BIS streams from only one broadcast source device in the system to N BIS streams being transmitted by N of the T devices in the system, where N is a natural number greater than or equal to 2, and T is a natural number greater than or equal to N.

[0044] In other words, by controlling the time slots and configurable control information (which can be configured within the Control subevent), device scheduling control information for scheduling devices in the system is configured. Through the Control subevent configured with device scheduling control information, the broadcast source device selects N devices from all T devices in the system to send data streams. Thus, the traditional method of sending N BIS streams from a single broadcast source device is adjusted through scheduling to allow N BIS streams to be sent from the N devices that need them. This allows data streams to be sent from the N selected devices in the network. Compared to the traditional one-to-many unidirectional broadcast scheme where only one broadcast source device can perform broadcasts, this invention significantly improves the flexibility of BIS transmission configuration. When applied to multi-point-to-multi-point communication networks, it can effectively reduce the implementation and maintenance difficulty of the communication network, improve communication reliability and robustness, and thus better support multi-point-to-multi-point wireless audio communication.

[0045] To maintain consistency of information such as the system clock (or network clock) and frequency hopping sequence in the communication system (or communication network), the Control subevent is sent by the broadcast source device in the system.

[0046] To effectively select and schedule these N devices from the aforementioned communication system, the broadcast source device is further configured to set the value of N according to a preset data stream sending device number threshold of the communication system during the aforementioned scheduling. The data stream sending device number threshold is used to limit the maximum number of devices allowed to simultaneously send data streams within an ISO interval. This threshold is preset and can be set by the user based on the scale of the communication system (total number of connected devices) and actual communication needs; for example, it can be any value between 2 and 5. Alternatively, the system default setting can be used as an example rather than a limitation. For instance, the default value of N can be set to 5, because in a multi-point to multi-point communication system, if N is set too large, meaning the system allows more than 5 nodes to speak simultaneously, the listeners in the system may not be able to hear everyone speaking.

[0047] At this time, the broadcast source device is configured to: obtain the system's data stream sending device number threshold, and let N be equal to the aforementioned data stream sending device number threshold, that is, the system allows a maximum of N devices to simultaneously send data streams to other devices in an equal time interval (ISO interval); based on the aforementioned N value, select N devices from all T devices in the system through Control subevent, and allocate idle BIS events to each of the selected N devices, so that each device occupies one BIS event to send its own data stream; and when a device finishes sending its data, reclaim the BIS event occupied by that device.

[0048] In specific implementation, the BIG event sent by the aforementioned broadcast source device may include N BIS events and a control subevent. The number of BIS events included in the BIG event corresponds to the aforementioned value of N. Through the aforementioned control subevent, the broadcast source device can select a corresponding device from T devices and configure that corresponding device to transmit data on one of the N BIS events.

[0049] The following is based on Figure 1 Based on the example of setting two BIG events, each of which includes two BIS events (BISEvent), this invention improves upon the existing one. This means that the communication system can allow two devices (i.e., N=2) to send data streams simultaneously within an equal time interval (ISOinterval). Each device occupies one BIS event within an equal time interval (ISOinterval) and uses one BIS event to send its own data.

[0050] See Figure 2As shown, the communication system's ISO interval includes two BIS events, meaning that two devices can simultaneously transmit data streams within one ISO interval. Let these two devices be device A and device B, where device A is the broadcast source device in the communication system, and the system clock and control subevents are maintained through broadcast source device A. In BIS0 Event1, device A sends two data packets A1 and A2; in BIS0 Event2, device A sends two data packets A3 and A4. In BIS1 Event1, device B sends two data packets B1 and B2; in BIS1 Event2, device B sends two data packets B3 and B4. In the second ISO interval, device A also sends a control subevent packet, labeled CTRL in the figure.

[0051] In another embodiment of this example, during the aforementioned scheduling, the broadcast source device can also allocate the time slots of the recovered BIS events to other devices in the system that require them. In this case, the broadcast source device is configured to: configure other devices in the system via a Control subevent, select a device from the other devices as a subsequent transmitting device, and allocate the time slots of the recovered BIS events to the selected subsequent transmitting device, thereby granting the selected subsequent transmitting device data transmission rights.

[0052] In practice, after a device finishes transmitting data in its own BIS event, the last data packet can be a NULL packet (empty packet). At this time, the broadcast source device is configured to: monitor the data transmission information of the node devices, and when a node device sends a NULL packet, reclaim the time slot occupied by the BIS event corresponding to that node device.

[0053] In this embodiment, as a preferred typical approach, the broadcast source device can schedule other devices used for data stream transmission based on the device's network access time.

[0054] For typical equipment scheduling steps, see Figure 3 As shown below:

[0055] S1 initializes N BIS events in the BIG event to idle.

[0056] S2 arranges all T devices in the system in sequence, with the broadcast source device placed first, and the other devices sorted according to their network access time.

[0057] S3: Select the top N devices as the data stream sending devices, allocate N idle BIS events to the N devices so that each device can send its own data; put the aforementioned N devices into the Working_list queue, put the remaining TN devices into the Idle_list queue, and set the Free_list queue to empty.

[0058] S4. Monitor the data transmission information of the aforementioned N devices. If any node device sends a NULL packet, reclaim the corresponding BIS event window and add the reclaimed BIS event to the Free_list queue. At the same time, put the devices that sent NULL packets into the end of the Idle_list queue in order and delete the devices that sent NULL packets from the Working_list queue.

[0059] S5, determine whether the aforementioned Free_list queue is empty; if yes, proceed to step S6; if no, proceed to step S7.

[0060] S6, keep the contents of the Control Subevent data packet CTRL unchanged, and wait to enter the next isochronous interval (ISO interval).

[0061] S7, if the determination is negative, starting from the head of the Idle_list queue, remove each device in sequence until the corresponding BIS event in the Free_list queue is full, that is, allocate the reclaimed BIS event to the previously removed device; then add these devices to the Working_list queue, and by modifying the aforementioned CTRL packet, make these devices scheduled in the next equal time interval ISOinterval.

[0062] S8, set the Free_list queue to empty, and wait to enter the next ISO interval; when entering the next ISO interval, return to execute step S4; until all the data that needs to be sent has been sent.

[0063] As an example rather than a limitation, the following describes the application scenario of this embodiment in detail, taking T=6, N=3, that is, a total of 6 devices, and the network allows a maximum of 3 devices to send data at the same time.

[0064] The communication system includes six devices: Device A, Device B, Device C, Device D, Device E, and Device F. Device A is the master device (i.e., the broadcast source device) of the communication system, used to provide the network clock and schedule the other devices to send and receive data. Device A has 3 data packets to send, and the packets starting from the 4th packet are empty (NULL); Device B has 3 data packets to send, and the packets starting from the 4th packet are empty (NULL); Device C has 1 data packet to send, and the packets starting from the 2nd packet are empty (NULL); Device D has 8 data packets to send, and the packets starting from the 9th packet are empty (NULL); Devices E and F have no data packets to send, and the packets starting from the 1st packet are empty (NULL).

[0065] Using the scheduling algorithm provided in this embodiment, the following can be adopted: Figure 4 This is how the system schedules devices to send data. See also Figure 4 The diagram illustrates packet transmission over six consecutive ISO intervals. Since N=3, there are three BIS Events in each ISO interval; additionally, the ControlSubevent (marked CTRL in the diagram) is reserved for use by master device A.

[0066] The specific scheduling is as follows, based on the order of equipment A, B, C, D, E, and F.

[0067] The first ISO Interval1: Devices A, B, and C are selected so that they are scheduled during their respective idle BIS events. The aforementioned three devices A, B, and C are placed in the Working_list queue, while devices D, E, and F are placed in the Idle_list queue. The Free_list queue is empty. Devices A and B send two data packets each, and device C sends its only data packet. It then sends a NULL packet at C2, releasing the subsequent BIS event window and adding the BIS event to the Free_list queue. Simultaneously, device C is removed from the Working_list queue. Since the Free_list queue is not empty, device D needs to be removed from the head of the Idle_list queue to fill the corresponding BIS event in the Free_list queue. Then, device D is added to the Working_list queue. That is, device A, as the master device, selects device D at the head of the queue using CTRL, granting it data sending permission in the next ISO Interval. The Free_list queue is then set to empty, waiting for the next ISO interval.

[0068] In the second ISO Interval2: Devices A and B each send their remaining data packets and send NULL packets at A4 and B4 respectively to release the subsequent BIS event window. At this time, the corresponding BIS event is added to the Free_list queue, and devices A and B are removed from the Working_list queue. Meanwhile, device D sends data packets D1 and D2. Then, as above, since the Free_list queue is not empty, devices E and F need to be removed from the head of the Idle_list queue to fill the corresponding BIS events in the Free_list queue. Then, devices E and F are added to the Working_list queue, that is, device A selects devices E and F by CTRL, so that they have the right to send data in the next ISO Interval. The Free_list queue is then set to empty, waiting to enter the next ISO interval.

[0069] In the third ISO Interval3: Device D sends D3 and D4 data packets at the same relative position as in the previous ISO Interval2; although devices E and F have obtained data transmission rights, they send two NULL packets to release the BIS event because they have no data; Device A selects the next transmitting device by polling with CTRL. At this time, devices A and B are selected again (added to the Working_list queue) and obtain data transmission rights in the next ISO Interval.

[0070] In the fourth ISO Interval4: Devices A and B, having no data to send, both send NULL packets to release subsequent BIS events; Device D sends D5 and D6 data packets; Device A polls and selects Devices C and E as the next sending devices (adding them to the Working_list queue), and obtains data sending rights in the next ISO Interval.

[0071] In the 5th ISO Interval5: Devices C and E send NULL packets because they have no data to send; Device D completes the sending of the last D8 data packet and sends a NULL packet at D9 to release subsequent BIS events; Device A polls and selects Devices F, A, and B as the next sending devices (adding them to the Working_list queue), and obtains data sending rights in the next ISO Interval.

[0072] ISO Interval6 (6th equal time interval): Devices F, A, and B all send NULL packets because they have no data to send.

[0073] In this embodiment, the Control Subevent PDU for device scheduling is configured based on the Protocol Data Unit (PDU) packets of the Broadcast Isochronous Stream (BIS).

[0074] According to the existing Bluetooth LE Audio specification, the data structure of the Protocol Data Unit (PDU) packet for Broadcast Isochronous Stream (BIS) is as follows: Figure 5 As shown. Specifically, the data structure of the PDU packet includes a fixed-length header (fixed length 16 bits), a variable-length payload (variable length from 0 to 251 bytes), and an optional message integrity check (MIC) (32 bits for encryption-related integrity verification). Figure 5 The document also shows the specific data structures of the header and payload. The meaning of the specific bits can be found in the Bluetooth specification, which is existing technology and will not be elaborated here.

[0075] according to Figure 5 It is known that the Payload field includes an Opcode field and a CtrData field. For the Opcode field, 0xF8 to 0xFB are unused; see [link to relevant documentation]. Figure 6 As shown. Accordingly, in this embodiment, a value within this range is preferably selected as the Control Subevent PDU. As an example of a typical approach rather than a limitation, for example, 0x02 is selected as the Control Subevent PDU and named BIG_SCHEDULE_IND (BIG Scheduling Indication Frame).

[0076] Since the CtrData field in the Payload field can hold up to 250 bytes of content, the size of CtrData is sufficient to accommodate the configuration information of these devices when we enter the next ISO interval scheduling through the selected devices.

[0077] In another embodiment of the present invention, the broadcast source device is further configured to: obtain a network access request from a device joining the system; after successful authentication, allocate an idle network ID to the aforementioned device according to the device's registration information, increase the total number of devices T in the current system by 1, and then restart device scheduling according to the new total number of devices T; and obtain information about a device leaving the system, remove the corresponding device from the system, decrease the total number of devices T in the current system by 1, and then restart device scheduling according to the new total number of devices T.

[0078] Preferably, as an example of a typical approach, Figure 7 This example illustrates a flowchart of other devices joining the network of broadcast source device A.

[0079] Initially, the system (or network) only has the original broadcast source device A, and the total number of devices in the network is T=1. As other devices are added, the value of T will gradually increase, that is, T is actually a changing value.

[0080] Figure 7 The diagram illustrates how other devices join device A's network. For ease of description, swimlanes are used to distinguish between these two types of devices.

[0081] First, broadcast source device A can broadcast the features it supports by sending a broadcast indication frame ADV_IND (Advertising Indication, corresponding to a normal broadcast packet) or a broadcast extension indication frame ADV_EXT_IND (Advertising Extension Indication) to indicate that the network supports multipoint-to-multipoint transmission.

[0082] Then, other network-connecting devices scan for broadcasts with device type A and select the network they want to join; they establish a BLE connection with the selected device A and complete security authentication.

[0083] If security authentication fails, return to the previous scanning steps; if security authentication succeeds, register yourself with device A and request a network ID.

[0084] Subsequently, device A assigns an idle network ID to the new device joining the network and increases the total number of devices T in the current network by 1.

[0085] After other devices join the network and receive their assigned network IDs, they can disconnect their BLE connection from device A and enter the multipoint-to-multipoint network according to the BIS joining procedure. Device A then restarts network scheduling based on the new total number of devices T.

[0086] In this embodiment, device exit from the system (or network) is divided into two modes: one is the situation where the device actively initiates the exit, and the other is the situation where the device passively exits due to factors such as system abnormalities or wireless communication radio frequency interference.

[0087] For device-initiated network decommissioning, this invention configures a termination packet, see [link to relevant documentation]. Figure 8 As shown in the figure, it is labeled TERM. For example, Figure 8 Device C sends a TERM packet at c2, meaning that device C actively initiates network withdrawal at c2. Based on this TERM packet, device A will remove device C from the network, reduce the total number of devices T by 1, and then restart scheduling.

[0088] For passive network decommissioning, see [link / reference]. Figure 9 As shown, for example in Figure 9 If the signal at the dashed line position can no longer be correctly parsed by device A, and if the signal at the dashed line position cannot be correctly parsed within a continuous preset number of equal time intervals (ISO Interval), then device A can determine that the corresponding device has been passively removed from the network. At this time, device A will remove the device at this position, reduce the total number of devices T by 1, and then restart scheduling.

[0089] Another embodiment of the present invention also provides a Bluetooth Low Energy audio communication system.

[0090] The Bluetooth Low Energy audio communication system includes a broadcast source device, which utilizes the aforementioned Bluetooth audio broadcasting method to construct multi-point to multi-point wireless audio data transmission.

[0091] The Bluetooth audio broadcasting method uses the Controlsubevent configured in the broadcast isochronous stream BIS protocol to schedule all T devices in the aforementioned system to extend Bluetooth BIS broadcasting. Through the aforementioned scheduling, the system changes from sending N BIS streams by only one broadcast source device to sending N BIS streams by N of the T devices in the system, where N is a natural number greater than or equal to 2 and T is a natural number greater than or equal to N.

[0092] Other technical features are described in the preceding embodiments and will not be repeated here.

[0093] The present invention also provides an electronic device, comprising: a transceiver, a memory, a processor, and a program stored in the memory and executable on the processor.

[0094] The processor is configured to read the program in the memory and implement the following Bluetooth audio broadcasting method: scheduling all T devices in the aforementioned system to extend Bluetooth BIS broadcasting via the Control subevent configured in the broadcast isochronous stream BIS protocol; through the aforementioned scheduling, adjusting the system from sending N BIS streams from only one broadcast source device to sending N BIS streams from N of the T devices in the system, where N is a natural number greater than or equal to 2, and T is a natural number greater than or equal to N.

[0095] Other technical features are described in the preceding embodiments and will not be repeated here.

[0096] In the above description, the disclosure of this invention is not intended to limit itself to these aspects. Rather, within the scope of the objectives of this disclosure, components can be selectively and operationally combined in any number. Furthermore, terms such as “comprising,” “encompassing,” and “having” should be interpreted by default as inclusive or open-ended, rather than exclusive or closed, unless explicitly defined as such. All technical, scientific, or other terms are to be understood by those skilled in the art, unless defined as such. Public terms found in dictionaries should not be interpreted too idealistically or impractically in the context of the relevant technical documents, unless explicitly defined as such in this disclosure. Any modifications or alterations made by those skilled in the art based on the foregoing disclosure are within the scope of the claims.

Claims

1. A Bluetooth audio broadcasting method, applied to a Bluetooth Low Energy audio communication system, characterized in that: The control subevent configured in the broadcast isochronous BIS protocol is used to schedule all T devices in the aforementioned system to extend Bluetooth BIS broadcasting; through the aforementioned scheduling, the N BIS streams sent by only one broadcast source device in the system are adjusted to be sent by N devices out of the T devices in the system, where N is a natural number greater than or equal to 2, and T is a natural number and T is greater than or equal to N; During the aforementioned scheduling, the aforementioned broadcast source device sets the value of N according to the data stream sending device number threshold preset by the aforementioned system, and sends a control subevent. At this time, the broadcast source device is configured to: obtain the data stream sending device number threshold of the system, and let N be equal to the aforementioned data stream sending device number threshold, that is, the system allows a maximum of N devices to send data streams to other devices simultaneously in an equal time interval (ISO interval); according to the aforementioned N value, select N devices from all T devices in the system through Control subevent, and allocate an idle BIS event to each of the selected N devices, so that each device occupies one BIS event to send its own data stream; Additionally, once a device has finished sending data, the BIS events held by that device are reclaimed.

2. The method according to claim 1, characterized in that: During the aforementioned scheduling, the aforementioned broadcast source device can also allocate the time slots of the recovered BIS events to other devices in the system that need them. At this time, the broadcast source device is configured to: select a device as a subsequent transmitting device from other devices in the system through Control subevent configuration, and allocate the time slot of the aforementioned recycled BIS event to the selected subsequent transmitting device, thereby enabling the selected subsequent transmitting device to obtain data transmission rights.

3. The method according to claim 1 or 2, characterized in that: After a device has finished transmitting data in its own BIS event, the last data packet is sent as a NULL packet; At this time, the broadcast source device is configured to: monitor the data transmission information of the node devices, and when a node device sends a NULL packet, reclaim the time slot occupied by the BIS event corresponding to that node device.

4. The method according to claim 1 or 2, characterized in that: The BIG events sent by the aforementioned broadcast source device include N BIS events and a Control subevent. Through the aforementioned Control subevent, the broadcast source device selects the corresponding device from T devices and configures the corresponding device to transmit data on one of the N BIS events.

5. The method according to claim 4, characterized in that: The broadcast source device schedules other devices for data stream transmission based on the device's network access time. The device scheduling steps are as follows: S1 initializes N BIS events in the BIG event to idle; S2, arrange all T devices in the system in order, with the broadcast source device placed first, and the other devices sorted according to their network access time; S3: Select the top N devices as the data stream sending devices, allocate N idle BIS events to the N devices for each device to send its own data; put the aforementioned N devices into the Working_list queue, put the remaining TN devices into the Idle_list queue, and set the Free_list queue to empty; S4. Monitor the data transmission information of the aforementioned N devices. If any node device sends a NULL packet, reclaim the corresponding BIS event window and add the reclaimed BIS event to the Free_list queue. At the same time, put the devices that sent NULL packets into the end of the Idle_list queue in order and delete the devices that sent NULL packets from the Working_list queue. S5, determine whether the aforementioned Free_list queue is empty; if yes, proceed to step S6; if no, proceed to step S7. S6, keep the content of the Control Subevent data packet CTRL packet unchanged, and wait to enter the next equal time interval ISOinterval; S7, if the determination is negative, starting from the head of the Idle_list queue, remove each device in sequence until the corresponding BIS event in the Free_list queue is filled, that is, allocate the reclaimed BIS event to the previously removed device; then add these devices to the Working_list queue, and by modifying the aforementioned CTRL packet, make these devices scheduled in the next equal time interval ISOinterval; S8, set the Free_list queue to empty, and wait to enter the next ISO interval; when entering the next ISO interval, return to execute step S4; until all the data that needs to be sent has been sent.

6. The method according to claim 1, characterized in that: The Control Subevent PDU for device scheduling is configured based on the Protocol Data Unit (PDU) packets of the broadcast isochronous BIS. The PDU packets of the BIS include at least a fixed-length header field and a variable-length payload field. In the Opcode field of the payload field, any value from 0xF8 to 0xFB is selected as the Control Subevent PDU for device scheduling.

7. The method according to claim 1, characterized in that: The broadcast source device is further configured to: obtain a network access request from a device joining the system; after successful authentication, allocate an idle network ID to the aforementioned device based on the device's registration information; increase the total number of devices T in the current system by 1; and then restart device scheduling according to the new total number of devices T; and obtain information about a device leaving the system; remove the corresponding device from the system; decrease the total number of devices T in the current system by 1; and then restart device scheduling according to the new total number of devices T.

8. A Bluetooth Low Energy audio communication system, comprising a broadcast source device, characterized in that: The method described in any one of claims 1-7 is used to construct multi-point to multi-point wireless audio data transmission.

9. An electronic device, comprising: A transceiver, a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that: The processor is configured to read a program from memory to implement the steps of the method as described in any one of claims 1-7.