A method for wireless communication between a receiver and one or more computer peripheral devices and a receiver

The method enhances wireless communication by using a receiver that manages timeslots and reallocates bandwidth intelligently, addressing inefficiencies in multi-device systems and improving user experience.

WO2025244575A1PCT designated stage Publication Date: 2025-11-27RAZER ASIA PACIFIC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/SG2024/050351
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-24
Publication Date
2025-11-27

AI Technical Summary

Technical Problem

Existing methods for wireless communication between a receiver and computer peripheral devices are inefficient and do not effectively manage bandwidth allocation in multi-device systems, leading to suboptimal user experience.

Method used

A method involving a receiver that receives data packets in active timeslots, transmits acknowledgement packets, detects idle timeslots, and broadcasts beacon packets to invite new devices for connection, utilizing an AI model to optimize timeslot allocation and minimize data loss.

Benefits of technology

Enables efficient wireless communication with multiple devices by dynamically reallocating bandwidth, maintaining connections, and minimizing data loss through intelligent timeslot management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SG2024050351_27112025_PF_FP_ABST
    Figure SG2024050351_27112025_PF_FP_ABST
Patent Text Reader

Abstract

In some embodiments, a method for wireless communication between a receiver and one or more computer peripheral devices is provided. The method includes receiving, by the receiver, one or more first data packets from a first computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmitting, by the receiver, one or more first acknowledgement packets to the first computer peripheral device in response to the one or more first data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.
Need to check novelty before this filing date? Find Prior Art

Description

A METHOD FOR WIRELESS COMMUNICATION BETWEEN A RECEIVERANDONE OR MORE COMPUTER PERIPHERAL DEVICES AND A RECEIVERTECHNICAL FIELD

[0001] The present disclosure generally relates to a method for wireless communication between a receiver and one or more computer peripheral devices and a receiver.BACKGROUND

[0002] Computer peripheral devices have been developed to extend the capability and functionality of computers, allowing users to interact with and utilize the resources of the computers more effectively. Dongles when plugged in the computers usually act as an interface between the computer and the computer peripheral devices, allowing them to interact and exchange data.

[0003] Therefore, there exists a need to provide an improved method for wireless communication between a receiver and one or more computer peripheral devices, thereby enhancing user experience.SUMMARY

[0004] According to a first aspect of the present disclosure, a method for wireless communication between a receiver and one or more computer peripheral devices is provided. The method includes: receiving, by the receiver, one or more first data packets from a first computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmitting, by the receiver, one or more first acknowledgement packets to the first computer peripheral device in response to the one or more first data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0005] According to a second aspect of the present disclosure, a method for wireless communication between a receiver and a plurality of computer peripheral devices is provided. The method includes: receiving, by the receiver, one or more data packets from one or more computer peripheral devices connected to the receiver in one or more active timeslots of a timeframe, a time frame having a sequence of timeslots; transmitting, by the receiver, one or more acknowledgement packets to the one or more computer peripheral devices in response to the one or more data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0006] According to a third aspect of the present disclosure, a receiver includes: at least one memory; and at least one processor communicatively coupled to the at least one memory and configured to: receive one or more data packets from a computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmit one or more acknowledgement packets to the computer peripheral device in response to the one or more data packets in the one or more active timeslots of the time frame; detect an idle timeslot of the time frame; and broadcast a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0007] According to a fourth aspect of the present disclosure, there is provided a computer- readable medium comprising program instructions, which, when executed by one or more processors, cause the one or more processors to perform the method as described herein.BRIEF DESCRIPTION OF THE DRAWINGS

[0008] Embodiments of the present disclosure will be better understood and readily apparent to one of ordinary skill in the art from the following written description, by way of example only, and in conjunction with the drawings, in which:FIG. 1 is a block diagram showing a receiver according to various embodiments of the present disclosure;FIGS. 2A to 2C are block diagrams showing bandwidth allocation by a receiver among a plurality of computer peripheral devices connected thereto according to various embodiments of the present disclosure;FIG. 3 is a block diagram showing timeslots according to various embodiments of the present disclosure;FIG. 4 a block diagram showing an exemplary method for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure;FIG. 5 is a flowchart showing an exemplary method for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure;FIG. 6A and 6B are schematic diagrams showing an exemplary method for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure;FIG. 7 is flowchart showing a method 700 for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure; andFIG. 8 a block diagram showing an example computing device, according to various embodiments of the present disclosure.DETAILED DESCRIPTION

[0009] Embodiments described below in the context of a method are analogously valid for the respective element, device, apparatus, or system, and vice versa. Furthermore, it will be understood that the embodiments described below may be combined, for example, a part of one embodiment may be combined with a part of another embodiment, and a part of one embodiment may be combined with a part of another embodiment.

[0010] It should be understood that the singular terms "a", "an", and "the" include plural references unless context clearly indicates otherwise. Similarly, the word "or" is intended to include "and" unless the context clearly indicates otherwise.

[0011] It will be further understood that the terms “comprise” (and any form of comprise, such as “comprises” and “comprising”), “have” (and any form of have, such as “has” and “having”), “include” (and any form of include, such as “includes” and “including”), and “contain” (and any form of contain, such as “contains” and “containing”) are open-ended linking verbs. As a result, a method or device that “comprises,” “has,” “includes” or “contains” one or more steps or elements possesses those one or more steps or elements, but is not limited to possessing only those one or more steps or elements. Likewise, a step of a method or an element of a device that “comprises,” “has,” “includes” or “contains” one or more features possesses those one or more features, but is not limited to possessing only those one or more features. Furthermore, a device or structure that is configured in a certain way is configured in at least that way, but may also be configured in ways that are not listed.

[0012] Approximating language, as used herein throughout the specification and claims, may be applied to modify any quantitative representation that could permissibly vary without resulting in a change in the basic function to which it is related. Accordingly, a value modified by a term or terms, such as “about,” “substantially”, is not limited to the precise value specified but within tolerances that arc acceptable for operation of the embodiment for an application for which it is intended. In some instances, the approximating language may correspond to the precision of an instrument for measuring the value.

[0013] The term “exemplary” may be used herein to mean “serving as an example, instance, or illustration”. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs.

[0014] The terms “at least one” and “one or more” may be understood to include a numerical quantity greater than or equal to one (e.g., one, two, three, four, [...], etc.). The term “a plurality” may be understood to include a numerical quantity greater than or equal to two (e.g., two, three, four, five, [...], etc.). The phrase “at least one of’ with regard to a group of elements may be used herein to mean at least one element from the group consisting of the elements. For example, the phrase “at least one of’ with regard to a group of elements may be used herein to mean a selection of: one of the listed elements, a plurality of one of the listed elements, a plurality of individual listed elements, or a plurality of a multiple of listed elements.

[0015] The term “first”, “second”, “third” detailed herein are used to distinguish one element from another similar element and may not necessarily denote order or relative importance, unless otherwise stated. For example, a first transaction data, a second transaction data may be used to distinguish two transactions based on two different foreign currency exchange.

[0016] The term “data” as used herein may be understood to include information in any suitable analog or digital form, e.g., provided as a file, a portion of a file, a set of files, a signal or stream, a portion of a signal or stream, a set of signals or streams, and the like. Further, the term “data” may also be used to mean a reference to information, e g., in form of a pointer The term “data”, however, is not limited to the aforementioned examples and may take various forms and represent any information as understood in the art. Any type of information, as described herein, may be handled for example via one or more processors in a suitable way, e.g. as data.

[0017] The term “computing device” may be used herein to mean any suitable device and / or system such as, by way of example and not as a limitation, a personal computer, a laptop, a game console, a mobile phone and the like.

[0018] As used herein, the term “connect / connected / connection” may refer to a wired or wireless communication link formed between electronic devices that enables data transmission.

[0019] The terms “processor” or “controller” as, for example, used herein may be understood as any kind of entity that allow s handling data. The data may be handled according to one or more specific functions executed by the processor or controller. Further, a processor or controller as used herein may be understood as any kind of circuit, e.g., any kind of analog or digital circuit. A processor or a controller may thus be or include an analog circuit, digital circuit, mixed-signal circuit, logic circuit, processor, microprocessor, Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA), integrated circuit, Application Specific Integrated Circuit (ASIC), etc., or any combination thereof. Any other kind of implementation of the respective functions, which will be described below in further detail, may also be understood as a processor, controller, or logic circuit. It is understood that any two (or more) of the processors, controllers, or logic circuits detailed herein may be realized as a single entity with equivalent functionality or the like, and conversely that any single processor, controller, or logic circuit detailed herein may be realized as two (or more) separate entities with equivalent functionality or the like.

[0020] The term “memory” detailed herein may be understood to include any suitable type of memory or memory device, e.g., a hard disk drive (HDD), a solid-state drive (SSD), a flash memory, etc.

[0021] Various techniques may be described herein in the general context of software, hardware elements, or program modules. Generally, such modules include routines, programs, objects, elements, components, data structures, and so forth that perform particular tasks or implement particular abstract data types. The terms “module,” “functionality.” and "component as used herein generally represent software, firmware, hardware, or a combination thereof. The features of the techniques described herein are platform independent, meaning that the techniques may be implemented on a variety of commercial computing platforms having a variety of processors.

[0022] Unless specifically stated otherwise, and as apparent from the following, it will be appreciated that throughout the present specification, description or discussions utilizing terms such as “processing”, “collecting”, “generating”, “providing”, “detecting” or the like, refer tothe actions and processes of a computer system, or similar electronic device, that manipulates and transforms data represented as physical quantities within the computer system into other data similarly represented as physical quantities within the computer system or other information storage, transmission or display devices.

[0023] As used herein, a receiver or a receiver unit may include a dongle, a base-station or a printed circuit board (PCB) module integrated in a laptop / pc. The term “dongle” may refer to a small hardware device that typically connects to a computer or other electronic device to provide additional functionality or security. It is usually a plug-and-play device that connects to a universal serial bus (USB) port. In the context of various embodiments, the receiver may be used to wirelessly connect computer peripheral devices to a computer. In the context of various embodiments, the receiver may include at least one memory, and at least one processor communicatively coupled to the at least one memory and configured to execute instructions stored in the at least one memory.

[0024] As used herein, the term “computer peripheral device” may refer to hardware components that connect to a computer and extend its capabilities. They facilitate input, output, and storage functions and include input devices (e.g. a keyboard, a mouse, a trackpad, a touch screen, a scanner, a microphone, etc), output devices, storage devices, networking devices and the like.

[0025] As used herein, the term “timeslot” may refer to in the context of digital communication systems, a fixed duration of time within a communication channel which is divided into timeslots.

[0026] As used herein, the term “beacon packet” may in the context of wireless communication typically refer to a type of data packet that serves as a periodic transmission from a device, providing information about its presence, capabilities, or status. Beacon packets may be commonly used in wireless networks for various purposes, including network discovery, synchronization, and management. In the context of various embodiments, the receiver may broadcast beacon packets to announce its presence, provide information about the network it is associated with, and provide configuration parameters and management information elements for connection to the network.

[0027] Various embodiments of what is described here seek to provide a method for wireless communication between a receiver (e.g. a dongle) and one or more computer peripheral devices. The proposed method may connect a receiver to a new computer peripheral device while the receiver is in connection with computer peripheral device(s) and dynamicallyallocate data bandwidth among the newly connected computer peripheral device and the previously connected computer peripheral device(s) in a multi-device wireless system. The proposed method may adopt a “cycle-stealing” concept to perform connection with new devices while maintaining connection with connected devices. In other words, the proposed method may rc-allocatc bandwidth each time additionally connected to a new device.

[0028] Tn various embodiments, the receiver may exchange data packets with computer peripheral device(s) connected thereto in active timeslots (and transmit the data packets to a computing device in connection with the receiver) and broadcast a beacon packet in an idle timeslot to invite a new computer peripheral device for connection (e.g. reconnection). The beacon packet may include a next timeslot and a next channel frequency for a new computer peripheral device for connection at the next timeslot and the next channel frequency.

[0029] In some embodiments, the next timeslot may be determined by an Artificial Intelligence (Al) model so as to minimize data packets loses from connected device(s) while searching for new devices, e.g. a “right” timeslot. The Al model may collect real-time data packets (e.g. including time variable data about input events from a user) from the connected device(s), preprocess the real-time data packets to extract relevant features (e.g. aggregate the time variable data, calculate statistics of the time variable data) for analysing usage patterns, and predict usage patterns of the user based on the extracted features.

[0030] In some instance, embodiments of the methods and devices described herein provide technical improvements and advantages over existing approaches. For example, the proposed method provides an advantageous and efficient approach in multi-device wireless system by “stealing” an idle timeslot for broadcasting a beacon packet to invite a new device for connection, transmitting timeslot information to the new device in response to receipt of a reconnection packet via a predefined channel frequency (e.g. instead of sending an acknowledgement packet in response to data packet(s) received from the connected device(s)), dynamically rc-allocating bandwidth among the newly connected device and the previously connected device(s), thereby enabling a receiver to concurrently communicate with the multiple devices.

[0031] The following examples pertain to various aspects of the present disclosure.

[0032] Example 1 is a method for wireless communication between a receiver and one or more computer peripheral devices, the method comprising: receiving, by the receiver, one or more first data packets from a first computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots;transmitting, by the receiver, one or more first acknowledgement packets to the first computer peripheral device in response to the one or more first data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0033] Tn Example 2, the subject matter of Example 1 may optionally include that the beacon packet comprises information relating to a transmission time of the beacon packet with respect to a start of the idle timeslot, a quantity of computer peripheral device connected at the receiver, supported devices by the receiver, a sequence of the idle timeslot in the time frame, a next timeslot for reconnection process and / or a next channel frequency for the reconnection process.

[0034] In Example 3, the subject matter of Example 2 may optionally include: when the beacon packet comprises a next timeslot for reconnection process, receiving, by the receiver, a reconnection packet from a second computer peripheral device in the next timeslot for the connection process.

[0035] In Example 4, the subject matter of Example 2 or Example 3 may optionally include that the next timeslot is comprised in a next time frame subsequent to the time frame, and / or wherein the next timeslot is comprised in a next time frame having a same sequence in the next time frame with the sequence of the idle timeslot in the time frame.

[0036] Tn Example 5, the subject matter of Example 3 or Example 4 may optionally include transmitting, by the receiver, second timeslot information to the second computer peripheral device, wherein the second computer peripheral device starts transmission to the receiver in accordance with the second timeslot information, the second timeslot information comprising information on a second starting timeslot and second timeslot allocation to the second computer peripheral device.

[0037] In Example 6, the subject matter of Example 5 may optionally include transmitting, by the receiver, first timeslot information to the first computer peripheral device, wherein the first computer peripheral device switches transmission to the receiver in accordance with the first timeslot information, the first timeslot information comprising information on a first starting timeslot and first timeslot allocation to the first computer peripheral device.[OOO38J In Example 7, the subject matter of Example 6 may optionally include that the first timeslot allocation and the second timeslot allocation amount to 100% bandwidth of the receiver.

[0039] In Example 8, the subject matter of Example 7 may optionally include receiving, by the receiver, one or more further first data packets from the first computer peripheral device connected to the receiver in one or more active timeslots from the first starting timeslot; transmitting, by the receiver, one or more further first acknowledgement packets to the first computer peripheral device in response to the one or more further first data packets in the one or more active timeslots from the first starting timeslot; receiving, by the receiver, one or more second data packets from the second computer peripheral device connected to the receiver in one or more active timeslots from the second starting timeslot; transmitting, by the receiver, one or more second acknowledgement packets to the second computer peripheral device in response to the one or more second data packets in the one or more active timeslots from the second starting timeslot; detecting, by the receiver, a further idle timeslot; and broadcasting, by the receiver, a further beacon packet to invite a further computer peripheral device for connection in the further idle timeslot.

[0040] In Example 9, the subject matter of Example 8 may optionally include that the first starting timeslot, the second starting timeslot and the further idle timeslot are comprised in a same time frame.[00041 J In Example 10, the subject matter of Example 2 may optionally include: when the beacon packet comprises a next timeslot for reconnection process, determining the next timeslot using an Artificial Intelligence (Al) model or a randomized method.

[0042] In Example 1 1 , the subject matter of Example 10 may optionally include that the Al model is trained by: preprocessing a training dataset to extract features for analyzing usage patterns of a computer peripheral device; feeding the features to an Al model selected from a statistical model, a time series model or a neural network-based model to analyze the usage patterns; and predicting usage patterns using supervised learning techniques.

[0043] In Example 12, the subject matter of Example 11 may optionally include the training of the Al model further comprises evaluating the trained Al model by a validation dataset.

[0044] In Example 13, the subject matter of any of Examples 10 to 12 may optionally include that the determining the next timeslot using an Artificial Intelligence (Al) model comprises: collecting, by the receiver, real-time data packets from the first computer peripheral device connected with the receiver; extracting features from the real-time data packets; feeding the features to the Al model; and predicting usage patterns of the first computer peripheral device.

[0045] In Example 14, the subject matter of Example 13 may optionally include that the determining the next timeslot using an Artificial Intelligence (Al) model further comprises: updating the Al model by a feedback loop, wherein the feedback loop is configured to compare the predicted usage patterns with real-time usage.

[0046] In Example 15, the subject matter of Example 13 or Example 14 may optionally include that the determining the next timeslot using an Artificial Intelligence (Al) model further comprises: formatting and normalizing the real-time data packets in accordance with a training dataset.

[0047] Example 16 is a method for wireless communication between a receiver and a plurality of computer peripheral devices, the method comprising: receiving, by the receiver, one or more data packets from one or more computer peripheral devices connected to the receiver in one or more active timeslots of a time frame, a time frame having a sequence of timeslots; transmitting, by the receiver, one or more acknowledgement packets to the one or more computer peripheral devices in response to the one or more data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0048] In Example 17, the subject matter of Example 16 may optionally include that the beacon packet comprises information relating to a transmission time of the beacon packet with respect to a start of the idle timeslot, a quantity of computer peripheral devices connected at the receiver, supported devices by the receiver, a sequence of the idle timeslot in the time frame, a next timeslot for reconnection process and / or a next channel frequency for the reconnection process.

[0049] Example 18 is a receiver comprising: at least one memory; and at least one processor communicatively coupled to the at least one memory and configured to: receive one or more data packets from a computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmit one or more acknowledgement packets to the computer peripheral device in response to the one or more data packets in the one or more active timeslots of the time frame; detect an idle timeslot of the time frame; and broadcast a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

[0050] In Example 19, the subject matter of Example 18 may optionally include that the beacon packet comprises information relating to a next timeslot for reconnection process and / or a next channel frequency for the reconnection process.

[0051] Example 20 is a computer-readable medium including program instructions, which, when executed by one or more processors, cause the one or more processors to perform the method of any one of Examples 1 to 17.

[0052] FIG. 1 is a block diagram showing a receiver or a receiver unit 100 according to various embodiments of the present disclosure.

[0053] According to various non-limiting embodiments, the receiver 100 (e.g. a dongle) may be configured to simultaneously connect a plurality of computer peripheral devices (e.g. a mouse 20, a keyboard 30, a headset 40 and a game controller 50) to a computing device 10 (e.g. a base station) via a wireless network. That may mean that the computing device 10 concurrently communicates with the plurality of computer peripheral devices via the receiver 100 (e.g. the plurality of computer peripheral devices sharing the bandwidth of the receiver). According to various non-limiting embodiments, the wireless network may operate as a Wi-Fi network, a Bluetooth network, an Infrared (IR) network, a Near Field Communication (NFC) network, an Ultra-Wideband (UWB) network or a millimeter wave (mmWave) network. As used herein, the bandwidth may refer to the maximum capacity (e.g. the amount of data that may be transmitted over a communication channel in a given amount of time) and it may be measured in bit per second (bps) of a communication system. Devices may share the total bandwidth of all channels and only one channel may be used at a time.

[0054] FIGS. 2 A to 2C are block diagrams showing bandwidth allocation by a receiver among a plurality of computer peripheral devices connected thereto according to various embodiments of the present disclosure. As shown in FIG. 2A, computer peripheral device #1 may be connected to the computing device 10 via the receiver 100 and the computer peripheral device #1 may be allocated a full bandwidth (i.c. 100%) of a channel of the receiver 100. As shown in FIG. 2B, computer peripheral device #2 may be also connected to the computing device 10 via the receiver 100, and the computer peripheral device #1 and computer peripheral device #2 may be respectively allocated a half bandwidth (i.e. 50%) of the channel. As shown in FIG. 2C, computer peripheral device #3 may be further connected to the computing device 10 via the receiver 100. In one example, the computer peripheral device #1, computer peripheral device #2 and computer peripheral device #3 may be respectively allocated a one- third bandwidth (i.c. 33%) of the channel.

[0055] In another example, the computer peripheral device #1 and computer peripheral device #2 may be respectively allocated a one-fourth bandwidth (i.e. 25%) of the channel, and the computer peripheral device #3 may be allocated a half bandwidth (i.e. 50%) of the channel. In a further example, the computer peripheral device #1 may be allocated a first bandwidth (i.e. x%) of the channel, the computer peripheral device #2 may be allocated a second bandwidth (i.e. y%) of the channel, and the computer peripheral device #3 may be allocated a third bandwidth (i.e. z%) of the channel, wherein a sum of the x%, y% and z% is 100%. In other words, the bandwidth may be dynamically allocated to the plurality of computer peripheral devices in accordance with their functionality (e.g. in accordance with data rate requirements of the plurality of computer peripheral devices). For example, a timeframe of 1ms may be divided into 8 timeslots, 2 timeslots may be allocated to a 1kHz wireless mouse, 1 timeslot allocated for normal transmission and the other one for retry and retransmission, and 4 timeslots may be allocated for a wireless headset as its data rate requirement is much higher than that of a mouse. That may include a comparison between / among the functionalities of the plurality of computer peripheral devices. The computing device 10 may maintain connection with the computer peripheral device #1 while it starts connection with the computer peripheral device #2; similarly, the computing device 10 may maintain connection with the computer peripheral device #1 and the computer peripheral device #2, while it starts connection with the computer peripheral device #3.

[0056] It should be appreciated that although FIGS. 2 A to 2C show three computer peripheral devices connected to the computing device 10, the present disclosure shall not be limited to three computer peripheral devices and shall include any possible number of computer peripheral devices (e.g. 10, 100, etc) that a computing device may connect with.

[0057] FIG. 3 is a block diagram showing timeslots according to various embodiments of the present disclosure. “TS” may represent a timeslot.

[0058] According to various non-limiting embodiments, available transmission time may be divided into timeslots and each timeslot may be assigned to a different device or different function. The timeslots may include a fixed duration, for example, a duration of 125 ps or 250 ps. The timeslots may be organized into time frames, e.g. frame 30 as shown in FIG. 3 includes a sequence of timeslots TS(2) to TS(9). The frame structure may define how the timeslots are arranged and allocated to devices. Devices may be given one or more timeslots within a frame for it to transmit or receive data. Devices may combine multiple timeslots to transmit or receive data.

[0059] FIG. 4 is a block diagram showing an exemplary method for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure. “D” may represent a data packet, “A” may represent an acknowledgement packet, “B” may represent a beacon packet, “X” may represent no transmission, and “R” may represent a reconnection packet.

[0060] According to various non-limiting embodiments, a method for wireless communication between a receiver (e.g. the receiver 100) and one or more computer peripheral devices (e.g. a mouse 20, a keyboard 30, a headset 40, a game controller 50 and the like) may include: receiving, by the receiver, first data (e.g. Ds shown in FIG. 4) from a first computer peripheral device connected to the receiver in one or more active timeslots (e.g. TS(1) and TS(2) in FIG. 4) of a time frame, the time frame having a sequence of timeslots; transmitting, by the receiver, first acknowledgement (e.g. As shown in FIG. 4) to the first computer peripheral device in response to the first data (e.g. As shown in FIG. 4) in the one or more active timeslots (e.g. TS(1) and TS(2) in FIG. 4) of the time frame; detecting, by the receiver, an idle timeslot (e.g. TS(3) shown in FIG. 4) of the time frame; and broadcasting, by the receiver, a beacon packet (e.g. B shown in FIG. 4) to invite a further computer peripheral device for connection in the idle timeslot (e.g. TS(3) shown in FIG. 4) of the time frame. The time frame as shown in FIG. 4 may include timeslots TS(1), TS(2) and TS(3). It should be appreciated that the time frame shall not be confined to include three timeslots as shown in FIG. 4 but include a possible number of timeslots that a channel may have. For example, the time frame as shown in FIG. 4 may include timeslots TS(1), TS(2), TS(3), TS (4) and TS (5); the time frame as shown in FIG.4 may include timeslots TS(1) to TS (9).

[0061] According to various non-limiting embodiments, the receiver may transmit the beacon packet to announce its presence and provide essential information to computer peripheral device(s) in the range. The beacon packet (e.g. B shown in FIG. 4) may include information relating to a transmission time of the beacon packet with respect to a start of the idle timeslot, a quantity of computer peripheral device(s) connected at the receiver, supported devices by the receiver, a sequence of the idle timeslot in the time frame, a next timeslot for reconnection process and / or a next channel frequency for the reconnection process. The beacon packet may be transmitted at a predefined channel frequency (e.g. a different channel frequency from the channel frequency on which the first computer peripheral device and the receiver communicate the first data and the first acknowledgement). The next channel frequency may be a channel frequency different from the predefined channel frequency and the channelfrequency on which the first computer peripheral device and the receiver communicate the first data and the first acknowledgement. The receiver may be capable of communicating on a frequency range (e.g. 2.400Ghz to 2.483Ghz based on US FCC regulations) and the frequency range may be divided into bands which may be further divided into channels.

[0062] According to various non-limiting embodiments, a receiver (e.g. the receiver 100) may transmit a beacon packet at periodic intervals when it is in an idle mode which means the receiver is not connected to any device. A receiver may transmit a beacon packet at aperiodic intervals when it is in an active mode which means the receiver is connected to at least one device.

[0063] According to various non-limiting embodiments, a receiver (e.g. the receiver 100) may analyse user behaviour (e.g. mouse movement or keyboard typing frequency) to choose a next timeslot for performing reconnection by an Artificial Intelligence (Al) model as described hereinafter or a randomized method. The next timeslot may be chosen in a manner that data packet lost from active devices is minimized.

[0064] Referring back to FIG. 4, the receiver (e.g. the receiver 100) may receive a reconnection packet (e.g. Rl) at the next timeslot (e.g. TS(5)) for reconnection process from a further computer peripheral device. The receiver may consequently start reconnection process with the further computer peripheral device in response to the reconnection packet (e.g. Rl). If the reconnection process with the further computer peripheral device is unsuccessful, the receiver may transmit another beacon packet (e.g. with a second next timeslot and a second next channel frequency) and receive a second reconnection packet (e.g. R2) at a second next timeslot (e.g. TS(9)) for reconnection process from a second further computer peripheral device.

[0065] According to various non-limiting embodiments, if no reconnection packet is received at the next timeslot (e.g. TS(5)) for reconnection process, the receiver may transmit another beacon packet (e.g. with a second next timeslot and a second next channel frequency) and this time receive a reconnection packet (e.g. R2) at a second next timeslot (e.g. TS(9)) for reconnection process from a further computer peripheral device.

[0066] FIG. 5 is a flowchart showing an exemplary method 500 for wireless communication between a receiver (e.g. the receiver 100) and one or more computer peripheral devices (e.g. a mouse 20, a keyboard 30, a headset 40, a game controller 50 and the like) according to various embodiments of the present disclosure. The receiver may communicate with a computer device (e.g. the computing device 10).

[0067] The method may include the following steps 510 to 540.

[0068] At step 510, send, by the receiver, a beacon packet and listen for reconnection request.

[0069] At step 512, if a request for reconnection is received, proceed to step 514; if no request for reconnection is received, proceed back to step 510.

[0070] At step 514, complete reconnection process, by the receiver with device 1 from which the request for reconnection is received at step 512.

[0071] At step 516, allocate, by the receiver, 100% of its bandwidth to the device 1.

[0072] At step 518, exchange data, by the receiver, with the device 1.

[0073] At step 520, start a second reconnection process, by the receiver.

[0074] At step 522, connect the receiver with device 2.

[0075] At step 524, reallocate, by the receiver, its bandwidth between the device 1 and device 2.

[0076] At step 526, allocate, by the receiver, a portion of its bandwidth (e.g. 50% or 25% or any percentage a% in accordance with its functionality) to the device 1 and a remaining portion of its bandwidth to the device 2 (e.g. (100% - 50%) or (100% - 25%) or (100% - a%)).

[0077] At step 528, exchange data, by the receiver, with the device 1 and device 2.

[0078] At step 530, start a third reconnection process, by the receiver.

[0079] At step 532, connect the receiver with a device 3.

[0080] At step 534, reallocate, by the receiver, its bandwidth among the device 1 , device 2 and device 3.

[0081] At step 536, allocate, by the receiver, x% of its bandwidth to the device 1 (e.g. 50% for a headset), y% of its bandwidth to the device 2 (e.g. 25% for a mouse) and z% of its bandwidth to the device 3 (e.g. 25% for a keyboard). The bandwidth of the receiver may be allocated to the connected computer peripheral devices in accordance with their functionality.

[0082] At step 538, exchange data, by the receiver, with the device 1, device 2 and device 3.

[0083] At step 540, start a fourth reconnection process, by the receiver, and repeat the similar steps as described above (e.g. repeat steps 532 to 540).

[0084] FIG. 6A and 6B are schematic diagrams showing an exemplary method for wireless communication between a receiver (e.g. the receiver 100) and one or more computer peripheral devices (e.g. device 1, device 2 and device 3) according to various embodiments of the present disclosure. The receiver may communicate with a computer device (e.g. the computing device10). The receiver may communicate with the one or more computer peripheral devices (e.g. device 1, device 2 and device 3) in time frames 1 to 12 as shown in FIGS. 6A and 6B and further communication is not shown. Each time frame may include four timeslots as indicated in the horizonal axis. It should be appreciated that each time frame shall not be confined to include four timeslots as shown in FIGS. 6 A and 6B but include a possible number of timeslots that a channel may have.

[0085] At timeslots 1 to 3 of time frame 1, the receiver and device 1 may exchange data packets, particularly, the device 1 may send first data packets to the receiver and the receiver may send an acknowledge packets in response to the first data packets in timeslots 1 to 3 (i.e. active timeslots).

[0086] At timeslot 4 of time frame 1, there may be no transmission from device 1 as there may be no user input on the device 1 at this timeslot. The receiver may detect the timeslot 4 as an idle timeslot and broadcast a beacon packet in the timeslot 4 of the time frame 1 to invite further computer peripheral device(s) for connection. Device 2 and / or device 3 in the range may receive the beacon packet. The beacon packet may include a next timeslot for reconnection process and a next channel frequency for reconnection process. The next timeslot may be included in a next time frame (i.e. time frame 2) subsequent to the time frame 1. The next timeslot may be included in a next time frame (i.e. time frame 2) having a same sequence (4th) in the next time frame with the sequence (4th) of the idle timeslot in the time frame 1.

[0087] At timeslots 5 to 7 of time frame 2, the receiver and the device 1 may resume data packet exchange.

[0088] At timeslot 8 of time frame 2, the receiver may receive or not receive a data packet from the device 1 but may not transmit an acknowledgement packet to the device 1 even if a data packet is received. Instead, the receiver may switch to a predefined channel frequency to receive a reconnection packet from the device 2.

[0089] At timeslots 9 to 11 of time frame 3, the receiver and the device 1 may resume data packet exchange.

[0090] At timeslot 12 of time frame 3, the receiver may receive or not receive a data packet from the device 1 but may switch to the predefined channel frequency to complete reconnection with the device 2 by sending the device 2 timeslot information. The timeslot information sent to the device 2 may include information on a starting timeslot (e.g. timeslot 18 of time frame 5) and timeslot allocation (e.g. 50% of bandwidth) to the device 2. The timeslot information sent to the device 2 may also include a next channel frequency for reconnection with device 2.The next channel frequency sent to device 2 may be the same as or different from the channel frequency on which the device 1 and the receiver communicate. The device 2 may start transmission to the receiver in accordance with the timeslot information.

[0091] At timeslots 13 to 16 of time frame 4, the receiver and the device 1 may resume data packet exchange. The receiver may transmit timeslot information to the device 1, the timeslot information sent to the device 1 including information on a starting timeslot (e.g. timeslot 17 of time frame 5) and timeslot allocation (e.g. 50% of bandwidth) to the device 1. The device 1 may switch transmission to the receiver in accordance with the timeslot information sent to it.

[0092] At timeslots 17 and 19 of time frame 5, the receiver and the device 1 may exchange data packet in accordance with the timeslot information sent to the device 1. The timeslot 17 may be the starting timeslot of the new allocation for the device 1 in accordance with the timeslot information sent to the device 1.

[0093] At timeslot 18 of time frame 5, the receiver and the device 2 may exchange data packet in accordance with the timeslot information sent to the device 2. The timeslot 18 may be the starting timeslot of the new allocation for the device 2 in accordance with the timeslot information sent to the device 2.

[0094] At timeslot 20 of time frame 5, there may be no transmission from device 2 as there may be no user input on the device 2 at this timeslot. The receiver may detect the timeslot 20 as a further idle timeslot and broadcast a beacon packet in the timeslot 20 of the time frame 5 to invite further computer peripheral device(s) for connection. Device 3 in the range may receive the beacon packet. The first starting timeslot (timeslot 17), the second starting timeslot (timeslot 18) and the further idle timeslot (timeslot 20) may be included in a same time frame (timeframe 5). Alternatively, there may be transmission from device 2 at the timeslot 20 of time frame 20 (not shown), and the receiver may proceed to send an acknowledgement packet to device 2 similarly as in time slot 16 of time frame 4. The receiver may wait until detecting an idle timeslot to broadcast a beacon packet in this idle timeslot to invite further computer peripheral device(s) for connection. The below steps may continue after the beacon packet is sent form the receiver.

[0095] At timeslots 21 and 23 of time frame 6, the receiver and the device 1 may exchange data packet in accordance with the timeslot information sent to the device 1.

[0096] At timeslot 22 of time frame 6, the receiver and the device 2 may exchange data packet in accordance with the timeslot information sent to the device 2.[00097 J At timeslot 24 of time frame 6, the receiver may receive or not receive a data packet from the device 2 but may not transmit an acknowledgement packet to the device 2 even if a data packet is received. Instead, the receiver may switch to the predefined channel frequency to receive a reconnection packet from the device 3.

[0098] At timeslots 25 and 27 of time frame 7, the receiver and the device 1 may resume data packet exchange in accordance with the timeslot information sent to the device 1 .

[0099] At timeslot 26 of time frame 7. the receiver and the device 2 may exchange data packet in accordance with the timeslot information sent to the device 2.[000100] At timeslot 28 of time frame 7, the receiver may receive or not receive a data packet from the device 2 but may switch to the predefined channel frequency to complete reconnection with the device 3 by sending the device 3 timeslot information. The timeslot information sent to the device 3 may include information on a starting timeslot (c.g. timeslot 34 of time frame 9) and timeslot allocation (e.g. 50% of bandwidth) to the device 3. The timeslot information sent to the device 3 may also include a next channel frequency for reconnection with device 3. The next channel frequency sent to device 3 may be the same as or different from the channel frequency on which the device 1, the device 2 and the receiver communicate, respectively. The device 3 may start transmission to the receiver in accordance with the timeslot information sent to it.[000101] At timeslots 29 and 31 of time frame 8, the receiver and the device 1 may resume data packet exchange in accordance with the timeslot information sent to the device 1. The receiver may transmit further timeslot information to the device 1, the further timeslot information sent to the device 1 including information on a further starting timeslot (e.g. timeslot 33 of time frame 9) and further timeslot allocation (e.g. 25% of bandwidth) to the device 1. The device 1 may switch transmission to the receiver in accordance with the further timeslot information sent to it.[000102] At timeslot 30 and 32 of time frame 8, the receiver and the device 2 may resume data packet exchange in accordance with the timeslot information sent to the device 2. The receiver may transmit further timeslot information to the device 2, the further timeslot information sent to the device 2 including information on a further starting timeslot (e.g. timeslot 35 of time frame 9) and further timeslot allocation (e.g. 25% of bandwidth) to the device 2. The device 2 may switch transmission to the receiver in accordance with the further timeslot information sent to it.[000103 J At timeslot 33 of time frame 9, the receiver and the device 1 may exchange data packet in accordance with the further timeslot information sent to the device 1.[000104J At timeslots 34 and 36 of time frame 9, the receiver and the device 3 may exchange data packet in accordance with the timeslot information sent to the device 3.[000105] At timeslot 35 of time frame 9, the receiver and the device 2 may exchange data packet in accordance with the further timeslot information sent to the device 2.[000106] At timeslot 40 of time frame 10, there may be no transmission from device 3 as there may be no user input on the device 3 at this timeslot. The receiver may detect the timeslot 40 as an idle timeslot and broadcast a beacon packet in the timeslot 40 of the time frame 10 to invite further computer peripheral device(s) for connection. Further device(s) in the range may receive the beacon packet and send a reconnection packet to the receiver at timeslot 48 of time frame 12.[000107] At timeslot 41 of time frame 11, the receiver and the device 1 may exchange data packet in accordance with the further timeslot information sent to the device 1.[000108] At timeslots 42 and 44 of time frame 11, the receiver and the device 3 may exchange data packet in accordance with the timeslot information sent to the device 3.[000109] At timeslot 43 of time frame 11, the receiver and the device 2 may exchange data packet in accordance with the further timeslot information sent to the device 2.[000110] At timeslot 45 of time frame 12, the receiver and the device 1 may exchange data packet in accordance with the further timeslot information sent to the device 1.[000111] At timeslot 46 of time frame 12, the receiver and the device 3 may exchange data packet in accordance with the timeslot information sent to the device 3.[000112] At timeslot 47 of time frame 12, the receiver and the device 2 may exchange data packet in accordance with the further timeslot information sent to the device 2.[000113] It should be appreciated that further communication between the receiver and the plurality of computer peripheral devices may be apparent in view of the description herein.[000114] The Al model that may be used to choose a next timeslot for performing reconnection process will be described below.[000115] According to various non-limiting embodiments, the Al model may include, but not limited to, deep learning architectures including a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), a Generative Adversarial Network (GAN), a Long Short- Term Memory Network (LSTM), and a Capsule Network (CapsNet).[000116] According to various non -limiting embodiments, the Al model may be stored in a memory of the receiver. The receiver may be configured by the Al model to collect real-time data packets from computer peripheral device(s) connected with the receiver, extract features from the real-time data packets; feed the features to the Al model; and predicting usage patterns of the computer peripheral dcvicc(s). The real-time data packets may include time variable events by the computer peripheral device(s) (e.g. cursor movements, button clicks, scrolling actions by a mouse; keys pressed events by a keyboard). The feature extracted from the realtime data packets may include aggregated time variable events by the computer peripheral device(s) within time intervals (e.g. seconds, minutes) and statistics determined based on the time variable events by the computer peripheral device(s) (e.g. event counts, durations, or frequencies) for analyzing usage patterns of the computer peripheral device(s). The real-time data packets may be formatted and normalized in accordance with a training dataset so as to be consistent with the training dataset used to train the Al model. The Al model may be configured to choose a next timeslot based on the predicted usage patterns. In other words, the Al model may be used to predict a likelihood of data transmission in a timeslot based on past events within a period of time.[000117J According to various non-limiting embodiments, the Al model may be updated by a feedback loop. The feedback loop may be configured to compare the predicted usage patterns with real-time usage data in a manner that the Al model is capable to continuously learn and improve its predictions over time.[000118] According to various non-limiting embodiments, the Al model may be trained by preprocessing a training dataset to extract features for analyzing usage patterns of a computer peripheral device; feeding the features to an Al model selected from a statistical model, a time series model or a neural network-based model to analyze the usage patterns; and predicting usage patterns using supervised learning techniques. The training dataset may include timestamped events by computer peripheral dcvicc(s) (e.g. cursor movements, button clicks, scrolling actions by a mouse; keys pressed events by a keyboard) from multiple users over a period of time to capture different usage patterns. The feature extracted from the training dataset may include aggregated timestamped events by the computer peripheral device(s) within time intervals (e.g. seconds, minutes) and statistics determined based on the timestamped events by the computer peripheral device(s) (e.g. event counts, durations, or frequencies) for analyzing usage patterns of the computer peripheral device(s).[000119] According to various non-limiting embodiments, the training of the Al model may further include evaluating the trained Al model by a validation dataset. The evaluation step may identify any issue with overfitting or underfitting and guide further refinement of the Al model in terms of its accuracy and generalization ability.[000120] FIG. 7 is flowchart showing a method 700 for wireless communication between a receiver and one or more computer peripheral devices according to various embodiments of the present disclosure. The method 700 may include receiving, by the receiver, one or more first data packets from a first computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmitting, by the receiver, one or more first acknowledgement packets to the first computer peripheral device in response to the one or more first data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame. The method 700 may include the steps of method 500 and / or the methods described with reference to FIG. 4, FIGS. 6A and 6B, respectively. Accordingly, features that are described in the context of the method 500 and / or the methods described with reference to FIG. 4, FIGS. 6 A and 6B, respectively, may correspondingly be applicable to the same or similar features in the method 700 and vice versa. Furthermore, additions and / or combinations and / or alternatives as described for a feature in the context of the method 500 and / or the methods described with reference to FIG. 4, FIGS. 6A and 6B, respectively may correspondingly be applicable to the same or similar feature in the method 700 and vice versa.[000121] According to various non-limiting embodiments, a computer program element including program instructions, which, when executed by one or more processors, cause the one or more processors to perform the methods as described herein including the methods 500, 700.[000122] According to various non-limiting embodiments, a computer-readable medium including program instructions, which, when executed by one or more processors, cause the one or more processors to perform the method as described herein including the methods 500, 700.[000123] FIG. 8 is a block diagram showing an example computing device 600, according to various embodiments of the present disclosure. The computing device 600 may be a laptop computer, a desktop computer, a tablet computer, an automobile computer, a smart phone, apersonal digital assistant, a server, or other computing devices capable of running computer applications. In some embodiments, the computing device 600 includes a processor 602, an input / output (I / O) module 604, memory 606, a power unit 608, and one or more network interfaces 610. The computing device 600 can include additional components. In some embodiments, the processor 602, input / output (I / O) module 604, memory 606, power unit 608, and the network interface(s) 610 are housed together in a common housing or other assembly. [000124] The example processor 602 can execute instructions, for example, to generate output data based on data inputs. The instructions can include programs, codes, scripts, modules, or other types of data stored in memory (e.g., memory 606). Additionally or alternatively, the instructions can be encoded as pre-programmed or re-programmable logic circuits, logic gates, or other types of hardware or firmware components or modules. The processor 602 may be, or may include, a multicorc processor having a plurality of cores, and each such core may have an independent power domain and can be configured to enter and exit different operating or performance states based on workload. Additionally or alternatively, the processor 602 may be, or may include, a general-purpose microprocessor, as a specialized coprocessor or another type of data processing apparatus. In some cases, the processor 602 performs high-level operation of the computing device 600. For example, the processor 602 may be configured to execute or interpret software, scripts, programs, functions, executables, or other instructions stored in the memory 606. In the context of various embodiments, the computing device 600 may include the example processor 602 configured to execute instructions to provide parameters for configuring a wireless network of transmitting and receiving audio data to a primary headset. The instructions may be stalled in the memory 606 as an application 614 (an App).[000125] The example I / O module 604 may include a mouse, keypad, touch screen, scanner, optical reader, and / or stylus (or other input device(s)) through which a user of the computing device 600 may provide input to the computing device 600, and may also include one or more speakers for providing audio output and a video display device for providing textual, audiovisual, and / or graphical output. The example I / O module 604 may wirelessly connect to the computing device 600 via a receiver (not shown, e.g. the receiver 100).[000126] The example memory 606 may include computer-readable storage media, for example, a volatile memory device, a non-volatile memory device, or both. The memory 606 may include one or more read-only memory' devices, random-access memory' devices, buffer memory devices, or a combination of these and other types of memory devices. In someinstances, one or more components of the memory can be integrated or otherwise associated with another component of the computing device 600. The memory 606 may store instructions that are executable by the processor 602. In some examples, the memory 606 may store instructions for an operating system 612 and for application programs 614. The memory 606 may also store a database 616.[000127] The example power unit 608 provides power to the other components of the computing device 600. For example, the other components may operate based on electrical power provided by the power unit 608 through a voltage bus or other connection. Tn some embodiments, the power unit 608 includes a battery or a battery system, for example, a rechargeable battery. In some embodiments, the power unit 608 includes an adapter (e.g., an AC adapter) that receives an external power signal (from an external source) and coverts the external power signal to an internal power signal conditioned for a component of the computing device 600. The power unit 608 may include other components or operate in another manner. [000128] The computing device 600 may be configured to operate in a wireless, wired, or cloud network environment (or a combination thereof). In some embodiments, the computing device 600 can access the network using the network interface(s) 610. The network interface(s) 610 can include one or more adapters, modems, connectors, sockets, terminals, ports, slots, and the like. The wireless network that the computing device 600 accesses may operate, for example, according to a wireless network standard or another type of wireless communication protocol. For example, the wireless network may be configured to operate as a Wireless Local Area Network (WLAN), a Personal Area Network (PAN), a metropolitan area network (MAN), or another type of wireless network. Examples of WLANs include networks configured to operate according to one or more of the 802.11 family of standards developed by IEEE (e.g., Wi-Fi networks), and others. Examples of PANs include networks that operate according to short-range communication standards (e.g., BLUETOOTH®, Near Field Communication (NFC), ZigBcc), millimeter wave communications, and others. The wired network that the computing device 600 accesses may, for example, include Ethernet, SONET, circuit-switched networks (e.g., using components such as SS7, cable, and the like), and others.[000129] While this specification contains many details, these should not be understood as limitations on the scope of what may be claimed, but rather as descriptions of features specific to particular examples. Certain features that are described in this specification or shown in the drawings in the context of separate embodiments can also be combined. Conversely, variousfeatures that are described or shown in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination.[000130] Similarly, while steps / operations of the methods as described above are depicted in a particular order (e.g. as shown in the drawings), this should not be understood as requiring that such operations / steps be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Tn certain circumstances, multitasking and parallel processing may be advantageous. For example, some operations / steps may occur in different orders and / or concurrently with other operations / steps apart from those illustrated and / or described herein. In addition, not all illustrated operations / steps may be required to implement one or more aspects or embodiments described herein. Also, one or more of the steps depicted herein may be carried out in one or more separate acts and / or phases.[000131] Moreover, the separation / integration of various system components in the embodiments described above should not be understood as requiring such separation / integration in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single product or separated into multiple products.[000132] A number of embodiments have been described. Nevertheless, it will be understood that various modifications can be made. Accordingly, other embodiments are within the scope of the following claims.

Claims

CLAIMS1. A method for wireless communication between a receiver and one or more computer peripheral devices, the method comprising: receiving, by the receiver, one or more first data packets from a first computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmitting, by the receiver, one or more first acknowledgement packets to the first computer peripheral device in response to the one or more first data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

2. The method of claim 1, wherein the beacon packet comprises information relating to a transmission time of the beacon packet with respect to a start of the idle timeslot, a quantity of computer peripheral device connected at the receiver, supported devices by the receiver, a sequence of the idle timeslot in the time frame, a next timeslot for reconnection process and / or a next channel frequency for the reconnection process.

3. The method of claim 2, when the beacon packet comprises a next timeslot for reconnection process, the method further comprising: receiving, by the receiver, a reconnection packet from a second computer peripheral device in the next timeslot for the connection process.

4. The method of claim 2 or claim 3, wherein the next timeslot is comprised in a next time frame subsequent to the time frame, and / or wherein the next timeslot is comprised in a next time frame having a same sequence in the next time frame with the sequence of the idle timeslot in the time frame.

5. The method of claim 3 or claim 4, further comprising: transmitting, by the receiver, second time slot information to the second computer peripheral device,wherein the second computer peripheral device starts transmission to the receiver in accordance with the second timeslot information, the second timeslot information comprising information on a second starting timeslot and second timeslot allocation to the second computer peripheral device.

6. The method of claim 5, further comprising: transmitting, by the receiver, first timeslot information to the first computer peripheral device, wherein the first computer peripheral device switches transmission to the receiver in accordance with the first timeslot information, the first timeslot information comprising information on a first starting timeslot and first timeslot allocation to the first computer peripheral device.

7. The method of claim 6, wherein the first timeslot allocation and the second timeslot allocation amount to 100% bandwidth of the receiver.

8. The method of claim 6 or claim 7, further comprising: receiving, by the receiver, one or more further first data packets from the first computer peripheral device connected to the receiver in one or more active timeslots from the first starting timeslot; transmitting, by the receiver, one or more further first acknowledgement packets to the first computer peripheral device in response to the one or more further first data packets in the one or more active timeslots from the first starting timeslot; receiving, by the receiver, one or more second data packets from the second computer peripheral device connected to the receiver in one or more active timeslots from the second starting timeslot; transmitting, by the receiver, one or more second acknowledgement packets to the second computer peripheral device in response to the one or more second data packets in the one or more active timeslots from the second starting timeslot; detecting, by the receiver, a further idle timeslot; and broadcasting, by the receiver, a further beacon packet to invite a further computer peripheral device for connection in the further idle timeslot.

9. The method of claim 8, wherein the first starting timeslot, the second starting timeslot and the further idle timeslot are comprised in a same time frame.

10. The method of claim 2, when the beacon packet comprises a next timeslot for reconnection process, the method further comprising: determining the next timeslot using an Artificial Intelligence (AT) model or a randomized method.

11. The method of claim 10, wherein the Al model is trained by: preprocessing a training dataset to extract features for analyzing usage patterns of a computer peripheral device; feeding the features to an Al model selected from a statistical model, a time scries model or a neural network-based model to analyze the usage patterns; and predicting usage patterns using supervised learning techniques.

12. The method of claim 11, wherein the training of the Al model further comprises evaluating the trained Al model by a validation dataset.

13. The method of any of claims 10 to 12, wherein the determining the next timeslot using an Artificial Intelligence (Al) model comprises: collecting, by the receiver, real-time data packets from the first computer peripheral device connected with the receiver; extracting features from the real-time data packets; feeding the features to the Al model; and predicting usage patterns of the first computer peripheral device.

14. The method of claim 13, wherein the determining the next timeslot using an Artificial Intelligence (Al) model further comprises: updating the Al model by a feedback loop, wherein the feedback loop is configured to compare the predicted usage patterns with real-time usage.

15. The method of claim 13 or claim 14, wherein the determining the next timeslot using an Artificial Intelligence (Al) model further comprises: formatting and normalizing the real-time data packets in accordance with a training dataset.

16. A method for wireless communication between a receiver and a plurality of computer peripheral devices, the method comprising: receiving, by the receiver, one or more data packets from one or more computer peripheral devices connected to the receiver in one or more active timeslots of a time frame, a time frame having a sequence of timeslots; transmitting, by the receiver, one or more acknowledgement packets to the one or more computer peripheral devices in response to the one or more data packets in the one or more active timeslots of the time frame; detecting, by the receiver, an idle timeslot of the time frame; and broadcasting, by the receiver, a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

17. The method of claim 16, wherein the beacon packet comprises information relating to a transmission time of the beacon packet with respect to a start of the idle timeslot, a quantity of computer peripheral devices connected at the receiver, supported devices by the receiver, a sequence of the idle timeslot in the time frame, a next timeslot for reconnection process and / or a next channel frequency for the reconnection process.

18. A receiver comprising: at least one memory; and at least one processor communicatively coupled to the at least one memory and configured to: receive one or more data packets from a computer peripheral device connected to the receiver in one or more active timeslots of a time frame, the time frame having a sequence of timeslots; transmit one or more acknowledgement packets to the computer peripheral device in response to the one or more data packets in the one or more active timeslots of the time frame;detect an idle timeslot of the time frame; and broadcast a beacon packet to invite a further computer peripheral device for connection in the idle timeslot of the time frame.

19. The receiver of claim 18, wherein the beacon packet comprises information relating to a next timeslot for reconnection process and / or a next channel frequency for the reconnection process20. A computer-readable medium comprising program instructions, which, when executed by one or more processors, cause the one or more processors to perform the method of any one of claims 1 to 17.

Citation Information

Patent Citations

  • Wireless lighting effect configuration data transmission system

    US11836306B2

  • System and method for facilitating data communication

    WO2024039297A1