Bluetooth communication methods, devices, communication system and storage medium
By receiving the first data packet of the extended broadcast data packet in Bluetooth communication and determining whether to receive the auxiliary broadcast data packet, the problem of high power consumption of the device in Bluetooth communication is solved and the energy efficiency of the device is improved.
Patent Information
- Application Number
- PCT/CN2024/084599
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-28
- Publication Date
- 2025-10-02
AI Technical Summary
In Bluetooth communications, a device that receives a long advertising data packet needs to receive the data packet completely to understand the content, resulting in higher power consumption of the scanning device.
By receiving the first data packet in the extended broadcast data packet and using the field in the first data packet to determine whether to receive the auxiliary broadcast data packet, unnecessary data reception is reduced and the power consumption of the device is reduced.
It effectively reduces the power consumption of the device, reduces unnecessary data reception, and improves the energy efficiency of the device.
Smart Images

Figure CN2024084599_02102025_PF_FP_ABST
Abstract
Description
Bluetooth communication method, device, communication system and storage medium Technical Field
[0001] The present disclosure relates to the field of communication technology, and in particular to a Bluetooth communication method, device, communication system, and storage medium. Background Art
[0002] In Bluetooth communications, extended advertising enables one-way data transmission between a broadcasting device and a scanning device without establishing a connection. However, for longer advertising packets, the receiving device must receive the entire packet to understand its contents, resulting in higher power consumption for the scanning device.
[0003] Summary of the Invention
[0004] The embodiments of the present disclosure provide a Bluetooth communication method, device, communication system, and storage medium.
[0005] According to a first aspect of an embodiment of the present disclosure, a Bluetooth communication method is provided, the method comprising:
[0006] The first device receives a first data packet, where the first data packet is an extended broadcast data packet sent by the second device;
[0007] The first device determines whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device and / or the extended broadcast data packet excluding the first data packet.
[0008] According to a second aspect of an embodiment of the present disclosure, a Bluetooth communication method is proposed, the method comprising:
[0009] The second device sends a first data packet, which is an extended broadcast data packet. The first data packet is used by the first device to determine whether to receive the second data packet. The second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
[0010] According to a third aspect of an embodiment of the present disclosure, a first device is provided, the first device including:
[0011] a transceiver module, configured to receive a first data packet, where the first data packet is an extended broadcast data packet sent by the second device;
[0012] A processing module is used to determine whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device and / or the extended broadcast data packet excluding the first data packet.
[0013] According to a fourth aspect of an embodiment of the present disclosure, a second device is provided, the second device including:
[0014] A transceiver module is used to send a first data packet, where the first data packet is an extended broadcast data packet, and the first data packet is used by the first device to determine whether to receive a second data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
[0015] According to a fifth aspect of the embodiments of the present disclosure, a first device is provided, including:
[0016] one or more processors;
[0017] A memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, causes the first device to execute the Bluetooth communication method described in the first aspect.
[0018] According to a sixth aspect of the embodiments of the present disclosure, a second device is provided, including:
[0019] one or more processors;
[0020] A memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, causes the second device to execute the Bluetooth communication method described in the second aspect.
[0021] According to the seventh aspect of an embodiment of the present disclosure, a communication system is proposed, comprising a first device and a second device, wherein the first device is configured to implement the Bluetooth communication method described in the first aspect, and the second device is configured to implement the Bluetooth communication method described in the second aspect.
[0022] According to an eighth aspect of an embodiment of the present disclosure, a storage medium is proposed, which stores instructions. When the instructions are executed on a communication device, the communication device executes the Bluetooth communication method as described in the first aspect or the second aspect.
[0023] In the above embodiment, the first device can first receive the extended broadcast data packet broadcast by the second device, and determine whether to receive the auxiliary broadcast data packet and / or other extended broadcast data packets sent by the second device based on the extended broadcast data packet. The first device does not need to receive all broadcast data packets broadcast by the second device, which can effectively reduce the power consumption of the first device. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure, the following drawings required for describing the embodiments are introduced. The following drawings are merely some embodiments of the present disclosure and do not impose specific limitations on the protection scope of the present disclosure.
[0025] FIG1 is an exemplary schematic diagram of the architecture of a communication system provided according to an embodiment of the present disclosure.
[0026] FIG2 is an exemplary interaction diagram of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0027] FIG3A is a schematic diagram of an exemplary flow chart of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0028] FIG3B is a schematic diagram of an exemplary flow chart of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0029] FIG4A is a schematic diagram of an exemplary flow chart of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0030] FIG4B is a schematic diagram of an exemplary flow chart of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0031] FIG5 is an exemplary interaction diagram of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0032] FIG6A is a schematic diagram of an exemplary flow chart of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0033] FIG6B is an exemplary schematic diagram of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0034] FIG6C is an exemplary schematic diagram of a Bluetooth communication method provided according to an embodiment of the present disclosure.
[0035] FIG6D is an exemplary schematic diagram of a data packet format provided according to an embodiment of the present disclosure.
[0036] FIG7A is a schematic diagram of an exemplary structure of a first device provided according to an embodiment of the present disclosure.
[0037] FIG7B is a schematic diagram of an exemplary structure of a second device provided according to an embodiment of the present disclosure.
[0038] FIG8A is a schematic diagram of an exemplary structure of a communication device provided according to an embodiment of the present disclosure.
[0039] FIG8B is a schematic diagram of an exemplary structure of a communication device provided according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0040] The embodiments of the present disclosure provide a Bluetooth communication method, device, communication system, and storage medium.
[0041] In a first aspect, an embodiment of the present disclosure provides a Bluetooth communication method, the method comprising:
[0042] The first device receives a first data packet, where the first data packet is an extended advertising data packet sent by the second device;
[0043] The first device determines whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary advertising data packet sent by the second device and / or the extended advertising data packet excluding the first data packet.
[0044] In the above embodiment, the first device can first receive the extended broadcast data packet broadcast by the second device, and determine whether to receive the auxiliary broadcast data packet and / or other extended broadcast data packets sent by the second device based on the extended broadcast data packet. The first device does not need to receive all the broadcast data packets broadcast by the second device, which can effectively reduce the power consumption of the first device.
[0045] In conjunction with some embodiments of the first aspect, in some embodiments, the auxiliary broadcast data packet includes at least one of the following:
[0046] Auxilary Advertising Indication (AUX_ADV_IND) data packet;
[0047] Auxiliary Synchronization Indication (AUX_SYNC_IND) data packet;
[0048] Auxilary Chain Indication (AUX_CHAIN_IND) data packet.
[0049] In combination with some embodiments of the first aspect, in some embodiments, the extended broadcast data packet at least includes an extended broadcast indication (Advertising Extension Indication, ADV_EXT_IND) data packet.
[0050] In combination with some embodiments of the first aspect, in some embodiments, the first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
[0051] In the above embodiment, a first field can be set and carried by the first data packet, so that the first device can determine whether to receive the auxiliary broadcast data packet and / or other extended broadcast data packet sent by the second device based on the first field in the first data packet.
[0052] In combination with some embodiments of the first aspect, in some embodiments, the first data packet includes an extended header, the extended header includes an Additional Controller Advertising Data (ACAD) field, and the ACAD field includes the first field.
[0053] In the above embodiment, the first field can be carried by the ACAD field of the extended header of the first data packet, which can ensure that the first device can reliably receive the first field and determine whether to receive the second data packet based on the first field.
[0054] In combination with some embodiments of the first aspect, in some embodiments, the first field includes at least one of the following: a first information field, used to indicate the length of the first field; a second information field, used by the first device to determine whether to receive the second data packet.
[0055] In the above embodiment, the first field may include a first information field and a second information field, which allows the first device to determine the length of the first field based on the first information field, ensure the reliability of the first device receiving the first field, and enable the first device to determine whether it needs to receive the second data packet based on the information corresponding to the second information field, which can effectively reduce the power consumption of the first device.
[0056] In combination with some embodiments of the first aspect, in some embodiments, the number of bytes included in the second information field is less than or equal to 25.
[0057] In combination with some embodiments of the first aspect, in some embodiments, the method includes: the first device determines a shared key, the shared key is used by the first device to decrypt the encrypted first field, and the shared key is also used by the second device to encrypt the first field.
[0058] In the above embodiment, the first device and the second device can generate a shared key, and encrypt and decrypt the first field based on the shared key, which can effectively ensure the security of the transmission of the first data packet.
[0059] In conjunction with some embodiments of the first aspect, in some embodiments, the first device determining the shared key includes:
[0060] The first device and the second device are connected via a Generic Attribute Profile (GATT) to generate the shared key.
[0061] In a second aspect, an embodiment of the present disclosure provides a Bluetooth communication method, the method comprising:
[0062] The second device sends a first data packet, which is an extended broadcast data packet. The first data packet is used by the first device to determine whether to receive the second data packet. The second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
[0063] In conjunction with some embodiments of the second aspect, in some embodiments, the auxiliary broadcast data packet includes at least one of the following:
[0064] Auxiliary broadcast indication AUX_ADV_IND data packet;
[0065] Auxiliary synchronization indication AUX_SYNC_IND data packet;
[0066] Auxiliary chain indication AUX_CHAIN_IND packet.
[0067] In combination with some embodiments of the second aspect, in some embodiments, the extended broadcast data packet at least includes an extended broadcast indication ADV_EXT_IND data packet.
[0068] In combination with some embodiments of the second aspect, in some embodiments, the first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
[0069] In combination with some embodiments of the second aspect, in some embodiments, the first data packet includes an extended header, the extended header includes an additional controller broadcast data ACAD field, and the ACAD field includes the first field.
[0070] In conjunction with some embodiments of the second aspect, in some embodiments, the first field includes at least one of the following:
[0071] A first information field, used to indicate the length of the first field;
[0072] The second information field is used by the first device to determine whether to receive the second data packet.
[0073] In combination with some embodiments of the second aspect, in some embodiments, the number of bytes included in the second information field is less than or equal to 25.
[0074] In conjunction with some embodiments of the second aspect, in some embodiments, the method includes:
[0075] The second device determines a shared key, where the shared key is used by the second device to encrypt the first field, and the shared key is also used by the first device to decrypt the encrypted first field.
[0076] In conjunction with some embodiments of the second aspect, in some embodiments, the first device determines the shared key, including:
[0077] The second device is connected to the first device via the General Attribute Protocol (GATT) to generate the shared key.
[0078] In a third aspect, an embodiment of the present disclosure provides a first device, the first device including:
[0079] a transceiver module, configured to receive a first data packet, where the first data packet is an extended broadcast data packet sent by the second device;
[0080] A processing module is used to determine whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device and / or the extended broadcast data packet excluding the first data packet.
[0081] In a fourth aspect, an embodiment of the present disclosure provides a second device, the second device including:
[0082] A transceiver module is used to send a first data packet, where the first data packet is an extended broadcast data packet, and the first data packet is used by the first device to determine whether to receive a second data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
[0083] In a fifth aspect, an embodiment of the present disclosure proposes a first device comprising: one or more processors; a memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, enables the first device to execute the Bluetooth communication method in the first aspect.
[0084] In the sixth aspect, an embodiment of the present disclosure proposes a second device, comprising: one or more processors; a memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, enables the second device to execute the Bluetooth communication method in the second aspect.
[0085] In the seventh aspect, an embodiment of the present disclosure proposes a communication system, which includes: a first device and a second device; wherein the first device is configured to execute the method described in the optional implementation manner of the first aspect, and the second device is configured to execute the method described in the optional implementation manner of the second aspect.
[0086] In an eighth aspect, an embodiment of the present disclosure proposes a storage medium, wherein the storage medium stores instructions. When the instructions are executed on a communication device, the communication device executes the method described in the optional implementation of the first and second aspects.
[0087] In a ninth aspect, an embodiment of the present disclosure proposes a program product. When the program product is executed by a communication device, the communication device executes the method described in the optional implementation of the first and second aspects.
[0088] In a tenth aspect, an embodiment of the present disclosure proposes a computer program, which, when executed on a computer, enables the computer to execute the method described in the optional implementation of the first and second aspects.
[0089] In an eleventh aspect, an embodiment of the present disclosure provides a chip or a chip system, wherein the chip or chip system includes a processing circuit configured to execute the method described in the optional implementation of the first and second aspects above.
[0090] It is understandable that the first device, the second device, the communication system, the storage medium, the program product, the computer program, the chip, or the chip system described above are all used to perform the method proposed in the embodiment of the present disclosure. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects of the corresponding method and will not be repeated here.
[0091] The embodiments of the present disclosure provide a communication method, a first device, a second device, a communication system, and a storage medium. In some embodiments, the terms "Bluetooth communication method" and "information processing method" and "data transmission method" and "communication method" are interchangeable; the terms "Bluetooth communication device" and "information processing device" and "data transmission device" and "communication device" are interchangeable; and the terms "communication system" and "Bluetooth communication system" are interchangeable.
[0092] The embodiments of the present disclosure are not exhaustive and are merely illustrative of some embodiments, and are not intended to be a specific limitation on the scope of protection of the present disclosure. In the absence of contradiction, each step in a certain embodiment can be implemented as an independent embodiment, and the steps can be arbitrarily combined. For example, a solution after removing some steps in a certain embodiment can also be implemented as an independent embodiment, and the order of the steps in a certain embodiment can be arbitrarily exchanged. In addition, the optional implementation methods in a certain embodiment can be arbitrarily combined; in addition, the embodiments can be arbitrarily combined. For example, some or all steps of different embodiments can be arbitrarily combined, and a certain embodiment can be arbitrarily combined with the optional implementation methods of other embodiments.
[0093] In each embodiment of the present disclosure, unless otherwise specified or provided for by logic, the terms and / or descriptions between the embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form a new embodiment based on their inherent logical relationships.
[0094] The terms used in the embodiments of the present disclosure are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure.
[0095] In the embodiments of the present disclosure, unless otherwise specified, elements expressed in the singular, such as "a", "an", "the", "above", "said", "the", "the", etc., may mean "one and only one", or "one or more", "at least one", etc. For example, when using articles such as "a", "an", "the" in English in translation, the noun following the article may be understood as a singular expression or a plural expression.
[0096] In the embodiments of the present disclosure, “plurality” refers to two or more.
[0097] In some embodiments, the terms "at least one," "one or more," "a plurality of," "multiple," etc. may be used interchangeably.
[0098] In some embodiments, descriptions such as "at least one of A and B," "A and / or B," "A in one case, B in another case," or "in response to one case A, in response to another case B" may include the following technical solutions depending on the situation: in some embodiments, A (A is executed independently of B); in some embodiments, B (B is executed independently of A); in some embodiments, execution is selected from A and B (A and B are selectively executed); and in some embodiments, A and B (both A and B are executed). The above is also applicable when there are more branches such as A, B, and C.
[0099] In some embodiments, "A or B" and other descriptions may include the following technical solutions depending on the situation: in some embodiments, A (A is executed independently of B); in some embodiments, B (B is executed independently of A); in some embodiments, execution is selected from A and B (A and B are selectively executed). The above is also applicable when there are more branches such as A, B, C, etc.
[0100] The prefixes such as "first" and "second" in the embodiments of the present disclosure are only used to distinguish different description objects and do not constitute any restriction on the position, order, priority, quantity or content of the description objects. For the statement of the description object, please refer to the description in the context of the claims or embodiments, and no unnecessary restriction should be constituted due to the use of prefixes. For example, if the description object is a "field", the ordinal number before the "field" in the "first field" and the "second field" does not limit the position or order between the "fields". "First" and "second" do not limit whether the "fields" they modify are in the same message, nor do they limit the order of the "first field" and the "second field". For another example, if the description object is a "level", the ordinal number before the "level" in the "first level" and the "second level" does not limit the priority between the "levels". For another example, the number of description objects is not limited by the ordinal number and can be one or more. Taking "first device" as an example, the number of "devices" can be one or more. In addition, the objects modified by different prefixes can be the same or different. For example, if the description object is "device", then the "first device" and the "second device" can be the same device or different devices, and their types can be the same or different; for another example, if the description object is "information", then the "first information" and the "second information" can be the same information or different information, and their contents can be the same or different.
[0101] In some embodiments, “including A,” “comprising A,” “used to indicate A,” and “carrying A” can be interpreted as directly carrying A or indirectly indicating A.
[0102] In some embodiments, terms such as "time / frequency" and "time / frequency domain" refer to the time domain and / or the frequency domain.
[0103] In some embodiments, terms such as "in response to...", "in response to determining...", "in the case of...", "at the time of...", "when...", "if...", "if...", etc. can be used interchangeably.
[0104] In some embodiments, terms such as "greater than", "greater than or equal to", "not less than", "more than", "more than or equal to", "not less than", "higher than", "higher than or equal to", "not less than", and "above" can be replaced with each other, and terms such as "less than", "less than or equal to", "not greater than", "less than", "less than or equal to", "not more than", "lower than", "lower than or equal to", "not higher than", and "below" can be replaced with each other.
[0105] In some embodiments, devices, etc. can be interpreted as physical or virtual, and their names are not limited to the names recorded in the embodiments. Terms such as "device", "equipment", "device", "circuit", "network element", "node", "function", "unit", "section", "system", "network", "chip", "chip system", "entity", and "subject" can be used interchangeably.
[0106] In some embodiments, "network" can be interpreted as devices included in the network (for example, a first device, a second device, an access network device, a core network device, etc.).
[0107] In some embodiments, the terms "access network device (AN device)", "radio access network device (RAN device)", "base station (BS)", "radio base station" "fixed station", "node", "access point", "transmission point (TP)", "reception point (RP)", "transmission / reception point (TRP)" "panel", "antenna panel", "antenna array", "cell", "macro cell", "small cell", "femto cell", "pico cell", "sector", "cell group", "serving cell", "carrier", "component carrier", "bandwidth part (BWP)" and the like may be used interchangeably.
[0108] In some embodiments, the terms "first device", "second device", "terminal", "terminal device", "user equipment (UE)", "user terminal" "mobile station (MS)", "mobile terminal (MT)", subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, access terminal, mobile terminal, wireless terminal, remote terminal, handset, user agent, mobile client, client, etc. can be used interchangeably.
[0109] In some embodiments, the access network device, the core network device, or the network device can be replaced by a terminal. For example, the various embodiments of the present disclosure can also be applied to a structure in which the communication between the access network device, the core network device, or the network device and the terminal is replaced by communication between multiple terminals (for example, device-to-device (D2D), vehicle-to-everything (V2X), etc.). In this case, it is also possible to set the structure in which the terminal has all or part of the functions of the access network device. In addition, terms such as "uplink" and "downlink" can also be replaced by terms corresponding to communication between terminals (for example, "side"). For example, uplink channels, downlink channels, etc. can be replaced by side channels, and uplinks, downlinks, etc. can be replaced by side links.
[0110] In some embodiments, the terminal may be replaced by an access network device, a core network device, or a network device. In this case, the access network device, the core network device, or the network device may have a structure that has all or part of the functions of the terminal.
[0111] In some embodiments, obtaining data, information, etc. may comply with the laws and regulations of the country where the data is obtained.
[0112] In some embodiments, data, information, etc. may be obtained with the user's consent.
[0113] In addition, each element, each row, or each column in the table of the embodiment of the present disclosure can be implemented as an independent embodiment, and the combination of any elements, any rows, and any columns can also be implemented as an independent embodiment.
[0114] FIG1 is a schematic diagram of the architecture of a communication system according to an embodiment of the present disclosure. As shown in FIG1 , the communication system 100 includes a first device 101 and a second device 102. In some embodiments, the first device 101 and the second device 102 can both be devices capable of Bluetooth communication. In some embodiments, the first device 101 can be provided as a central device (Central) in Bluetooth communication, and the second device 102 can be provided as a peripheral device (Peripheral) in Bluetooth communication.
[0115] In some embodiments, the central device may also be referred to as a master device, and the peripheral device may also be referred to as a slave device.
[0116] In some embodiments, before the first device 101 establishes a connection with the second device 102, the second device 102 in the broadcast state may periodically send broadcast data packets. In this case, the second device 102 may also be referred to as an advertiser. Alternatively, the first device 101 in the listening state may scan on different broadcast channels. In this case, the first device 101 may also be referred to as a scanner. Optionally, after completing device discovery, the first device 101 initiates a connection with the second device 102, such as initiating a pairing process between the first device 101 and the second device 102. After that, the two parties enter a connected state and further transmit and receive data packets.
[0117] In some embodiments, the first device 101 and the second device 102 may support extended broadcast (using channels 0-39) in addition to legacy broadcast (using channels 37, 38, or 39). Optionally, the extended broadcast packet may support "segmentation," i.e., the packet content may be transmitted using multiple auxiliary broadcasts on auxiliary broadcast channels, and may support an extended broadcast packet length of up to 1650 bytes.
[0118] In some embodiments, a scanning device (e.g., first device 101) and a broadcasting device (e.g., second device 102) can perform one-way data transmission via Bluetooth extended broadcasting without establishing a connection. The data transmission can support encryption. Optionally, the data transmission can support periodic broadcasting.
[0119] In some embodiments, the second device 102 and the first device 101 can each be any one of a terminal, an access network device, and a core network device. For example, the first device 101 can be a device with an interactive interface, such as a computer or a mobile phone. The first device 101 can be connected to medical sensors, light bulbs, sockets, switches, and other devices via Bluetooth. The second device 102 can be any of these devices. After the second device 102 establishes a connection with the first device 101, the two devices can transmit audio data or other types of data, such as querying and reading sensor status values, adjusting device modes, or other setting parameters.
[0120] It can be understood that the communication system described in the embodiment of the present disclosure is for the purpose of more clearly illustrating the technical solution of the embodiment of the present disclosure, and does not constitute a limitation on the technical solution proposed in the embodiment of the present disclosure. Ordinary technicians in this field can know that with the evolution of the system architecture and the emergence of new business scenarios, the technical solution proposed in the embodiment of the present disclosure is also applicable to similar technical problems.
[0121] The following embodiments of the present disclosure may be applied to the communication system 100 shown in FIG1 , or a portion thereof, but are not limited thereto. The entities shown in FIG1 are illustrative only. The communication system may include all or part of the entities shown in FIG1 , or may include other entities outside of FIG1 . The number and form of the entities are arbitrary, and the entities may be physical or virtual. The connection relationships between the entities are illustrative only. The entities may be connected or disconnected, and the connection may be in any manner, including direct or indirect, wired or wireless.
[0122] The embodiments of the present disclosure may be applied to Bluetooth (registered trademark)), Star Flash system, Long Term Evolution (LTE), LTE-Advanced (LTE-A), LTE-Beyond (LTE-B), SUPER 3G, IMT-Advanced, 4th generation mobile communication system (4G), 5th generation mobile communication system (5G), 5G new radio (NR), future radio access (FRA), new radio access technology (RAT), new radio (NR), new radio access (NX), future generation radio access (FX), Global System for Mobile communications (GSM (registered trademark)), CDMA2000, Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi (registered trademark)), IEEE 802.16 (WiMAX (registered trademark)), IEEE 802.20, Ultra-WideBand (UWB), Public Land Mobile Network (PLMN) networks, Device-to-Device (D2D) systems, Machine-to-Machine (M2M) systems, Internet of Things (IoT) systems, Vehicle-to-Everything (V2X), systems utilizing other communication methods, and next-generation systems based on and extending these methods. Furthermore, multiple systems may be combined (for example, a combination of Bluetooth, Starlink, LTE, LTE-A, and 5G).
[0123] In some embodiments, Bluetooth devices can implement extended broadcasts with data message lengths up to 1560 bytes. Any Bluetooth receiving device within the signal coverage area can scan the Bluetooth extended broadcast to obtain information contained in the broadcast data packet. This technology can be applied in public areas such as shopping malls, stadiums, transportation hubs, parks, and museums. Furthermore, the receiving device can also make a rough determination of its proximity location based on the received signal strength of the data packet.
[0124] In some embodiments, extended advertising enables one-way data transmission between a broadcasting device and a scanning device without establishing a connection. However, for longer advertising packets, the scanning device must continuously listen, and constant scanning consumes more energy. However, with current Bluetooth extended advertising, a scanning device must scan and receive the entire advertising packet to understand the content of the extended advertisement, which increases the scanning device's energy consumption.
[0125] In some embodiments, a digest can be added to Bluetooth Extended Advertisement packets for longer data packets. This does not impact other Bluetooth Extended Advertisement functionality and can support encryption of the digest content. Using the digest, scanning devices can reduce unnecessary power consumption caused by continuously scanning for irrelevant Extended Advertisements and Auxiliary Advertisements.
[0126] FIG2 is an interactive diagram of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG2 , the embodiment of the present disclosure relates to a Bluetooth communication method, which includes:
[0127] Step S2101: The first device and the second device generate a shared key.
[0128] In some embodiments, the first device and the second device generate a shared key via a GATT connection. Optionally, the first device sends broadcast data, such as an Advertising Data Payload. After receiving the broadcast data, the second device establishes a GATT connection with the first device based on the broadcast data and negotiates with the first device to generate a shared key.
[0129] In some embodiments, the shared key may be a short term key (STK) or a long term key (LTK), which is not limited in the embodiments of the present disclosure.
[0130] In some embodiments, the shared key is used by the second device to encrypt the first field. Alternatively, the shared key is used by the first device to decrypt the encrypted first field.
[0131] In some embodiments, the shared key is 128 bits.
[0132] Step S2102: The second device encrypts the first field according to the shared key.
[0133] In some embodiments, the shared key may be pre-generated by the first device and the second device, for example, generated in step S2101. Alternatively, the shared key may be pre-stored in the second device. Alternatively, the shared key may be generated by the first device and the second device through a communication method other than a GATT connection, which is not limited in the present embodiment.
[0134] In some embodiments, the first field may be used by a device that receives the first field to determine whether to receive the second data packet. For example, the first field is used by the first device to determine whether to receive the second data packet. Optionally, the first field may include summary information.
[0135] In some embodiments, the first field may also be referred to as a "summary field", a "receive indication field", etc., and the embodiments of the present disclosure do not limit its name.
[0136] In some embodiments, the encryption of the first field by the second device in step S2102 and the encryption of the first field by the first device in step S2104 may be implemented based on Encrypted Advertising Data (EAD).
[0137] In some embodiments, the second device may encrypt the plaintext data using an AES-128 bit block encryption algorithm. For example, the shared key may be 128 bits, the plaintext data may be 128 bits, and the encrypted 128-bit data may be obtained based on the encryption algorithm.
[0138] Optionally, the second device encrypts the first field according to the shared key based on an encryption function (Security function) e, where the encryption function e can be expressed as e(key, plaintextData), where key represents the shared key and plaintextData represents the plaintext data. For example, the second device can input the plaintext data of the first field and the shared key into the encryption function e to obtain the encrypted first field.
[0139] In some possible implementations, when the first field is less than 128 bits, for example, 80 bits, 48 bits with a bit value of 0 can be added before the first bit, or 48 bits with a bit value of 0 can be added after the last bit, and the 128-bit bit string is input as plaintext data into the above encryption function to obtain the encrypted first field.
[0140] In other possible implementations, when the first field is greater than 128 bits, for example, 160 bits, the first 128 bits can be input as plaintext data into the above encryption function, and 96 bits with a bit value of 0 can be added before the first bit of the last 32 bits, or, after adding 96 bits with a bit value of 0 after the last bit of the last 32 bits, the above encryption function is input as plaintext data to obtain the encrypted first field.
[0141] Step S2103: The second device sends a first data packet to the first device.
[0142] In some embodiments, the second device may also send the first data packet to other entities. Optionally, the second device broadcasts the first data packet.
[0143] In some embodiments, the second device broadcasts an extended advertising data packet. Optionally, the extended advertising data packet includes at least an ADV_EXT_IND data packet. Optionally, the extended advertising data packet includes at least a first data packet. Optionally, the first data packet is an ADV_EXT_IND data packet.
[0144] It is understood that the second device broadcasting the extended data packet may refer to the second device sending the extended data packet to each Bluetooth device within its signal coverage range. The first device may be any Bluetooth device within the signal coverage range of the second device.
[0145] In some embodiments, the second device may send multiple first data packets. Alternatively, the second device may send the first data packet on multiple channels. Alternatively, the second device may periodically send the first data packet. Alternatively, the second device may broadcast the first data packet and / or the second data packet as a periodic advertising with responses (PAwR).
[0146] In some embodiments, the first data packet includes a first field. Optionally, the first field may be the first field encrypted in step S2102. Optionally, the first data packet is used by the first device to determine whether to receive the second data packet.
[0147] In some embodiments, the first field may be unencrypted plaintext data, or may be the first field encrypted in step S2102. Alternatively, if the first field does not need to be encrypted, steps S2101, S2102, and S2105 may be omitted.
[0148] In some embodiments, the first data packet includes an extended header. Optionally, the extended header includes an ACAD field. Optionally, the ACAD field includes the first field. Optionally, the ACAD field may be the first field.
[0149] In some embodiments, the first field includes at least one of the following: a first information field for indicating the length of the first field; and a second information field for the first device to determine whether to receive the second data packet. Optionally, the number of bytes included in the first information field may be equal to 1. Optionally, the number of bytes included in the second information field may be less than or equal to 25. Optionally, the number of bytes in the ACAD field may be less than or equal to 26.
[0150] In some embodiments, the first field may also be referred to as a digest field. Optionally, the second information field may be used to carry specific digest content. Optionally, the second information field may be referred to as a digest data field. Optionally, the first information field may be referred to as a digest data length field, which may specifically be used to indicate the length of the digest data field.
[0151] In some embodiments, the second information field may include a 24-bit random number and a 24-bit hash value, which may be used by the first device to verify the validity of the shared key. Alternatively, the hash value may be determined based on the random number and the shared key, for example, based on an ah function, which may be expressed as ah(key, prand), where key represents the shared key and prand represents the random number.
[0152] In some embodiments, the second information field may also include a semantic character string, which may be used to indicate the target receiving device of the second data packet, or the character string may also be used to indicate the functional information of the second data packet, or the character string may also be used to indicate the information included in the second data packet, etc. The device that receives the first field, such as the first device, may determine whether to receive the subsequent second data packet based on the semantic information of the character string.
[0153] In some embodiments, the second information field may also include characteristic information of the target receiving device of the second data packet, such as a certain function of the target receiving device, the MAC address of the target receiving device, etc. The device that receives the first field can determine whether it matches the characteristic information, and then determine whether to receive the candidate second data packet.
[0154] In some embodiments, the first device receives a first data packet. Optionally, the first device receives the first data packet and obtains a first field in the first data packet. Optionally, after receiving the first data packet, the first device executes step S2104 and subsequent steps.
[0155] Step S2104: The first device decrypts the first field according to the shared key.
[0156] In some embodiments, the shared key may be pre-generated by the first device and the second device, for example, generated in step S2101. Alternatively, the shared key may be pre-stored in the first device. Alternatively, the shared key may be generated by the first device and the second device through a communication method other than a GATT connection, which is not limited in the present embodiment.
[0157] It can be understood that the first device may decrypt the encrypted first field.
[0158] In some embodiments, the first device verifies the shared key before decrypting the first field. Optionally, the first device verifies the shared key based on the random number and hash value in the second information field of the first field. Optionally, the first device determines that the shared key verification succeeds and decrypts the first field based on the shared key.
[0159] In some embodiments, the first device may decrypt the encrypted data using an AES-128 block encryption algorithm. For example, the shared key may be 128 bits, the encrypted data may be 128 bits, and the decrypted 128-bit plaintext data may be obtained based on the encryption algorithm.
[0160] In some possible implementations, the plaintext data obtained after decryption may include one or more additional bits. The first device can determine the bits corresponding to the second information field in the plaintext data, and then determine the length of the first field, and remove the additional bits in the plaintext data to obtain the decrypted first field.
[0161] In some embodiments, after decrypting the first field, the first device can obtain the plaintext data of the first field and further determine the first information field and the second information field carried by the first field. Optionally, the first device can further determine whether to receive the second data packet based on the information corresponding to the second information field.
[0162] Step S2105: The first device determines whether to receive the second data packet.
[0163] In some embodiments, the second data packet is a secondary broadcast data packet sent by the second device, and / or an extended broadcast data packet sent by the second device in addition to the first data packet. Alternatively, the second data packet may be a data packet sent by the second device after sending the first data packet. Alternatively, the first data packet and the second data packet may be segmented versions of the extended broadcast data packet.
[0164] In some embodiments, the auxiliary broadcast data packet may include at least one of the following: an AUX_ADV_IND data packet; an AUX_SYNC_IND data packet; or an AUX_CHAIN_IND data packet. Accordingly, the second data packet may include at least one of the AUX_ADV_IND data packet, the AUX_SYNC_IND data packet, or the AUX_CHAIN_IND data packet.
[0165] In some embodiments, the auxiliary broadcast data may be broadcast periodically or aperiodically.
[0166] In some embodiments, the first device determines whether to receive the second data packet based on the first data packet. Alternatively, the first device determines whether to receive the second data packet based on the first field. Alternatively, the first device determines whether to receive the second data packet based on the second information field.
[0167] For example, after receiving the first data packet, the first device decrypts the encrypted first field in the first data packet to obtain plaintext data of the first field, and then determines whether to receive the second data packet based on the second information field in the plaintext data.
[0168] Step S2106: The second device sends a second data packet to the first device.
[0169] In some embodiments, the second device may also send the second data packet to other entities. Optionally, the second device broadcasts the second data packet.
[0170] In some embodiments, the first device receives the second data packet. Optionally, the first device does not receive the second data packet sent by the second device. Optionally, whether the first device receives the second data packet can be determined according to step S2105.
[0171] In some embodiments, the second data packet may be chained. For example, the second data packet may include multiple chained AUX_CHAIN_IND data packets.
[0172] In some embodiments, when the first device determines to receive the second data packet, it may first receive an AUX_ADV_IND data packet, which may include synchronization information, then receive an AUX_SYNC_IND data packet for synchronization, and then receive one or more chained AUX_CHAIN_IND data packets. Accordingly, the second device may first broadcast an AUX_ADV_IND data packet, then broadcast an AUX_SYNC_IND data packet, and then broadcast one or more AUX_CHAIN_IND data packets.
[0173] In some embodiments, terms such as "data packet", "data frame", "data message", "message", "frame", "packet", "protocol data unit (PDU)" and the like can be used interchangeably.
[0174] In some embodiments, the names of information, etc. are not limited to the names described in the embodiments, and terms such as "message", "information", "message", "signal", "signaling", "report", "configuration", "indication", "instruction", "command", "channel", "parameter", "domain", "field", "symbol", "bit", and "data" can be used interchangeably.
[0175] In some embodiments, the terms "radio", "wireless", "radio access network (RAN)", "access network (AN)", "RAN-based" and the like may be used interchangeably.
[0176] In some embodiments, terms such as "moment", "time point", "time", and "time position" can be replaced with each other, and terms such as "duration", "period", "time window", "window", and "time" can be replaced with each other.
[0177] In some embodiments, "scan", "acquire", "obtain", "get", "receive", "transmit", "bidirectional transmission", "send and / or receive" can be interchangeable, and can be interpreted as receiving from other entities, obtaining from protocols, obtaining from high levels, obtaining by self-processing, autonomous implementation, etc.
[0178] In some embodiments, terms such as "send", "transmit", "report", "download", "transmit", "bidirectional transmission", "send and / or receive" can be used interchangeably.
[0179] In some embodiments, terms such as "certain", "preset", "preset", "setting", "indicated", "some", "any", and "first" can be interchangeable. "Specific A", "preset A", "preset A", "setting A", "indicated A", "some A", "any A", and "first A" can be interpreted as A pre-specified in a protocol, etc., or as A obtained through setting, configuration, or indication, etc., or as specific A, some A, any A, or first A, etc., but not limited to this.
[0180] In some embodiments, the determination or judgment can be performed by a value represented by 1 bit (0 or 1), or by a true or false value (Boolean value) represented by true or false, or by comparison of numerical values (for example, comparison with a predetermined value), but is not limited thereto.
[0181] In some embodiments, "not expecting to receive" can be interpreted as not receiving on time domain resources and / or frequency domain resources, or as not performing subsequent processing on the data after receiving it; "not expecting to send" can be interpreted as not sending, or as sending but not expecting the recipient to respond to the content sent.
[0182] The Bluetooth communication method involved in the embodiments of the present disclosure may include at least one of steps S2101 to S2106. For example, step S2102 may be implemented as an independent embodiment, step S2103 may be implemented as an independent embodiment, step S2105 may be implemented as an independent embodiment, step S2103 + step S2105 may be implemented as an independent embodiment, step S2102 + step S2103 may be implemented as an independent embodiment, and step S2104 + step S2105 may be implemented as an independent embodiment, but the present invention is not limited thereto.
[0183] In some embodiments, step S2105 and step S2106 may be executed in an interchangeable order or simultaneously.
[0184] In some embodiments, steps S2101 to S2102 and steps S2104 to S2106 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0185] In some embodiments, steps S2101 to S2104 and step S2106 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0186] In some embodiments, step S2101, step S2103, and step S2106 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0187] In some embodiments, reference may be made to other optional implementations described before or after the description corresponding to FIG. 2 .
[0188] FIG3A is a flow chart of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG3A , the embodiment of the present disclosure relates to a Bluetooth communication method (on the first device side), the method comprising:
[0189] Step S3101: Generate a shared key with the second device.
[0190] The optional implementation of step S3101 can refer to the optional implementation of step S2101 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0191] Step S3102, obtain the first data packet.
[0192] The optional implementation of step S3102 can refer to the optional implementation of step S2103 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0193] In some embodiments, the first device receives the first data packet sent by the second device, but is not limited thereto and may also receive the first data packet sent by other entities.
[0194] Step S3103: decrypt the first field according to the shared key.
[0195] The optional implementation of step S3103 can refer to the optional implementation of step S2104 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0196] Step S3104, determine whether the second data packet is received.
[0197] The optional implementation of step S3104 can refer to the optional implementation of step S2105 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0198] Step S3105: Obtain a second data packet.
[0199] The optional implementation of step S3105 can refer to the optional implementation of step S2106 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0200] In some embodiments, the first device receives the second data packet sent by the second device, but is not limited thereto and may also receive the first data packet sent by other entities.
[0201] It is understandable that step S3105 may be performed when the first device determines to receive the second data packet. If the first device determines not to receive the second data packet, the first device may not perform step S3105.
[0202] The Bluetooth communication method according to the embodiments of the present disclosure may include at least one of steps S3101 to S3105. For example, step S3102 may be implemented as an independent embodiment, step S3103 may be implemented as an independent embodiment, step S3104 may be implemented as an independent embodiment, steps S3101 to S3103 may be implemented as independent embodiments, and steps S3102 and S3104 may be implemented as independent embodiments, but the present invention is not limited thereto.
[0203] In some embodiments, step S3104 and step S3105 may be executed in an interchangeable order or simultaneously.
[0204] In some embodiments, step S3101 and steps S3102 to S3105 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0205] In some embodiments, steps S3101 to S3102 and steps S3104 to S3105 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0206] In some embodiments, steps S3101 to S3103 and step S3105 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0207] FIG3B is a flow chart of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG3B , the embodiment of the present disclosure relates to a Bluetooth communication method (on the first device side), the method comprising:
[0208] Step S3201, obtain the first data packet.
[0209] The optional implementation of step S3201 can refer to the optional implementation of step S2103 in Figure 2, step S3102 in Figure 3A, and other related parts in the embodiments involved in Figures 2 and 3A, which will not be repeated here.
[0210] Step S3202: Determine whether to receive the second data packet based on the first data packet.
[0211] The optional implementation of step S3202 can refer to the optional implementation of step S2105 in Figure 2, step S3104 in Figure 3A, and other related parts in the embodiments involved in Figures 2 and 3A, which will not be repeated here.
[0212] In some embodiments, the first data packet is an extended broadcast data packet sent by the second device; the second data packet is an auxiliary broadcast data packet sent by the second device, and / or an extended broadcast data packet excluding the first data packet.
[0213] In some embodiments, the auxiliary broadcast packet includes at least one of the following:
[0214] Auxiliary broadcast indication AUX_ADV_IND data packet;
[0215] Auxiliary synchronization indication AUX_SYNC_IND data packet;
[0216] Auxiliary chain indication AUX_CHAIN_IND packet.
[0217] In some embodiments, the extended broadcast data packet includes at least an extended broadcast indication ADV_EXT_IND data packet.
[0218] In some embodiments, the first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
[0219] In some embodiments, the first data packet includes an extended header, the extended header includes an additional controller broadcast data ACAD field, and the ACAD field includes the first field.
[0220] In some embodiments, the first field includes at least one of:
[0221] The first information field is used to indicate the length of the first field;
[0222] The second information field is used by the first device to determine whether to receive the second data packet.
[0223] In some embodiments, the second information field includes less than or equal to 25 bytes.
[0224] In some embodiments, the method comprises:
[0225] The first device determines a shared key, where the shared key is used by the first device to decrypt the encrypted first field, and the shared key is also used by the second device to encrypt the first field.
[0226] In some embodiments, the first device determines the shared key, including:
[0227] The first device and the second device are connected through the General Attribute Protocol (GATT) to generate a shared key.
[0228] FIG4A is a flow chart of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG4A , the embodiment of the present disclosure relates to a Bluetooth communication method (on the second device side), the method comprising:
[0229] Step S4101: Generate a shared key with the first device.
[0230] The optional implementation of step S4101 can refer to the optional implementation of step S2101 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0231] Step S4102: Encrypt the first field according to the shared key.
[0232] The optional implementation of step S4102 can refer to the optional implementation of step S2102 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0233] Step S4103: broadcast the first data packet.
[0234] The optional implementation of step S4103 can refer to the optional implementation of step S2103 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0235] In some embodiments, the second device sends the first data packet to the first device, but is not limited thereto and may also send the first data packet to other entities.
[0236] Step S4104: broadcast the second data packet.
[0237] The optional implementation of step S4104 can refer to the optional implementation of step S2106 in Figure 2 and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0238] In some embodiments, the second device sends the second data packet to the first device, but is not limited thereto and may also send the second data packet to other entities.
[0239] It is understood that the second device may send the second data packet regardless of whether the first device receives the second data packet. For example, the second device may first broadcast the first data packet and then broadcast the second data packet. In this case, the first device may receive the second data packet or not.
[0240] The Bluetooth communication method involved in the embodiments of the present disclosure may include at least one of steps S4101 to S4104. For example, step S4102 may be implemented as an independent embodiment, step S4103 may be implemented as an independent embodiment, steps S4101 to S4103 may be implemented as independent embodiments, and steps S4102 and S4103 may be implemented as independent embodiments, but are not limited thereto.
[0241] In some embodiments, step S4101 and steps S4103 to S4104 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0242] In some embodiments, steps S4101 to S4102 and step S4105 are optional, and one or more of these steps may be omitted or replaced in different embodiments.
[0243] FIG4B is a flow chart of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG4B , the embodiment of the present disclosure relates to a Bluetooth communication method (on the second device side), the method comprising:
[0244] Step S4201, sending a first data packet.
[0245] The optional implementation of step S4201 can refer to step S2103 in Figure 2, the optional implementation of step S4103 in Figure 4A, and other related parts in the embodiment involved in Figure 2, which will not be repeated here.
[0246] In some embodiments, the first data packet is an extended broadcast data packet, the first data packet is used by the first device to determine whether to receive the second data packet, the second data packet is an auxiliary broadcast data packet sent by the second device, and / or, an extended broadcast data packet excluding the first data packet.
[0247] In some embodiments, the auxiliary broadcast packet includes at least one of the following:
[0248] Auxiliary broadcast indication AUX_ADV_IND data packet;
[0249] Auxiliary synchronization indication AUX_SYNC_IND data packet;
[0250] Auxiliary chain indication AUX_CHAIN_IND packet.
[0251] In some embodiments, the extended broadcast data packet includes at least an extended broadcast indication ADV_EXT_IND data packet.
[0252] In some embodiments, the first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
[0253] In some embodiments, the first data packet includes an extended header, the extended header includes an additional controller broadcast data ACAD field, and the ACAD field includes the first field.
[0254] In some embodiments, the first field includes at least one of:
[0255] The first information field is used to indicate the length of the first field;
[0256] The second information field is used by the first device to determine whether to receive the second data packet.
[0257] In some embodiments, the second information field includes less than or equal to 25 bytes.
[0258] In some embodiments, the method comprises:
[0259] The second device determines a shared key, where the shared key is used by the second device to encrypt the first field, and the shared key is also used by the first device to decrypt the encrypted first field.
[0260] In some embodiments, the first device determines the shared key, including:
[0261] The second device is connected to the first device through the General Attribute Protocol (GATT) to generate a shared key.
[0262] FIG5 is an interactive diagram of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG5 , the embodiment of the present disclosure relates to a Bluetooth communication method, which includes:
[0263] Step S5101: The second device sends a first data packet to the first device.
[0264] For the optional implementation of step S5101, please refer to step S2103 of Figure 2, step S3102 of Figure 3A, step S3201 of Figure 3B, step S4103 of Figure 4A, the optional implementation of step S4201 of Figure 4B, and other related parts in the embodiments involved in Figures 2, 3A, 3B, 4A, and 4B, which will not be repeated here.
[0265] Step S5102: The first device determines whether to receive the second data packet based on the first data packet.
[0266] The optional implementation of step S5101 can be found in the optional implementation of step S2105 in Figure 2, step S3104 in Figure 3A, step S3202 in Figure 3B, and other related parts in the embodiments involved in Figures 2, 3A, 3B, 4A, and 4B, which will not be repeated here.
[0267] FIG6A is a schematic diagram of a Bluetooth communication method according to an embodiment of the present disclosure. As shown in FIG6A , the embodiment of the present disclosure relates to a Bluetooth communication method, the method comprising:
[0268] Step S6101: The broadcasting device sends an extended broadcast data packet to the scanning device via Bluetooth extended broadcast.
[0269] The broadcasting device may be the second device in the above embodiment, and the scanning device may be the first device in the above embodiment.
[0270] In some embodiments, the extended advertising data packet comprises an ADV_EXT_IND data packet.
[0271] In some embodiments, a "Summary" field is added to the extended header field of the extended broadcast ADV_EXT_IND data packet, wherein the Summary field may be the first field in the above embodiment.
[0272] In some embodiments, after receiving an extended broadcast ADV_EXT_IND packet, the scanning device determines whether to continue receiving the remaining auxiliary broadcast packets by parsing the "Summary" field in the extension header. Alternatively, the auxiliary broadcast can be periodic or aperiodic. Optionally, the auxiliary broadcast packets include AUX_ADV_IND, AUX_SYNC_IND, AUX_CHAIN_IND, and so on.
[0273] In some embodiments, encryption of the summary field may be supported. For example, the communicating parties may generate a shared key in advance through a GATT connection and encrypt the summary using the key.
[0274] In one example, the process of a broadcasting device sending extended broadcast packets and auxiliary broadcast packets can be shown in FIG6B . Referring to FIG6B , the broadcasting device can send ADV_EXT_IND packets 1 to ADV_EXT_IND packets 3 on channels 39, 38, and 37, respectively. ADV_EXT_IND packet 1 can include a summary field. After a scanning device receives ADV_EXT_IND packet 1 via channel 39, it can determine whether to receive subsequent packets. Referring to FIG6B , the subsequent packets can include ADV_EXT_IND packets 2 to ADV_EXT_IND packets 3, AUX_ADV_IND packet 1, and AUX_CHAIN_IND packets 1 to AUX_CHAIN_IND packets 2, which are sequentially sent by the broadcasting device. Alternatively, ADV_EXT_IND packets 1 to ADV_EXT_IND packets 3 can each include a summary field, and the content of each summary field can be different. After a scanning device receives ADV_EXT_IND packets 1 to ADV_EXT_IND packets 3 via channels 39, 38, and 37, it can determine whether to receive subsequent auxiliary broadcast packets based on the summary fields therein.
[0275] In another example, the process of a broadcasting device sending extended broadcast packets and auxiliary broadcast packets can be shown in Figure 6C. Referring to Figure 6C, the broadcasting device can send ADV_EXT_IND packets 4 to ADV_EXT_IND packets 6 on channels 39, 38, and 37, respectively. ADV_EXT_IND packet 4 can include a summary field. After receiving ADV_EXT_IND packet 4 via channel 39, the scanning device can determine whether to receive subsequent packets. Referring to Figure 6C, the subsequent packets include ADV_EXT_IND packet 5, ADV_EXT_IND packet 6, AUX_ADV_IND packet 2, AUX_SYNC_IND packet 1, and AUX_CHAIN_IND packets 3 to 4, which are sequentially sent by the broadcasting device. Alternatively, ADV_EXT_IND data packets 4 to ADV_EXT_IND data packet 6 all include summary fields, and the contents of the summary fields contained in each may be different. After the scanning device receives ADV_EXT_IND data packets 4 to ADV_EXT_IND data packets 6 through channels 39, 38 and 37 respectively, it can determine whether to receive subsequent auxiliary broadcast data packets based on the summary fields therein.
[0276] It is worth noting that all the above-mentioned data packets except the ADV_EXT_IND data packet can be transmitted on channels 0 to 39. For example, the AUX_CHAIN_IND data packet can be transmitted on any channel from 0 to 39, such as channel 38 or channel 25, and this is not limited in the present embodiment. In addition, the ADV_EXT_IND data packet can be transmitted on any channel including channel 37, channel 37, or channel 39, but the order of transmission of multiple ADV_EXT_IND data packets is not limited to the order of channel 39, channel 38, and channel 37 in the above example. For example, the first ADV_EXT_IND data packet can be transmitted on channel 38 first, followed by another ADV_EXT_IND data packet on channel 37, and finally by the ADV_EXT_IND data packet on channel 39.
[0277] In one example, the format of a data packet including a digest field (such as an ADV_EXT_IND data packet) can be as shown in Figure 6D. Referring to Figure 6D, the Payload part of the data packet can include an Extended Header field, and the Extended Header field can include an ACAD field. The ACAD field can be up to 26 bytes. The ACAD field can include a Digest Data Length field and a Digest Data field, wherein the Digest Data Length field can be 1 byte, identifying the length of the Digest Data field; the number of bytes of the Digest Data field is variable, up to 25 bytes, which can carry specific digest content, and its specific format can refer to the "Data Type+Data" format in the relevant technology.
[0278] In addition, referring to Figure 6D, the data packet may also include a Header portion, which may include a PDU Type field (4 bits), an RFU field (1 bit), a Ch5el field (1 bit), a TxAddr field (1 bit), an RxAddr field (1 bit), and a Length field (8 bits). The Payload may also include an AdvMode field (2 bits), an Extended Header Length field (6 bits), and an Extended ADV Data field (0-63 bytes). In addition to the ACAD field, the Extended Header Length field may also include an Extended Header Flag field (1 byte), an AdvA field (6 bytes), a TargetA field (6 bytes), a CTEInfo field (1 byte), an ADI field (2 bytes), an AuxPtr field (2 bytes), a SyncInfo field (18 bytes), and a TxPower field (1 byte).
[0279] In some embodiments, at least one of the Extended Header field, ACAD field, and Digest Data Length field may be the first field described in the other embodiments.
[0280] In the embodiments of the present disclosure, some or all of the steps and their optional implementations may be arbitrarily combined with some or all of the steps in other embodiments, or may be arbitrarily combined with the optional implementations of other embodiments.
[0281] The embodiments of the present disclosure further provide an apparatus for implementing any of the above methods. For example, an apparatus is provided, comprising units or modules for implementing each step performed by a terminal in any of the above methods. For another example, another apparatus is provided, comprising units or modules for implementing each step performed by a network device (e.g., an access network device, a core network function node, a core network device, a first device, a second device, a network device, etc.) in any of the above methods.
[0282] It should be understood that the division of the various units or modules in the above device is merely a division of logical functions. In actual implementation, they may be fully or partially integrated into a physical entity, or they may be physically separated. In addition, the units or modules in the device may be implemented in the form of a processor calling software: for example, the device includes a processor, the processor is connected to a memory, and the memory stores instructions. The processor calls the instructions stored in the memory to implement any of the above methods or implement the functions of the various units or modules of the above device, wherein the processor is, for example, a general-purpose processor, such as a central processing unit (CPU) or a microprocessor, and the memory is a memory within the device or a memory outside the device. Alternatively, the units or modules in the device can be implemented in the form of hardware circuits, and the functions of some or all of the units or modules can be realized by designing the hardware circuits. The above-mentioned hardware circuits can be understood as one or more processors; for example, in one implementation, the above-mentioned hardware circuit is an application-specific integrated circuit (ASIC), which realizes the functions of some or all of the above units or modules by designing the logical relationship of the components in the circuit; for example, in another implementation, the above-mentioned hardware circuit can be realized by a programmable logic device (PLD). Taking a field programmable gate array (FPGA) as an example, it can include a large number of logic gate circuits, and the connection relationship between the logic gate circuits is configured by configuring the configuration file, thereby realizing the functions of some or all of the above units or modules. All units or modules of the above devices can be realized in the form of software called by the processor, or in the form of hardware circuits, or in part by the form of software called by the processor, and the rest by hardware circuits.
[0283] In the embodiments of the present disclosure, the processor is a circuit with signal processing capabilities. In one implementation, the processor can be a circuit with instruction reading and execution capabilities, such as a central processing unit (CPU), a microprocessor, a graphics processing unit (GPU) (which can be understood as a microprocessor), or a digital signal processor (DSP). In another implementation, the processor can implement certain functions through the logical relationship of the hardware circuit. The logical relationship of the above-mentioned hardware circuit is fixed or reconfigurable. For example, the processor is a hardware circuit implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD), such as an FPGA. In a reconfigurable hardware circuit, the process of the processor loading a configuration document and implementing the hardware circuit configuration can be understood as the process of the processor loading instructions to implement the functions of some or all of the above units or modules. In addition, it can also be a hardware circuit designed for artificial intelligence, which can be understood as an ASIC, such as a neural network processing unit (NPU), a tensor processing unit (TPU), a deep learning processing unit (DPU), etc.
[0284] Figure 7A is a structural diagram of the first device proposed in an embodiment of the present disclosure. As shown in Figure 7A, the first device 7100 may include: at least one of a transceiver module 7101, a processing module 7102, etc. In some embodiments, the above-mentioned transceiver module 7101 is used to receive a first data packet, and the first data packet is an extended broadcast data packet sent by the second device; the above-mentioned processing module 7102 is used to determine whether to receive a second data packet based on the first data packet, and the second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet. Optionally, the above-mentioned transceiver module 7101 is used to perform at least one of the communication steps such as sending and / or receiving performed by the first device in any of the above methods, which will not be repeated here. Optionally, the above-mentioned processing module 7102 is used to perform at least one of the other steps performed by the first device in any of the above methods, which will not be repeated here.
[0285] Figure 7B is a structural diagram of the second device proposed in an embodiment of the present disclosure. As shown in Figure 7B, the second device 7200 may include: at least one of a transceiver module 7201, a processing module 7202, etc. In some embodiments, the above-mentioned transceiver module 7201 is used to send a first data packet, the first data packet is an extended broadcast data packet, the first data packet is used by the first device to determine whether to receive a second data packet, the second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet. Optionally, the above-mentioned transceiver module 7201 is used to execute at least one of the communication steps such as sending and / or receiving executed by the second device in any of the above methods, which will not be repeated here. Optionally, the above-mentioned processing module 7202 is used to execute at least one of the other steps executed by the second device in any of the above methods, which will not be repeated here.
[0286] In some embodiments, the transceiver module may include a transmitting module and / or a receiving module, and the transmitting module and the receiving module may be separate or integrated. Optionally, the transceiver module may be interchangeable with the transceiver.
[0287] In some embodiments, the processing module can be a single module or can include multiple submodules. Optionally, the multiple submodules respectively execute all or part of the steps required to be executed by the processing module. Optionally, the processing module can be interchangeable with the processor.
[0288] Figure 8A is a schematic diagram of the structure of a communication device 8100 proposed in an embodiment of the present disclosure. Communication device 8100 can be a network device (e.g., a first device, a second device, an access network device, a core network device, etc.), or a terminal (e.g., a first device, a second device, a user device, etc.), or a chip, a chip system, or a processor that supports a network device in implementing any of the above methods, or a chip, a chip system, or a processor that supports a terminal in implementing any of the above methods. Communication device 8100 can be used to implement the methods described in the above method embodiments. For details, please refer to the description of the above method embodiments.
[0289] As shown in Figure 8A, the communication device 8100 includes one or more processors 8101. The processor 8101 can be a general-purpose processor or a dedicated processor, for example, a baseband processor or a central processing unit. The baseband processor can be used to process the communication protocol and communication data, and the central processing unit can be used to control the communication device (such as a base station, a baseband chip, a terminal device, a terminal device chip, a Bluetooth device, a Bluetooth chip, a DU or a CU, etc.), execute programs, and process program data. Optionally, the communication device 8100 is used to perform any of the above methods. Optionally, one or more processors 8101 are used to call instructions to enable the communication device 8100 to perform any of the above methods.
[0290] In some embodiments, the communication device 8100 further includes one or more transceivers 8102. When the communication device 8100 includes one or more transceivers 8102, the transceiver 8102 performs at least one of the communication steps, such as sending and / or receiving, in the above-described method, and the processor 8101 performs at least one of the other steps. In an optional embodiment, the transceiver may include a receiver and / or a transmitter, and the receiver and transmitter may be separate or integrated. Optionally, the terms transceiver, transceiver unit, transceiver, transceiver circuit, interface circuit, and interface may be used interchangeably; the terms transmitter, transmitting unit, transmitter, and transmitting circuit may be used interchangeably; and the terms receiver, receiving unit, receiver, and receiving circuit may be used interchangeably.
[0291] In some embodiments, the communication device 8100 further includes one or more memories 8103 for storing data. Alternatively, all or part of the memories 8103 may be located outside the communication device 8100. In alternative embodiments, the communication device 8100 may include one or more interface circuits 8104. Optionally, the interface circuits 8104 are connected to the memories 8103 and may be configured to receive data from the memories 8103 or other devices, or to send data to the memories 8103 or other devices. For example, the interface circuits 8104 may read data stored in the memories 8103 and send the data to the processor 8101.
[0292] The communication device 8100 described in the above embodiments may be a network device or a terminal, but the scope of the communication device 8100 described in the present disclosure is not limited thereto, and the structure of the communication device 8100 may not be limited by FIG. 8A. The communication device may be an independent device or may be part of a larger device. For example, the communication device may be: 1) an independent integrated circuit IC, or a chip, or a chip system or subsystem; (2) a collection of one or more ICs, optionally, the above IC collection may also include a storage component for storing data or programs; (3) an ASIC, such as a modem; (4) a module that can be embedded in other devices; (5) a receiver, a terminal device, an intelligent terminal device, a cellular phone, a wireless device, a handheld device, a mobile unit, an in-vehicle device, a network device, a cloud device, an artificial intelligence device, etc.; (6) others, etc.
[0293] FIG8B is a schematic diagram of the structure of a chip 8200 according to an embodiment of the present disclosure. If the communication device 8100 can be a chip or a chip system, please refer to the schematic diagram of the structure of the chip 8200 shown in FIG8B , but the present disclosure is not limited thereto.
[0294] The chip 8200 includes one or more processors 8201. The chip 8200 is configured to execute any of the above methods.
[0295] In some embodiments, chip 8200 further includes one or more interface circuits 8202. Terms such as interface circuit, interface, and transceiver pins may be used interchangeably. In some embodiments, chip 8200 further includes one or more memories 8203 for storing data. Alternatively, all or part of memory 8203 may be located external to chip 8200. Optionally, interface circuit 8202 is connected to memory 8203 and may be used to receive data from memory 8203 or other devices, or may be used to send data to memory 8203 or other devices. For example, interface circuit 8202 may read data stored in memory 8203 and send the data to processor 8201.
[0296] In some embodiments, the interface circuit 8202 performs at least one of the communication steps, such as sending and / or receiving, in the above-described method. For example, the interface circuit 8202 performing the communication steps, such as sending and / or receiving, in the above-described method means that the interface circuit 8202 performs data exchange between the processor 8201, the chip 8200, the memory 8203, or the transceiver device. In some embodiments, the processor 8201 performs at least one of the other steps.
[0297] The modules and / or devices described in various embodiments, such as virtual devices, physical devices, and chips, can be arbitrarily combined or separated according to circumstances. Optionally, some or all steps can also be performed collaboratively by multiple modules and / or devices, which is not limited here.
[0298] The present disclosure also proposes a storage medium having instructions stored thereon, which, when executed on the communication device 8100, causes the communication device 8100 to execute any of the above methods. Optionally, the storage medium is an electronic storage medium. Optionally, the storage medium is a computer-readable storage medium, but is not limited thereto, and may also be a storage medium readable by other devices. Optionally, the storage medium may be a non-transitory storage medium, but is not limited thereto, and may also be a temporary storage medium.
[0299] The present disclosure also provides a program product, which, when executed by the communication device 8100, enables the communication device 8100 to perform any of the above methods. Optionally, the program product is a computer program product.
[0300] The present disclosure also proposes a computer program, which, when executed on a computer, causes the computer to perform any one of the above methods.
Claims
1. A Bluetooth communication method, characterized in that: The method comprises: The first device receives a first data packet, where the first data packet is an extended broadcast data packet sent by the second device; The first device determines whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device and / or the extended broadcast data packet excluding the first data packet.
2. The method according to claim 1, characterized in that The auxiliary broadcast data packet includes at least one of the following: Auxiliary broadcast indication AUX_ADV_IND data packet; Auxiliary synchronization indication AUX_SYNC_IND data packet; Auxiliary chain indication AUX_CHAIN_IND packet.
3. The method according to claim 1 or 2, characterized in that The extended broadcast data packet at least includes an extended broadcast indication ADV_EXT_IND data packet.
4. The method according to any one of claims 1 to 3, characterized in that The first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
5. The method according to claim 4, characterized in that The first data packet includes an extended header, the extended header includes an additional controller broadcast data ACAD field, and the ACAD field includes the first field.
6. The method according to claim 4 or 5, characterized in that The first field includes at least one of the following: A first information field, used to indicate the length of the first field; The second information field is used by the first device to determine whether to receive the second data packet.
7. The method according to claim 6, characterized in that The number of bytes included in the second information field is less than or equal to 25.
8. The method according to any one of claims 4 to 7, characterized in that: The method comprises: The first device determines a shared key, where the shared key is used by the first device to decrypt the encrypted first field, and the shared key is also used by the second device to encrypt the first field.
9. The method according to claim 8, characterized in that The first device determines a shared key, including: The first device and the second device are connected via the General Attribute Protocol (GATT) to generate the shared key.
10. A Bluetooth communication method, characterized in that: The method comprises: The second device sends a first data packet, which is an extended broadcast data packet. The first data packet is used by the first device to determine whether to receive the second data packet. The second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
11. The method according to claim 10, characterized in that The auxiliary broadcast data packet includes at least one of the following: Auxiliary broadcast indication AUX_ADV_IND data packet; Auxiliary synchronization indication AUX_SYNC_IND data packet; Auxiliary chain indication AUX_CHAIN_IND packet.
12. The method according to claim 10 or 11, characterized in that The extended broadcast data packet at least includes an extended broadcast indication ADV_EXT_IND data packet.
13. The method according to any one of claims 10 to 12, characterized in that: The first data packet includes a first field, and the first field is used by the first device to determine whether to receive the second data packet.
14. The method according to claim 13, characterized in that The first data packet includes an extended header, the extended header includes an additional controller broadcast data ACAD field, and the ACAD field includes the first field.
15. The method according to claim 13 or 14, characterized in that The first field includes at least one of the following: A first information field, used to indicate the length of the first field; The second information field is used by the first device to determine whether to receive the second data packet.
16. The method according to claim 15, characterized in that The number of bytes included in the second information field is less than or equal to 25.
17. The method according to any one of claims 13 to 16, characterized in that: The method comprises: The second device determines a shared key, where the shared key is used by the second device to encrypt the first field, and the shared key is also used by the first device to decrypt the encrypted first field.
18. The method according to claim 17, characterized in that The first device determines a shared key, including: The second device is connected to the first device via the General Attribute Protocol (GATT) to generate the shared key.
19. A first device, characterized in that: The first device includes: a transceiver module, configured to receive a first data packet, where the first data packet is an extended broadcast data packet sent by the second device; A processing module is used to determine whether to receive a second data packet based on the first data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device and / or the extended broadcast data packet excluding the first data packet.
20. A second device, characterized in that: The second device includes: A transceiver module is used to send a first data packet, where the first data packet is an extended broadcast data packet, and the first data packet is used by the first device to determine whether to receive a second data packet, where the second data packet is an auxiliary broadcast data packet sent by the second device, and / or the extended broadcast data packet excluding the first data packet.
21. A first device, characterized in that: include: one or more processors; A memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, enable the first device to execute the Bluetooth communication method according to any one of claims 1 to 9.
22. A second device, characterized in that: include: one or more processors; A memory coupled to the one or more processors, the memory comprising executable instructions, which, when executed by the one or more processors, enable the second device to execute the Bluetooth communication method according to any one of claims 10 to 18.
23. A communication system, characterized in that: The present invention comprises a first device and a second device, wherein the first device is configured to implement the Bluetooth communication method according to any one of claims 1 to 9, and the second device is configured to implement the Bluetooth communication method according to any one of claims 10 to 18.
24. A storage medium storing instructions, characterized in that: When the instruction is executed on a communication device, the communication device is enabled to execute the Bluetooth communication method according to any one of claims 1 to 9 or claims 10 to 18.
Citation Information
Patent Citations
Low-power Bluetooth IPv6 address automatic configuration method based on 6LoBLE
CN108494610A
Data transmission method, over-the-air upgrade method, network device and network system
CN115296996A
Bluetooth audio receiving method and device, terminal and storage medium
CN115708373A
Electric energy meter verification method and system
CN116017385A
Indoor positioning method and device, equipment and storage medium
CN116762368A