Patent ID: 12237933

DETAILED DESCRIPTION

Reference is made in detail to embodiments of the invention, which are illustrated in the accompanying drawings. The same reference numbers may be used throughout the drawings to refer to the same or like parts, components, or operations.

The present invention will be described with respect to particular embodiments and with reference to certain drawings, but the invention is not limited thereto and is only limited by the claims. It will be further understood that the terms “comprises,” “comprising,” “includes” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

Use of ordinal terms such as “first”, “second”, “third”, etc., in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having the same name (but for use of the ordinal term) to distinguish the claim elements.

It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words described the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent.” etc.)

Refer toFIG.1. In a scenario, an user acquires data from the mobile phone130through wireless earbuds. The wireless earbuds are a pair of apparatuses with wireless communications capabilities, including a left wireless earbud110and a right wireless earbud120, and no physical wire line is connected between the left wireless earbud110and the right wireless earbud120. It may use a wireless communications protocol, such as Bluetooth low energy Audio (LE Audio), extended Synchronous Connection-Oriented (eSCO), Asynchronous Connection-Less (ACL), etc., to transfer packets carrying audio signals between the mobile phone130and the left wireless earbud110and between the mobile phone130and the right wireless earbud120. In some embodiments, the left wireless earbud110and the right wireless earbud120may receive media packets including left channel and right channel of stereo data, respectively. In alternative embodiments, the left wireless earbud110and the right wireless earbud120may receive media packets including mono data.

The mobile phone130, the left wireless earbud110and the right wireless earbud120may form a Bluetooth wireless transmission network, and the left wireless earbud110and the right wireless earbud120are mutually peer devices. In wireless transmission, factors such as path loss, antenna field, noise, etc. may affect the success rate of the left wireless earbud110or the right wireless earbud120in receiving packets from the mobile phone130. For example, refer toFIG.2. Since the left wireless earbud110is closer to the noise source than the right wireless earbud120, the path A on which the data transmitted by the mobile phone130to the left wireless earbud110is severely interfered, and the left wireless earbud110cannot successfully receive the packets carrying left-channel data from the mobile phone130. When the noise continues to be generated, even if the retransmission mechanism is activated between the left wireless earbud110and the mobile phone130, it cannot be overcome. But, because the right wireless earbud120is far away from the noise source, the path B on which the data transmitted by the mobile phone130to the right wireless earbud120is less disturbed than the path A, and the right wireless earbud120can successfully receive the packets carrying right-channel data from the mobile phone130.

To address the aforementioned problems, an embodiment of the invention introduces a mechanism for retransmitting wireless peer packets, allowing the left wireless earbud110or the right wireless earbud120to continuously receive and temporarily store one or more media packets that are originally sent to the peer device during a peer-side time period. When a retransmission mechanism is activated between the mobile phone130and the peer device, the left wireless earbud110or the right wireless earbud120converts the temporarily stored media packet(s) into radio frequency (RF) signal and emits the RF signal to the medium, such as air or human body, etc. during the peer-side time period, which allows the peer device to successfully receive the retransmitted media packet(s). For example, refer toFIG.2, when detecting the retransmission mechanism is activated between the mobile phone130and the left wireless earbud110, the right wireless earbud120converts the temporarily stored media packet(s) that is originally sent to the left wireless earbud110into RF signal, and emits the RF signal to the media during the peer-side time period. Therefore, the left wireless earbud110may successfully receive the retransmitted media packet(s) carrying the left-channel data through the path P that is less interfered. Or, the RF signal transmitted by the right wireless earbud120and the RF signal transmitted by the mobile phone130are superimposed in the medium, so that the left wireless earbud110may successfully obtain the retransmitted packet(s) including the left-channel data from the enhanced RF signal. The retransmission of media packet(s) performed in the peer-side time period as described above may be referred to as an overlapped relay. The peer-side time period indicates the time period originally used for the mobile phone130to communicate with the peer device.

In some embodiments, the peer-side time period may include slots that are originally used by the mobile phone130to transmit or retransmit media packet(s). In alternative embodiments, the peer-side time period may include slots that are originally used by the mobile phone130to transmit or retransmit media packet(s) to the peer device, and slots that are originally used by the peer device to transmit response packet(s) to the mobile phone130. The following paragraphs will explain in more detail the contents and functions of media packets and response packets, as well as examples of peer-side time periods.

Refer toFIG.3showing the system architecture. The system architecture may be implemented in the left wireless earbud110and the right wireless earbud120, and each includes the antenna310, the RF module320, the modulator-demodulator (modem)330and the baseband module340. The baseband module340includes the processing unit342and the memory344. The processing unit342may be implemented in numerous ways, such as with general-purpose hardware (e.g., a microcontroller unit, a digital signal processor, a single processor, multiple processors or graphics processing units capable of parallel computations, or others) that is programmed using firmware and/or software instructions to perform the functions recited herein. The memory344may allocate space as a data buffer temporarily storing the media packet(s) that has been obtained from the medium, which are originally transmitted to the peer device, and to this device for playing. The memory344further stores data needed during execution, such as variables, data tables, and so on. The processing unit342may couple the memory344to access data through a bus architecture.

In adaptive frequency hopping (AFH), the mobile phone130may send the same channel map or different channel maps to the left wireless earbud110and the right wireless earbud120. The channel map instructs the left wireless earbud110or the right wireless earbud120to use the specified one of the multiple physical channels (for example, 37) in the 2.4 to 2.48 GHz frequency band in each time interval (or time slot) to receive data or transmit data, thereby enabling the corresponding RF module320to receive or transmit data in each time interval on the designated physical channel. The RF module320is employed to receive RF signal in the medium and convert the received RF signal into baseband signal that can be processed by the MODEM330. The RF module320is also employed to receive baseband signal from the MODEM330and convert the received baseband signal into RF signal that can be sent to the mobile phone130. The RF module320may include a mixer to generate a new frequency according to the input signal, and the signal output from a local oscillator. The MODEM330may implement Gaussian Frequency Shift Keying (GFSK), π/4-Differential Quadrature Phase Shift Keying (DQPSK), 8-Differential Phase Shift Keying (DPSK), or others.

In some embodiments of LE audio, the mobile phone130may establish different connection-oriented isochronous channels with the left wireless earbud110and the right wireless earbud120, respectively, and each channel uses the LE Connected Isochronous Stream (LE-CIS) logical transport and supports bi-directional communication.

The two CISs form a connected isochronous group (CIG) and each CIS has multiple CIS instances. The CIS instances in the same CIG have common timing reference data, which is used in the synchronization of isochronous data processing by the left wireless earbud110and the right wireless earbud120. Only one wireless receiver with unique access address is presented in each CIS, and the wireless receiver uses the designated channel map to receive media packets. Within the CIG, and for each CIS, there exists a schedule of transmission and reception time slots referred to as events and subevents.

Each event occurs with a regular interval, called the ISO interval, which may be set in the range from 5 ms to 4 s in multiple of 1.25 ms. Each event is divided into one or more subevents. Each subevent contains a transmission (TX) slot and a reception (RX) slot. Taking the mobile phone130as an example, during each subevent in a CIS, the mobile phone130may transmit a media packet to the left wireless earbud110or the right wireless earbud120in a TX slot and the left wireless earbud110or the right wireless earbud120may reply with a response packet to the mobile phone130in a RX slot. The media packet may indicate a packet including a link layer data protocol data unit (LL data PDU) for carrying left-channel or right-channel data. The response packet may be an empty packet including information of acknowledgement (ACK) or negative-acknowledgement (NAK).

When receiving a NAK from the left wireless earbud110or the right wireless earbud120, the mobile phone130may retransmit the corresponding media packet. For example, in a subevent, when the mobile phone130finds that the next expected sequence number (NESN) in the response packet is equal to the sequence number (SN) in the media packet that has been sent to a receiver, it means that the response packet includes a NAK. The mobile phone130retransmits the media packet in the next subevent. Otherwise, it means that the response packet includes an ACK, and the media packet does not need to be retransmitted.

The mobile phone130may arrange the media packet transmission between the mobile phone130and the left wireless earbud110and send the transmission schedule information to the left wireless earbud110, thereby enabling the left wireless earbud110to receive packets in some given time slots (also called RX slots or reception time intervals) and transmit packets in other given time slots (also called TX slots or transmission time intervals). The remains that are not allocated for transmitting or receiving packets are called idle slots. Similarly, the mobile phone130may arrange the media packet transmission between the mobile phone130and the right wireless earbud120and send the transmission schedule information to the right wireless earbud120.

For example, refer toFIG.4, in an exemplary transmission between the mobile phone130and the left wireless earbud110, the mobile phone130transmits CIS left-channel data L #1and L #2to the left wireless earbud110in the subevents SE #1and SE #2. But for the right wireless earbud120, the times slots in the subevents SE #1and SE #2are IDLE slots, which may also be referred to as peer-side transmission/reception (RX/TX) slots. In an exemplary transmission schedule between the mobile phone130and the right wireless earbud120, the mobile phone130transmits CIS right-channel data R #1and R #2to the right wireless earbud120in the subevents SE #3and SE #4. But for the left wireless earbud110, the times slots in the subevents SE #3and SE #4are IDLE slots, which may also be referred to as peer-side RX/TX slots.

Typically, the left wireless earbud110and the right wireless earbud120enter the sleep state in IDLE slots to save battery power consumption. But, in order to address the aforementioned problems, the left wireless earbud110and the right wireless earbud120each obtains the transmission schedule information of the peer device from the mobile phone130or the peer device. For example, in addition to the transmission schedule information of the left wireless earbud110, the left wireless earbud110also obtains the transmission schedule information of the right wireless earbud120from the mobile phone130or the right wireless earbud120, which enables the left wireless earbud110to accordingly receive the media packets that are originally sent by the mobile phone130to the right wireless earbud120in scheduled slots, and to accordingly retransmit the received media packets in other scheduled slots. An embodiment of the invention introduces a method for retransmitting wireless peer packets, which allows the left wireless earbud110and the right wireless earbud120not to go to sleep in IDLE slots (also referred to as peer-side RX/TX slots in the present invention). Instead, they continuously receive and temporarily store the media packets originally sent by the mobile phone130to the peer device, and receive and detect the response packets sent by the peer device. Once detecting that any response packet sent by the peer device includes NAK information, the left wireless earbud110or the right wireless earbud120transmits the corresponding media packet, which was previously received, to the medium. Since the mobile phone130transmits media packets to the peer device and the peer device transmits response packets to the mobile phone130while the left wireless earbud110or the right wireless earbud120is in IDLE slots, these IDLE slots may be referred to as a peer-side time period collectively. The method is performed when the processing unit342of the left wireless earbud110or the right wireless earbud120loads and executes relevant firmware and/or software codes. Refer to detailed steps shown inFIG.5:

Step S510: The variable i is set to one. The variable i records the number of the IDLE slot to indicate the time point at which the RF module320is driven to receive or transmit data.

Step S512: Data that is originally sent by the mobile phone130to the peer device is received in the IDLE slot i. That is, the processing unit342may drive the RF module320and the MODEM330in the RX slot for the peer device to receive signal through the designated physical channel in the medium.

Step S514: It is determined whether a media packet is successfully received. If so, the process proceeds to step S532. Otherwise, the process proceeds to step S522. When the data received in the medium can pass the cyclic redundancy check (CRC), and a media packet that is originally sent by the mobile phone130to the peer device can be recognized by the decoded content, the processing unit342determines that a media packet is successfully received. The decoded content used for judgment may include data such as preamble, access address, link layer (LL) header, etc.

Step S522: The variable i is increased by one.

Step S524: Wait until the start of IDLE slot i (that is, the next IDLE slot after receiving data in step S512). It would be noted that, because the next subevent may include the TX slot and the RX slot for this wireless earbud, the next IDLE slot does not necessarily exist in the next subevent.

Step S532: The media packet is stored in the memory344.

Step S534: Data that is originally sent by the peer device to the mobile phone130is received in the IDLE slot i. That is, the processing unit342may drive the RF module320and the MODEM330in the TX slot for the peer device to receive signal of the designated physical channel in the medium.

Step S536: It is determined whether NAK information is detected. If so, the process proceeds to step S542. Otherwise, the process proceeds to step S522. When the data received in the medium can pass the CRC, and a response packet that is originally sent by the peer device to the mobile phone130can be recognized by the decoded content, the processing unit342further determines whether NAK information is carried in the response packet. For example, the NESN in the response packet equals the SN in the media packet temporarily stored in the memory344, it means that the response packet carries NAK information. The NAK information is used to activate the retransmission mechanism between the mobile phone130and the peer device.

Step S542: The media packet is read from the memory344.

Step S544: The variable i is increased by one.

Step S546: Wait until the start of IDLE slot i (that is, the next IDLE slot after receiving data in step S534).

Step S548: The media packet is transmitted to the medium in the IDLE slot i.

For example, refer toFIG.6. The right wireless earbud120successfully receives the media packet610that is originally sent by the mobile phone130to the left wireless earbud110in the IDLE slot of the subevent SE #1(the “Yes” paths of steps S512and S514in sequence) and stores the media packet610in the memory344(step S532). In the same IDLE slot, the right wireless earbud120subsequently detects NAK information in the response packet620that is originally sent by the left wireless earbud110to the mobile phone130(the “Yes” paths of steps S534and S536in sequence). The right wireless earbud120transmits the media packet610to the medium for enhancing signal in the IDLE slot of the subevent SE #2(step S548), which is used to increase the opportunity of successfully receiving the retransmitted media packet610by the left wireless earbud110.

In alternative embodiments of LE audio, the mobile phone130may establish a connectionless isochronous channel with the left wireless earbud110and the right wireless earbud120, and the channel uses two LE Broadcast Isochronous Stream (LE-BIS) logical transports and supports uni-directional communication.

The two BISs form a broadcast isochronous group (BIG), and each BIS has multiple BIS instances. The BIS instances in the same BIG have common timing reference data, which is used in the synchronization of broadcast isochronous data processing by the left wireless earbud110and the right wireless earbud120. Each BIS may be used by multiple wireless receivers. Each BIS instance has its unique access address and uses the designated channel map to transmit media packets. For each BIS, there exists a schedule of transmission time slots referred to as events and subevents.

Each event occurs with a regular ISO interval. Each event is divided into one or more subevents. Each subevent contains one TX slot. Taking the mobile phone130as an example, during each subevent in a BIS, the mobile phone130may transmit a media packet to the left wireless earbud110or the right wireless earbud120in a TX slot. In addition, the retransmission number (RTN) is set for each BIS. For example, when RTN=1, it means that each media packet will be retransmitted once.

The mobile phone130may arrange the media packet transmission between the mobile phone130and the left wireless earbud110and send the transmission schedule information to the left wireless earbud110, thereby enabling the left wireless earbud110to receive packets in some given time slots (also called RX slots or reception time intervals). The remains that are not allocated for receiving packets are called idle slots. Similarly, the mobile phone130may arrange the media packet transmission between the mobile phone130and the right wireless earbud120and send the transmission schedule information to the right wireless earbud120. The transmission schedule information includes the RTN setting.

For example, in an exemplary transmission between the mobile phone130and the left wireless earbud110, the mobile phone130transmits BIS left-channel data L #1to the left wireless earbud110in the subevent SE #1, and retransmits BIS left-channel data L #1to the left wireless earbud110in the subevent SE #2. But for the right wireless earbud120, the times slots in the subevents SE #1and SE #2are IDLE slots, which may also be referred to as peer-side reception slots. Subsequently, the mobile phone130transmits BIS right-channel data R #1to the right wireless earbud120in the subevent SE #3, and retransmits BIS right-channel data R #1to the right wireless earbud120in the subevent SE #4. Similarly, but for the left wireless earbud110, the times slots in the subevents SE #3and SE #4are peer-side RX slots. Typically, the left wireless earbud110and the right wireless earbud120enter the sleep state in IDLE slots to save battery power consumption. But, in order to address the aforementioned problems, the left wireless earbud110and the right wireless earbud120each obtains the transmission schedule information of the peer device from the mobile phone130or the peer device. For example, in addition to the transmission schedule information of the left wireless earbud110, the left wireless earbud110also obtains the transmission schedule information of the right wireless earbud120from the mobile phone130or the right wireless earbud120, which enables the left wireless earbud110to accordingly receive the media packets that are originally sent by the mobile phone130to the right wireless earbud120in scheduled slots, and to accordingly retransmit the received media packets in other scheduled slots. An embodiment of the invention introduces a method for retransmitting wireless peer packets, which, in the case of RTN=1, allows the left wireless earbud110and the right wireless earbud120not to go to sleep in peer-side RX slots. Instead, they continuously receive and temporarily store the media packets originally sent by the mobile phone130to the peer device, and transmit the stored media packets to the medium. These peer-side RX slots may be referred to as a peer-side time period collectively. The method is performed when the processing unit342of the left wireless earbud110or the right wireless earbud120loads and executes relevant firmware and/or software codes. Refer to detailed steps shown inFIG.7:

Step S710: The variable j is set to one. The variable j records the number of the peer-side RX slot to indicate the time point at which the RF module320is driven to receive data.

The technical details of steps S712and S714are similar to that of steps S512and S514, respectively, and will not be repeated for the sake of brevity.

Step S722: The variable j is increased by two.

Step S724: Wait until the start of peer-side RX slot j (that is, the second peer-side RX slot after receiving data in step S712).

Step S732: The media packet is stored in the memory344.

Step S734: The variable j is increased by one.

Step S736: The media packet is read from the memory344.

Step S738: Wait until the start of peer-side slot j (that is, the next peer-side RX slot after receiving data in step S712).

Step S742: The media packet is transmitted to the medium in the peer-side slot j (that is, the next peer-side RX slot after receiving data in step S712).

Step S744: The variable j is increased by one.

Step S746: Wait until the start of peer-side RX slot j (that is, the second peer-side RX slot after receiving data in step S712).

For example, refer toFIG.8. The right wireless earbud120successfully receives the media packet that is originally sent by the mobile phone130to the left wireless earbud110in the peer-side RX slot of the subevent SE #1(the “Yes” paths of steps S712and S714in sequence) and stores the media packet in the memory344(step S732). The right wireless earbud120transmits the media packet to the medium for enhancing signal in the peer-side RX slot of the subevent SE #2(step S742), which is used to increase the opportunity of successfully receiving the retransmitted media packet by the left wireless earbud110. Similarly, the left wireless earbud110successfully receives the media packet that is originally sent by the mobile phone130to the right wireless earbud120in the peer-side RX slot of the subevent SE #3(the “Yes” paths of steps S712and S714in sequence) and stores the media packet in the memory344(step S732). The left wireless earbud110transmits the media packet to the medium for enhancing signal in the peer-side RX slot of the subevent SE #4(step S742), which is used to increase the opportunity of successfully receiving the retransmitted media packet by the right wireless earbud120.

In some embodiments of eSCO, refer toFIG.10, the mobile phone130may establishes eSCO links with the left wireless earbud110and the right wireless earbud120. The eSCO link is a symmetric, point-to-point link between the mobile phone130and the left wireless earbud110or the right wireless earbud120. One of the connected left wireless earbud110and right wireless earbud120may be called as an agent device, and the other may be called as a partner device. The mobile phone130maintains the eSCO link by using reserved slots at regular intervals. The mobile phone130sends packets at regular intervals depending on packet type used for transmission, for example, 2 to 8 slots in every 12 time slots for 2-EV3 packets, where each slot is 625 μs typically. The eSCO link provides a limited number of retransmissions. For a detailed example, the mobile phone130may transmit a 2-EV3 packet (which may be referred to as a media packet) carrying mono data to the agent device in the first time slot. The agent device transmits a 2-EV3 packet or a Null Packet (which may be referred to as a response packet) carrying ACK or NAK information to the mobile phone130in the second time slot. When receiving NAK information from the agent device, the mobile phone130retransmits the media packet to the agent device in the third time slot. The first to fourth time slots may be referred to as an eSCO window, in which the third to fourth time slots may be referred to as a retransmission window.

For example, in an exemplary transmission between the mobile phone130and the left wireless earbud110(as the agent device shown inFIG.10), the mobile phone130transmits mono data to the left wireless earbud110in four time slots of one eSCO window. Since the mobile phone130does not establish an eSCO link with the right wireless earbud120, the right wireless earbud120enters a sleep state to save battery power consumption. Therefore, for the right wireless earbud120, the four time slots in this eSCO window include two pairs of peer-side RX slots and peer-side TX slots. In general, these four time slots may be collectively referred to as a peer-side time period. However, in order to address the aforementioned problems, the right wireless earbud120(i.e. a wireless earbud that has not established an eSCO link with the mobile phone130) can be employed as a monitoring device, and the monitoring device receives parameters about the eSCO link from the mobile phone130or the agent device. An embodiment of the invention introduces a method for retransmitting wireless peer packets, which allows the monitoring device not to go to sleep in the peer-side time period. Instead, the monitoring device continuously receives and temporarily stores the media packets originally sent by the mobile phone130to the peer device, and receives and detects the response packets sent by the peer device. Once detecting that any response packet sent by the peer device includes NAK information, the monitoring device transmits the corresponding media packet, which is previously received, to the medium. The method is performed when the processing unit342of the monitoring device loads and executes relevant firmware and/or software codes. Refer to detailed steps shown inFIG.9:

Step S910: The variable k is set to one. The variable k records the number of the time slot to indicate the time point at which the RF module320is driven to receive or transmit data.

Step S912: Data that is originally sent by the mobile phone130to the agent device is received in the time slot k (i.e. the first time slot in one eSCO window).

Step S914: It is determined whether a media packet is successfully received. If so, the process proceeds to step S932. Otherwise, the process proceeds to step S922. When the data received in the medium can pass the CRC, and a media packet that is originally sent by the mobile phone130to the peer device can be recognized by the decoded content, the processing unit342determines that a media packet is successfully received.

Step S922: The variable k is increased by four (which is used to indicate the first time slot in the next eSCO window).

Step S924: Wait until the start of time slot k (that is, the first time slot in the next eSCO window).

Step S932: The media packet is stored in the memory344.

Step S934: The variable k is increased by one (which is used to indicate the second time slot in this eSCO window, also referred to as a peer-side TX slot).

Step S936: Wait until the start of time slot k (that is, the second time slot in this eSCO window, also referred to as a peer-side TX slot).

Step S938: Data that is originally sent by the peer device to the mobile phone130is received in the time slot k (that is, the second time slot in this eSCO window, also referred to as a peer-side TX slot).

Step S942: It is determined whether NAK information is detected. If so, the process proceeds to step S946. Otherwise, the process proceeds to step S944. When a response packet that is originally sent by the peer device to the mobile phone130can be recognized, the processing unit342further determines whether NAK information is carried in the response packet.

Step S944: The variable k is increased by three (which is used to indicate the first time slot in the next eSCO window).

Step S946: The media packet is read from the memory344.

Step S952: The variable k is increased by one (which is used to indicate the third time slot in this eSCO window, also referred to as a peer-side RX slot).

Step S954: Wait until the start of time slot k (that is, the third time slot in this eSCO window, also referred to as a peer-side RX slot).

Step S956: The media packet is transmitted to the medium in the time slot k (that is, the third time slot in this eSCO window, also referred to as a peer-side RX slot).

Step S958: The variable k is increased by two.

For example, refer toFIG.10. The right wireless earbud120operates as the monitoring device to successfully receive the media packet1010that is originally sent by the mobile phone130to the left wireless earbud110in the first time slot of the eSCO window (the “Yes” paths of steps S912and S914in sequence) and store the media packet1010in the memory344(step S932). In the second time slot of the eSCO window, the right wireless earbud120subsequently detects NAK information in the response packet1020that is originally sent by the left wireless earbud110to the mobile phone130(the “Yes” paths of steps S938and S942in sequence). The right wireless earbud120transmits the media packet1010to the medium for enhancing signal in the third time slot of the eSCO window (step S956), which is used to increase the opportunity of successfully receiving the retransmitted media packet1010by the left wireless earbud110.

The aforementioned method for retransmitting wireless peer packets can be applied to the Advanced Audio Distribution Profile (A2DP) of the ACL channel. For example, refer toFIG.11, the mobile phone130establishes ACL links with the left wireless earbud110and the right wireless earbud120. The right wireless earbud120successfully receives the media packet1110that is originally sent by the mobile phone130to the left wireless earbud110in the time slot of one Bluetooth frame (also referred to as a peer-side RX slot) and stores the media packet1110in the memory344. In the time slot of the next Bluetooth frame (also referred to as a peer-side TX slot), the right wireless earbud120subsequently detects NAK information in the response packet1120that is originally sent by the left wireless earbud110to the mobile phone130. The right wireless earbud120transmits the media packet1110to the medium for enhancing signal in the time slot of the next Bluetooth frame, which is used to increase the opportunity of successfully receiving the retransmitted media packet1110by the left wireless earbud110. The formats of the media packet1110and the response packet1120conform to the Bluetooth specification. The peer-side RX and TX slots are collectively referred to as a peer-side time period.

Although the aforementioned embodiments describe the network formed by the mobile phone130(also called the wireless master device), the left wireless earbud110and the right wireless earbud120(also called the wireless slave devices), but this is only for illustration and not for limiting the present invention. Those artisans may realize the method for retransmitting wireless peer packets of the present invention to a wireless audio network or other similar networks. The wireless audio network may include one wireless master device and at least two wireless slave devices. The wireless master device may be, for example, a personal computer, a laptop PC, a tablet computer, a mobile phone, or other electronic products, and the wireless slave devices may include, for example, a left speaker and a right speaker each containing a Bluetooth transmission module.

Some or all of the aforementioned embodiments of the method of the invention may be implemented in a computer program, such as a driver of a dedicated hardware, digital signal processor (DSP) code in a specific programming language, or others. Other types of programs may also be suitable, as previously explained. Since the implementation of the various embodiments of the present invention into a computer program can be achieved by the skilled person using his routine skills, such an implementation will not be discussed for reasons of brevity. The computer program implementing some or more embodiments of the method of the present invention may be stored on a suitable computer-readable data carrier such as a DVD, CD-ROM, USB stick, a hard disk, which may be located in a network server accessible via a network such as the Internet, or any other suitable carrier.

Although the embodiment has been described as having specific elements inFIG.3, it should be noted that additional elements may be included to achieve better performance without departing from the spirit of the invention. Each element ofFIG.3is composed of various circuits and arranged to operably perform the aforementioned operations. While the process flows described inFIGS.5,7and9include a number of operations that appear to occur in a specific order, it should be apparent that these processes can include more or fewer operations, which can be executed serially or in parallel (e.g., using parallel processors or a multi-threading environment).

While the invention has been described by way of example and in terms of the preferred embodiments, it should be understood that the invention is not limited to the disclosed embodiments. On the contrary, it is intended to cover various modifications and similar arrangements (as would be apparent to those skilled in the art). Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.