Electronic device and control method thereof
The electronic device filters BLE packets based on specific fields and values to accurately determine congestion by identifying and counting mobile device signals, addressing inaccuracies in existing congestion analysis methods.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-07-16
- Publication Date
- 2026-03-12
AI Technical Summary
Existing technologies fail to accurately analyze congestion in a space based on wireless signals from multiple electronic devices due to inconsistencies in device types and identities, leading to inaccurate congestion assessments.
An electronic device filters Bluetooth Low Energy (BLE) packets based on specific fields and values within the packets to identify and count relevant signals from mobile devices, using processors to analyze the number of filtered packets and determine congestion levels.
Accurately assesses congestion by filtering and counting relevant BLE packets, providing precise congestion analysis in a space by distinguishing between different types of devices and their signals.
Smart Images

Figure KR2025010501_12032026_PF_FP_ABST
Abstract
Description
Electronic device and method of controlling the same
[0001] The present disclosure relates to an electronic device and a method for controlling the same, and more particularly, to an electronic device for analyzing the congestion of a space using a BLE (Bluetooth Low Energy) packet and a method for controlling the same.
[0002] Recently, thanks to the advancement of electronic technology, a technology has been developed to analyze the level of congestion in a space based on wireless signals broadcast by multiple electronic devices.
[0003] However, there is a problem in that accurate results cannot be obtained when analyzing congestion based on wireless signals received from all electronic devices located within a space.
[0004] An electronic device located in a predetermined space according to one or more embodiments of the present disclosure includes at least one processor including communication circuitry, memory for storing instructions, and processing circuitry.
[0005] According to one or more embodiments, the one or more processors, when the instructions are individually or collectively executed, cause the electronic device to receive a plurality of BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices through the communication circuit, filter at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets to identify at least one BLE packet received from a mobile device among the plurality of BLE packets, and identify a congestion level of the preset space based on the number of the identified at least one BLE packet.
[0006] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to identify a type of a field of each of the plurality of BLE packets and filter BLE packets including a first type field among the plurality of BLE packets.
[0007] According to one or more embodiments, a plurality of BLE packets received from the same mobile device include at least one BLE packet that does not include the first type field, wherein the first type field is a name field.
[0008] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to identify a type and a field value of each field of the plurality of BLE packets and filter BLE packets in which a field value of a second type field among the plurality of BLE packets is a preset value.
[0009] According to one or more embodiments, the second type field is a field indicating whether the device that transmitted the BLE packet is a wearable device, and the preset value is a value indicating that the device that transmitted the BLE packet is a wearable device.
[0010] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to identify a manufacturer and a type of field corresponding to each of the plurality of BLE packets and filter BLE packets including a third type field preset for each manufacturer.
[0011] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to filter a second BLE packet when a first BLE packet including a first identification address is initially received and a second BLE packet including an identification address identical to the first identification address is received after a preset period of time.
[0012] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to filter a BLE packet including a first type field among the plurality of BLE packets, a BLE packet having a field value of a second type field among the plurality of BLE packets that is a preset value, and a BLE packet including a third type field that is preset by a manufacturer among the plurality of BLE packets.
[0013] According to one or more embodiments, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to identify a Received Signal Strength Indicator (RSSI) value corresponding to each of the identified at least one BLE packets, and to identify a BLE packet having the RSSI value within a preset threshold range to identify a congestion level in the preset space.
[0014] A method for controlling an electronic device located in a preset space according to one or more embodiments of the present disclosure, the method comprising: receiving a plurality of BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices; filtering at least some of the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets to identify at least one BLE packet received from a mobile device among the plurality of BLE packets; and identifying a degree of congestion in the preset space based on the number of the identified at least one BLE packet.
[0015] A non-transitory computer-readable storage medium storing computer instructions that, when executed by a processor of an electronic device according to one or more embodiments of the present disclosure, cause the electronic device to perform an operation, the operation comprising: receiving a plurality of BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices; filtering at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets to identify at least one BLE packet received from a mobile device among the plurality of BLE packets; and filtering the predetermined number of the identified at least one BLE packet based on the number of the identified at least one BLE packet.
[0016] FIG. 1 is a diagram illustrating the operation of an electronic device according to one or more embodiments.
[0017] FIG. 2 is a block diagram illustrating a configuration of an electronic device according to one or more embodiments.
[0018] FIG. 3 is a diagram illustrating a process of filtering a BLE packet including a first type field of an electronic device according to one or more embodiments.
[0019] FIG. 4 is a diagram illustrating a BLE packet identification process that does not include a first type field of an electronic device according to one or more embodiments.
[0020] FIG. 5 is a diagram illustrating a BLE packet filtering process received from a wearable device according to one or more embodiments.
[0021] FIG. 6 is a diagram illustrating a process of filtering BLE packets received from the same mobile device of an electronic device according to one or more embodiments.
[0022] FIG. 7 is a diagram illustrating a BLE packet filtering process according to a preset time of an electronic device according to one or more embodiments.
[0023] FIG. 8 is a diagram illustrating an overall filtering process of an electronic device according to one or more embodiments.
[0024] FIG. 9 is a diagram for explaining a BLE packet identification process according to an RSSI value of an electronic device according to one or more embodiments.
[0025] FIG. 10 is a diagram for explaining the results of a congestion analysis of an electronic device according to one or more embodiments.
[0026] FIG. 11 is a flowchart illustrating the overall operation of an electronic device according to one or more embodiments.
[0027] The terms used in the various embodiments of this disclosure have been selected from widely used, current terms, taking into account the functions of this disclosure. However, these terms may vary depending on the intentions of those skilled in the art, precedents, the emergence of new technologies, etc. Furthermore, in certain cases, terms may be arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the description of the relevant disclosure. Therefore, the terms used in this disclosure should be defined based on the meaning of the terms and the overall content of this disclosure, rather than simply their names.
[0028] In this disclosure, expressions such as “has,” “can have,” “includes,” or “may include” indicate the presence of a corresponding feature (e.g., a component such as a number, function, operation, or part), and do not exclude the presence of additional features.
[0029] The expression "at least one of A and / or B" should be understood to mean either "A" or "B" or "A and B".
[0030] The expressions “first,” “second,” “first,” or “second,” etc., used in this disclosure can describe various components, regardless of order and / or importance, and are only used to distinguish one component from another, but do not limit the components.
[0031] When it is said that a component (e.g., a first component) is “(operatively or communicatively) coupled with / to” or “connected to” another component (e.g., a second component), it should be understood that the component may be directly coupled to the other component, or may be connected through another component (e.g., a third component).
[0032] Singular expressions include plural expressions unless the context clearly dictates otherwise. In this disclosure, terms such as "comprise" or "consist of" are intended to indicate the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, but should be understood not to preclude the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0033] In the present disclosure, a "module" or "part" performs at least one function or operation and may be implemented as hardware or software, or as a combination of hardware and software. Furthermore, multiple "modules" or multiple "parts" may be integrated into at least one module and implemented as at least one processor (not shown), excluding any "modules" or "parts" that need to be implemented as specific hardware.
[0034] In this disclosure, the term user may refer to a person using an electronic device or a device used by the person.
[0035] An embodiment of the present disclosure will be described in more detail with reference to the attached drawings below.
[0036] FIG. 1 is a diagram illustrating the operation of an electronic device according to one or more embodiments.
[0037] According to one embodiment, the electronic device (100) can communicate with a plurality of external devices according to a Bluetooth communication method. For example, the electronic device (100) can be implemented as various types of electronic devices such as a TV, a monitor, a kiosk, a tablet PC, an electronic picture frame, a mobile device, a large format display (LFD), a digital signage, a digital information display (DID), a video wall, a projector display, etc.
[0038] According to one embodiment, an electronic device (100) may receive BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices. A BLE packet may be a basic data block used to transmit data in BLE communication. BLE packets may be classified into advertising packets and data packets. An advertising packet may be a packet for performing a connection with another electronic device or notifying the location of the device. A data packet may be a packet for transmitting / receiving data between connected devices. In the present disclosure, for the convenience of explanation, advertising packets and data packets according to the BLE standard are collectively referred to as BLE packets.
[0039] According to one embodiment, a BLE packet may be composed of multiple fields. A field may be a data unit that stores a specific type of information in a data structure included in the BLE packet. For example, a BLE packet may include fields corresponding to the name of the device, the identification address of the device, the type of device, the type of service, etc. For example, a BLE packet may include various types of fields such as a flag field, a preamble field, an access address field, a header field, and a data field.
[0040] The flag field may contain specific bits (or values) corresponding to specific service functions, states, or types of the device. The specific bits contained within the flag field may include bits corresponding to the type of device (e.g., mobile device, wearable, wireless earphone), Universally Unique Identifier (UUID) service (e.g., heart rate, manufacturer information, battery status), etc.
[0041] For example, the electronic device (100) may include a BLE module for receiving BLE packets. The BLE module may be a device for performing low-power wireless communication. The electronic device (100) may activate a scan mode through the BLE module to receive BLE packets in the surroundings.
[0042] For example, the electronic device (100) may not include a BLE module. The electronic device (100) may be connected to another electronic device including a BLE module through a different communication method (e.g., Wi-Fi), and may also receive information corresponding to a BLE packet received by the other electronic device from the other electronic device.
[0043] According to one embodiment, the electronic device (100) may be located in a preset space together with various types of electronic devices such as a mobile device, a TV, a wearable device, and wireless earbuds. According to one example, when the electronic device (100) analyzes the congestion level of the space based on BLE packets broadcast from all external devices located in the preset space, it may not obtain accurate results. For example, this is because the space may contain static devices such as a TV (e.g., a TV) and multiple devices owned by the same user (e.g., a mobile device and wireless earbuds). Accordingly, the electronic device (100) may identify the congestion level of the preset space by filtering at least some of the received BLE packets.
[0044] Referring to FIG. 1, an electronic device (100) can receive a plurality of BLE packets (15) broadcast from a plurality of external devices (10 to 14). The electronic device (100) can filter at least some of the BLE packets among the plurality of BLE packets (15). The electronic device (100) can identify the congestion level of a preset space based on the number of at least one BLE packet on which filtering has been performed among the plurality of BLE packets.
[0045] According to one embodiment, the operation of the electronic device (100) described above may be processed in the server device (200). The electronic device (100) may transmit at least one filtered BLE packet or information about the BLE packet (e.g., field information of the BLE packet, number information of the BLE packet, etc.) to the server device (200). The server device (200) may identify the congestion level of the space where the electronic device (100) is located based on at least one BLE packet or information about the BLE packet identified through filtering.
[0046] Hereinafter, various embodiments in which an electronic device (100) analyzes the congestion of a space by filtering at least some of a plurality of BLE packets will be described with reference to the drawings.
[0047] FIG. 2 is a block diagram illustrating a configuration of an electronic device according to one or more embodiments.
[0048] According to FIG. 2, the electronic device (100) includes a communication circuit (110), a memory (120), and one or more processors (130). However, the present invention is not limited thereto, and the electronic device (100) may be implemented in a form in which some components are excluded, or may be implemented in a form in which other components are further included.
[0049] The communication circuit (110) may include wired or wireless input / output interfaces (or input / output terminals) according to various standards. The communication circuit (110) may include a BLE (Bluetooth Low Energy) communication module. The communication circuit (110) may be configured to communicate with various types of external devices according to various types of communication methods. The communication circuit (110) may include a wireless communication module or a wired communication module. Here, each communication module may be implemented in the form of at least one hardware chip.
[0050] The communication circuit (110) may include various interfaces such as HDMI (High Definition Multimedia Interface), MHL (Mobile High-Definition Link), USB (Universal Serial Bus), DP (Display Port), Thunderbolt, VGA (Video Graphics Array) port, RGB port, D-SUB (D-subminiature), DVI (Digital Visual Interface), Bluetooth, Zigbee, wired / wireless LAN (Local Area Network), WAN (Wide Area Network), Ethernet, IEEE 1394, AES / EBU (Audio Engineering Society / European Broadcasting Union), optical, coaxial, etc.
[0051] A wireless communication module may be a module that communicates wirelessly with an external device. For example, the wireless communication module may include at least one of a Wi-Fi module, a Bluetooth module, an infrared communication module, or other communication modules.
[0052] Wi-Fi and Bluetooth modules can communicate via Wi-Fi and Bluetooth, respectively. When using a Wi-Fi or Bluetooth module, connection information, such as the service set identifier (SSID) and session key, is first transmitted and received. This information is then used to establish a communication connection before various other information can be transmitted and received.
[0053] The memory (120) can store at least one command, data, program, etc. required for the operation of the electronic device (100). For example, the memory (120) can receive and store BLE packets broadcast from multiple external devices.
[0054] The memory (120) may be implemented in the form of memory embedded in the electronic device (100) or in the form of memory that can be attached or detached from the electronic device (100), depending on the purpose of data storage. For example, data for driving the electronic device (100) may be stored in a memory embedded in the electronic device (100), and data for expanding the functions of the electronic device (100) may be stored in a memory that can be attached or detached from the electronic device (100).
[0055] In the case of memory embedded in the electronic device (100), it may be implemented as at least one of volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM)), non-volatile memory (e.g., one time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), hard drive, or solid state drive (SSD)).
[0056] The memory (120) may be implemented as a single memory that stores data generated in various operations according to the present disclosure, but is not limited thereto, and the memory (120) may be implemented to include multiple memories that each store different types of data or each store data generated in different stages.
[0057] One or more processors (130) control the overall operation of the electronic device (100). Specifically, one or more processors (130) may be connected to each component of the electronic device (100) to control the overall operation of the electronic device (100). For example, one or more processors (130) may be electrically connected to a communication interface (110) and a memory (120) to control the overall operation of the electronic device (100). One or more processors (130) may include a processing circuit and may be configured with one or more processors.
[0058] One or more processors (130) can perform operations of the electronic device (100) according to various embodiments by executing one or more commands stored in the memory (120).
[0059] The one or more processors (130) may include one or more of a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), an Accelerated Processing Unit (APU), a Many Integrated Core (MIC), a Digital Signal Processor (DSP), a Neural Processing Unit (NPU), a hardware accelerator, or a machine learning accelerator. The one or more processors (130) may control one or any combination of other components of the electronic device, and may perform operations related to communication or data processing. The one or more processors (130) may execute one or more programs or instructions stored in a memory. For example, the one or more processors may perform a method according to one or more embodiments of the present disclosure by executing one or more instructions stored in a memory.
[0060] When a method according to one or more embodiments of the present disclosure includes multiple operations, the multiple operations may be performed by one processor or by multiple processors. For example, when a first operation, a second operation, and a third operation are performed by a method according to one or more embodiments, the first operation, the second operation, and the third operation may all be performed by the first processor, or the first operation and the second operation may be performed by the first processor (e.g., a general-purpose processor) and the third operation may be performed by the second processor (e.g., an artificial intelligence-specific processor).
[0061] One or more processors (130) may be implemented as a single core processor including one core, or may be implemented as one or more multicore processors including multiple cores (e.g., homogeneous multicores or heterogeneous multicores). When one or more processors (130) are implemented as a multicore processor, each of the multiple cores included in the multicore processor may include an internal processor memory, such as a cache memory or an on-chip memory, and a common cache shared by the multiple cores may be included in the multicore processor. In addition, each of the multiple cores (or some of the multiple cores) included in the multicore processor may independently read and execute a program instruction for implementing a method according to one or more embodiments of the present disclosure, or all (or some) of the multiple cores may be linked to read and execute a program instruction for implementing a method according to one or more embodiments of the present disclosure.
[0062] When a method according to one or more embodiments of the present disclosure includes a plurality of operations, the plurality of operations may be performed by one core among the plurality of cores included in a multi-core processor, or may be performed by the plurality of cores. For example, when a first operation, a second operation, and a third operation are performed by a method according to one or more embodiments, the first operation, the second operation, and the third operation may all be performed by a first core included in the multi-core processor, or the first operation and the second operation may be performed by a first core included in the multi-core processor, and the third operation may be performed by a second core included in the multi-core processor.
[0063] In the embodiments of the present disclosure, a processor may mean a system on a chip (SoC) in which one or more processors and other electronic components are integrated, a single-core processor, a multi-core processor, or a core included in a single-core processor or a multi-core processor, wherein the core may be implemented as a CPU, a GPU, an APU, a MIC, a DSP, an NPU, a hardware accelerator, or a machine learning accelerator, but the embodiments of the present disclosure are not limited thereto. Hereinafter, for the convenience of explanation, one or more processors (130) will be referred to as a processor (130).
[0064] According to one embodiment, the processor (130) can receive a plurality of BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices located in a preset space through the communication circuit (110).
[0065] According to one embodiment, the processor (130) may filter at least some of a plurality of BLE packets broadcast from a plurality of external devices to analyze the congestion of a preset space.
[0066] Filtering may be an operation to select or remove BLE packets that meet preset conditions among multiple BLE packets broadcast from multiple external devices. For example, if the processor (130) is set to select only BLE packets broadcast from a mobile device, the processor (130) may select only BLE packets broadcast from the mobile device among the multiple external devices. For example, if the processor (130) is set to remove only BLE packets that include a device name field, the processor (130) may remove only BLE packets that include a device name field.
[0067] For example, filtering at least some BLE packets may include an operation for removing BLE packets that meet a preset condition among a plurality of received BLE packets. In other words, it may be an operation for removing BLE packets other than BLE packets received from a mobile device among a plurality of BLE packets.
[0068] According to one embodiment, the processor (130) may filter at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets to identify at least one BLE packet received from the mobile device among the plurality of BLE packets.
[0069] The type of a field may be a type corresponding to each of the various types of fields described in FIG. 1. For example, a field corresponding to the name of a device may be a name type field, and a field corresponding to the identification address of the device may be an identification address type field. The value of a field may be a data value including information corresponding to a device within a specific field. For example, an identification address type field may include a data value in the form of a string corresponding to the identification address of an electronic device (100). The field value may be expressed in the form of a hexadecimal string, but is not limited thereto, and the number of bits allocated to each field may vary depending on the type of the field.
[0070] According to one embodiment, the processor (130) can identify the congestion of a preset space based on the number of at least one identified BLE packet.
[0071] FIG. 3 is a diagram illustrating a process of filtering a BLE packet including a first type field of an electronic device according to one or more embodiments.
[0072] According to one embodiment, the electronic device (100) can identify the type of each field of a plurality of BLE packets and filter out BLE packets including a name field (hereinafter, a first type field) among the plurality of BLE packets.
[0073] The electronic device (100) can identify multiple data included in each BLE packet received from multiple external devices on a field-by-field basis. For example, the electronic device (100) can identify multiple data included in a BLE packet on a field-by-field basis of various types, such as a name field, a manufacturer field, and a UUID service field.
[0074] For example, in the case of a wearable device other than a mobile device, a BLE packet received from the wearable device may include a first type field. For example, a BLE packet received from a smart watch, wireless earbuds, or smart glasses may include a first type field. On the other hand, in the case of a mobile device, a BLE packet received from the mobile device may not include a first type field.
[0075] Meanwhile, users can change the name of their wearable devices. For example, even if the wearable device was initially set to "SMART WATCH 4" during its manufacturing, users can change or delete the device name. However, even if the user deletes the device name, BLE packets received from the device may still contain the Type 1 field, but may not contain a corresponding data value.
[0076] In Fig. 3, for convenience of explanation, the types of each field are assumed to be A to D, and the first type field is assumed to be A.
[0077] Referring to FIG. 3, the electronic device (100) can receive a plurality of BLE packets (310 to 330) broadcast from a plurality of external devices (11 to 13). Each BLE packet (310 to 330) received from each external device (11 to 13) can include a plurality of fields A to D.
[0078] For example, a BLE packet (310) received from a smart watch (13) may include a first type field (340) including a data value corresponding to “aaa Watch4”. For example, a BLE packet (320) received from a wireless earbud (12) may include a first type field (350) including a data value corresponding to “bbb Earphone”. For example, a BLE packet (330) received from a mobile device (11) may not include a first type field.
[0079] The electronic device (100) can filter BLE packets (310, 320) including a first type field among a plurality of BLE packets (310 to 330) broadcast from a plurality of external devices (11 to 13).
[0080] FIG. 4 is a diagram illustrating a BLE packet identification process that does not include a first type field of an electronic device according to one or more embodiments.
[0081] According to one embodiment, the electronic device (100) can receive multiple BLE packets from the same mobile device. The mobile device can simultaneously or sequentially broadcast a preset number of BLE packets for each manufacturer. For example, the mobile device can broadcast three or four BLE packets for each manufacturer.
[0082] For example, each of the multiple BLE packets broadcast by a mobile device may include different field types. Furthermore, even if they include the same field, the field values corresponding to the fields may be different. For example, among three BLE packets broadcast by a mobile device, two BLE packets may include a first type field, while the remaining BLE packet may not include the first type field. For example, all three BLE packets broadcast by a mobile device may include an identification address field, but the field values of the fields included in each packet may be different from each other.
[0083] According to one embodiment, the electronic device (100) may receive at least one BLE packet that does not include a first type field among a plurality of BLE packets received from the same mobile device. The electronic device (100) may filter a BLE packet that includes a first type field among a plurality of BLE packets received from the same mobile device.
[0084] Referring to FIG. 4, the electronic device (100) can receive a plurality of BLE packets (410 to 430) from the same mobile device (11). The electronic device (100) can receive a BLE packet (410, 420) including a first type field among the plurality of BLE packets (410 to 430). The electronic device (100) can receive at least one BLE packet (430) that does not include the first type field among the plurality of BLE packets (410 to 430). In this case, the electronic device (100) can filter a BLE packet (410, 420) including the first type field among the plurality of BLE packets (410 to 430) received from the same mobile device (11).
[0085] FIG. 5 is a diagram illustrating a BLE packet filtering process received from a wearable device according to one or more embodiments.
[0086] According to one embodiment, the type and field value of each field of a plurality of BLE packets can be identified, and BLE packets in which the field value of the device type field (hereinafter referred to as the second type field) among the plurality of BLE packets is a preset value can be filtered.
[0087] For example, the second type field may be a field indicating whether the device transmitting the BLE packet is a wearable device. The field value corresponding to the second type field may vary depending on the type of device. For example, the electronic device (100) may include a second type field including a field value of “01” for a mobile device, a field value of “02” for a wearable device, and a field value of “03” for a TV. The above-described field values are merely exemplary, and the field value corresponding to the device type may be a different value from the above-described values.
[0088] According to one embodiment, the electronic device (100) can identify the type of device through a flag field included in a BLE packet. For example, a wearable device and a mobile device may include flag field values corresponding to different search modes. For example, a wearable device may include a flag field value corresponding to a first mode in which device search is enabled only at a preset time. For example, a mobile device may include a flag field value corresponding to a second mode in which constant search is enabled.
[0089] According to one embodiment, the electronic device (100) can identify a wearable device based on a field value included in a second type field or a flag field of a received BLE packet. The electronic device (100) can filter BLE packets received from the wearable device.
[0090] In Fig. 5, for convenience of explanation, the second type field is assumed to be B and the flag field is assumed to be C.
[0091] Referring to FIG. 5, the electronic device (100) can receive a plurality of BLE packets (510 to 530) broadcasted from a plurality of external devices (11 to 13). A BLE packet received from a smartwatch (13) among wearable devices can include a second type field (540) with a value of “02xxxxxx.” On the other hand, a BLE packet received from a mobile device (11) can include a second type field (550) with a value of “01xxxxxx.” The electronic device (100) can filter a BLE packet (510) in which a field value of the second type field is a preset value (02). Here, the preset value can be a value indicating that the device that transmitted the BLE packet is a wearable device.
[0092] Referring to FIG. 5, the electronic device (100) may receive a BLE packet including a flag field (560) with a value of “0x06” (560) from a wireless earbud (12) among wearable devices. According to an example, each value of the string included in “0x06” may include a unique value that can only be set in the wearable device. The electronic device (100) may identify a unique field value that can only be set in the wearable device or mobile device from the flag field of the BLE packet. The electronic device (100) may filter a BLE packet including a unique field value that can only be set in the wearable device.
[0093] FIG. 6 is a diagram illustrating a process of filtering BLE packets received from the same mobile device of an electronic device according to one or more embodiments.
[0094] According to one embodiment, the electronic device (100) can identify the manufacturer and the type of field corresponding to each of a plurality of BLE packets and filter BLE packets including a third type field preset for each manufacturer.
[0095] The third type field preset by each manufacturer may be a field type for selecting only one packet among multiple BLE packets received from the same mobile device. For example, if the same mobile device broadcasts three BLE packets and only two of the three packets include the “G” field, the preset third type field may be the “G” field. In this case, the electronic device (100) may filter two of the three packets received from the same mobile device.
[0096] For example, a mobile device may broadcast multiple BLE packets containing different fields, depending on the purpose of transmitting the BLE packets. The number of BLE packets broadcast by a mobile device may vary depending on the device manufacturer. For example, Manufacturer A may broadcast three packets, while Manufacturer B may broadcast four.
[0097] When receiving multiple BLE packets from the same mobile device, the electronic device (100) may mistake a single mobile device for multiple mobile devices. In this case, the electronic device (100) may need to filter out all but one of the multiple BLE packets received from the same mobile device.
[0098] According to one embodiment, the electronic device (100) can identify the manufacturer of the mobile device from the field values included in the received BLE packet. According to one example, based on the manufacturer of the identified mobile device, the electronic device (100) can identify the number of BLE packets broadcast from the mobile device of the corresponding manufacturer, the type of fields included in the BLE packets, and the arrangement order.
[0099] Referring to FIG. 6, the electronic device (100) can identify that the mobile device (11) is manufacturer A (640) from a field value included in any one of the BLE packets (610 to 630) received from the mobile device (11). Based on the identified manufacturer, the electronic device (100) can identify the number of BLE packets broadcast by the mobile device (11) of the corresponding manufacturer (for example, 3 in the case of manufacturer A).
[0100] The electronic device (100) can identify the type of field and the arrangement order of the fields included in each of the three BLE packets (610 to 630) broadcast from the mobile device (11). For example, in the case of manufacturer A, the electronic device (100) can identify the BLE packets in the order of “ABGD”, the BLE packets in the order of “EHGC”, and the BLE packets in the order of “FIJK”.
[0101] The electronic device (100) can identify a preset third type field, the “G” field (650), which is included in only two of three BLE packets. The electronic device (100) can filter BLE packets (610, 620) that include the “G” field (650). Meanwhile, the third type field is not limited to the “G” field, and any field that can select one of the three BLE packets can be used.
[0102] FIG. 7 is a diagram illustrating a BLE packet filtering process according to a preset time of an electronic device according to one or more embodiments.
[0103] According to one embodiment, the electronic device (100) may filter the second BLE packet when a first BLE packet including a first identification address is first received and a second BLE packet including an identification address identical to the first identification address is received after a preset time.
[0104] For example, a mobile device may broadcast a BLE packet containing an identification address that changes at preset intervals. For example, the identification address included in a BLE packet initially received from the mobile device may be different from the identification address included in a BLE packet received after a preset interval. This allows the device's identification address to be changed at preset intervals to protect the user's privacy, and BLE packets containing the changed identification address can be broadcast.
[0105] For example, a home appliance, such as a TV, may broadcast BLE packets containing the same identification address. For example, the identification address contained in the first BLE packet received from the home appliance, such as a TV, may be the same as the identification address contained in a BLE packet received after a preset time.
[0106] In Fig. 7, for convenience of explanation, the identification addresses of external devices are assumed to be “AAAA”, “BBBB”, …, “FFFF”, and the preset time is assumed to be 30 minutes.
[0107] Referring to FIG. 7, the electronic device (100) can receive multiple BLE packets containing identification addresses of “AAAA” to “FFFF” from multiple external devices. The electronic device (100) can filter BLE packets (710 to 730) containing the first type field according to the above-described content. In this case, the electronic device (100) can identify a total of three BLE packets at “00:25”.
[0108] Referring to FIG. 7, the electronic device (100) can identify an identification address included in a BLE packet received after a preset time (30 minutes) has elapsed from the time of the first reception of the BLE packet. For example, if a BLE packet including the same identification address as a BLE packet initially received from a first external device including an identification address of “AAAA” is received even after a preset time, the electronic device (100) can filter the BLE packet received from the first external device. Similarly, the electronic device (100) can filter a BLE packet received from a second external device including an identification address of “BBBB.”
[0109] On the other hand, in the case of a third external device including a “CCCC” identification address, since the preset time has not elapsed since the initial reception time, the electronic device (100) may not filter the BLE packet received from the third external device including the “CCCC” identification address. In this case, the electronic device (100) may identify a total of one BLE packet at “00:30”.
[0110] FIG. 8 is a diagram illustrating an overall filtering process of an electronic device according to one or more embodiments.
[0111] According to one embodiment, the electronic device (100) may filter a BLE packet including a first type field among a plurality of BLE packets, a BLE packet having a field value of a second type field among a plurality of BLE packets that is a preset value, and a BLE packet including a third type field preset by a manufacturer among a plurality of BLE packets.
[0112] Referring to FIG. 8, the electronic device (100) can receive (850) a plurality of BLE packets broadcast from a plurality of external devices. The electronic device (100) can filter (hereinafter, referred to as first filtering) (810) a BLE packet including a first type field among the plurality of received BLE packets. The electronic device (100) can filter (hereinafter, referred to as second filtering) (820) a BLE packet having a field value of a second type field of a preset value among the plurality of received BLE packets. The electronic device (100) can filter (hereinafter, referred to as third filtering) (830) a BLE packet including a third type field preset for each manufacturer among the plurality of received BLE packets. The electronic device (100) can filter (hereinafter, referred to as fourth filtering) (840) a BLE packet including the same identification address for a preset time among the plurality of received BLE packets.
[0113] According to one embodiment, the electronic device (100) can perform first filtering (810), second filtering (820), third filtering (830), and fourth filtering (840) on a plurality of received BLE packets.
[0114] According to one embodiment, the electronic device (100) may perform at least one filtering among the first filtering (810), the second filtering (820), the third filtering (830), and the fourth filtering (840) on the plurality of received BLE packets.
[0115] FIG. 9 is a diagram for explaining a BLE packet identification process according to an RSSI value of an electronic device according to one or more embodiments.
[0116] According to one embodiment, the electronic device (100) can identify a Received Signal Strength Indicator (RSSI) value corresponding to each of at least one BLE packets received from a mobile device.
[0117] The RSSI value may include a signal strength value corresponding to a reception signal of a BLE packet received from the electronic device (100). For example, the RSSI value of a BLE packet broadcast from an external device located at a long distance from the electronic device (100) may be lower than the RSSI value of a BLE packet broadcast from an external device located at a short distance from the electronic device (100).
[0118] According to one embodiment, the electronic device (100) can identify the congestion level of a preset space by identifying a BLE packet whose RSSI value falls within a preset threshold range. The preset threshold range can be set in various ways depending on the congestion level of the space that the user wishes to recognize.
[0119] Referring to FIG. 9, the electronic device (100) can identify six BLE packets received from a mobile device among a plurality of external devices by performing the above-described filtering operation. The electronic device (100) can identify BLE packets within a preset threshold range (910) among the six BLE packets. The electronic device (100) can identify the congestion level of a preset space based on the number of identified BLE packets (e.g., three).
[0120] FIG. 10 is a diagram for explaining the results of a congestion analysis of an electronic device according to one or more embodiments.
[0121] According to one embodiment, the electronic device (100) can identify the congestion level of a preset space based on the number of at least one BLE packet received from a mobile device.
[0122] Referring to FIG. 10, the electronic device (100) can generate a first graph (1010) indicating the congestion level of a preset space based on the number of BLE packets corresponding to a mobile device. The graph located at the top of the first graph (1010) may be a graph based on the total number of BLE packets received from multiple external devices. The graph located at the bottom of the first graph (1010) may be a graph based on the number of BLE packets corresponding to a mobile device by performing the above-described filtering operation.
[0123] Referring to FIG. 10, the electronic device (100) can generate a second graph (1020) representing the congestion level of a preset space for the entire time period on a daily basis. The second graph (1020) may be a graph representing the congestion level of a preset space for the entire time period from daytime to evening on a daily basis.
[0124] FIG. 11 is a flowchart illustrating the overall operation of an electronic device according to one or more embodiments.
[0125] Referring to FIG. 11, in operation 1110, the electronic device (100) can receive multiple BLE packets broadcast from multiple external devices.
[0126] In operation 1120, the electronic device (100) may filter at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets.
[0127] In operation 1130, the electronic device (100) can identify at least one BLE packet received from the mobile device among a plurality of BLE packets.
[0128] In operation 1140, the electronic device (100) can identify the congestion level of a preset space based on the number of at least one BLE packet received from the mobile device.
[0129] A method for filtering at least some of a plurality of BLE packets and identifying the congestion level of a preset space based on the number of at least one BLE packet received from a mobile device has been specifically described in the various embodiments described above, so a redundant description thereof will be omitted.
[0130] The control method described in FIG. 11 can be performed by an electronic device (100) having the configuration of FIG. 2 described above, but is not necessarily limited thereto, and can also be performed by electronic devices having various configurations.
[0131] The various embodiments described above may be implemented as a single embodiment, or at least one of the embodiments may be combined in whole or in part to be implemented together in one device.
[0132] According to the various embodiments described above, more accurate congestion analysis may be possible based on at least one BLE packet received from a mobile device.
[0133] Meanwhile, the various embodiments described above may be applied to a product as an embodiment alone, but at least some of the contents may be implemented in combination with other embodiments of the present disclosure.
[0134] The various embodiments described above can be implemented as software including instructions stored in a machine-readable storage medium that can be read by a machine (e.g., a computer). The device is a device that can call instructions stored in the storage medium and operate according to the called instructions, and may include an electronic device (e.g., electronic device (100)) according to the disclosed embodiments. When an instruction is executed by a processor, the processor can perform a function corresponding to the instruction directly or by using other components under the control of the processor. The instruction may include code generated or executed by a compiler or interpreter. The machine-readable storage medium can be provided in the form of a non-transitory computer-readable storage medium. Here, 'non-transitory' means that the storage medium does not contain a signal and is tangible, but does not distinguish between data being stored semi-permanently or temporarily in the storage medium.
[0135] Additionally, according to one embodiment of the present disclosure, the method according to the various embodiments described above may be provided as included in a computer program product.
[0136] Specifically, a non-transitory readable storage medium or a computer program product storing computer instructions that cause the computer to perform an operation of receiving a plurality of BLE (Bluetooth Low Energy) packets broadcast from a plurality of external devices, an operation of filtering at least some of the plurality of BLE packets based on at least one of a type of a field or a value of a field included in each of the plurality of BLE packets to identify at least one BLE packet received from a mobile device among the plurality of BLE packets, and an operation of identifying a congestion level of a preset space based on the number of the at least one identified BLE packet may be provided.
[0137] The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or online through an application store (e.g., Play Store™). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily created in a storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
[0138] In addition, computer instructions or programs for performing the control methods of electronic devices according to the various embodiments described above may be stored in a non-transitory computer-readable medium. The computer instructions stored in such a non-transitory computer-readable medium, when executed by a processor of a specific device, cause the specific device to perform processing operations in the device according to the various embodiments described above. A non-transitory computer-readable medium refers to a medium that stores data semi-permanently and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specific examples of non-transitory computer-readable media may include a CD, DVD, hard disk, Blu-ray disk, USB, memory card, or ROM.
[0139] Although the preferred embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above, and various modifications may be made by a person skilled in the art to which the present disclosure pertains without departing from the gist of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical idea or prospect of the present disclosure.
Claims
1. In an electronic device located in a preset space, communication circuit; memory that stores instructions; and At least one processor comprising processing circuitry; One or more of the above processors, When the above instructions are executed individually or collectively, the electronic device, Receives multiple BLE (Bluetooth Low Energy) packets broadcast from multiple external devices through the communication circuit, Filtering at least some of the BLE packets among the plurality of BLE packets based on at least one of the types of fields or values of fields included in each of the plurality of BLE packets to identify at least one BLE packet received from a mobile device among the plurality of BLE packets, An electronic device that identifies the congestion level of the preset space based on the number of at least one BLE packet identified above.
2. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that identifies the type of each field of the plurality of BLE packets and filters BLE packets including a first type field among the plurality of BLE packets.
3. In paragraph 2, Multiple BLE packets received from the same mobile device, Contains at least one BLE packet that does not include the first type field, The above first type field is an electronic device, which is a name field.
4. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that identifies the type and field value of each field of the plurality of BLE packets and filters BLE packets in which the field value of the second type field among the plurality of BLE packets is a preset value.
5. In paragraph 4, The above second type field is, This field indicates whether the device that transmitted the BLE packet is a wearable device. The above preset values are: An electronic device that is a value indicating that the device that transmitted the BLE packet is a wearable device.
6. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that identifies the manufacturer and the type of field corresponding to each of the plurality of BLE packets and filters BLE packets that include a third type field preset for each manufacturer.
7. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device configured to filter a second BLE packet when a first BLE packet including a first identification address is first received and a second BLE packet including an identification address identical to the first identification address is received after a preset time.
8. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that filters a BLE packet including a first type field among the plurality of BLE packets, a BLE packet including a second type field among the plurality of BLE packets whose field value is a preset value, and a BLE packet including a third type field preset by a manufacturer among the plurality of BLE packets.
9. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Identifying an RSSI (Received Signal Strength Indicator) value corresponding to each of the at least one BLE packets identified above, An electronic device that identifies a BLE packet whose RSSI value is within a preset threshold range to identify the congestion level of the preset space.
10. In a method for controlling an electronic device located in a preset space, An operation of receiving multiple BLE (Bluetooth Low Energy) packets broadcast from multiple external devices; An operation of filtering at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field included in each of the plurality of BLE packets or a value of a field to identify at least one BLE packet received from a mobile device among the plurality of BLE packets; and A control method comprising: an operation for identifying the congestion level of the preset space based on the number of at least one BLE packet identified above; 11. In paragraph 10, The operation of filtering at least some of the BLE packets among the above plurality of BLE packets is: A control method further comprising: an operation of identifying the type of each field of the plurality of BLE packets and filtering a BLE packet including a first type field among the plurality of BLE packets.
12. In paragraph 11, Multiple BLE packets received from the same mobile device, Contains at least one BLE packet that does not include the first type field, The above first type field is a control method, which is a name field.
13. In paragraph 10, The operation of filtering at least some of the BLE packets among the above plurality of BLE packets is: A control method further comprising: an operation of identifying the type and field value of each field of the plurality of BLE packets and filtering BLE packets in which the field value of the second type field among the plurality of BLE packets is a preset value.
14. In paragraph 13, The above second type field is, This field indicates whether the device that transmitted the BLE packet is a wearable device. The above preset values are: A control method that indicates that the device that transmitted the BLE packet is a wearable device.
15. A non-transitory computer-readable storage medium storing computer instructions that, when executed by a processor of an electronic device, cause the electronic device to perform an operation, the operation comprising: An operation of receiving multiple BLE (Bluetooth Low Energy) packets broadcast from multiple external devices; An operation of filtering at least some of the BLE packets among the plurality of BLE packets based on at least one of a type of a field included in each of the plurality of BLE packets or a value of a field to identify at least one BLE packet received from a mobile device among the plurality of BLE packets; and A non-transitory computer-readable storage medium, comprising: an operation for identifying the congestion level of the preset space based on the number of at least one BLE packet identified above.
Citation Information
Patent Citations
A system and method for measuring crowding at a single location.
JP2015528265A
Acquisition device, measuring system, acquisition method, and program
JP2019087961A
Congestion degree estimation apparatus, congestion degree estimation system, congestion degree estimation program, and learning method
JP2022145435A
BLE beacon-based energy management service
KR101819109B1
Reciprocating compressor
KR102344890B1