WO2024195293A1 - 無線通信装置および無線通信システム - Google Patents
無線通信装置および無線通信システム Download PDFInfo
- Publication number
- WO2024195293A1 WO2024195293A1 PCT/JP2024/002407 JP2024002407W WO2024195293A1 WO 2024195293 A1 WO2024195293 A1 WO 2024195293A1 JP 2024002407 W JP2024002407 W JP 2024002407W WO 2024195293 A1 WO2024195293 A1 WO 2024195293A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- index
- data
- unicast
- wireless communication
- broadcast
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
Definitions
- This technology relates to a wireless communication device and a wireless communication system. More specifically, this technology relates to a wireless communication device and a wireless communication system in which broadcast communication and unicast communication are used.
- Some mobile communication systems provide broadcast services based on wireless communication.
- a method for updating firmware of a terminal in a mobile broadcast system including a broadcast service distribution/adaptation unit and a broadcast service subscription management unit has been proposed (see, for example, Patent Document 1).
- This technology was developed in light of these circumstances, and aims to make it easier to manage the correspondence between data that is divided and broadcast on the sending side and data that is divided and broadcast on the receiving side.
- the present technology has been made to solve the above-mentioned problems, and its first aspect is a wireless communication device having a broadcast transmission unit that broadcasts packetized divided data together with an index that identifies the divided data in BLE (Bluetooth Low Energy). This brings about the effect of allowing the receiving side to check the broadcasted data for each index, while transmitting common data to multiple receivers in a batch.
- BLE Bluetooth Low Energy
- the broadcast transmission unit may repeatedly broadcast the index and the data. This provides the effect of preventing missed reception of the broadcast-transmitted data while simultaneously transmitting common data to multiple receivers.
- the data may be firmware update data. This allows the receiving side to check the broadcasted update data for each index, while transmitting common update data to multiple receivers in a batch.
- the index may include information indicating the beginning and end of the divided data. This provides the effect of allowing the divided data to be identified on the receiving side.
- information indicating whether the data is to be used in common or individually at the receiving destination may be added to the data. This provides the effect of allowing the receiving destination to determine which data is to be used.
- the broadcast transmission unit may use BIS (Broadcast Isochronous Streams) or Extended Advertising in the BLE for the broadcast transmission. This brings about the effect that broadcast transmission is performed on a device in which BLE is implemented.
- BIS Broadcast Isochronous Streams
- Extended Advertising Extended Advertising
- the device may further include a unicast communication unit that unicast receives the index and unicasts the packetized divided data identified by the index, and a communication control unit that controls switching between a process of broadcasting the divided data together with an index that identifies the divided data, and a process of unicasting the divided data identified by the index.
- the communication control unit may switch to the broadcast transmission so that the data is divided and transmitted for each index, and may switch to the unicast communication so that the unicast reception and the unicast transmission are performed between the broadcast transmissions divided for each index. This provides the effect of transmitting individual data to the receiver individually without waiting until broadcast transmission is completed for all indexes.
- the unicast communication unit may use GATT (General ATTribute) or L2CAP (Logical Link Control and Adaptation Protocol) in BLE (Bluetooth Low Energy) for the unicast communication.
- GATT General ATTribute
- L2CAP Logical Link Control and Adaptation Protocol
- BLE Bluetooth Low Energy
- the second aspect is a wireless communication device having a broadcast receiving unit that broadcasts and receives packetized divided data together with an index that identifies the divided data in BLE (Bluetooth Low Energy). This allows the receiving side to check the broadcast received data for each index, while allowing common data to be received collectively by multiple receivers.
- BLE Bluetooth Low Energy
- the broadcast receiving unit may repeatedly broadcast-receive the index and the data. This provides the effect of preventing missed reception of broadcast-received data while allowing multiple receivers to receive common data collectively.
- the data may be firmware update data. This allows the broadcast-received update data to be confirmed by index on the receiving side, while allowing multiple receivers to receive the same update data at once.
- the index may include information indicating the beginning and end of the divided data. This provides the effect of allowing the divided data to be identified on the receiving side.
- information indicating whether the data is to be used in common or individually at the receiving end may be added to the data. This provides the effect of allowing the receiving end to determine which data is to be used.
- the broadcast receiving unit may use BIS (Broadcast Isochronous Streams) or Extended Advertising in the BLE for the broadcast reception. This brings about the effect that broadcast reception is performed on a device in which BLE is implemented.
- BIS Broadcast Isochronous Streams
- Extended Advertising Extended Advertising
- the device may further include a unicast communication unit that unicasts the index and receives the packetized divided data identified by the index, and a communication control unit that controls switching between a process of broadcasting and receiving the divided data together with the index that identifies the divided data, and a process of unicast receiving the divided data identified by the index.
- the communication control unit may switch to the broadcast reception so that the data is divided and received for each index, and may switch to the unicast communication so that the unicast transmission and the unicast reception are performed between the broadcast receptions divided for each index. This provides the effect that individual data is individually received by the receiver without waiting until broadcast reception is completed for all indexes.
- the unicast communication unit may use GATT (General ATTribute) or L2CAP (Logical Link Control and Adaptation Protocol) in BLE (Bluetooth Low Energy) for the unicast communication.
- GATT General ATTribute
- L2CAP Logical Link Control and Adaptation Protocol
- BLE Bluetooth Low Energy
- the third aspect is a wireless communication system including a transmitter that packetizes divided data together with an index that identifies the divided data in BLE (Bluetooth Low Energy) and broadcasts the packetized data, and a receiver that broadcasts the packetized divided data together with the index.
- BLE Bluetooth Low Energy
- the transmitter may include a broadcast transmission unit that broadcasts the packetized data together with the index, a unicast communication unit that unicast receives the index and unicasts the packetized data identified by the index, and a communication control unit that controls switching between a process of broadcasting the data together with the index and a process of unicasting the data identified by the index
- the receiver may include a broadcast reception unit that broadcasts the packetized data together with the index, a unicast communication unit that unicasts the index and unicasts the packetized data identified by the index, and a communication control unit that controls switching between a process of broadcasting the data together with the index and a process of unicasting the data identified by the index.
- FIG. 1 is a diagram illustrating an example of a configuration of a wireless communication system according to a first embodiment
- FIG. 2 is a block diagram illustrating an example of a functional configuration of a transmitter according to a first embodiment.
- FIG. 2 is a block diagram illustrating an example of a hardware configuration of a transmitter according to the first embodiment.
- 2 is a block diagram showing an example of a functional configuration of a receiver according to a first embodiment;
- FIG. 2 is a block diagram showing an example of a hardware configuration of a receiver according to a first embodiment;
- FIG. 2 is a diagram illustrating a first example of a packet configuration used in wireless communication according to the first embodiment.
- FIG. 11 is a diagram illustrating a second example of a packet configuration used in wireless communication according to the first embodiment.
- FIG. 4 is a diagram illustrating a first example of data held in the receiver according to the first embodiment.
- FIG. 11 is a diagram illustrating a second example of data held in the receiver according to the first embodiment.
- 1 is a timing chart showing a broadcast transmission method in BLE (Bluetooth Low Energy) used for wireless communication in the first embodiment.
- 5 is a flowchart showing a transmission process in wireless communication according to the first embodiment.
- BLE Bluetooth Low Energy
- FIG. 2 is a diagram illustrating a first example of a wireless communication sequence according to the first embodiment.
- FIG. 11 is a diagram illustrating a second example of a wireless communication sequence according to the first embodiment.
- FIG. 11 is a diagram illustrating an example of a wireless communication sequence according to the second embodiment.
- First embodiment an example in which data is broadcast together with an index that identifies divided data, and the data identified by the index is unicast based on the unicast reception result of the index
- Second embodiment example of repeating broadcast transmission of index and data for identifying divided data
- FIG. 1 is a diagram illustrating an example of a configuration of a wireless communication system according to a first embodiment.
- the wireless communication system includes a smartphone 100S and wireless earphones 200A and 200B.
- the wireless earphones 200A and 200B can achieve TWS (True Wireless Stereo) based on wireless communication with the smartphone 100S using BLE (Bluetooth Low Energy).
- TWS Truste Wireless Stereo
- BLE Bluetooth Low Energy
- the smartphone 100S can update the firmware of the wireless earphones 200A and 200B based on wireless communication. At this time, the smartphone 100S can divide the update data for the firmware of the wireless earphones 200A and 200B and assign indexes to the divided update data. The smartphone 100S can packetize the update data together with an index that identifies the divided update data, and broadcast it.
- the wireless earphones 200A, 200B update the firmware of the wireless earphones 200A, 200B based on the update data broadcast from the smartphone 100S. At this time, the wireless earphones 200A, 200B determine whether any update data broadcast from the smartphone 100S is missing. If any update data that was broadcast is missing, the wireless earphones 200A, 200B identify the index of the missing portion of the update data. The wireless earphones 200A, 200B then unicast a request to the smartphone 100S to resend the missing portion of the update data identified by that index.
- the smartphone 100S When the smartphone 100S receives a unicast request to resend the missing portion of the update data identified by the index, it unicasts the missing portion of the update data identified by that index to the wireless earphones 200A and 200B.
- the wireless earphones 200A and 200B update the unupdated parts of the firmware of the wireless earphones 200A and 200B based on the update data transmitted by unicast from the smartphone 100S.
- FIG. 2 is a block diagram showing an example of the functional configuration of a transmitter according to the first embodiment.
- the wireless communication device 100 performs broadcast transmission and unicast communication.
- the wireless communication device 100 can use BIS (Broadcast Isochronous Streams) or Extended Advertising in BLE for broadcasting.
- the wireless communication device 100 can use GATT (General ATTribute) or L2CAP (Logical Link Control and Adaptation Protocol) in BLE for unicasting.
- the wireless communication device 100 may be a smartphone 100S.
- the wireless communication device 100 includes a packet generation unit 111, a broadcast transmission unit 112, a unicast communication unit 113, a communication control unit 114, a wireless communication unit 115, and a storage unit 116.
- the wireless communication device 100 is connected to the antenna 101 via the wireless communication unit 115.
- the packet generating unit 111 packetizes the transmission data.
- This transmission data may be firmware update data for a device capable of communicating with the wireless communication device 100.
- This device may be the wireless earphones 200A and 200B.
- the packet has a header and a payload.
- the header stores an index that identifies the divided transmission data.
- the index may include information indicating the beginning and end of the divided transmission data.
- the transmission data may be divided in units of transmittable capacity.
- the transmission data may be packetized for each index.
- the payload stores firmware update data. Information indicating whether the update data will be used commonly or individually at the receiving destination may be added to the update data.
- the broadcast transmission unit 112 broadcasts the packetized transmission data together with an index that identifies the divided transmission data. At this time, the broadcast transmission unit 112 may broadcast the packetized transmission data together with the index for each index. Also, the broadcast transmission unit 112 may start broadcast transmission of the transmission data and the index without checking devices that can communicate with the wireless communication device 100. Alternatively, the broadcast transmission unit 112 may start broadcast transmission of the transmission data and the index after checking devices that can communicate with the wireless communication device 100. At this time, the broadcast transmission unit 112 may start broadcast transmission of the transmission data and the index when checking multiple devices that can communicate with the wireless communication device 100. The broadcast transmission unit 112 may check whether the destination is capable of receiving the data before transmission. Also, the broadcast transmission unit 112 may repeat broadcast transmission of the transmission data and the index.
- the number of times that the broadcast transmission of the transmission data and the index is repeated may be determined in advance.
- the broadcast transmission unit 112 may change the number of times that the broadcast transmission of the transmission data and the index is repeated depending on the communication environment of the wireless communication device 100.
- the broadcast transmission unit 112 may set the number of repetitions of broadcast transmission of the transmission data and the index depending on the number of devices that can communicate with the wireless communication device 100.
- the unicast communication unit 113 receives, by unicast, an index that identifies the divided transmission data.
- the unicast communication unit 113 also unicasts the packetized transmission data identified by that index.
- the unicast communication unit 113 may unicast the packetized transmission data identified by that index based on a retransmission request for the transmission data identified by that index.
- the communication control unit 114 controls switching between a process of broadcasting data together with an index that identifies the divided data, and a process of unicasting data identified by the index. At this time, the communication control unit 114 may switch to broadcast transmission when no device capable of communicating with the wireless communication device 100 is confirmed. Alternatively, the communication control unit 114 may switch to unicast transmission when a single device capable of communicating with the wireless communication device 100 is confirmed, and may switch to broadcast transmission when multiple devices capable of communicating with the wireless communication device 100 are confirmed. Alternatively, the communication control unit 114 may repeat broadcast transmission until a reception completion notification is received from all of the multiple devices to which the broadcast was transmitted. Alternatively, the communication control unit 114 may switch to unicast communication for devices that have not received a reception completion notification when a reception completion notification is received from some of the multiple devices when the broadcast is transmitted.
- the communication control unit 114 may switch to unicast communication so that unicast reception and unicast transmission are performed between broadcast transmissions divided for each index. This allows the unicast communication unit 113 to individually transmit data identified by an index without waiting until broadcast transmission is completed for all indexes.
- the communication control unit 114 may use the maximum number of unicast connections (e.g., 10 devices) and a switching threshold between broadcast transmission and unicast transmission (e.g., 4 devices) to determine whether to switch between broadcast transmission and unicast communication.
- the switching threshold is the threshold for "devices that have completed data transmission" among the devices connected through unicast. For example, in a home speaker system consisting of seven devices, if the switching threshold is set to four devices, broadcast transmission will be performed until a reception completion notification is received from all four devices, and once a completion notification is received from all four devices, the system can switch to unicast transmission.
- the wireless communication unit 115 converts baseband signals to be transmitted into the radio frequency band, and converts received radio frequency signals into the baseband band.
- the wireless communication unit 115 also amplifies the transmitted signals and received signals.
- the wireless communication unit 115 is connected to the antenna 101.
- the storage unit 116 stores the update data 116A.
- the storage unit 116 may be a flash memory or an SD card.
- FIG. 3 is a block diagram showing an example of the hardware configuration of a transmitter according to the first embodiment.
- the wireless communication device 100 comprises a processor 121, a communication control device 122, a communication interface 123, a main memory unit 125, an auxiliary memory unit 126, and an input/output interface 124.
- the processor 121, the communication control device 122, the communication interface 123, the main memory unit 125, the auxiliary memory unit 126, and the input/output interface 124 are interconnected via an internal bus 127.
- the main memory unit 125 and the auxiliary memory unit 126 are accessible from the processor 121.
- the communication control device 122 is connected to the antenna 101 via the communication interface 123.
- the wireless communication device 100 is also provided with an input device 102 and an output device 103.
- the input device 102 and the output device 103 are connected to an internal bus 127 via an input/output interface 124.
- the input device 102 is, for example, a keyboard, a mouse, a touch panel, a card reader, or a microphone.
- the output device 103 is, for example, a screen display device (such as a liquid crystal monitor, an organic EL (Electro Luminescence) display, or a graphics card), a speaker, or a printer.
- the processor 121 is hardware that controls the operation of the entire wireless communication device 100.
- the processor 121 may be a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit).
- the processor 121 may be a single-core processor or a multi-core processor.
- the processor 121 may be equipped with a hardware circuit such as an accelerator that performs part of the processing (e.g., an FPGA (Field-Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit)).
- the main memory unit 125 can be composed of semiconductor memory such as SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory).
- the main memory unit 125 can store programs being executed by the processor 121 and provide a work area for the processor 121 to execute programs.
- the auxiliary memory unit 126 is a storage device with a large storage capacity, for example a flash memory or an SD card.
- the auxiliary memory unit 126 can hold executable files for various programs and data used to execute programs.
- the auxiliary memory unit 126 can store a communication processing program 126A and update data 116A.
- the communication processing program 126A may be software that can be installed in the wireless communication device 100, or may be incorporated into the wireless communication device 100 as firmware.
- the update data 116A is used to update the firmware of the communication partner.
- the communication control device 122 is hardware that has the function of controlling communication with the outside world.
- the communication control device 122 is connected to the communication partner via the communication interface 123.
- BLE can be used for this connection.
- the communication control device 122 is also connected to a network via a communication interface 123.
- the network may be a WAN (Wide Area Network) such as the Internet, a LAN (Local Area Network) such as Wi-Fi or Ethernet (registered trademark), or a mixture of WAN and LAN.
- the network may also be a cellular network.
- the input/output interface 124 converts data input from the input device 102 into a data format that can be processed by the processor 121, and converts data output from the processor 121 into a data format that can be processed by the output device 103.
- the processor 121 can perform wireless communication processing of the wireless communication device 100 by reading out the communication processing program 126A into the main memory unit 125 and executing the communication processing program 126A.
- this wireless communication processing a broadcast transmission process and a unicast communication process of the update data 116A using BLE can be performed.
- This wireless communication processing can also include a process of generating packets used for the broadcast transmission and the unicast communication.
- the update data 116A can be packetized for each index that specifies the divided update data 116A.
- This wireless communication processing can also include a process of switching between broadcast transmission and unicast communication of the update data 116A.
- the execution of the communication processing program 126A may be shared among multiple processors or computers.
- the processor 121 may instruct a cloud computer or the like via a network to execute all or part of the communication processing program 126A and receive the results of that execution.
- FIG. 4 is a block diagram showing an example of the functional configuration of a receiver according to the first embodiment.
- the wireless communication device 200 performs broadcast reception and unicast communication.
- the wireless communication device 200 can use BIS (Broadcast Isochronous Streams) or Extended Advertising in BLE for broadcasting.
- the wireless communication device 200 can use GATT (General ATTribute) or L2CAP (Logical Link Control and Adaptation Protocol) in BLE for unicasting.
- the wireless communication device 200 may be wireless earphones 200A, 200B, a multi-channel audio system, a beacon installed in a store, passageway, train station, airport, tourist spot, etc., or a mesh communication device.
- the wireless communication device 200 includes a packet generation unit 211, a broadcast reception unit 212, a unicast communication unit 213, a communication control unit 214, a wireless communication unit 215, and a storage unit 216.
- the wireless communication device 200 also includes a packet analysis unit 217, an update data writing unit 218, and a reception status management unit 219.
- the wireless communication device 200 is connected to the antenna 201 via the wireless communication unit 215.
- the packet generator 211 packetizes the transmission data.
- This transmission data may be a request to resend update data transmitted from the wireless communication device 100.
- This transmission data may also include device information of the device itself, or may include current version information of the firmware of the device itself.
- the broadcast receiving unit 212 broadcasts and receives packetized transmission data together with an index that identifies the divided transmission data. At this time, the broadcast receiving unit 212 may broadcast and receive the divided transmission data for each index. The broadcast receiving unit 212 may also start broadcast reception of the packetized transmission data together with the index without checking the source of the transmission data. Alternatively, the broadcast receiving unit 212 may check the source of the transmission data and then start broadcast reception of the packetized transmission data together with the index. The broadcast receiving unit 212 may notify the source of reception whether it is possible. The broadcast receiving unit 212 may also repeat broadcast reception of the packetized transmission data together with the index for each index. At this time, the number of times that the broadcast reception of the packetized transmission data together with the index is repeated may be determined in advance. Alternatively, the broadcast receiving unit 212 may change the number of times that the broadcast reception of the transmission data and the index is repeated according to the communication environment of the wireless communication device 200.
- the unicast communication unit 213 unicasts an index that identifies the divided transmission data. At this time, the unicast communication unit 213 may request a retransmission of the transmission data identified by the index. The unicast communication unit 213 also unicasts the packetized transmission data identified by the index.
- the communication control unit 214 controls switching between a process of broadcast receiving data together with an index that identifies the divided data, and a process of unicast receiving the data identified by that index. At this time, the communication control unit 214 may switch to broadcast reception without checking the sender of the transmitted data. The communication control unit 214 may repeat broadcast reception until broadcast reception is successful for all indexes. Alternatively, the communication control unit 214 may switch to unicast reception when broadcast reception fails for a certain index. Alternatively, the communication control unit 214 may switch to unicast transmission when broadcast reception fails for a certain index, and issue a retransmission request for that index.
- the communication control unit 214 may switch to unicast communication so that unicast transmission and unicast reception are performed between broadcast receptions divided for each index. This allows the unicast communication unit 213 to individually receive data identified by an index without waiting until broadcast reception is completed for all indexes.
- the wireless communication unit 215 converts baseband signals to be transmitted into the radio frequency band, and converts received radio frequency signals into the baseband band.
- the wireless communication unit 215 also amplifies the transmitted signals and received signals.
- the wireless communication unit 215 is connected to the antenna 201.
- the storage unit 216 stores update data 116A, program 216B, and additional information 216C.
- Program 216B controls the overall processing of the wireless communication device 200.
- Update data 116A is used to update program 216B.
- Additional information 216C is added to update data 116A.
- Additional information 216C may include version information of update data 116A and pair information of update data 116A. This pair information is, for example, information indicating L/R when wireless communication device 200 is installed in wireless earphones 200A, 200B.
- the storage unit 216 may be a flash memory or an SD card.
- the packet analysis unit 217 analyzes packets received by the broadcast reception unit 212 or the unicast communication unit 213. This analysis can determine, for example, whether there is anything missing in the update data 116A received by the broadcast reception unit 212 or the unicast communication unit 213. If there is anything missing in the update data 116A, the index of the missing part can be identified.
- the update data writing unit 218 writes the update data 116A analyzed by the packet analysis unit 217 to the storage unit 216, and updates the program 216B. At this time, the update data writing unit 218 writes the update data 116A contained in a packet that was successfully received by the broadcast receiving unit 212 or the unicast communication unit 213 to the storage unit 216. On the other hand, the update data writing unit 218 can discard the update data 116A contained in a packet that was unsuccessfully received by the broadcast receiving unit 212 or the unicast communication unit 213.
- the reception status management unit 219 manages the reception status of packets received by the broadcast reception unit 212 or the unicast communication unit 213 based on the update data 116A written by the update data writing unit 218.
- This information on the reception status may include, for example, an unreceived packet index (e.g., 1, 4, 20), a total number of packets (e.g., 1024), a reception start packet index (e.g., 10), and a unicast switching reception completion rate threshold (e.g., 70%).
- FIG. 5 is a block diagram showing an example of the hardware configuration of a receiver according to the first embodiment.
- the wireless communication device 200 includes a processor 221, a communication control device 222, a communication interface 223, a main memory unit 225, an auxiliary memory unit 226, and an input/output interface 224.
- the processor 221, the communication control device 222, the communication interface 223, the main memory unit 225, the auxiliary memory unit 226, and the input/output interface 224 are interconnected via an internal bus 227.
- the main memory unit 225 and the auxiliary memory unit 226 are accessible from the processor 221.
- the communication control device 222 is connected to the antenna 201 via the communication interface 223.
- the wireless communication device 200 is also provided with an input device 202 and an output device 203.
- the input device 202 and the output device 203 are connected to an internal bus 227 via an input/output interface 224.
- the input device 202 is, for example, a keyboard, a mouse, a touch panel, a card reader, or a microphone.
- the output device 203 is, for example, a screen display device (such as a liquid crystal monitor, an organic EL display, or a graphics card), a speaker, or a printer.
- the processor 221 is hardware that controls the operation of the entire wireless communication device 200.
- the processor 221 may be a CPU or a GPU.
- the processor 221 may be a single-core processor or a multi-core processor.
- the processor 221 may include a hardware circuit (e.g., an FPGA or ASIC) such as an accelerator that performs part of the processing.
- the main memory unit 225 can be composed of a semiconductor memory such as an SRAM or DRAM.
- the main memory unit 225 can store the program being executed by the processor 221 and can provide a work area for the processor 221 to execute the program.
- the auxiliary memory unit 226 is a storage device with a large storage capacity, for example a flash memory or an SD card.
- the auxiliary memory unit 226 can hold executable files for various programs and data used to execute programs.
- the auxiliary memory unit 226 can store a communication processing program 226A.
- the communication processing program 226A may be software that can be installed in the wireless communication device 200, or may be incorporated into the wireless communication device 200 as firmware.
- the communication control device 222 is hardware that has the function of controlling communication with the outside world.
- the communication control device 222 is connected to the communication partner via the communication interface 223.
- BLE can be used for this connection.
- the input/output interface 224 converts data input from the input device 202 into a data format that can be processed by the processor 221, and converts data output from the processor 221 into a data format that can be processed by the output device 203.
- the processor 221 can perform wireless communication processing of the wireless communication device 200 by reading the communication processing program 226A into the main memory unit 225 and executing the communication processing program 226A.
- this wireless communication processing broadcast reception processing and unicast communication processing of the update data 116A using BLE can be performed.
- this wireless communication processing can include generation processing of packets used in unicast communication.
- this wireless communication processing can include switching processing between broadcast reception and unicast communication of the update data 116A.
- FIG. 6 is a diagram showing a first example of a packet configuration used in wireless communication according to the first embodiment.
- FIG. 7 is a diagram showing a second example of the configuration of a packet used in wireless communication according to the first embodiment.
- entry 331 is added to entry 301 of the packet in FIG. 6 for this packet.
- Entry 331 stores device information.
- the rest of the configuration of the packet in the figure is the same as the configuration of the packet in FIG. 6 described above.
- the device information is, for example, information about L/R when update data 332 is used to update the firmware of wireless earphones 200A and 200B.
- FIG. 8 is a diagram showing a first example of data stored in a receiver according to the first embodiment. Note that in this figure, an example is shown in which the receiver is wireless earphones 200A and 200B.
- the receiver holds update data 116A, information for R 116B, information for L 116C, and own device information 116D.
- Own device information 116D is information indicating, for example, whether the own device is the right wireless earphone or the left wireless earphone.
- the receiver can determine whether to use update data 116A for L or R based on the own device information 116D.
- FIG. 9 is a diagram showing a second example of data stored in the receiver according to the first embodiment. Note that in this figure, an example is shown in which the receiver is wireless earphones 200A and 200B.
- the receiver instead of R information 116B and L information 116C, the receiver holds either R information 116B or L information 116C.
- the receiver can hold only the information necessary for its own device based on its own device information 116D.
- FIG. 10 is a timing chart showing a broadcast transmission method in BLE used for wireless communication in the first embodiment.
- the wireless communication device 100 scans the Primary Advertising Channel (37ch, 38ch, 39ch) to search for ADV_EXT_IND.
- the ADV_EXT_IND acquired by the wireless communication device 100 includes AuxPtr indicating the channel number of AUX_ADV_IND.
- the Adv Interval is set to, for example, 100 ms.
- the wireless communication device 100 scans the channel based on the AuxPtr indicating the channel number of AUX_ADV_IND.
- the AUX_ADV_IND acquired by the wireless communication device 100 contains the Local Name and Service UUID, and can be determined to be an Audio broadcast. It also contains a Broadcast ID for identifying the broadcast. It also contains SyncInfo indicating the channel number and timing of Periodic Advertising (AUX_SYN_IND).
- the Periodic Adv Interval is set to, for example, 10 ms.
- the wireless communication device 100 scans the channel based on SyncInfo, which indicates the channel number and timing of Periodic Advertising (AUX_SYN_IND).
- AUX_SYN_IND acquired by the wireless communication device 100 includes BIGInfo, which indicates the channel number and timing of the BIS Data.
- the wireless communication device 100 scans the channel based on the BIGInfo, which indicates the channel number and timing of the BIS Data. At this time, the wireless communication device 100 can obtain LC3 (Low Complexity Communications Codec) Audio data by receiving the BIS Data.
- the Iso Interval is set to, for example, 10 ms.
- the wireless communication device 100 can independently define the data of AUX_SYN_IND and inform the wireless communication device 200 that it is firmware data on the receiving side.
- FIG. 11 is a flowchart showing the transmission process in wireless communication according to the first embodiment.
- the packet generation unit 111 performs initialization processing for packet communication (S101).
- the broadcast transmission unit 112 performs a broadcast transmission process of the update data 116A (S102).
- the broadcast transmission of the update data 116A is performed by dividing the update data 116A for each index. Then, when the broadcast transmission unit 112 has broadcast-transmitted the update data 116A for one index, it transitions to a unicast reception process.
- the unicast communication unit 113 performs unicast reception processing for the update data 116A (S103).
- the unicast reception processing a unicast transmission request can be received.
- the unicast communication unit 113 performs a unicast transmission process of the update data 116A (S104).
- the update data 116A identified by the index specified in the unicast transmission request can be retransmitted.
- the communication control unit 114 determines whether all devices capable of communicating with the wireless communication device 100 have completed receiving all of the update data 116A (S105). If all devices capable of communicating with the wireless communication device 100 have completed receiving all of the update data 116A, the communication control unit 114 proceeds to S106. On the other hand, if all devices capable of communicating with the wireless communication device 100 have not completed receiving all of the update data 116A, the communication control unit 114 returns to S102.
- the unicast communication unit 113 executes update start command processing for all devices that can communicate with the wireless communication device 100 (S106).
- FIG. 12 is a flowchart showing the initialization process in the transmission process according to the first embodiment.
- the packet generation unit 111 calculates the number of packets of the update data 116A to be sent (S201).
- the packet generation unit 111 sets the packet index PDX to 0 (S202).
- the packet index PDX can indicate an index that identifies the divided update data 116A.
- the device to be updated may or may not be connected.
- all devices to be updated may be targeted for broadcast communication in order to reduce the number of unicast communications on the sending side.
- communication may be switched to unicast communication.
- FIG. 13 is a flowchart showing the broadcast transmission process in the transmission process according to the first embodiment.
- the packet generator 111 generates packets in which the update data 116A is divided and stored for each packet index PDX (S301).
- the broadcast transmission unit 112 broadcasts a packet [PDX] that stores the update data 116A identified by the packet index PDX (S302).
- the broadcast transmission unit 112 increments the packet index PDX by 1 (S303).
- the broadcast transmission unit 112 determines whether the packet index PDX is equal to the number of packets of the update data 116A (S304). If the packet index PDX is equal to the number of packets of the update data 116A, the broadcast transmission unit 112 sets the packet index PDX to 0 and ends the broadcast transmission of the packet [PDX]. On the other hand, if the packet index PDX is not equal to the number of packets of the update data 116A, the broadcast transmission unit 112 ends the broadcast transmission of the packet [PDX].
- FIG. 14 is a flowchart showing the unicast reception process in the transmission process according to the first embodiment.
- the unicast communication unit 113 analyzes the received packet that was sent by unicast (S401).
- the unicast communication unit 113 checks the contents of the received packet (S402). If the contents of the received packet are a retransmission request, the unicast communication unit 113 saves the packet index PDX of the update data 116A requested to be retransmitted (S403) and ends the process. On the other hand, if the contents of the received packet are reception complete or update preparation complete, the unicast communication unit 113 holds the reception complete state (S404) and ends the process.
- FIG. 15 is a flowchart showing the unicast transmission process in the transmission process according to the first embodiment.
- the unicast communication unit 113 determines whether or not there is a packet index PDX for the update data 116A for which retransmission has been requested (S501). If there is no packet index PDX for the update data 116A for which retransmission has been requested, the unicast communication unit 113 ends the process. On the other hand, if there is a packet index PDX for the update data 116A for which retransmission has been requested, the unicast communication unit 113 acquires the device information of the device to be retransmitted and the packet index PDX for the update data 116A for which retransmission has been requested (S502).
- the packet generator 111 creates a packet that stores the update data 116A that has been requested to be resent (S503).
- the unicast communication unit 113 unicasts the packet that contains the update data 116A that has been requested to be resent (S504).
- the unicast communication unit 113 judges whether the reception of the unicast transmitted packet was successful (S505). At this time, when the unicast communication unit 113 receives a reception completion notification of the unicast transmitted packet from the receiving side, it can judge that the reception of the unicast transmitted packet was successful. If the reception of the unicast transmitted packet was successful, the unicast communication unit 113 ends the process. On the other hand, if the reception of the unicast transmitted packet was unsuccessful, the process returns to S504 and the unicast transmission is repeated.
- FIG. 16 is a flowchart showing the update start command processing in the transmission process according to the first embodiment.
- the unicast communication unit 113 unicasts an update start command to all devices that have completed receiving all update data 116A (S601).
- the unicast communication unit 113 determines whether or not an update completion notification has been received from all devices that have completed receiving all of the update data 116A (S602). If the unicast communication unit 113 has received an update completion notification from all devices that have completed receiving all of the update data 116A, the process ends. On the other hand, if the unicast communication unit 113 has not received an update completion notification from all devices that have completed receiving all of the update data 116A, the process returns to S602 and repeats the unicast transmission of the update start command.
- FIG. 17 is a flowchart showing the reception process in wireless communication according to the first embodiment.
- the packet generation unit 211 performs initialization processing for packet communication (S701).
- the broadcast receiving unit 212 performs broadcast reception processing of the update data 116A
- the packet analyzing unit 217 performs analysis processing of the packets received by the broadcast receiving unit 212 (S702).
- the broadcast reception of the update data 116A is performed by dividing the update data 116A for each index.
- the packet analysis processing is performed for each piece of update data 116A that has been divided and packetized together with the index.
- the unicast communication unit 213 performs unicast reception processing of the update data 116A (S703).
- the update data 116A can be unicast received based on a retransmission request for the update data 116A included in the packet in which the packet error was detected.
- the unicast communication unit 213 performs unicast transmission processing for the update data 116A (S704).
- a unicast transmission request can be implemented.
- FIG. 18 is a flowchart showing the broadcast reception and packet analysis process in the reception process according to the first embodiment.
- the broadcast receiving unit 212 determines whether or not there is an error in the packet received by broadcast (S801). A checksum or the like can be used to determine whether or not there is an error in the packet. If there is an error in the packet received by broadcast, the broadcast receiving unit 212 discards the packet (S806) and ends the process. On the other hand, if there is no error in the packet received by broadcast, the broadcast receiving unit 212 moves the process to S802.
- the packet analysis unit 217 analyzes the packet that was received by broadcast. In analyzing this packet, it is possible to check the index stored in the packet and the contents of the packet.
- the packet analysis unit 217 determines whether the broadcast-received packet is an update transmission (S803). If the broadcast-received packet is not an update transmission, the packet analysis unit 217 proceeds to S806 and discards the packet. On the other hand, if the broadcast-received packet is an update transmission, the packet analysis unit 217 proceeds to S804.
- the update data writing unit 218 writes the update data to the storage unit 216 according to the index and additional information stored in the packet received by broadcast (S804), and updates the received information stored in the storage unit 216 (S805).
- the additional information is, for example, L/R information when the wireless communication device 200 is the wireless earphones 200A and 200B.
- FIG. 19 is a flowchart showing the unicast reception process in the reception process according to the first embodiment.
- the unicast communication unit 213 determines whether or not there is an error in the packet received by unicast (S901). A checksum or the like can be used to determine whether or not there is an error in the packet. If there is an error in the packet received by unicast, the unicast communication unit 213 requests a retransmission of the erroneous packet and returns to S901 (S906). On the other hand, if there is no error in the packet received by unicast, the unicast communication unit 213 moves the process to S902.
- the packet analysis unit 217 analyzes the packet received by unicast. This packet analysis makes it possible to determine the contents of the packet.
- the packet analysis unit 217 determines whether the packet received by unicast is a firmware data packet or an update execution command (S903). If the packet received by unicast is a firmware data packet, the packet analysis unit 217 proceeds to S904. On the other hand, if the packet received by broadcast is an update execution command, the packet analysis unit 217 proceeds to S907.
- the update data writing unit 218 writes the firmware contained in the packet to the storage unit 216 (S904) and updates the reception information stored in the storage unit 216 (S905).
- the update data writing unit 218 updates the firmware stored in the storage unit 216 (S907).
- FIG. 20 is a flowchart showing the unicast transmission process in the reception process according to the first embodiment.
- the unicast communication unit 213 determines whether to execute a unicast transmission request (S1101).
- the execution conditions for the unicast transmission request may be determined, for example, based on the data reception rate or the number of rounds of broadcast transmission. If the unicast communication unit 213 does not execute the unicast transmission request, it ends the process.
- the unicast communication unit 213 determines whether there are any unreceived packets (S1102). If there are any unreceived packets, the unicast communication unit 213 creates a unicast transmission request command (S1103). Note that in a unicast transmission request, all packets may be requested at once, or each packet may be requested.
- the unicast communication unit 213 unicasts the unicast transmission request command (S1104) and ends the process.
- the unicast communication unit 213 unicasts a reception completion notification (S1105) and ends the process.
- FIG. 21 is a diagram showing a first example of a wireless communication sequence according to the first embodiment.
- the transmitter 510 can use the wireless communication device 100, and the receivers 511 and 512 can use the wireless communication device 200. Also, in this figure, an example is shown in which the transmitter 510 communicates with two receivers 511 and 512, but the transmitter 510 may communicate with three or more receivers.
- the transmitter 510 requests device information of the receiver 511 and obtains the device information of the receiver 511 (P101).
- the receiver 511 unicasts the current version of the receiver 511's firmware and the version of the update data to the transmitter 510 (P102).
- the transmitter 510 requests device information of the receiver 512 and obtains the device information of the receiver 512 (P103).
- the receiver 512 unicasts the current version of the receiver 512's firmware and the version of the update data to the transmitter 510 (P104).
- the transmitter 510 checks the update availability status of each receiver 511, 512 based on the current version of the firmware and the version of the update data obtained from each receiver 511, 512 (P105).
- the transmitter 510 unicasts a request to update the firmware of each receiver 511, 512 to each receiver 511, 512 (P110, P111).
- each receiver 511, 512 receives a firmware update request from the transmitter 510, it executes firmware update processing for each receiver 511, 512 (P112, P113).
- each receiver 511, 512 executes the firmware update process for each receiver 511, 512, it unicasts an update completion notification to the transmitter 510 (P114, P115).
- FIG. 22 is a diagram showing a second example of a wireless communication sequence according to the first embodiment.
- each receiver 511, 512 unicasts a request to stop broadcasting the update data to the transmitter 510 (P203, P204).
- the transmitter 510 When the transmitter 510 receives a request to stop broadcasting the update data, it stops broadcasting the update data (P205).
- the transmitter 510 packets the divided update data together with the index, broadcasts it, and unicasts the update data based on a retransmission request specified by the index. This allows the transmitter 510 to complete reception of update data for all indexes without repeating broadcast transmission of the update data until reception is successful for all indexes. This makes it possible to complete updates for multiple receivers 511, 512 while suppressing an increase in bandwidth occupancy rate when transmitting update data.
- the transmitter 510 packetized the divided update data together with the index, broadcasted the packet, and unicasted the update data based on a retransmission request specified by the index.
- the transmitter 510 packetizes the divided update data together with the index, and broadcasts the packets for each index repeatedly.
- FIG. 23 is a diagram showing an example of a wireless communication sequence according to the second embodiment.
- the transmitter 510 can use the wireless communication device 100, and the receivers 511 to 513 can use the wireless communication device 200. Also, in the figure, an example is shown in which the transmitter 510 communicates with three receivers 511 to 513, but the transmitter 510 may communicate with four or more receivers.
- M is an integer such that 0 ⁇ M ⁇ N.
- the transmitter 510 packetizes the divided update data together with the index, and broadcasts the packets repeatedly for each index. This allows the transmitter 510 to transmit common update data to the multiple receivers 511, 512 in a batch while allowing each receiver 511, 512 to check the broadcast-transmitted update data for each index. This makes it possible to reduce the bandwidth occupancy rate when transmitting update data compared to a method in which update data is transmitted individually to the multiple receivers 511, 512. It also makes it easier to manage the correspondence between the update data divided and broadcast by the transmitter 510 and the update data divided and broadcast received by each receiver 511, 512.
- the transmitter 510 may broadcast the update data to all receivers 511 to 513, or may broadcast the update data to some of the receivers and unicast the update data to the remaining receivers. For example, if the transmitter 510 is to transmit update data to 100 receivers, it may broadcast the update data to 90 receivers and unicast the update data to the remaining 10 receivers. At this time, the communication control unit 114 may switch between broadcast transmission and unicast transmission based on a switching threshold between broadcast transmission and unicast transmission.
- firmware update data is used as an example of data that is packetized and broadcast together with an index.
- data that is packetized and broadcast together with an index may be voice guidance, simple firmware that is loaded and executed at a certain point, or data used for factory writing.
- Data that is packetized and broadcast together with an index may also be data or programs that operate drones, industrial robots, etc.
- the above-described embodiment shows an example for realizing the present technology, and there is a corresponding relationship between the matters in the embodiment and the matters specifying the invention in the claims. Similarly, there is a corresponding relationship between the matters specifying the invention in the claims and the matters in the embodiment of the present technology that have the same name.
- the present technology is not limited to the embodiment, and can be realized by making various modifications to the embodiment without departing from the gist of the technology.
- the effects described in this specification are merely examples and are not limiting, and other effects may also be present.
- the present technology can also be configured as follows.
- a wireless communication device including a broadcast transmission unit that broadcasts packetized divided data together with an index that identifies the divided data in BLE (Bluetooth Low Energy).
- BLE Bluetooth Low Energy
- the broadcast transmission unit repeats broadcast transmission of the index and the data.
- the data is firmware update data.
- the index includes information indicating the beginning and end of the divided data.
- the wireless communication device uses BIS (Broadcast Isochronous Streams) or Extended Advertising in the BLE for the broadcast transmission.
- a unicast communication unit that receives the index by unicast and transmits packetized divided data identified by the index by unicast;
- the wireless communication device according to any one of (1) to (6), further comprising a communication control unit that controls switching between a process of broadcasting the divided data together with an index identifying the divided data and a process of unicasting the divided data identified by the index.
- the communication control unit Switching to the broadcast transmission so that the data is divided and transmitted for each index;
- GATT General ATTribute
- L2CAP Logical Link Control and Adaptation Protocol
- BLE Bluetooth Low Energy
- a wireless communication device including a broadcast receiving unit that broadcasts and receives packetized divided data together with an index that identifies the divided data in BLE (Bluetooth Low Energy).
- the wireless communication device (11) The wireless communication device according to (10), wherein the broadcast receiving unit repeats broadcast reception of the index and the data. (12) The wireless communication device according to (10) or (11), wherein the data is firmware update data. (13) The wireless communication device according to any one of (10) to (12), wherein the index includes information indicating the beginning and end of the divided data. (14) The wireless communication device according to any one of (10) to (13), wherein the data is added with information indicating whether the data is used in common or individually at a receiving destination. (15) The wireless communication device according to any one of (10) to (14), wherein the broadcast receiving unit uses BIS (Broadcast Isochronous Streams) or Extended Advertising in the BLE for the broadcast reception.
- BIS Broadcast Isochronous Streams
- Extended Advertising in the BLE for the broadcast reception.
- a unicast communication unit that transmits the index by unicast and receives packetized divided data identified by the index by unicast;
- the wireless communication device according to any one of (10) to (15), further comprising a communication control unit that controls switching between a process of broadcast receiving the divided data together with an index identifying the divided data, and a process of unicast receiving the divided data identified by the index.
- the communication control unit Switching to the broadcast reception so that the data is divided and received for each index, The wireless communication device according to (16), wherein the wireless communication is switched to the unicast communication such that the unicast transmission and the unicast reception are performed between the broadcast receptions divided for each index.
- the transmitter comprises: a broadcast transmission unit that broadcasts the packetized data together with the index; a unicast communication unit that receives the index by unicast and transmits packetized data identified by the index by unicast; a communication control unit that controls switching between a process of broadcasting the data together with the index and a process of unicasting the data specified by the index;
- the receiver includes: a broadcast receiving unit that broadcasts and receives the packetized data together with the index; a unicast communication unit that transmits the index by unicast and receives packetized data identified by the index by unicast;
- the wireless communication system according to (19), further comprising a communication control unit that controls switching between a process of broadcast receiving the data together with the index and a process of unicast receiving the data identified by the index.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
送信側で分割してブロードキャスト送信されるデータと、受信側で分割してブロードキャスト受信されるデータとの対応関係の管理を容易化する。 無線通信装置は、BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された分割されたデータをブロードキャスト送信するブロードキャスト送信部を備える。インデックスをユニキャスト受信し、インデックスで特定されるパケット化されたデータをユニキャスト送信するユニキャスト通信部と、分割されたデータを特定するインデックスとともに分割されたデータをブロードキャスト送信する処理と、インデックスで特定された分割されたデータをユニキャスト送信する処理との切替を制御する通信制御部とをさらに備えてもよい。
Description
本技術は、無線通信装置および無線通信システムに関する。詳しくは、本技術は、ブロードキャスト通信およびユニキャスト通信が用いられる無線通信装置および無線通信システムに関する。
移動通信システムでは、無線通信に基づいてブロードキャストサービスを提供するものがある。例えば、ブロードキャストサービス配布/適応部およびブロードキャストサービス加入管理部を含む移動体ブロードキャストシステムにおける端末機のファームウェアアップデート方法が提案されている(例えば、特許文献1参照)。
しかしながら、上述の従来技術では、データを分割して送信するときに、その分割されたデータを特定するインデックスおよびそのデータをパケット化することなく、ブロードキャストされる。このため、送信側で分割してブロードキャスト送信されるデータと、受信側で分割してブロードキャスト受信されるデータとの対応関係の管理が困難になるおそれがあった。
本技術はこのような状況に鑑みて生み出されたものであり、送信側で分割してブロードキャスト送信されるデータと、受信側で分割してブロードキャスト受信されるデータとの対応関係の管理を容易化することを目的とする。
本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト送信するブロードキャスト送信部を備える無線通信装置である。これにより、ブロードキャスト送信されたデータをインデックスごとに受信側で確認可能としつつ、共通のデータが複数の受信機に一括送信されるという作用をもたらす。
また、第1の側面において、前記ブロードキャスト送信部は、前記インデックスおよび前記データのブロードキャスト送信を繰り返してもよい。これにより、共通のデータを複数の受信機に一括送信しつつ、ブロードキャスト送信されたデータの受信漏れが防止されるという作用をもたらす。
また、第1の側面において、前記データは、ファームウェアのアップデートデータでもよい。これにより、ブロードキャスト送信されたアップデートデータをインデックスごとに受信側で確認可能としつつ、共通のアップデートデータが複数の受信機に一括送信されるという作用をもたらす。
また、第1の側面において、前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含んでもよい。これにより、分割されたデータが受信側で特定されるという作用をもたらす。
また、第1の側面において、前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加されてもよい。これにより、使用されるデータが受信先で判断されるという作用をもたらす。
また、第1の側面において、前記ブロードキャスト送信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト送信に用いてもよい。これにより、BLEが実装されたデバイスでブロードキャスト送信が実施されるという作用をもたらす。
また、第1の側面において、前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト送信するユニキャスト通信部と、前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト送信する処理と、前記インデックスで特定された分割されたデータをユニキャスト送信する処理との切替を制御する通信制御部とをさらに備えてもよい。これにより、共通のデータを複数の受信機に一括送信することを可能としつつ、個別のデータが受信機に個別に送信されるという作用をもたらす。
また、第1の側面において、前記通信制御部は、前記インデックスごとに前記データが分割されて送信されるように前記ブロードキャスト送信に切り替え、前記インデックスごとに分割されたブロードキャスト送信の間で前記ユニキャスト受信および前記ユニキャスト送信が実施されるように前記ユニキャスト通信に切り替えてもよい。これにより、全てのインデックスについてブロードキャスト送信が完了するまで待機することなく、個別のデータが受信機に個別に送信されるという作用をもたらす。
また、第1の側面において、前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いてもよい。これにより、BLEが実装されたデバイスでユニキャスト通信が実施されるという作用をもたらす。
また、第2の側面は、BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト受信するブロードキャスト受信部を備える無線通信装置である。これにより、ブロードキャスト受信したデータをインデックスごとに受信側で確認可能としつつ、共通のデータが複数の受信機で一括受信されるという作用をもたらす。
また、第2の側面において、前記ブロードキャスト受信部は、前記インデックスおよび前記データのブロードキャスト受信を繰り返してもよい。これにより、共通のデータを複数の受信機で一括受信しつつ、ブロードキャスト受信したデータの受信漏れが防止されるという作用をもたらす。
また、第2の側面において、前記データは、ファームウェアのアップデートデータでもよい。これにより、ブロードキャスト受信したアップデートデータをインデックスごとに受信側で確認可能としつつ、共通のアップデートデータが複数の受信機で一括受信されるという作用をもたらす。
また、第2の側面において、前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含んでもよい。これにより、分割されたデータが受信側で特定されるという作用をもたらす。
また、第2の側面において、前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加されてもよい。これにより、使用されるデータが受信先で判断されるという作用をもたらす。
また、第2の側面において、前記ブロードキャスト受信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト受信に用いてもよい。これにより、BLEが実装されたデバイスでブロードキャスト受信が実施されるという作用をもたらす。
また、第2の側面において、前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト受信するユニキャスト通信部と、前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト受信する処理と、前記インデックスで特定された分割されたデータをユニキャスト受信する処理との切替を制御する通信制御部とをさらに備えてもよい。これにより、共通のデータを複数の受信機で一括受信することを可能としつつ、個別のデータが受信機で個別に受信されるという作用をもたらす。
また、第2の側面において、前記通信制御部は、前記インデックスごとに前記データが分割されて受信されるように前記ブロードキャスト受信に切り替え、前記インデックスごとに分割されたブロードキャスト受信の間で前記ユニキャスト送信および前記ユニキャスト受信が実施されるように前記ユニキャスト通信に切り替えてもよい。これにより、全てのインデックスについてブロードキャスト受信が完了するまで待機することなく、個別のデータが受信機で個別に受信されるという作用をもたらす。
また、第2の側面において、前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いてもよい。これにより、BLEが実装されたデバイスでユニキャスト通信が実施されるという作用をもたらす。
また、第3の側面は、BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともに前記分割されたデータをパケット化してブロードキャスト送信する送信機と、前記インデックスとともにパケット化された前記分割されたデータをブロードキャスト受信する受信機とを備える無線通信システムである。これにより、ブロードキャスト送信されたデータをインデックスごとに受信側で確認可能としつつ、単一の送信機から一括送信された共通のデータが複数の受信機で一括受信されるという作用をもたらす。
また、第3の側面において、前記送信機は、前記インデックスとともにパケット化された前記データをブロードキャスト送信するブロードキャスト送信部と、前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化されたデータをユニキャスト送信するユニキャスト通信部と、前記インデックスとともに前記データをブロードキャスト送信する処理と、前記インデックスで特定されたデータをユニキャスト送信する処理との切替を制御する通信制御部とを備え、前記受信機は、前記インデックスとともにパケット化された前記データをブロードキャスト受信するブロードキャスト受信部と、前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化されたデータをユニキャスト受信するユニキャスト通信部と、前記インデックスとともに前記データをブロードキャスト受信する処理と、前記インデックスで特定されたデータをユニキャスト受信する処理との切替を制御する通信制御部とを備えてもよい。これにより、単一の送信機から一括送信された共通のデータが複数の受信機で一括受信されることを可能としつつ、単一の送信機から送信された個別のデータが受信機で個別に受信されるという作用をもたらす。
以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(分割されたデータを特定するインデックスとともにデータをブロードキャスト送信し、インデックスのユニキャスト受信結果に基づいて、インデックスで特定されたデータをユニキャスト送信する例)
2.第2の実施の形態(分割されたデータを特定するインデックスおよびデータのブロードキャスト送信を繰り返す例)
1.第1の実施の形態(分割されたデータを特定するインデックスとともにデータをブロードキャスト送信し、インデックスのユニキャスト受信結果に基づいて、インデックスで特定されたデータをユニキャスト送信する例)
2.第2の実施の形態(分割されたデータを特定するインデックスおよびデータのブロードキャスト送信を繰り返す例)
<1.第1の実施の形態>
図1は、第1の実施の形態に係る無線通信システムの構成例を示す図である。
図1は、第1の実施の形態に係る無線通信システムの構成例を示す図である。
同図において、この無線通信システムは、スマートフォン100Sおよびワイヤレスイヤホン200A、200Bを備える。ワイヤレスイヤホン200A、200Bは、BLE(Bluetooth Low Energy)を用いたスマートフォン100Sとの間の無線通信に基づいて、TWS(True Wireless Stereo)を実現することができる。
スマートフォン100Sは、無線通信に基づいて、ワイヤレスイヤホン200A、200Bのファームウェアをアップデートすることができる。このとき、スマートフォン100Sは、ワイヤレスイヤホン200A、200Bのファームウェアのアップデートデータを分割し、その分割したアップデートデータにインデックスを付与することができる。スマートフォン100Sは、分割されたアップデートデータを特定するインデックスとともにアップデートデータをパケット化してブロードキャスト送信することができる。
ワイヤレスイヤホン200A、200Bは、スマートフォン100Sからブロードキャスト送信されたアップデートデータに基づいて、ワイヤレスイヤホン200A、200Bのファームウェアをアップデートする。このとき、ワイヤレスイヤホン200A、200Bは、スマートフォン100Sからブロードキャスト送信されたアップデートデータの欠落がないかどうかを判断する。そして、ワイヤレスイヤホン200A、200Bは、ブロードキャスト送信されたアップデートデータの欠落がある場合、アップデートデータの欠落部分のインデックスを特定する。そして、ワイヤレスイヤホン200A、200Bは、そのインデックスで特定されるアップデートデータの欠落部分の再送要求をスマートフォン100Sにユニキャスト送信する。
スマートフォン100Sは、インデックスで特定されるアップデートデータの欠落部分の再送要求をユニキャスト受信すると、そのインデックスで特定されるアップデートデータの欠落部分をワイヤレスイヤホン200A、200Bにユニキャスト送信する。
ワイヤレスイヤホン200A、200Bは、スマートフォン100Sからユニキャスト送信されたアップデートデータに基づいて、ワイヤレスイヤホン200A、200Bのファームウェアの未更新部分をアップデートする。
図2は、第1の実施の形態に係る送信機の機能的な構成例を示すブロック図である。
同図において、無線通信装置100は、ブロードキャスト送信およびユニキャスト通信を実施する。このとき、無線通信装置100は、BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingをブロードキャストに用いることができる。無線通信装置100は、BLEにおけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)をユニキャストに用いることができる。無線通信装置100は、スマートフォン100Sでもよい。
無線通信装置100は、パケット生成部111、ブロードキャスト送信部112、ユニキャスト通信部113、通信制御部114、無線通信部115および記憶部116を備える。無線通信装置100は、無線通信部115を介してアンテナ101に接続される。
パケット生成部111は、送信データをパケット化する。この送信データは、無線通信装置100と通信可能なデバイスのファームウェアのアップデートデータでもよい。このデバイスは、ワイヤレスイヤホン200A、200Bでもよい。パケットは、ヘッダおよびペイロードを備える。ヘッダには、分割された送信データを特定するインデックスが格納される。インデックスは、分割された送信データの先頭および後端を示す情報を含んでもよい。送信データの分割は、送信可能容量を単位として実施することができる。送信データのパケット化は、インデックスごとに実施することができる。ペイロードには、ファームウェアのアップデートデータが格納される。アップデートデータには、受信先で共通に使用されるか個別に使用されるかを示す情報が付加されてもよい。
ブロードキャスト送信部112は、分割された送信データを特定するインデックスとともにパケット化された送信データをブロードキャスト送信する。このとき、ブロードキャスト送信部112は、インデックスとともにパケット化された送信データをインデックスごとにブロードキャスト送信してもよい。また、ブロードキャスト送信部112は、無線通信装置100と通信可能なデバイスを確認することなく、送信データおよびインデックスのブロードキャスト送信を開始してもよい。あるいは、ブロードキャスト送信部112は、無線通信装置100と通信可能なデバイスを確認してから、送信データおよびインデックスのブロードキャスト送信を開始してもよい。このとき、ブロードキャスト送信部112は、無線通信装置100と通信可能な複数のデバイスを確認したときに、送信データおよびインデックスのブロードキャスト送信を開始してもよい。ブロードキャスト送信部112は、送信先が受信可能かどうかを送信前に確認してもよい。また、ブロードキャスト送信部112は、送信データおよびインデックスのブロードキャスト送信を繰り返してもよい。このとき、送信データおよびインデックスのブロードキャスト送信の繰り返し回数は予め定められてもよい。あるいは、ブロードキャスト送信部112は、無線通信装置100の通信環境に応じて送信データおよびインデックスのブロードキャスト送信の繰り返し回数を変更してもよい。あるいは、ブロードキャスト送信部112は、無線通信装置100と通信可能なデバイスの個数に応じて送信データおよびインデックスのブロードキャスト送信の繰り返し回数を設定してもよい。
ユニキャスト通信部113は、分割された送信データを特定するインデックスをユニキャスト受信する。また、ユニキャスト通信部113は、そのインデックスで特定されるパケット化された送信データをユニキャスト送信する。このとき、ユニキャスト通信部113は、そのインデックスで特定される送信データの再送要求に基づいて、そのインデックスで特定されるパケット化された送信データをユニキャスト送信してもよい。
通信制御部114は、分割されたデータを特定するインデックスとともにデータをブロードキャスト送信する処理と、そのインデックスで特定されたデータをユニキャスト送信する処理との切替を制御する。このとき、通信制御部114は、無線通信装置100と通信可能なデバイスが確認されないときは、ブロードキャスト送信に切り替えてもよい。あるいは、通信制御部114は、無線通信装置100と通信可能な単一のデバイスを確認したときは、ユニキャスト送信に切り替え、無線通信装置100と通信可能な複数のデバイスを確認したときは、ブロードキャスト送信に切り替えてもよい。あるいは、通信制御部114は、ブロードキャスト送信した複数のデバイスのうちの全てのデバイスから受信完了の通知を受信するまでブロードキャスト送信を繰り返してもよい。あるいは、通信制御部114は、ブロードキャスト送信したときに複数のデバイスのうちの一部のデバイスから受信完了の通知を受信したら、受信完了の通知を受信してないデバイスに対してユニキャスト通信に切り替えてもよい。
通信制御部114は、ブロードキャスト送信とユニキャスト通信との切替では、インデックスごとに分割されたブロードキャスト送信の間でユニキャスト受信およびユニキャスト送信が実施されるようにユニキャスト通信に切り替えてもよい。これにより、ユニキャスト通信部113は、全てのインデックスについてブロードキャスト送信が完了するまで待機することなく、インデックスで特定されるデータを個別に送信することができる。
通信制御部114は、最大ユニキャスト接続数(例えば、10台)、ブロードキャスト送信とユニキャスト送信との切替閾値(例えば、4台)をブロードキャスト送信とユニキャスト通信との切替の判断に用いてもよい。切替閾値は、ユニキャスト接続するデバイスのうち、「データ送信が完了したデバイス」の閾値である。例えば、7台で構成されているホームスピーカーシステムであれば、切替閾値を4台に設定した場合、4台から受信完了通知がくるまでは、ブロードキャスト送信し、4台から完了通知がきたら、ユニキャスト送信に切替えることができる。また、通信制御部114は、受信先ごとの受信可否状態(例えば、ブロードキャスト受信の可否)や受信先ごとのブロードキャスト完了状況(例えば、完了または未完)をブロードキャスト送信とユニキャスト通信との切替の判断に用いてもよい。また、通信制御部114は、受信先ごとのユニキャスト送信リクエストパケットインデックス(例えば、L側が1、4、20、R側が3、5)や送信完了状況(例えば、完了または未完)をブロードキャスト送信とユニキャスト通信との切替の判断に用いてもよい。
無線通信部115は、送信するベースバンド信号を無線周波数帯域に変換したり、受信した無線周波数信号をベースバンド帯域に変換したりする。また、無線通信部115は、送信信号や受信信号を増幅する。無線通信部115は、アンテナ101に接続される。
記憶部116は、アップデートデータ116Aを記憶する。記憶部116は、フラッシュメモリでもよいし、SDカードでもよい。
図3は、第1の実施の形態に係る送信機のハードウェア構成例を示すブロック図である。
同図において、無線通信装置100は、プロセッサ121、通信制御デバイス122、通信インタフェース123、主記憶部125、補助記憶部126および入出力インタフェース124を備える。プロセッサ121、通信制御デバイス122、通信インタフェース123、主記憶部125、補助記憶部126および入出力インタフェース124は、内部バス127を介して相互に接続されている。主記憶部125および補助記憶部126は、プロセッサ121からアクセス可能である。通信制御デバイス122は、通信インタフェース123を介してアンテナ101に接続される。
また、無線通信装置100には、入力装置102および出力装置103が設けられている。入力装置102および出力装置103は、入出力インタフェース124を介して内部バス127に接続されている。入力装置102は、例えば、キーボード、マウス、タッチパネル、カードリーダ、マイクである。出力装置103は、例えば、画面表示装置(液晶モニタ、有機EL(Electro Luminescence)ディスプレイ、グラフィックカード等)、スピーカ、プリンタである。
プロセッサ121は、無線通信装置100全体の動作制御を司るハードウェアである。プロセッサ121は、CPU(Central Processing Unit)でもよいし、GPU(Graphics Processing Unit)でもよい。プロセッサ121は、シングルコアプロセッサでもよいし、マルチコアプロセッサでもよい。プロセッサ121は、処理の一部を行うアクセラレータなどのハードウェア回路(例えば、FPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit))を備えてもよい。
主記憶部125は、例えば、SRAM(Static Random Access Memory)またはDRAM(Dynamic Random Access Memory)などの半導体メモリから構成することができる。主記憶部125には、プロセッサ121が実行中のプログラムを格納したり、プロセッサ121がプログラムを実行するためのワークエリアを設けたりすることができる。
補助記憶部126は、大容量の記憶容量を備える記憶デバイスであり、例えば、フラッシュメモリまたはSDカードである。補助記憶部126は、各種プログラムの実行ファイルやプログラムの実行に用いられるデータを保持することができる。補助記憶部126には、通信処理プログラム126Aおよびアップデートデータ116Aを格納することができる。通信処理プログラム126Aは、無線通信装置100にインストール可能なソフトウェアでもよいし、無線通信装置100にファームウェアとして組み込まれてもよい。アップデートデータ116Aは、通信相手のファームウェアのアップデートに用いられる。
通信制御デバイス122は、外部との通信を制御する機能を備えるハードウェアである。通信制御デバイス122は、通信インタフェース123を介して通信相手に接続される。この接続には、BLEを用いることができる。
また、通信制御デバイス122は、通信インタフェース123を介してネットワークに接続される。ネットワークは、インターネットなどのWAN(Wide Area Network)であってもよいし、WiFiまたはイーサネット(登録商標)などのLAN(Local Area Network)であってもよいし、WANとLANが混在していてもよい。ネットワークは、セルラーネットワークでもよい。
入出力インタフェース124は、入力装置102から入力されるデータをプロセッサ121が処理可能なデータ形式に変換したり、プロセッサ121から出力されるデータを出力装置103が処理可能なデータ形式に変換したりする。
プロセッサ121は、通信処理プログラム126Aを主記憶部125に読み出し、通信処理プログラム126Aを実行することにより、無線通信装置100の無線通信処理を実施することができる。この無線通信処理では、BLEを用いたアップデートデータ116Aのブロードキャスト送信処理およびユニキャスト通信処理を実施することができる。また、この無線通信処理は、ブロードキャスト送信およびユニキャスト通信に用いられるパケットの生成処理を含むことができる。アップデートデータ116Aのパケット化は、分割されたアップデートデータ116Aを特定するインデックスごとに実施することができる。また、この無線通信処理は、アップデートデータ116Aのブロードキャスト送信とユニキャスト通信との切替処理を含むことができる。
なお、通信処理プログラム126Aの実行は、複数のプロセッサやコンピュータに分担させてもよい。あるいは、プロセッサ121は、ネットワークを介してクラウドコンピュータなどに通信処理プログラム126Aの全部または一部の実行を指示し、その実行結果を受け取るようにしてもよい。
図4は、第1の実施の形態に係る受信機の機能的な構成例を示すブロック図である。
同図において、無線通信装置200は、ブロードキャスト受信およびユニキャスト通信を実施する。このとき、無線通信装置200は、BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingをブロードキャストに用いることができる。無線通信装置200は、BLEにおけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)をユニキャストに用いることができる。無線通信装置200は、ワイヤレスイヤホン200A、200Bでもよいし、多チャンネルオ-ディオシステムでもよいし、店舗や通路や駅舎や空港や観光地などに設置されたビーコンでもよいし、メッシュ通信機器でもよい。
無線通信装置200は、パケット生成部211、ブロードキャスト受信部212、ユニキャスト通信部213、通信制御部214、無線通信部215および記憶部216を備える。また、無線通信装置200は、パケット解析部217、アップデートデータ書込部218および受信状況管理部219を備える。無線通信装置200は、無線通信部215を介してアンテナ201に接続される。
パケット生成部211は、送信データをパケット化する。この送信データは、無線通信装置100から送信されたアップデートデータの再送要求でもよい。また、この送信データは、自デバイスのデバイス情報を含んでもよいし、自デバイスのファームウェアの現在のバージョン情報を含んでもよい。
ブロードキャスト受信部212は、分割された送信データを特定するインデックスとともにパケット化された送信データをブロードキャスト受信する。このとき、ブロードキャスト受信部212は、分割された送信データをインデックスごとにブロードキャスト受信してもよい。また、ブロードキャスト受信部212は、送信データの送信元を確認することなく、インデックスとともにパケット化された送信データのブロードキャスト受信を開始してもよい。あるいは、ブロードキャスト受信部212は、送信データの送信元を確認してから、インデックスとともにパケット化された送信データのブロードキャスト受信を開始してもよい。ブロードキャスト受信部212は、受信可能かどうかを送信元に通知してもよい。また、ブロードキャスト受信部212は、インデックスとともにパケット化された送信データのブロードキャスト受信を各インデックスについて繰り返してもよい。このとき、インデックスとともにパケット化された送信データのブロードキャスト受信の繰り返し回数は予め定められてもよい。あるいは、ブロードキャスト受信部212は、無線通信装置200の通信環境に応じて送信データおよびインデックスのブロードキャスト受信の繰り返し回数を変更してもよい。
ユニキャスト通信部213は、分割された送信データを特定するインデックスをユニキャスト送信する。このとき、ユニキャスト通信部213は、そのインデックスで特定される送信データの再送を要求してもよい。また、ユニキャスト通信部213は、そのインデックスで特定されるパケット化された送信データをユニキャスト受信する。
通信制御部214は、分割されたデータを特定するインデックスとともにデータをブロードキャスト受信する処理と、そのインデックスで特定されたデータをユニキャスト受信する処理との切替を制御する。このとき、通信制御部214は、送信データの送信元を確認することなく、ブロードキャスト受信に切り替えてもよい。通信制御部214は、全てのインデックスについてブロードキャスト受信が成功するまでブロードキャスト受信を繰り返してもよい。あるいは、通信制御部214は、あるインデックスについてブロードキャスト受信が失敗したときにユニキャスト受信に切り替えてもよい。あるいは、通信制御部214は、あるインデックスについてブロードキャスト受信が失敗したときにユニキャスト送信に切り替えて、そのインデックスについて再送要求を実施してもよい。
通信制御部214は、ブロードキャスト受信とユニキャスト通信との切替では、インデックスごとに分割されたブロードキャスト受信の間でユニキャスト送信およびユニキャスト受信が実施されるようにユニキャスト通信に切り替えてもよい。これにより、ユニキャスト通信部213は、全てのインデックスについてブロードキャスト受信が完了するまで待機することなく、インデックスで特定されるデータを個別に受信することができる。
無線通信部215は、送信するベースバンド信号を無線周波数帯域に変換したり、受信した無線周波数信号をベースバンド帯域に変換したりする。また、無線通信部215は、送信信号や受信信号を増幅する。無線通信部215は、アンテナ201に接続される。
記憶部216は、アップデートデータ116A、プログラム216Bおよび付加情報216Cを記憶する。プログラム216Bは、無線通信装置200全体の処理を司る。アップデートデータ116Aは、プログラム216Bのアップデートに用いられる。付加情報216Cは、アップデートデータ116Aに付加される。付加情報216Cは、アップデートデータ116Aのバージョン情報や、アップデートデータ116Aのペア情報を含んでもよい。このペア情報は、例えば、無線通信装置200がワイヤレスイヤホン200A、200Bに搭載されるときのL/Rを示す情報である。記憶部216は、フラッシュメモリでもよいし、SDカードでもよい。
パケット解析部217は、ブロードキャスト受信部212またはユニキャスト通信部213で受信されたパケットを解析する。この解析では、例えば、ブロードキャスト受信部212またはユニキャスト通信部213で受信されたアップデートデータ116Aに欠落がないかどうかを判断することができる。そして、アップデートデータ116Aに欠落がある場合、その欠落部分のインデックスを特定することができる。
アップデートデータ書込部218は、パケット解析部217で解析されたアップデートデータ116Aを記憶部216に書込み、プログラム216Bをアップデートする。このとき、アップデートデータ書込部218は、ブロードキャスト受信部212またはユニキャスト通信部213で受信に成功したパケットに含まれるアップデートデータ116Aを記憶部216に書込む。一方、アップデートデータ書込部218は、ブロードキャスト受信部212またはユニキャスト通信部213で受信に失敗したパケットに含まれるアップデートデータ116Aは破棄することができる。
受信状況管理部219は、アップデートデータ書込部218にて書込まれるアップデートデータ116Aに基づいて、ブロードキャスト受信部212またはユニキャスト通信部213で受信されるパケットの受信状況を管理する。この受信状況に関する情報は、例えば、未受信パケットインデックス(例えば、1、4、20)、総パケット数(例えば、1024)、受信開始パケットインデックス(例えば、10)、ユニキャスト切替受信完了率閾値(例えば、70%)を含んでもよい。
図5は、第1の実施の形態に係る受信機のハードウェア構成例を示すブロック図である。
同図において、無線通信装置200は、プロセッサ221、通信制御デバイス222、通信インタフェース223、主記憶部225、補助記憶部226および入出力インタフェース224を備える。プロセッサ221、通信制御デバイス222、通信インタフェース223、主記憶部225、補助記憶部226および入出力インタフェース224は、内部バス227を介して相互に接続されている。主記憶部225および補助記憶部226は、プロセッサ221からアクセス可能である。通信制御デバイス222は、通信インタフェース223を介してアンテナ201に接続される。
また、無線通信装置200には、入力装置202および出力装置203が設けられている。入力装置202および出力装置203は、入出力インタフェース224を介して内部バス227に接続されている。入力装置202は、例えば、キーボード、マウス、タッチパネル、カードリーダ、マイクである。出力装置203は、例えば、画面表示装置(液晶モニタ、有機ELディスプレイ、グラフィックカード等)、スピーカ、プリンタである。
プロセッサ221は、無線通信装置200全体の動作制御を司るハードウェアである。プロセッサ221は、CPUでもよいし、GPUでもよい。プロセッサ221は、シングルコアプロセッサでもよいし、マルチコアプロセッサでもよい。プロセッサ221は、処理の一部を行うアクセラレータなどのハードウェア回路(例えば、FPGまたはASIC)を備えてもよい。
主記憶部225は、例えば、SRAMまたはDRAMなどの半導体メモリから構成することができる。主記憶部225には、プロセッサ221が実行中のプログラムを格納したり、プロセッサ221がプログラムを実行するためのワークエリアを設けたりすることができる。
補助記憶部226は、大容量の記憶容量を備える記憶デバイスであり、例えば、フラッシュメモリまたはSDカードである。補助記憶部226は、各種プログラムの実行ファイルやプログラムの実行に用いられるデータを保持することができる。補助記憶部226には、通信処理プログラム226Aを格納することができる。通信処理プログラム226Aは、無線通信装置200にインストール可能なソフトウェアでもよいし、無線通信装置200にファームウェアとして組み込まれてもよい。
通信制御デバイス222は、外部との通信を制御する機能を備えるハードウェアである。通信制御デバイス222は、通信インタフェース223を介して通信相手に接続される。この接続には、BLEを用いることができる。
入出力インタフェース224は、入力装置202から入力されるデータをプロセッサ221が処理可能なデータ形式に変換したり、プロセッサ221から出力されるデータを出力装置203が処理可能なデータ形式に変換したりする。
プロセッサ221は、通信処理プログラム226Aを主記憶部225に読み出し、通信処理プログラム226Aを実行することにより、無線通信装置200の無線通信処理を実施することができる。この無線通信処理では、BLEを用いたアップデートデータ116Aのブロードキャスト受信処理およびユニキャスト通信処理を実施することができる。また、この無線通信処理は、ユニキャスト通信に用いられるパケットの生成処理を含むことができる。また、この無線通信処理は、アップデートデータ116Aのブロードキャスト受信とユニキャスト通信との切替処理を含むことができる。
図6は、第1の実施の形態に係る無線通信に用いられるパケットの構成の第1の例を示す図である。
同図において、パケットには、エントリ301、302が設けられる。エントリ301には、ヘッダが格納され、エントリ302には、ペイロードが格納される。エントリ301には、エントリ311、321が設けられる。エントリ311には、サイン(Signature)が格納され、エントリ321には、インデックスが格納される。エントリ302には、インデックス=0に対応してエントリ312、322が設けられ、インデックス=1-N(Nは正の整数)に対応してエントリ332が設けられる。エントリ312には、総インデックス数が格納され、エントリ322には、最終ペイロードサイズが格納される。エントリ332には、アップデートデータが格納される。
図7は、第1の実施の形態に係る無線通信に用いられるパケットの構成の第2の例を示す図である。
同図において、このパケットには、図6のパケットのエントリ301にエントリ331が追加される。エントリ331には、デバイス情報が格納される。同図のパケットのそれ以外の構成は、上述の図6のパケットの構成と同様である。デバイス情報は、例えば、アップデートデータ332がワイヤレスイヤホン200A、200Bのファームウェアのアップデートに用いられるときのL/Rに関する情報である。
図8は、第1の実施の形態に係る受信機の保持されるデータの第1の例を示す図である。なお、同図では、受信機がワイヤレスイヤホン200A、200Bである例を示した。
同図において、受信機には、アップデートデータ116A、R用情報116B、L用情報116Cおよび自デバイス情報116Dが保持される。自デバイス情報116Dは、例えば、自デバイスが右側のワイヤレスイヤホンか左側のワイヤレスイヤホンかを示す情報である。受信機は、自デバイス情報116Dに基づいて、L用とR用のどちらのアップデートデータ116Aを用いるか判断することができる。
図9は、第1の実施の形態に係る受信機の保持されるデータの第2の例を示す図である。なお、同図では、受信機がワイヤレスイヤホン200A、200Bである例を示した。
同図において、受信機には、R用情報116BおよびL用情報116Cに代えて、R用情報116BおよびL用情報116Cのいずれか一方が保持される。受信機は、自デバイス情報116Dに基づいて、自デバイスに必要な情報のみを保持することができる。
図10は、第1の実施の形態に係る無線通信に用いられるBLEにおけるブロードキャスト送信方法を示すタイミングチャートである。
同図において、無線通信装置100は、Primary Advertising Channel(37ch,38ch,39ch)をスキャンして、ADV_EXT_INDを探索する。このとき、無線通信装置100が取得したADV_EXT_INDには、AUX_ADV_INDのチャネル番号を示すAuxPtrが含まれる。なお、Adv Intervalは、例えば、100msに設定される。
次に、無線通信装置100は、AUX_ADV_INDのチャネル番号を示すAuxPtrに基づいて、そのチャネルをスキャンする。このとき、無線通信装置100が取得したAUX_ADV_INDには、Local NameやService UUIDが含まれ、Audioのブロードキャストであると判断することができる。また、そのブロードキャストを識別するためのBroadcast IDも含まれる。さらに、Periodic Advertising(AUX_SYN_IND)のチャネル番号やタイミングを示すSyncInfoも含まれる。なお、Periodic Adv Intervalは、例えば、10msに設定される。
次に、無線通信装置100は、Periodic Advertising(AUX_SYN_IND)のチャネル番号やタイミングを示すSyncInfoに基づいて、そのチャネルをスキャンする。このとき、無線通信装置100が取得したAUX_SYN_INDには、BIS Dataのチャネル番号やタイミングを示すBIGInfoが含まれる。
次に、無線通信装置100は、BIS Dataのチャネル番号やタイミングを示すBIGInfoに基づいて、そのチャネルをスキャンする。このとき、無線通信装置100は、BIS Dataを受信することで、LC3(Low Complexity Communications Codec)のAudioデータを取得することができる。なお、Iso Intervalは、例えば、10msに設定される。
ここで、無線通信装置100は、AUX_SYN_INDのデータを独自に定義して、受信側のファームウェアデータであることを無線通信装置200に伝えることができる。
図11は、第1の実施の形態に係る無線通信における送信処理を示すフローチャートである。
同図において、パケット生成部111は、パケット通信の初期化処理を実施する(S101)。
次に、ブロードキャスト送信部112は、アップデートデータ116Aのブロードキャスト送信処理を実施する(S102)。アップデートデータ116Aのブロードキャスト送信は、インデックスごとにアップデートデータ116Aを分割して実施される。そして、ブロードキャスト送信部112は、1つのインデックスについてのアップデートデータ116Aをブロードキャスト送信すると、ユニキャスト受信処理に移行させる。
次に、ユニキャスト通信部113は、アップデートデータ116Aについてのユニキャスト受信処理を実施する(S103)。ユニキャスト受信処理では、ユニキャスト送信リクエストを受信することができる。
次に、ユニキャスト通信部113は、アップデートデータ116Aのユニキャスト送信処理を実施する(S104)。このユニキャスト送信処理では、ユニキャスト送信リクエストで指定されるインデックスで特定されるアップデートデータ116Aを再送することができる。
次に、通信制御部114は、無線通信装置100と通信可能な全てのデバイスが全てのアップデートデータ116Aの受信を完了したかどうかを判断する(S105)。通信制御部114は、無線通信装置100と通信可能な全てのデバイスが全てのアップデートデータ116Aの受信を完了した場合、S106に処理を進める。一方、通信制御部114は、無線通信装置100と通信可能な全てのデバイスが全てのアップデートデータ116Aの受信を完了してない場合、S102に処理を戻す。
次に、ユニキャスト通信部113は、無線通信装置100と通信可能な全てのデバイスについてアップデート開始コマンド処理を実施する(S106)。
図12は、第1の実施の形態に係る送信処理における初期化処理を示すフローチャートである。
同図において、パケット生成部111は、送信するアップデートデータ116Aのパケット数を算出する(S201)。
次に、パケット生成部111は、パケットインデックスPDXを0に設定する(S202)。パケットインデックスPDXは、分割されたアップデートデータ116Aを特定するインデックスを示すことができる。
なお、初期化処理では、アップデート対象デバイスに接続してもよいし、接続しなくてもよい。接続対象デバイスが多いときに、送信側のユニキャスト通信の回数を低減するために、全てのアップデート対象デバイスをブロードキャスト通信対象としてもよい。接続対象デバイスが少ないときに、ユニドキャスト通信に切り替えてもよい。
図13は、第1の実施の形態に係る送信処理におけるブロードキャスト送信処理を示すフローチャートである。
同図において、パケット生成部111は、アップデートデータ116AがパケットインデックスPDXごとに分割されて格納されたパケットを生成する(S301)。
次に、ブロードキャスト送信部112は、パケットインデックスPDXで特定されるアップデートデータ116Aが格納されたパケット[PDX]をブロードキャスト送信する(S302)。
次に、ブロードキャスト送信部112は、パケットインデックスPDXを1だけインクリメントする(S303)。
次に、ブロードキャスト送信部112は、パケットインデックスPDXがアップデートデータ116Aのパケット数に等しいかどうかを判断する(S304)。ブロードキャスト送信部112は、パケットインデックスPDXがアップデートデータ116Aのパケット数に等しい場合、パケットインデックスPDXを0に設定し、パケット[PDX]についてのブロードキャスト送信を終了する。一方、ブロードキャスト送信部112は、パケットインデックスPDXがアップデートデータ116Aのパケット数に等しくない場合、パケット[PDX]についてのブロードキャスト送信を終了する。
図14は、第1の実施の形態に係る送信処理におけるユニキャスト受信処理を示すフローチャートである。
同図において、ユニキャスト通信部113は、ユニキャスト送信された受信パケットを解析する(S401)。
次に、ユニキャスト通信部113は、受信パケットの内容を確認する(S402)。ユニキャスト通信部113は、受信パケットの内容が再送要求である場合、再送要求されたアップデートデータ116AのパケットインデックスPDXを保存して(S403)、処理を終了する。一方、ユニキャスト通信部113は、受信パケットの内容が受信完了またはアップデート準備完了である場合、受信完了状態を保持して(S404)、処理を終了する。
図15は、第1の実施の形態に係る送信処理におけるユニキャスト送信処理を示すフローチャートである。
同図において、ユニキャスト通信部113は、再送要求されたアップデートデータ116AのパケットインデックスPDXがあるかどうかを判断する(S501)。ユニキャスト通信部113は、再送要求されたアップデートデータ116AのパケットインデックスPDXがない場合、処理を終了する。一方、ユニキャスト通信部113は、再送要求されたアップデートデータ116AのパケットインデックスPDXがある場合、再送対象のデバイスのデバイス情報と再送要求されたアップデートデータ116AのパケットインデックスPDXを取得する(S502)。
次に、パケット生成部111は、再送要求されたアップデートデータ116Aが格納されたパケットを作成する(S503)。
次に、ユニキャスト通信部113は、再送要求されたアップデートデータ116Aが格納されたパケットをユニキャスト送信する(S504)。
次に、ユニキャスト通信部113は、ユニキャスト送信したパケットの受信が成功したかどうかを判断する(S505)。このとき、ユニキャスト通信部113は、ユニキャスト送信したパケットの受信完了通知を受信側から受け取ったときに、ユニキャスト送信したパケットの受信が成功したと判断することができる。ユニキャスト通信部113は、ユニキャスト送信したパケットの受信が成功した場合、処理を終了する。一方、ユニキャスト送信したパケットの受信が失敗した場合、S504に戻ってユニキャスト送信を繰り返す。
図16は、第1の実施の形態に係る送信処理におけるアップデート開始コマンド処理を示すフローチャートである。
同図において、ユニキャスト通信部113は、全てのアップデートデータ116Aの受信を完了した全てのデバイスにアップデート開始コマンドをユニキャスト送信する(S601)。
次に、ユニキャスト通信部113は、全てのアップデートデータ116Aの受信を完了した全てのデバイスからアップデート完了通知を受け取ったかどうかを判断する(S602)。ユニキャスト通信部113は、全てのアップデートデータ116Aの受信を完了した全てのデバイスからアップデート完了通知を受け取った場合、処理を終了する。一方、ユニキャスト通信部113は、全てのアップデートデータ116Aの受信を完了した全てのデバイスからアップデート完了通知を受け取ってない場合、S602に戻ってアップデート開始コマンドのユニキャスト送信を繰り返す。
図17は、第1の実施の形態に係る無線通信における受信処理を示すフローチャートである。
同図において、パケット生成部211は、パケット通信の初期化処理を実施する(S701)。
次に、ブロードキャスト受信部212は、アップデートデータ116Aのブロードキャスト受信処理を実施し、パケット解析部217は、ブロードキャスト受信部212で受信されたパケットの解析処理を実施する(S702)。アップデートデータ116Aのブロードキャスト受信は、インデックスごとにアップデートデータ116Aを分割して実施される。パケットの解析処理は、インデックスとともに分割されてパケット化されたアップデートデータ116Aごとに実施される。
次に、ユニキャスト通信部213は、アップデートデータ116Aのユニキャスト受信処理を実施する(S703)。このユニキャスト受信処理では、パケットエラーが検出されたパケットに含まれるアップデートデータ116Aの再送要求に基づいて、アップデートデータ116Aをユニキャスト受信することができる。
次に、ユニキャスト通信部213は、アップデートデータ116Aについてのユニキャスト送信処理を実施する(S704)。アップデートデータ116Aについてのユニキャスト送信処理では、ユニキャスト送信リクエストを実施することができる。
図18は、第1の実施の形態に係る受信処理におけるブロードキャスト受信・パケット解析処理を示すフローチャートである。
同図において、ブロードキャスト受信部212は、ブロードキャスト受信したパケットのエラーがないかどうか判断する(S801)。パケットのエラー判断では、チェックサムなどを用いることができる。ブロードキャスト受信部212は、ブロードキャスト受信したパケットのエラーがある場合、そのパケットを破棄し(S806)、処理を終了する。一方、ブロードキャスト受信部212は、ブロードキャスト受信したパケットのエラーがない場合、処理をS802に移す。
次に、パケット解析部217は、ブロードキャスト受信されたパケットを解析する。このパケットの解析では、そのパケットに格納されたインデックスを確認したり、そのパケットの内容を確認したりすることができる。
次に、パケット解析部217は、ブロードキャスト受信されたパケットがアップデート送信かどうか判断する(S803)。パケット解析部217は、ブロードキャスト受信されたパケットがアップデート送信でない場合、S806に処理を移し、そのパケットを破棄する。一方、パケット解析部217は、ブロードキャスト受信されたパケットがアップデート送信である場合、S804に処理を移す。
次に、アップデートデータ書込部218は、ブロードキャスト受信されたパケットに格納されたインデックスや付加情報などに従って記憶部216に書込み(S804)、記憶部216に保存された受信情報を更新する(S805)。なお、付加情報は、例えば、無線通信装置200がワイヤレスイヤホン200A、200Bの場合、L/R情報である。
図19は、第1の実施の形態に係る受信処理におけるユニキャスト受信処理を示すフローチャートである。
同図において、ユニキャスト通信部213は、ユニキャスト受信したパケットのエラーがないかどうか判断する(S901)。パケットのエラー判断では、チェックサムなどを用いることができる。ユニキャスト通信部213は、ユニキャスト受信したパケットのエラーがある場合、そのエラーがあるパケットの再送を要求し、S901に戻る(S906)。一方、ユニキャスト通信部213は、ユニキャスト受信したパケットのエラーがない場合、処理をS902に移す。
次に、パケット解析部217は、ユニキャスト受信されたパケットを解析する。このパケットの解析では、パケットの内容を判断することができる。
次に、パケット解析部217は、ユニキャスト受信されたパケットがファームウェアデータパケットかアップデート実行コマンドかを判断する(S903)。パケット解析部217は、ユニキャスト受信されたパケットがファームウェアデータパケットの場合、S904に処理を移す。一方、パケット解析部217は、ブロードキャスト受信されたパケットがアップデート実行コマンドである場合、S907に処理を移す。
次に、アップデートデータ書込部218は、ユニキャスト受信されたパケットがファームウェアデータパケットの場合、そのパケットに含まれるファームウェアを記憶部216に書込み(S904)、記憶部216に保存された受信情報を更新する(S905)。一方、アップデートデータ書込部218は、ユニキャスト受信されたパケットがアップデート実行コマンドの場合、記憶部216に保存されたファームウェアをアップデートする(S907)。
図20は、第1の実施の形態に係る受信処理におけるユニキャスト送信処理を示すフローチャートである。
同図において、ユニキャスト通信部213は、ユニキャスト送信リクエストを実行するかどうか判断する(S1101)。なお、ユニキャスト送信リクエストの実行条件は、例えば、データ受信率に基づいて決定してもよいし、ブロードキャスト送信の周回数に基づいて決定してもよい。ユニキャスト通信部213は、ユニキャスト送信リクエストを実行しない場合、処理を終了する。
一方、ユニキャスト通信部213は、ユニキャスト送信リクエストを実行する場合、未受信パケットがあるかどうか判断する(S1102)。ユニキャスト通信部213は、未受信パケットがある場合、ユニキャスト送信リクエストコマンドを作成する(S1103)。なお、ユニキャスト送信リクエストでは、全てのパケットを1度にリクエストしてもよいし、1パケットずつリクエストしてもよい。
次に、ユニキャスト通信部213は、ユニキャスト送信リクエストコマンドをユニキャスト送信し(S1104)、処理を終了する。
一方、ユニキャスト通信部213は、未受信パケットがない場合、受信完了通知をユニキャスト送信し(S1105)、処理を終了する。
図21は、第1の実施の形態に係る無線通信シーケンスの第1の例を示す図である。なお、送信機510は無線通信装置100を用いることができ、受信機511、512は無線通信装置200を用いることができる。また、同図では、送信機510は、2台の受信機511、512と通信する場合を例にとるが、送信機510は、3台以上の受信機と通信してもよい。
同図において、送信機510は、受信機511のデバイス情報をリクエストし、受信機511のデバイス情報を取得する(P101)。
次に、受信機511は、受信機511のファームウェアの現在のバージョンおよびアップデートデータのバージョンを送信機510にユニキャスト送信する(P102)。
次に、送信機510は、受信機512のデバイス情報をリクエストし、受信機512のデバイス情報を取得する(P103)。
次に、受信機512は、受信機512のファームウェアの現在のバージョンおよびアップデートデータのバージョンを送信機510にユニキャスト送信する(P104)。
次に、送信機510は、各受信機511、512から取得したファームウェアの現在のバージョンおよびアップデートデータのバージョンに基づいて、各受信機511、512のアップデート可能状態を確認する(P105)。
次に、送信機510は、インデックスINX=0からNのそれぞれについて分割してパケット化されたアップデートデータをインデックスINX=0からNごとにブロードキャスト送信する(P106-0~P106-N)。このとき、各受信機511、512は、インデックスINX=0からNのそれぞれについて分割してパケット化されたアップデートデータをインデックスINX=0からNごとにブロードキャスト受信する。
次に、各受信機511、512は、インデックスINX=0からNのそれぞれについて分割してパケット化されたアップデートデータの受信が完了すると、受信完了通知を送信機510にユニキャスト送信する(P108、P109)。
次に、送信機510は、各受信機511、512のファームウェアのアップデートリクエストを各受信機511、512にユニキャスト送信する(P110、P111)。
次に、各受信機511、512は、ファームウェアのアップデートリクエストを送信機510から受信すると、各受信機511、512のファームウェアのアップデート処理を実行する(P112、P113)。
次に、各受信機511、512は、各受信機511、512のファームウェアのアップデート処理を実行すると、アップデート完了通知を送信機510にユニキャスト送信する(P114、P115)。
図22は、第1の実施の形態に係る無線通信シーケンスの第2の例を示す図である。
同図において、各受信機511、512は、インデックスINX=0からNのそれぞれについて分割してパケット化されたアップデートデータをインデックスINX=0からNごとにブロードキャスト受信するものとする。このとき、受信機511では、インデックスINX=1についてパケット化されたアップデートデータの受信エラーが発生したものとする(P201)。受信機512では、インデックスINX=2についてパケット化されたアップデートデータの受信エラーが発生したものとする(P202)。
このとき、各受信機511、512は、アップデートデータのブロードキャスト停止要求を送信機510にユニキャスト送信する(P203、P204)。
送信機510は、アップデートデータのブロードキャスト停止要求を受信すると、アップデートデータのブロードキャスト送信を停止する(P205)。
次に、受信機511は、インデックスINX=1についてのアップデートデータの再送要求を送信機510にユニキャスト送信する(P206)。
次に、送信機510は、インデックスINX=1についてのアップデートデータの再送要求を受信機511から受信すると、インデックスINX=1についてパケット化したアップデートデータを受信機511にユニキャスト送信する(P207)。
次に、受信機512は、インデックスINX=2についてのアップデートデータの再送要求を送信機510にユニキャスト送信する(P208)。
次に、送信機510は、インデックスINX=2についてのアップデートデータの再送要求を受信機512から受信すると、インデックスINX=2についてパケット化したアップデートデータを受信機512にユニキャスト送信する(P209)。
このように、上述の第1の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化してブロードキャスト送信し、インデックスで指定される再送要求に基づいてアップデートデータをユニキャスト送信する。これにより、送信機510は、全てのインデックスについて受信が成功するまで、アップデートデータのブロードキャスト送信を繰り返すことなく、全てのインデックスについてのアップデートデータの受信を完了させることができる。このため、アップデートデータの送信時の帯域占有率の増大を抑制しつつ、複数の受信機511、512のアップデートを完了させることが可能となる。
<2.第2の実施の形態>
上述の第1の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化してブロードキャスト送信し、インデックスで指定される再送要求に基づいてアップデートデータをユニキャスト送信した。この第2の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化したパケットを各インデックスについて繰り返してブロードキャスト送信する。
上述の第1の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化してブロードキャスト送信し、インデックスで指定される再送要求に基づいてアップデートデータをユニキャスト送信した。この第2の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化したパケットを各インデックスについて繰り返してブロードキャスト送信する。
図23は、第2の実施の形態に係る無線通信シーケンスの一例を示す図である。なお、送信機510は無線通信装置100を用いることができ、受信機511から513は無線通信装置200を用いることができる。また、同図では、送信機510は、3台の受信機511から513と通信する場合を例にとるが、送信機510は、4台以上の受信機と通信してもよい。
同図において、送信機510は、インデックスINX=0からNのそれぞれについて分割してパケット化したアップデートデータをインデックスINX=0からNごとにブロードキャスト送信する(P106-0~P106-N)。また、送信機510は、インデックスINX=0からNのそれぞれについて分割してパケット化したアップデートデータをインデックスINX=0からNごとに再度ブロードキャスト送信する(P206-0~P206-N)。なお、インデックスINX=0からNのそれぞれについてのブロードキャスト送信の繰り返し回数は、3以上でもよい。
このとき、受信機511は、インデックスINX=0、1、2、・・・、M、・・・、N、0のそれぞれについてパケット化されたアップデートデータを順次ブロードキャスト受信し、アップデートデータの受信を完了する(P211)。なお、Mは、0<M<Nの整数である。
また、受信機512は、インデックスINX=2、・・・、M、・・・、N、0、1、2のそれぞれについてパケット化されたアップデートデータを順次ブロードキャスト受信し、アップデートデータの受信を完了する(P212)。
また、受信機513は、インデックスINX=M、・・・、N、0、1、2、・・・、Mのそれぞれについてパケット化されたアップデートデータを順次ブロードキャスト受信し、アップデートデータの受信を完了する(P213)。
なお、送信機510は、各受信機511から513からの再送要求に基づいて、アップデートデータを各受信機511から513にユニキャスト送信してもよい。このとき、送信機510は、インデックスINX=0からNごとのアップデートデータのブロードキャスト送信の間でユニキャスト送信してもよい。
このように、上述の第2の実施の形態では、送信機510は、分割したアップデートデータをインデックスとともにパケット化したパケットを各インデックスについて繰り返してブロードキャスト送信する。これにより、送信機510は、ブロードキャスト送信されたアップデートデータをインデックスごとに各受信機511、512で確認可能としつつ、共通のアップデートデータを複数の受信機511、512に一括送信することができる。このため、複数の受信機511、512に個別にアップデートデータを送信する方法に比べて、アップデートデータの送信時の帯域占有率を低減することが可能となる。また、送信機510で分割してブロードキャスト送信されるアップデートデータと、各受信機511、512で分割してブロードキャスト受信されるアップデートデータとの対応関係の管理を容易化することができる。
なお、送信機510は、全ての受信機511から513にアップデートデータをブロードキャスト送信してもよいが、一部の受信機にアップデートデータをブロードキャスト送信し、その他の受信機にアップデートデータをユニキャスト送信してもよい。例えば、送信機510は、100台の受信機にアップデートデータを送信するものとすると、90台の受信機にはアップデートデータをブロードキャスト送信し、残りの10台の受信機にはアップデートデータをユニキャスト送信してもよい。このとき、通信制御部114は、ブロードキャスト送信とユニキャスト送信との切替閾値に基づいて、ブロードキャスト送信とユニキャスト送信とを切り替えてもよい。
なお、上述の実施の形態では、インデックスとともにパケット化してブロードキャスト送信されるデータとして、ファームウェアのアップデートデータを例にとった。これ以外にも、インデックスとともにパケット化してブロードキャスト送信されるデータは、音声ガイダンスでもよいし、ある地点でロードされて実行される簡易的なファームウェアでもよいし、工場書込み用に利用されるデータでもよい。また、インデックスとともにパケット化してブロードキャスト送信されるデータは、ドローンや産業用ロボットなどを動作させるデータやプログラムでもよい。
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。また、本明細書に記載された効果はあくまで例示であって、限定されるものではなく、また、他の効果があってもよい。
なお、本技術は以下のような構成もとることができる。
(1)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト送信するブロードキャスト送信部
を備える無線通信装置。
(2)前記ブロードキャスト送信部は、前記インデックスおよび前記データのブロードキャスト送信を繰り返す
前記(1)に記載の無線通信装置。
(3)前記データは、ファームウェアのアップデートデータである
前記(1)または(2)に記載の無線通信装置。
(4)前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
前記(1)から(3)のいずれかに記載の無線通信装置。
(5)前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
前記(1)から(4)のいずれかに記載の無線通信装置。
(6)前記ブロードキャスト送信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト送信に用いる
前記(1)から(5)のいずれかに記載の無線通信装置。
(7)前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト送信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト送信する処理と、前記インデックスで特定された分割されたデータをユニキャスト送信する処理との切替を制御する通信制御部と
をさらに備える前記(1)から(6)のいずれかに記載の無線通信装置。
(8)前記通信制御部は、
前記インデックスごとに前記データが分割されて送信されるように前記ブロードキャスト送信に切り替え、
前記インデックスごとに分割されたブロードキャスト送信の間で前記ユニキャスト受信および前記ユニキャスト送信が実施されるように前記ユニキャスト通信に切り替える
前記(7)に記載の無線通信装置。
(9)前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
前記(7)または(8)に記載の無線通信装置。
(10)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト受信するブロードキャスト受信部
を備える無線通信装置。
(11)前記ブロードキャスト受信部は、前記インデックスおよび前記データのブロードキャスト受信を繰り返す
前記(10)に記載の無線通信装置。
(12)前記データは、ファームウェアのアップデートデータである
前記(10)または(11)に記載の無線通信装置。
(13)前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
前記(10)から(12)のいずれかに記載の無線通信装置。
(14)前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
前記(10)から(13)のいずれかに記載の無線通信装置。
(15)前記ブロードキャスト受信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト受信に用いる
前記(10)から(14)のいずれかに記載の無線通信装置。
(16)前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト受信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト受信する処理と、前記インデックスで特定された分割されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
をさらに備える前記(10)から(15)のいずれかに記載の無線通信装置。
(17)前記通信制御部は、
前記インデックスごとに前記データが分割されて受信されるように前記ブロードキャスト受信に切り替え、
前記インデックスごとに分割されたブロードキャスト受信の間で前記ユニキャスト送信および前記ユニキャスト受信が実施されるように前記ユニキャスト通信に切り替える
前記(16)に記載の無線通信装置。
(18)前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
前記(16)または(17)に記載の無線通信装置。
(19)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともに前記分割されたデータをパケット化してブロードキャスト送信する送信機と、
前記インデックスとともにパケット化された前記分割されたデータをブロードキャスト受信する受信機と
を備える無線通信システム。
(20)前記送信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト送信するブロードキャスト送信部と、
前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化されたデータをユニキャスト送信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト送信する処理と、前記インデックスで特定されたデータをユニキャスト送信する処理との切替を制御する通信制御部とを備え、
前記受信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト受信するブロードキャスト受信部と、
前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化されたデータをユニキャスト受信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト受信する処理と、前記インデックスで特定されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
を備える前記(19)に記載の無線通信システム。
(1)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト送信するブロードキャスト送信部
を備える無線通信装置。
(2)前記ブロードキャスト送信部は、前記インデックスおよび前記データのブロードキャスト送信を繰り返す
前記(1)に記載の無線通信装置。
(3)前記データは、ファームウェアのアップデートデータである
前記(1)または(2)に記載の無線通信装置。
(4)前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
前記(1)から(3)のいずれかに記載の無線通信装置。
(5)前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
前記(1)から(4)のいずれかに記載の無線通信装置。
(6)前記ブロードキャスト送信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト送信に用いる
前記(1)から(5)のいずれかに記載の無線通信装置。
(7)前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト送信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト送信する処理と、前記インデックスで特定された分割されたデータをユニキャスト送信する処理との切替を制御する通信制御部と
をさらに備える前記(1)から(6)のいずれかに記載の無線通信装置。
(8)前記通信制御部は、
前記インデックスごとに前記データが分割されて送信されるように前記ブロードキャスト送信に切り替え、
前記インデックスごとに分割されたブロードキャスト送信の間で前記ユニキャスト受信および前記ユニキャスト送信が実施されるように前記ユニキャスト通信に切り替える
前記(7)に記載の無線通信装置。
(9)前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
前記(7)または(8)に記載の無線通信装置。
(10)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト受信するブロードキャスト受信部
を備える無線通信装置。
(11)前記ブロードキャスト受信部は、前記インデックスおよび前記データのブロードキャスト受信を繰り返す
前記(10)に記載の無線通信装置。
(12)前記データは、ファームウェアのアップデートデータである
前記(10)または(11)に記載の無線通信装置。
(13)前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
前記(10)から(12)のいずれかに記載の無線通信装置。
(14)前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
前記(10)から(13)のいずれかに記載の無線通信装置。
(15)前記ブロードキャスト受信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト受信に用いる
前記(10)から(14)のいずれかに記載の無線通信装置。
(16)前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト受信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト受信する処理と、前記インデックスで特定された分割されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
をさらに備える前記(10)から(15)のいずれかに記載の無線通信装置。
(17)前記通信制御部は、
前記インデックスごとに前記データが分割されて受信されるように前記ブロードキャスト受信に切り替え、
前記インデックスごとに分割されたブロードキャスト受信の間で前記ユニキャスト送信および前記ユニキャスト受信が実施されるように前記ユニキャスト通信に切り替える
前記(16)に記載の無線通信装置。
(18)前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
前記(16)または(17)に記載の無線通信装置。
(19)BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともに前記分割されたデータをパケット化してブロードキャスト送信する送信機と、
前記インデックスとともにパケット化された前記分割されたデータをブロードキャスト受信する受信機と
を備える無線通信システム。
(20)前記送信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト送信するブロードキャスト送信部と、
前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化されたデータをユニキャスト送信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト送信する処理と、前記インデックスで特定されたデータをユニキャスト送信する処理との切替を制御する通信制御部とを備え、
前記受信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト受信するブロードキャスト受信部と、
前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化されたデータをユニキャスト受信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト受信する処理と、前記インデックスで特定されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
を備える前記(19)に記載の無線通信システム。
100S スマートフォン
200A、200B ワイヤレスイヤホン
100、200 無線通信装置
101、201 アンテナ
111、211 パケット生成部
112 ブロードキャスト送信部
113、213 ユニキャスト通信部
114、214 通信制御部
115、215 無線通信部
116、216 記憶部
116A アップデートデータ
216B プログラム
216C 付加情報
212 ブロードキャスト受信部
217 パケット解析部
218 アップデートデータ書込部
219 受信状況管理部
200A、200B ワイヤレスイヤホン
100、200 無線通信装置
101、201 アンテナ
111、211 パケット生成部
112 ブロードキャスト送信部
113、213 ユニキャスト通信部
114、214 通信制御部
115、215 無線通信部
116、216 記憶部
116A アップデートデータ
216B プログラム
216C 付加情報
212 ブロードキャスト受信部
217 パケット解析部
218 アップデートデータ書込部
219 受信状況管理部
Claims (20)
- BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト送信するブロードキャスト送信部
を備える無線通信装置。 - 前記ブロードキャスト送信部は、前記インデックスおよび前記データのブロードキャスト送信を繰り返す
請求項1に記載の無線通信装置。 - 前記データは、ファームウェアのアップデートデータである
請求項1に記載の無線通信装置。 - 前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
請求項1に記載の無線通信装置。 - 前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
請求項1に記載の無線通信装置。 - 前記ブロードキャスト送信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト送信に用いる
請求項1に記載の無線通信装置。 - 前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト送信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともに前記分割されたデータをブロードキャスト送信する処理と、前記インデックスで特定された分割されたデータをユニキャスト送信する処理との切替を制御する通信制御部と
をさらに備える請求項1に記載の無線通信装置。 - 前記通信制御部は、
前記インデックスごとに前記データが分割されたパケットが送信されるように前記ブロードキャスト送信に切り替え、
前記インデックスごとに分割されたブロードキャスト送信の間で前記ユニキャスト受信および前記ユニキャスト送信が実施されるように前記ユニキャスト通信に切り替える
請求項7に記載の無線通信装置。 - 前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
請求項8に記載の無線通信装置。 - BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト受信するブロードキャスト受信部
を備える無線通信装置。 - 前記ブロードキャスト受信部は、前記インデックスおよび前記データのブロードキャスト受信を繰り返す
請求項10に記載の無線通信装置。 - 前記データは、ファームウェアのアップデートデータである
請求項10に記載の無線通信装置。 - 前記インデックスは、前記分割されたデータの先頭および後端を示す情報を含む
請求項10に記載の無線通信装置。 - 前記データは、受信先で共通に使用されるか個別に使用されるかを示す情報が付加される
請求項10に記載の無線通信装置。 - 前記ブロードキャスト受信部は、前記BLEにおけるBIS(Broadcast Isochronous Streams)またはExtended Advertisingを前記ブロードキャスト受信に用いる
請求項10に記載の無線通信装置。 - 前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化された分割されたデータをユニキャスト受信するユニキャスト通信部と、
前記分割されたデータを特定するインデックスとともにパケット化された前記分割されたデータをブロードキャスト受信する処理と、前記インデックスで特定された分割されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
をさらに備える請求項10に記載の無線通信装置。 - 前記通信制御部は、
前記インデックスごとに前記データが分割されて受信されるように前記ブロードキャスト受信に切り替え、
前記インデックスごとに分割されたブロードキャスト受信の間で前記ユニキャスト送信および前記ユニキャスト受信が実施されるように前記ユニキャスト通信に切り替える
請求項16に記載の無線通信装置。 - 前記ユニキャスト通信部は、BLE(Bluetooth Low Energy)におけるGATT(General ATTribute)またはL2CAP(Logical Link Control and Adaptation Protocol)を前記ユニキャスト通信に用いる
請求項17に記載の無線通信装置。 - BLE(Bluetooth Low Energy)において分割されたデータを特定するインデックスとともに前記分割されたデータをパケット化してブロードキャスト送信する送信機と、
前記インデックスとともにパケット化された前記分割されたデータをブロードキャスト受信する受信機と
を備える無線通信システム。 - 前記送信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト送信するブロードキャスト送信部と、
前記インデックスをユニキャスト受信し、前記インデックスで特定されるパケット化されたデータをユニキャスト送信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト送信する処理と、前記インデックスで特定されたデータをユニキャスト送信する処理との切替を制御する通信制御部とを備え、
前記受信機は、
前記インデックスとともにパケット化された前記データをブロードキャスト受信するブロードキャスト受信部と、
前記インデックスをユニキャスト送信し、前記インデックスで特定されるパケット化されたデータをユニキャスト受信するユニキャスト通信部と、
前記インデックスとともに前記データをブロードキャスト受信する処理と、前記インデックスで特定されたデータをユニキャスト受信する処理との切替を制御する通信制御部と
を備える請求項19に記載の無線通信システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023046889 | 2023-03-23 | ||
| JP2023-046889 | 2023-03-23 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024195293A1 true WO2024195293A1 (ja) | 2024-09-26 |
Family
ID=92841201
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2024/002407 Ceased WO2024195293A1 (ja) | 2023-03-23 | 2024-01-26 | 無線通信装置および無線通信システム |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2024195293A1 (ja) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017034655A (ja) * | 2015-07-31 | 2017-02-09 | 任天堂株式会社 | 無線システム、無線機器、通信プログラム、および通信方法 |
| CN114296758A (zh) * | 2021-12-24 | 2022-04-08 | 上海物骐微电子有限公司 | 固件发送方法、固件接收方法及固件升级系统 |
| US20220391165A1 (en) * | 2019-11-13 | 2022-12-08 | Lg Electronics Inc. | Method for transmitting audio data using short-range communication in wireless communication system, and device for same |
-
2024
- 2024-01-26 WO PCT/JP2024/002407 patent/WO2024195293A1/ja not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017034655A (ja) * | 2015-07-31 | 2017-02-09 | 任天堂株式会社 | 無線システム、無線機器、通信プログラム、および通信方法 |
| US20220391165A1 (en) * | 2019-11-13 | 2022-12-08 | Lg Electronics Inc. | Method for transmitting audio data using short-range communication in wireless communication system, and device for same |
| CN114296758A (zh) * | 2021-12-24 | 2022-04-08 | 上海物骐微电子有限公司 | 固件发送方法、固件接收方法及固件升级系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN115244881B (zh) | 用于低能量音频的广播中继微微网 | |
| CN111817826B (zh) | 旁链路信息传输方法、终端和控制节点 | |
| WO2022029664A1 (en) | Indicating source and destination devices | |
| EP3954080B1 (en) | System and method for construction of a protocol data unit using selective relay | |
| US10313861B2 (en) | Wireless control of multiple actor devices by multiple controller devices with communication security | |
| CN113347578B (zh) | 音频数据传输方法、装置、系统、存储介质及耳机 | |
| US20200329052A1 (en) | System and method for aligning a packet counter in short-range wireless communications systems | |
| US11502868B2 (en) | DECT network clustering method | |
| CN103098105A (zh) | 用于在无线网络的节点之间通信的系统和方法 | |
| AU2019431307A1 (en) | Wireless connection method, device group, system, and storage medium | |
| JP2007208635A (ja) | ノード、パケット通信方法、及びパケット通信システム | |
| WO2024195293A1 (ja) | 無線通信装置および無線通信システム | |
| US7092713B2 (en) | Establishing call paths between source wireless computing systems and remote wireless computing systems using intermediary computing systems | |
| US8837344B2 (en) | Apparatus and method for multicast/broadcast service data transmission synchronization | |
| CN114867077A (zh) | 多跳路由实现方法、装置、设备及存储介质 | |
| JP2009531983A (ja) | マルチソース・データ通信のためのシステム及び方法 | |
| US20100296440A1 (en) | Unicast stream distribution for wireless networks | |
| CN113852446B (zh) | 无线通信系统及方法 | |
| US20240244122A1 (en) | Information processing device | |
| WO2026067349A1 (zh) | 数据传输方法、装置、通信设备及可读存储介质 | |
| JP2006019881A (ja) | 無線ネットワーク通信方法および無線ネットワーク通信システム | |
| JP2014241533A (ja) | 無線通信システム | |
| WO2016166982A1 (ja) | 通信装置、通信方法、及び、記録媒体 | |
| JP2018186465A (ja) | データ受信装置、システム、方法およびプログラム | |
| JP2014220643A (ja) | 無線通信システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24774439 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 24774439 Country of ref document: EP Kind code of ref document: A1 |