The present disclosure relates generally to wireless communications and more particularly to direct mode synchronized timeslot sharing in a time division multiple access (TDMA) system.
The European Telecommunications Standard Institute—Digital Mobile Radio (ETSI-DMR) is a direct digital replacement for analog Private Mobile Radio (PMR). DMR is a scalable system that can be used in unlicensed mode (in a 446.1 to 446.2 MHz band), and in licensed mode, subject to national frequency planning Any of the ETSI standards or specifications referred to herein may be obtained by contacting ETSI at ETSI Secretariat, 650, route des Lucioles, 06921 Sophia-Antipolis Cedex, FRANCE.
DMR promises improved range, higher data rates, more efficient use of spectrum, and improved battery life. Features supported include fast call set-up, calls to groups and individuals, and short data and packet data calls. Supported communications modes include individual calls, group calls, and broadcast calls provided via a direct communication mode among the radios operating within the network. Other important DMR functions such as emergency calls, priority calls, full duplex communications, short data messages, and Internet Protocol (IP)-packet data transmissions are supported as well.
A radio, as used herein, can be mobile and/or fixed equipment that is used to obtain DMR services. Direct mode is a communication technique where any radio can communicate with one or more other radios without the need for any additional infrastructure equipment (e.g. base stations or repeaters). Direct mode operation is in contrast to the conventional repeater mode which is a mode of operation where radios communicate through the additional infrastructure equipment. Direct mode operation, therefore, can provide a more efficient, less costly communication system than repeater mode operation.
The ETSI-DMR standard provides for 6.25e (2:1 TDMA) operation in repeater mode. 6.25e (2:1 TDMA) operation refers to 6.25 Kilohertz (kHz) equivalent spectral efficiency. As there is no restriction on what happens in each timeslot or any restriction on interrelations between them (other than a need to maintain time synchronicity), it is possible to have two entirely separate conversations at the same time between entirely different units over a same RF medium. By this it is possible that two simplex calls can be independently supported in a single 12.5 kHz channel. Of course, different systems with 3:1 or greater timeslot ratios could support 3 or more simultaneous conversations between entirely different units.
In certain 12.5 KHz direct modes of operation, radios may synchronize to a single, perhaps elected, timing leader so that, even in direct mode, the increased timeslot ratios can be used to support multiple simultaneous conversations. An example of such a direct mode timing synchronization method can be found in U.S. patent application Ser. No. 12/760,787, entitled “Method for Synchronizing Direct Mode Time Division Multiple Access (TDMA) Transmissions,” filed with the United States Patent and Trademark Office on Apr. 15, 2010, and incorporated herein by reference in its entirety.
However, even when time synchronized, radios may not be able to use the multiple available timeslots in a resource-efficient manner. For example, consider the communications system landscape 100 of
Each direct mode communication system may be a configured service area associated with one or more agencies by a regulatory body or installer, in such a way that co-channel users may be encountered within a direct mode communication system and between adjacent direct mode communication systems. For example, radios 110 and 112 may be assigned to agency A, radios 130 and 132 assigned to a separate agency B, and radios 120 and 122 assigned to another separate agency C, all sharing one or more channels (timeslots) on a single shared direct mode RF frequency. Each agency may configure its radios to identify a corresponding system partitioning identifier that allows each agency's radios to distinguish communications from one another, such as a color code in accordance with a DMR standard (for example, ETSI TS 102 361-1 v2.1.1, April 2012) or a network access code in accordance with an APCO P25 standard (for example, ANSI/TIA-102.BAAA-A (FDMA—Common Air Interface) Sep. 17, 2003), which helps to prevent one agency from hearing or talking to radios belonging to another agency operating in a same, overlapping, or adjacent direct mode communication system. In operation, agency radios may be assigned and/or configured to operate in a same direct mode communication system, a partially overlapping adjacent direct mode communications systems, and/or a non-overlapping direct mode communications systems.
Part of the challenge in assigning time slots within direct mode communication systems and across a direct mode communication system landscape is that all or a subset of radios in each direct mode communication system may be mobile. Over time, radios come into and go out of range of each other, and into and out of range of radios belonging to other agencies, unpredictably. Radios operating within a nearby direct mode communication system, such as those identified by arbitrary direct mode communication system 102-106, are most likely to be in direct communication with each other, while radios operating in an overlapping or adjacent direct mode communication system are less likely to be in direct communication with a radio in the first direct mode communication system, and radios operating in a non-overlapping and/or non-adjacent direct mode communication system are even less likely to be in direct communication with a radio in the first direct mode communication system. Nonetheless, all radios are ultimately affected by timeslot selections being used across the direct mode communication system landscape 100, e.g., in all direct mode communication systems because the selection of timeslots in one direct mode communication system will most likely, at some point, affect the use of same or different timeslots in same, overlapping, or adjacent direct mode communication systems.
For the purposes of one particular example, and as illustrated in
Assuming the radios 110, 112, 120, 122, 130, and 132 communicate over a single shared RF frequency in accordance with the ETSI-DMR standard with a 2:1 slotting ratio as set forth above, and that all radios in the communications system 100 are timeslot synchronized, a situation may arise that causes inefficient use of the shared RF resources available across the direct mode communications system landscape 100 due to inefficient selection of timeslots for new calls, in accordance with the following scenario. For example, radio 110 in direct mode communication system A 102 may initiate a new direct mode call 114 to radio 112 on timeslot 1 202, as illustrated in the timing diagram 200 of
Given the scenario as set forth above, if either one of radios 130 or 132 attempt to initiate a new direct mode call 134 while direct mode calls 114 and 124 are still active, the call will be unsuccessful due to the lack of available, non-interfering timeslots on the shared RF frequency. In other words, radio 132 cannot use timeslot 2 204, 208 because that would interfere with the direct mode call 124 and cannot use timeslot 1 202, 206, which appears to radio 132 to be available, due to interference at radio 130 generated by call 114 in timeslot 1 202, 206 (e.g., the so-called hidden node problem). Similarly, radio 130 cannot use timeslot 1 202, 206 because that would interfere with the direct mode call 114 and cannot use timeslot 2 204, 208, which appears to radio 130 to be available, due to interference at radio 132 generated by call 124 in timeslot 2 204, 208 (e.g., the hidden node problem). Because of this, radios 130 and 132 will have to delay establishing the new call 134 until either direct mode call 114 ceases or until direct mode call 124 ceases, resulting in negative impacts on performance and user experience at radios 130 and 132 due to inefficient selection of direct mode timeslots.
Accordingly, there is a need to support more spectrally efficient direct mode timeslot selection for 2:1 TDMA or 6.25e direct mode, and other n:1 ratio TDMA communications systems where n>1.
The accompanying figures, where like reference numerals refer to identical or functionally similar elements throughout the separate views, together with the detailed description below, are incorporated in and form part of the specification, and serve to further illustrate embodiments of concepts that include the claimed invention, and explain various principles and advantages of those embodiments.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
Disclosed herein is an improved and more spectrally efficient direct mode timeslot selection process and device for 2:1 TDMA or 6.25e direct mode, and other n:1 ratio TDMA communications systems where n>1.
According to a first embodiment of the present disclosure, a method for sharing synchronized direct mode time division multiple access (TDMA) timeslots among a plurality of direct mode radios includes monitoring, by a first direct mode radio, other radios' usage of a plurality of available timeslots on a direct mode radio frequency (RF) and, for each received new transmission, storing an indication of the timeslot used by the new transmission and storing a system partitioning identifier associated with the new transmission. Subsequently, the first direct mode radio dynamically determining as a function of the monitoring, a first preferred transmit timeslot determined to be less likely to interfere with the other direct mode radios. Responsive to detecting a request to transmit a new direct mode call, the first direct mode radio first determining if the first preferred transmit timeslot is available, and if so, transmitting the new call in the first preferred transmit timeslot on the direct mode radio frequency. If the first preferred transmit timeslot is not available, the first direct mode radio determining if another non-preferred transmit timeslot in the plurality of timeslots is available, and if so, transmitting the new call on the non-preferred transmit timeslot on the direct mode radio frequency.
According to a second embodiment of the present disclosure a direct mode radio for synchronizing direct mode time division multiple access (TDMA) timeslots among a plurality of other direct mode radios is disclosed, the direct mode radio configured to monitor other radios' usage of a plurality of available timeslots on a direct mode radio frequency and, for each received new transmission, store an indication of the timeslot used by the new transmission and store a system partitioning identifier associated with the new transmission. Subsequently, the direct mode radio dynamically determines as a function of the monitoring, a first preferred transmit timeslot determined to be less likely to interfere with the other direct mode radios. Responsive to detecting a request to transmit a new direct mode call, the direct mode radio first determines if the first preferred transmit timeslot is available, and if so, transmits the new call in the first preferred transmit timeslot on the direct mode radio frequency. If the first preferred transmit timeslot is not available, the first direct mode radio determines if another non-preferred transmit timeslot in the plurality of timeslots is available, and if so, transmits the new call on the non-preferred transmit timeslot on the direct mode radio frequency.
Each of the above-mentioned embodiments will be discussed in more detail below, starting with example device architecture of a direct mode radio in which the embodiments may be practiced, followed by a discussion of how to dynamically determine a preferred transmit timeslot and use the preferred transmit timeslot in transmitting a new call, from the point of view of a direct mode radio. Further advantages and features consistent with this disclosure will be set forth in the following detailed description, with reference to the figures.
The processing unit 303 may include an encoder/decoder 311 with an associated code Read Only Memory (ROM) 312 for storing data for encoding and decoding voice, data, control, or other signals that may be transmitted or received between other radios within direct mode communication range of radio 132. The processing unit 303 may further include a microprocessor 313 coupled, by the common data and address bus 317, to the encoder/decoder 311, a character ROM 314, a Random Access Memory (RAM) 304, and a static memory 316.
The communications unit 302 may include an RF interface 309 configurable to communicate directly with other direct mode radios such as radios, 112, 120, 122, and/or 130. The communications unit 302 may include one or more wireless transceivers 308, such as a DMR transceiver, an APCO P25 transceiver, a TETRA transceiver, a Bluetooth transceiver, a Wi-Fi transceiver perhaps operating in accordance with an IEEE 802.11 standard (e.g., 802.11a, 802.11b, 802.11g, 802.11n), a WiMAX transceiver perhaps operating in accordance with an IEEE 802.16 standard, and/or other similar type of wireless transceiver configurable to communicate via a wireless network. The transceiver 308 is also coupled to a combined modulator/demodulator 310 that is coupled to the encoder/decoder 311.
The microprocessor 313 has ports for coupling to the input unit 306 and to the display screen 305. The character ROM 314 stores code for decoding and/or encoding data such as control messages and/or data or voice messages that may be transmitted or received by the radio 132. Static memory 316 may store operating code for the microprocessor 313 that, when executed, monitors other radios' usage of a plurality of available timeslots on a direct mode radio frequency and, for each received new transmission, stores an indication of the timeslot used by the transmission and a system partitioning identifier associated with the transmission, dynamically determines, as a function of the monitoring, a first preferred transmit timeslot out of the plurality of available timeslots determined to be less likely to interfere with the other radios in the plurality of direct mode radios, responsive to detecting a request to transmit a new direct mode call, first determine if the first preferred transmit timeslot is available, and if so, transmit the new call in the first preferred transmit timeslot on the direct mode Radio Frequency, in accordance with one or more of
A radio, as used herein, can be mobile and/or fixed equipment that is used to obtain radio services. For example, a radio can be a mobile radio (i.e. a portable radio, a mobile station, a subscriber unit, a mobile subscriber), or can be a fixed station (i.e. a fixed control station, a base station, and any supporting equipment such as consoles and/or packet data switches). Each radio is capable of communicating directly with one or more other radios using TDMA techniques as further described herein, in which specified time segments are divided into assigned timeslots for individual communications. Each radio frequency used by the radios in a direct mode communication system landscape carries timeslots whereby each timeslot out of a plurality of timeslots on the RF is known as a “channel.” A direct mode communication system landscape in which the radios operate may include a plurality of overlapping and/or non-overlapping direct mode communications systems across which one or more radio frequencies (and their channels) are thus shared amongst two or more groups of radios each assigned a particular system partitioning identifier.
For ease of describing the embodiments, hereinafter the wireless communications system 100 is presumed to be a two timeslot (2:1) TDMA shared RF communications system. Thus, in the embodiments described below, since there are two timeslots, there are two channels available on each radio frequency for carrying the traffic of the system. For example, in one embodiment, a timeslot has a length of thirty milliseconds (30 ms, including guard times) and is numbered “1” or “2”. It is important to note, however, that the TDMA communication system could equally have other slot lengths and slotting ratios as well. Thus, the present disclosure is applicable to any TDMA communication system that has a slotting ratio that is n:1, where n is an integer greater than 1, and where all direct mode radios are timeslot synchronized.
While the disclosed process flows could be implemented for any type of slotting ratio parameter n:1 where n is greater than one and for any type of system partitioning identifier, the 2:1 slotting radio associated with the DMR standard and the color code system partitioning identifier associated with the DMR standard will be relied upon for ease of illustration and description in the remainder of this document. Under the DMR standard, and for example, a color code of “orange” (perhaps associated with a color code index of “1”) may be assigned to radios being used by one agency such as a policing agency, and a separate color code of “yellow” (perhaps associated with a color code index of “2”) assigned to radios being used by another agency such as a fire fighter agency that may be use nearby or in an overlapping manner with radios using the orange color code. Radios configured to use the orange color code would embed the color code (or its corresponding index) in its transmissions, process, decode, unmute, and/or display communications received from other radios with the orange color code (or its corresponding index) embedded in the communication, and refrain from processing, decoding, unmuting, and/or displaying communications received from other radios with the yellow color code (or its corresponding index) embedded in the communication. Other types of agencies, other types of system partitioning identifiers, and more or fewer color codes and/or agencies could be implemented as well.
Further details regarding the process flows will be first set forth with regard to the timeslot monitoring process in
The direct mode radio may further process the transmission at step 402 and at least determine a color code associated with the transmission. The color code may be specified in an EMB Field of a voice burst and/or in a Slot Type Field of a general data burst consistent with the ETSI TS 102 361-1 v2.1.1, April 2012 standard. The timeslot on which the transmission is received may be determined by a particular sync pattern detected in the received transmission, or via an internal timeslot timing process perhaps consistent with U.S. patent application Ser. No. 12/760,787, entitled “Method for Synchronizing Direct Mode Time Division Multiple Access (TDMA) Transmissions,” a process consistent with U.S. patent application Ser. No. 12/331,189, entitled “Method of Efficiently Synchronizing to a Desired Timeslot in a Time Division Multiple Access Communication System” (now U.S. Pat. No. 8,279,991), and a process consistent with U.S. patent application Ser. No. 12/331,137, entitled “Method of Communicating which Channel is to be Monitored by Subscriber Units that are Idle in a Communication System” (now U.S. Pat. No. 8,045,499), among other possibilities.
At step 404, the receiving direct mode radio determines whether the transmission was received in timeslot 1 or timeslot 2. If the transmission was received in timeslot 1, processing proceeds to step 406, where a particular color code identifier counter (ccCount[rxCC]) associated with the color code indicated in the received transmission (rxCC) is decremented by a predetermined step value (StepCC), which may have a value of 1, 10, or 100, for example. On the other hand, if the transmission was received in timeslot 2, processing proceeds from step 404 to step 406, where the particular color code identifier counter ccCount[rxCC] associated with the color code indicated in the received transmission rxCC is incremented by the predetermined step value StepCC. In this example, a positive value of the ccCount counter for any particular color code is associated with timeslot 2, while a negative value of the ccCount counter for any particular color code is associated with timeslot 1. Of course, the process could be reversed in another embodiment by switching the association between value and timeslot and switching the respective increment and decrement actions in steps 406 and 408. An example ccCount array may take the form as set forth in Table I:
The example ccCount counter array may be stored, retrieved, and maintained, for example, in a static or volatile memory such as static memory 316 in the direct mode radio. Other information used throughout the monitoring process 400 (and the transmit timeslot selection process 500A-B, for that matter), including indications of timeslots, accumulators, variables, static threshold values, and/or partitioning identifiers, may similarly be stored, retrieved, and maintained in the static or volatile memory at the direct mode radio.
As set forth in Table I, and for example, the ccCount counter for the yellow color code (index 1) may have a value of 10 and indicate that transmissions being monitored and received at the receiving direct mode radio and associated with the yellow color code tend to favor using timeslot 2. Specifically, and assuming a StepCC value of 1, ten more transmissions associated with the color code yellow have used timeslot 2 than have used timeslot 1. On the other hand, the ccCount counter for the orange color code (index 2) may have a value of −9 and indicate that transmissions being monitored at the receiving direct mode radio and associated with the orange color code tend to favor using timeslot 1. Specifically, and assuming a StepCC value of 1, nine more transmission associated with the color code yellow have used timeslot 1 than have used timeslot 2. In regard to the ccCount counter associated with the blue color code, either no transmission have been received associated with the blue color code, or perhaps an equal number of transmissions have been received associated with the blue color code that use timeslot 1 as use timeslot 2. In accordance with the foregoing, steps 402-408 keep track of all color codes (e.g., sets of system partitioned radios and co-channel users in communication range of the receiving direct mode radio) and attempts to figure out what timeslot most other co-channel sets of partitioned radios are using. This information can then be used in the transmit process, discussed in more detail below, to identify a preferred transmit timeslot as the timeslot being used by the fewest sets of co-channel partitioned radios within transmission range of the receiving direct mode radio.
Moving on to step 410, the receiving direct mode radio determines if the received color code rxCC matches the receiving direct mode radio's own color code (myCC). If rxCC=myCC, processing moves to step 412, where the receiving direct mode radio determines whether the transmission was received in timeslot 1 or timeslot 2. If the transmission was received in timeslot 1, processing proceeds to step 416, where an overall communication system landscape-wide timeslot counter (“myTimeslot,” representing an accumulated timeslot value of received transmissions using the direct mode radio's color code versus received transmissions using other than the direct mode radio's color code) is decremented by a predetermined step value (StepmyCC), which may have a value of 2, 20, or 200, for example. On the other hand, if the transmission was received in timeslot 2, processing proceeds from step 412 to step 418, where the overall communication system landscape-wide timeslot counter myTimeslot is incremented by the predetermined step value StepmyCC. Because the received transmission's color code is equal to the received direct mode radio's color code, the radio is configured to apply a relatively higher step value StepmyCC to push the direct mode radio towards using the same timeslot as other radios that are within transmission range of the direct mode radio and configured with the same color code.
Returning to step 410, if the received color code rxCC is not equal to the direct mode radio's own color code myCC (e.g., rxCC myCC), processing moves to step 414, where the receiving direct mode radio determines whether the transmission was received in timeslot 1 or timeslot 2. If the transmission was received in timeslot 1, processing proceeds to step 420, where the overall communication system landscape-wide timeslot counter myTimeslot is incremented by a predetermined step value (StepotherCC), which may have a value of 1, 10, or 100, for example. On the other hand, if the transmission was received in timeslot 2, processing proceeds from step 414 to step 422, where the overall communication system landscape-wide timeslot counter myTimeslot is decremented by the predetermined step value StepotherCC. Because the received transmission's color code is not equal to the received direct mode radio's color code, the radio is configured to apply a relatively lower step value StepotherCC (compared to StepmyCC) to push the direct mode radio towards using the opposite timeslot as other radios within transmission range of the direct mode radio.
Processing proceeds from any one of steps 416, 418, 420, or 422 to step 424, where the receiving direct mode radio determines whether it should halt the timeslot monitoring process 400. For example, a battery conserving mode or an indicated power-off of the receiving direct mode radio may halt the timeslot monitoring process 400. Additionally or alternatively, another internal process in the receiving direct mode radio may halt the monitoring process (e.g., when it is involved in an active call) or an input selection by a user may halt the monitoring process. On the other hand, if no halting condition is detected at step 424, processing returns to step 402 where the receiving direct mode radio waits for a new transmission to be received.
In accordance with the foregoing, steps 410-424 keep track of overall timeslot use across all color codes and attempts to balance them out by strongly preferring to stay on a same timeslot as other direct mode radios assigned the same color code as the receiving direct mode radio, but also taking into consideration (albeit to a lesser extent) other direct mode radios' (e.g., that are assigned a different color code as the receiving direct mode radio) use of timeslots and tries to avoid the timeslot(s) used by other color codes.
The information obtained in the monitoring process 400 can then be additionally used in a transmit process to identify a preferred transmit timeslot.
At step 504, the direct mode radio initializes internal variables including a step counter “i” that is initially set to the maximum number of color codes (CCmax) available (detected or pre-configured) and including a TimeslotVote accumulator variable that is initialized to some pre-determined neutral value such as “0”. The step counter “i” is used in subsequent steps to move through the available color codes being tracked in the monitoring process of
After initializing variables at step 504, the process 500A moves to step 506, where it is determined whether the value of the current step counter “i” is equal to the direct mode radio's own color code (myCC). Because the radio is attempting to determine a best choice for the preferred transmit timeslot that interferes with a least number of other color codes operating in the direct mode radio's direct mode communication system, the direct mode radio modifies the TimeslotVote accumulator variable only for color codes other than the direct mode radio's own color code in steps 506-516. Accordingly, if it is determined at step 506 that the value of the current step counter “i” is equal to the direct mode radio's own color code myCC, processing proceeds directly to step 514, bypassing any modification of the TimeslotVote accumulator variable for the current value of step counter “i”. If, on the other hand, it is determined at step 506 that the value of the current step counter “i” is not equal to the direct mode radio's own color code myCC, processing proceeds to step 508.
At step 508, the direct mode radio compares the current value of the particular color code counter ccCount associated with the ith color code (e.g., ccCount[i]), as set by the monitoring process 400 of
However if, at step 508, the current value ccCount[i] is sufficiently more than the positive of ccCountThreshold (which, in this example, is associated with the ith color code using timeslot 2 more than timeslot 1), processing proceeds to step 512, where the value of TimeslotVote is incremented by the same preconfigured value (for example, “1” as shown in
At step 516, the direct mode radio analyzes the current value of “i” to determine if each one of the color codes available has already been processed. In this example, and since “i” was set to CCmax at step 504, the direct mode radio determines if “i” is less than 0 after the decrementing of step 514, and if not, returns to step 506 to operate on another available color code. On the other hand, if “i” is less than 0 after the decrementing of step 514, the direct mode radio moves on to process 500B in
Turning now to second partial method 500B in
More specifically, at step 518, the direct mode radio compares the current value of the TimeslotVote variable with a preconfigured threshold variable VoteThreshold. The value of VoteThreshold is set to ensure that the majority vote calculation of steps 504-516 resulted in a definitive determination that most color codes are using the first or second timeslot, accordingly. For example, the VoteThreshold may be 0, 1, or 5, and if the calculated value of the TimeslotVote variable does not exceed (negatively or positively) the corresponding negative or positive value of the VoteThreshold, we can determine that the other color codes within transmission range of the direct mode radio are choosing timeslot 1 and timeslot 2 in a somewhat equal manner, and we should move on to a different backup technique of determining a preferred transmit timeslot. If, however, the TimeslotVote variable exceeds the VoteThreshold in the positive direction (e.g., is more positive than the positive of the VoteThreshold variable), processing moves from step 518 to optional step 520, where the myTimeslot variable is boosted in the negative direction by the preconfigured value StepBoost to more prefer timeslot 1 in the future, before moving on to step 524 and assigning timeslot 1 as the preferred transmit timeslot.
Somewhat similarly, if the TimeslotVote variable exceeds the negative VoteThreshold in the negative direction (e.g., is more negative than the negative of the VoteThreshold variable), processing moves from step 518 to optional step 522, where the myTimeslot variable is boosted in the positive direction by the preconfigured value StepBoost to more prefer timeslot 2 in the future, before moving on to step 526 and assigning timeslot 2 as the preferred transmit timeslot.
Returning to step 518, in the event that the calculated value of the TimeslotVote variable does not exceed (negatively or positively) the corresponding negative or positive value of the VoteThreshold, processing may proceed to any one or more optional backup voting processes, including one of the two backup voting processes represented by steps 528 and 530 in
The first optional backup voting process, at step 528, compares the current value of the communication system landscape-wide timeslot counter myTimeslot (representing an accumulated timeslot value of received transmissions using the direct mode radio's color code versus received transmission using a color code other than the direct mode radio's color code), as set by the monitoring process described with respect to
The second optional backup voting process, at step 530, uses a pre-provisioned voting process that is not dependent upon any of the statistics tracked in the monitoring process 400 of
In accordance with the foregoing, an improved method for sharing synchronized direct mode TDMA timeslots among a plurality of radios by monitoring timeslot usage and dynamically determining a preferred transmit timeslot out of a plurality of available timeslots determined to be less likely to interfere with the other radios is disclosed. As a result, more efficient and adaptable use of available n:1 slotted TDMA communications resources amongst direct mode radios can be achieved without significant manual configuring of radios. Other advantages and benefits are possible as well.
In the foregoing specification, specific embodiments have been described. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the invention as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of present teachings.
The benefits, advantages, solutions to problems, and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential features or elements of any or all the claims. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.
Moreover in this document, relational terms such as first and second, top and bottom, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” “has”, “having,” “includes”, “including,” “contains”, “containing” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises, has, includes, contains a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by “comprises . . . a”, “has . . . a”, “includes . . . a”, “contains . . . a” does not, without more constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises, has, includes, contains the element. The terms “a” and “an” are defined as one or more unless explicitly stated otherwise herein. The terms “substantially”, “essentially”, “approximately”, “about” or any other version thereof, are defined as being close to as understood by one of ordinary skill in the art, and in one non-limiting embodiment the term is defined to be within 10%, in another embodiment within 5%, in another embodiment within 1% and in another embodiment within 0.5%. The term “coupled” as used herein is defined as connected, although not necessarily directly and not necessarily mechanically. 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.
It will be appreciated that some embodiments may be comprised of one or more generic or specialized processors (or “processing devices”) such as microprocessors, digital signal processors, customized processors and field programmable gate arrays (FPGAs) and unique stored program instructions (including both software and firmware) that control the one or more processors to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of the method and/or apparatus described herein. Alternatively, some or all functions could be implemented by a state machine that has no stored program instructions, or in one or more application specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic. Of course, a combination of the two approaches could be used.
Moreover, an embodiment can be implemented as a computer-readable storage medium having computer readable code stored thereon for programming a computer (e.g., comprising a processor) to perform a method as described and claimed herein. Examples of such computer-readable storage mediums include, but are not limited to, a hard disk, a CD-ROM, an optical storage device, a magnetic storage device, a ROM (Read Only Memory), a PROM (Programmable Read Only Memory), an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory) and a Flash memory. Further, it is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs and ICs with minimal experimentation.
The Abstract of the Disclosure is provided to allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in various embodiments for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter.