`Cassidy et al.
`
`111111
`
`lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
`6,119,017
`Sep. 12,2000
`
`US006119017A
`[11] Patent Number:
`l45J Date of Patent:
`
`[54) METHOD OF REGISTRATION IN A
`COMMUNICATION SYSTEM
`
`[75)
`
`Inventors: Marc Cassidy, Fox River Grove;
`Daniel J, McDonald, Cary; Randy L.
`Ekl, Lake Zurich, all of Ill.
`
`[73] Assignee: Motorola, Inc., Schaumburg, Ill.
`
`[21) Appl. No.: 08/976,975
`
`[22)
`
`[51]
`[52]
`[58)
`
`[56]
`
`Nov. 25, 1997
`
`Filed:
`Int. Cl.7
`................................ H04B 7/00; H04Q 7/20
`U.S. Cl. ........................... 455/518; 455/435; 455/519
`Field of Search ..................................... 455/435, 518,
`455/519, 520, 517, 432, 527; 340/825.52
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,097,499
`5,134,714
`5,168,575
`5,226,071
`5,287,552
`5,387,905
`
`3/1992 Cosentino ............................... 455/435
`7 fj 992 Jan~en et al. ........................... 455/512
`12/1992 Cizek et al. ............................ 455/5 14
`7/1993 Bolliger et al. ......................... 455/435
`2fj994 Sasuta el al. ........................... 455/5 18
`2/1995 Grube et al. ....................... 340/825.52
`
`4/1995 Hagstrom ............................... 455/67.1
`5,410,740
`8/1995 Cizek ...................................... 370/329
`5,442,634
`5,574,728 11/1996 Mamaghani et al. ................... 370/462
`3/1998 Dupont .................................... 370/346
`5,729,542
`5,850,6Jl 12/1998 Krebs ...................................... 455/518
`5/1999 Nicholl et al. .......................... 455/450
`5,905,960
`5/1999 McWeeoy el al ...................... 455/414
`6,052,578
`
`Primary Examiner-Nguyen Vo
`Assistant Examiner-Charles N. Appiab
`Allomey, Agent, or Firm-susan L. Lukasik
`
`[57]
`
`ABSTRACT
`
`A method of registratioo in a communication system
`includes the steps of detecting (201) an elevated registratioo
`level of at least a part of a commuoicatioo system, selectiog
`(203) a group recovery time, determining (205) a ftrst
`random registration time that is less than or equal to the
`group recovery time, registering (209) a first communicatioo
`uoit (111) from a first talkgroup at the first random regis(cid:173)
`tratioo time, and upoo receiving (212) a group activity
`message for tbe first talkgroup, delaying (213) registration
`by at least a second communication tmit (113) from the first
`talkgroup.
`
`36 Claims, 3 Drawing Sheets
`
`217
`
`212
`
`Apple Inc. 1027
`U.S. Patent No. 9,445,251
`
`
`
`U.S. Patent
`US. Patent
`
`Sep.l2,2000
`Sep. 12, 2000
`
`Sheet 1 of 3
`Sheet 1 0f 3
`
`6,119,017
`6,119,017
`
`
`
`FIG. 1
`FIG.
`1
`
`
`
`\
`\
`
`' \
`,
`'
`f-----------------------~
`I
`I
`I
`I
`I
`I
`I
`
`I •
`: 1"""""-V"""""-"V""""-""V""""'---v--"--,.
`/: R R R R R
`109 :
`I T T T T T
`
`I
`
`I
`
`~-----------------------~
`
`101
`
`, , , , , , , , , ,
`
`' - ;
`'\ 4
`
`\
`\
`
`\
`\
`\
`
`
`
`U.S. Patent
`
`Sep.12,2000
`
`Sheet 2 of 3
`
`6,119,017
`
`DETECT ELEVATED
`REGISTRATION LEVEL
`
`201
`
`FIG. 2
`
`DETERMINE RANDOM
`REGISTRATION TIME
`
`217
`
`REGISTER
`
`209
`
`DELAY
`REGISTRATION
`
`SELECT INDIVIDUAL
`RECOVERY TIME
`
`DETERMINE RANDOM
`REGISTRATION TIME
`
`REGISTER AT RANDOM
`REGISTRATION TIME
`
`219
`
`221
`
`223
`
`
`
`U.S. Patent
`
`Sep.l2,2000
`
`Sheet 3 of 3
`
`6,119,017
`
`DETECT ELEVATED
`REGISTRATION LEVEL
`
`SELECT GROUP
`RECOVERY TIME
`
`BROADCAST GROUP
`RECOVERY TIME
`
`301
`
`303
`
`305
`
`FIG. 3
`
`SELECT NEW GROUP
`RECOVERY TIME
`
`313
`
`PROCESS
`REGISTRATIONS
`
`307
`
`NO
`
`SELECT INDIVIDUAL
`RECOVERY TIME
`
`BROADC.AST INDIVIDUAL
`RECOVERY TIME
`
`PROCESS INDIVIDUAL
`REGISTRATIONS
`
`315
`
`317
`
`319
`
`
`
`6,119,017
`
`1
`METHOD OF REGISTRATION IN A
`COMMUNICATION SYSTEM
`
`FIELD OF THE INVENTION
`This invention relates to communication unit frequency
`(RF) communication systems, including but not limited to
`transmission of messages in RF communication systems.
`
`BACKGROUND OF THE INVEN'J10N
`
`2
`FI.G. 2 is a tlowchart showing a method of registering
`multiple communication units in accordance with the inven(cid:173)
`tion.
`FIG. 3 is a flowchart showing a method of registering
`5 multiple communication units as performed by a controller
`in accordance with the invention.
`
`DESCRIPTION OF A PREFERRED
`EMBODI MENT
`
`10
`
`15
`
`20
`
`The following describes an apparatus for and method of
`scheduling or coordinating transmission of a large number
`of mes.sages on a single channel in an orderly fashion. In the
`case where a large number of communication units need to
`register in a system, messages are coordinated sucb that at
`least one communication unit of each talkgroup in the
`system is q11ickly registered, thereby enabling talkgr011p
`activity to take place, and the remaining unregistered com(cid:173)
`munication units are then expediently registered by trans(cid:173)
`mitting their registration messages. All messages are
`received without taking an extraordinary amount of time or
`flooding the channel to such degree that the comm11nication
`site becomes unusable.
`A method of the present invention comprises the steps of
`detecting an elevated registration level of at least a part of a
`communication system, selecting a first time, determining a
`first random registration time that is less than or eq11alto the
`first time, registering a first communication unit from a first
`talkgroup at the first random registration time, and upon
`receiving a group activity message for the first talkgroup,
`delaying registration by at least a second communication
`unit from the first talkgroup. The method may additionally
`comprise the steps of selecting a second time, determining
`a second random registration time that is less than or equal
`to the second time, registering a first communication unit
`from a second talkgroup at the second random registration
`time, and upon receiving a registration acknowledgment for
`the second talkgroup, delaying registration by at least a
`second communication unit from the second talkgroup. The
`method may further comprise the steps of detecting a group
`activity message from each intended talk group of a plurality
`of talkgroups, selecting a third time, determining a third
`random registration time that is less than or equal to the third
`time, and registering at the third random registration time.
`Another method of the present invention comprises the
`steps of detecting, by a controller, an elevated registration
`level of at least a part of a communication system, selecting
`a first time, broadcasting the first time to a pl11rality of
`communication units, receiving a registration from a first
`communication unit of a first talkgroup, and sending a
`registration acknowledgment to the first communication unit
`o( the firsttalkgroup. The method may additionally comprise
`the steps of selecting a second time, broadcasting the second
`time to the plurality of communication units, receiving a
`registration from a first communication unit of a second
`talkgroup, and sending a registration acknowledgment to the
`first communication unit of the second talkgroup. 'The
`method may further comprise the steps of detecting a group
`activity message from each intended talkgroup of a plurality
`of talkgrollpS, selecting a tbird time, broadcasting the third
`time to the plurality of communication units, and receiving
`a registration from a non-registered communication unit of
`the plurality of communication units.
`The step of selecting the first time may comprises the
`65 steps of determining at least one of: a number of commu(cid:173)
`nication units expected to register; a current inbound request
`load; and a tolerable registration fai lure rate; and selecting
`
`25
`
`30
`
`35
`
`The basic operation and structure of a land mobile com-
`munication unit system is well known. Land mobile com(cid:173)
`munication unit systems typically comprise one or more
`communication units (e.g., vehicle-mounted or portable
`communication units in a land mobile system and commu(cid:173)
`nication unit/telephones in a cellular system) and one or
`more repeaters that transceive information via the RF com(cid:173)
`munication resources. These communication resources may
`be narrow band frequency modulated channels, time divi(cid:173)
`sion multiplex slots, frequency pairs, and so forth. Land
`mobile communication unit systems may be organized as
`trunked communication systems, where a plurality of com(cid:173)
`munication resources is allocated amongst a group of users
`by assigning the repeaters on a communication-by(cid:173)
`communication basis within an RF coverage area.
`Large communication systems comprising a large number
`of communication units are known to exist. At times, when
`a site fai lure occurs in such a system, the communication
`un.its that are presently registered at a failed site will want to
`affiliate or register with an adjacent site in order to avoid
`being isolated from their group comm11nications. At times,
`however, it is possible that a very large number of commu(cid:173)
`nication units will try to re-register at an adjacent site in a
`very short time frame, causing the control channel on which
`registration takes place to become flooded with requests and
`the site may subsequently become incapable of processing
`any requests, including normal communication requests.
`At other times, there may be a need for a large number of
`communication units to transmit messages on a single
`channel in a short period of time. to a broadcast data system, 40
`a single transmission may target numerous receiving com(cid:173)
`munication units, sometimes thousands of units. BecallSe
`each of the units must send either an A C K
`(acknowledgment) or a NACK (negative acknowledgment)
`for each data frame, the return channel becomes inundated 45
`with tho11sands of messages, consuming valuable time on
`the communication channeL If use of the return channel is
`not coordinated, many of these messages are likely to
`coincide at least partially, resulting in corrupted ACKs and
`NACKs, rendering the transmitter unable to distinguish 50
`which messages were received SllCces.sfully and which ones
`were not. One method (or returning ACKs and NACKs via
`a return channel in a coordinated manner is to designate a
`particular time interval for each unit to transmit an ACK/
`NACK. When there are numerous commllilication units, 55
`such a system is wastef'll I of the comm11nication channel, and
`messages will take a very long time to be transmitted.
`Accordingly, there is a need for a method of coordinating
`transmission of a large number of messages on a single
`channel in an orderly fashion, such that all messages are 60
`received without ta.k.ing an extraordinary amount of time or
`flooding the channel to such degree that the communication
`site becomes unusable.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a block diagram of a communication system in
`accordance with the invention.
`
`
`
`6,119,017
`
`3
`the first time by utilizing at least one of the number of
`communication units expected to register, the current
`inbound request load, and the tolerable registration failure
`rate. The step of selecting the second time or the third time
`may comprise the steps of determ·ining at least one of: a 5
`number of communication units expected to register; a
`current inbound registration load; a current inbound non(cid:173)
`registration load; and a tolerable registration failure rate; and
`selecting the second time by utilizing at least one of the
`number of communication units expected to register, the 10
`current inbound registration load, the current inbound non(cid:173)
`registration load, and the tolerable registration failure rate.
`Another method of the present invention comprises the
`steps of detecting, by a communication unit in a first
`taJkgroup, an elevated registration level of at least a part of 15
`a communication system, selecting a first time, determining
`a first random registration time that is Jess than or equal to
`the first time, monitoring for a group activity message for the
`first talkgroup, and when the group activity mes.sage is
`received before the first random registration time, delaying 20
`registration by the communication unit. When the first
`random registration time occurs before the grou·p activity
`message is received, the communication unit registers at the
`first random registration time. The method may additionally
`comprise the steps of monitoring for a group activity mes- 25
`sage for a talkgroup other than the first talkgroup, when
`group activity mes.sage for a talkgroup other than the first
`talkgroup is received, selecting a second time, determining
`a second random registration time that is less than or equal
`to the second time, and when a group activity message is 30
`received for the first talkgroup before the second random
`registration time, delaying registration by the communica(cid:173)
`tion unit. When the second random registrat·ion time occurs
`before the group activity message is received, the commu(cid:173)
`nication unit registers at the second random registration 35
`time. The method may further comprise the steps of detect(cid:173)
`ing a group activity message from each intended talkgroup
`of a plurality of ta[kgroups, selecting a third time, determin(cid:173)
`ing a third random registration time that is less than or equal
`to the third time, and registering at the third random regis- 40
`!ration time.
`A block diagram of a communication system is shown in
`FIG. 1. A controller 101, such as a Zone Controller available
`from Motorola, Inc., controls a communication system com(cid:173)
`prising at least three communication sites S1, S2, and S3 45
`having three di.fferent coverage areas 103, 10S, and 107,
`respectively. At each of these sites is a bank of repeaters or
`base stations 109 that source multiple communication
`resources. Distributed throughout the coverage area of a
`communication system are a number of communication 50
`units lll, 113, U S, and 117. 1(, for example, the site S2
`controlling the middle coverage area l OS loses contact with
`the controller 101 or in some other way is unable to provide
`wide-area or inter-site communications, all the communica(cid:173)
`tion units 1ll, 113, liS, and 117 that are presently affiliated 55
`\vith the communication site S1 supporting coverage area
`105 will go to the nearest adjacent site capable of wide-area
`communications and register. Typically, the communication
`units 111 and 113 will attempt to register at the first site S1
`and the communication units 11S and 117 will attempt to 60
`register at the third site S3. In the preferred embodiment,
`registering at a site comprises sending a message including
`a communication unit identification and a talkgroup identi(cid:173)
`fication.
`The present invention provides a method of orderly 65
`registration by these communication units 111 , 113, US, and
`117 such that collisions between the communication units
`
`4
`when they try to register will be avoided, while recovering
`the ability to more efficiently provide communication
`resources to the communication system. Tbe present inven(cid:173)
`tion also provides for an orderly coordination of transmis(cid:173)
`sion other types of messages, such as ACKs and NACKs,
`and all such messages will be referred to as registration
`messages, and the act of transmitting registration messages
`will be referred to as registering throughout the specifica(cid:173)
`tion. Registering comprises transmitting a message compris(cid:173)
`ing at least one of a communication unit identification, a
`talkgroup identification, and an acknowledgment.
`A method of registering multiple communication units is
`shown in lbe flowchart of FIG. 2. Many of the steps o( the
`flow chart of FIG. 2 may be performed by either a controller
`101 or a communication unit 111. In tbe preferred
`embodiment, the controller 101 performs as many steps of
`lbe method of FIG. 2 as possible, i.e., by performing the
`method in the flowchart of FIG. 3, and the communication
`unit .111 perl'orms the remaining steps. The flowchart of FIG.
`2 will be described with respect to a communication unit
`ill, and those steps that may be performed by a controller
`101 will be so designated. At step 201, an elevated regis(cid:173)
`tration level is detected. The elevated registration level may
`occur at one or more sites of the communication system. In
`one embodiment, such detection comprises detecting a site
`failure . Alternatively, the detection may comprise receiving
`an indication of the elevated registration level, for example,
`from controller 101. In addition, the detection may comprise
`the communication unit 111 determining the registration
`level of at least part of the communication system, and when
`the registration level is above a threshold, establishing that
`the registration level is elevated. The threshold may be, for
`example, three registration messages per second over a two
`minute time interval. Step 201 may be performed by a
`controller 101. The controller 101, in the preferred
`embodiment, detects an elevated registration level when an
`adjacent site failure is detected, for example, when commu(cid:173)
`nications or communication links to the adjacent site are not
`operational. Alternatively, the controller 101 may receive an
`indication of the elevated registration level from one of the
`sites S1, S2, or $3 or a communication unit 111 in the
`communication system. Further, the detection may comprise
`the controller 101 determining the registration level in at
`least part of tbe communication system, and when tbe
`registration level is above a threshold, establishing that the
`registration level is elevated. 'The threshold may be tbe same
`threshold as used by a communication unit 111.
`At step 203, a group recovery time is selected. In this
`alternative embodiment, the step of selecting a group recov(cid:173)
`ery time may comprise calculating a time large enough for
`a predetermined number of communication units to register
`when step 203 is performed by a communication unit Ul.
`Alternatively, the communication unit 111 may select the
`group recovery time by extracting the group recovery time
`from a message received from the controller 101 or another
`infrastructure entity such as a site controller or intelligent
`repeater, such as an lntelliRepeaterTM base station or
`repeater available from Motorola, Inc. The group recovery
`time may be stored in the communication unit ill. The
`controller may also perform the step of determining the
`group recovery time at step 203, as described in the descrip(cid:173)
`tion for FIG. 3 . The process then continues with step 205,
`where a random registration time is determined from the
`group recovery time. Ideally, the random registration time is
`less than or equal to the group recovery time.
`At step 207, it is determined if the random registration
`time has occurred. If the random registration time has
`
`
`
`6,119,017
`
`5
`
`5
`occurred at step 207, the communication unit 111 registers
`at step 209, and the process ends. If at step 207, the random
`registration time bas not yet occurred, the process continues
`with step 211, where it is determined i( group activity has
`occurred. Group activity in the preferred embodiment com-
`prises receiving a group activity message such as a regis(cid:173)
`tration acknowledgment, a group call message, or a grou·p
`signalling message. A registration acknowledgement
`includes a response by the controller to a registration request
`message. A g roup call message includes a message indicat- 10
`ing that a group call is active at the communication site.
`Group signalling includes any type of signalling that relates
`to a group service, such as an emergency alarm message,
`that indicates an emergency situation is occuring on a
`particular talkgroup. The group activity message includes an 15
`identification of a talkgroup in the preferred embodiment.
`Detection of such activity may take place by the communi(cid:173)
`cation unit 111 monitoring a control channel within the
`communication system. The controller 101 checks [or group
`activity by observing the control channel at step 211 and 20
`through processing of talkgroups from communication reg(cid:173)
`istrations or other group activity messages as described
`above. If there is no group activity at step 211, the process
`continues with step 207. lf there is group activity at step 211,
`the process continues with step 212, where it is determined 25
`if the activity belongs to the talkgroup in which the com(cid:173)
`munication unit 111 belongs. If the talkgroup activity
`belongs to the unit's tal.kgroup, the process continues \vith
`step 213, where registration is delayed. In the preferred
`embodiment, registration is delayed for communication 30
`units in the talkgroup for which group activity was detected
`at step 211 for those the communication units 111 that had
`not yet registered. The delay time may comprise delaying
`UJltil at least one communication unit from each talkgroup
`within the plurality of talk.groups in the communication 35
`system is registered.
`At step 215, it is determined if all the talkgroups intended
`for use in this communication site are active. Talkgroups
`intended for use are those talkgroups at this communication
`site that will be initiating or participating in a conversation. 40
`Thus, a talkgroup is active when some form of group
`activity, such as registration by a member of the talkgroup,
`is detected. A communication unit 111 may make such a
`determination by setting a timer and detecting expiration of
`the timer. The time for the timer would be set to an estimate 45
`of time taken for each of the talkgroups in the communica(cid:173)
`tion unit's system to have activity detected. An alternative
`method for the communication unit 111 to determine when
`all talkgroups are active is to determine when no new
`talkgroup activity occurs over a predetermined time on the 50
`control channel. Alternatively, the communication unit may
`determine when new communication unit registration on the
`control channel falls below a threshold, sucb as average
`registration levels, during a predetermined time period. See
`FIG. 3 for a description of bow step 215 is performed by a 55
`controller 101.
`If talkgroup activity at step 212 did not belong to the
`unit's talkgroup, the process continues with step 217, where
`a new group recovery time is selected. When a communi(cid:173)
`cation unit selects the new group recovery time, the new
`group recovery time may simply be a decreased value f1om
`the previous group recovery time, and may be a fixed time.
`See FIG. 3 for examples of how a controller 101 selects a
`new group recovery time. Step 215 is performed until all
`talkgroups are active. If at step 215, all talkgroups are active, 65
`the process continues with step 219, where an individual
`recovery time is selected. The communication unit 111 may
`
`6
`select an individual recovery time in a manner simi lar to the
`manner for selecting an initial group recovery time at step
`203. The controller 101 may set a time in a manner similar
`to bow it would select a time at step 203. Either the
`communication unit U1 or the controller 101 may select the
`individual recovery time at step 219, and such a process is
`not dependent upon which of these devices determined the
`group recovery time at step 203. Further, the individual
`recovery time may be set equal to the original group
`recovery time from step 203. At step 221, the random
`registration time is determined by the communication unit,
`and at step 223, the communication unit registers at the
`random registration time, and the process ends.
`A method, as may be performed by a controller 101, of
`scheduling communication unit registratio n is shown in the
`flowchart of FIG. 3. At step 301 , an elevated registration
`level is detected by the controller 101. An elevated regis(cid:173)
`tration level may be present in only a part of the commu(cid:173)
`nication system, such as at one or two of the many sites in
`a communication system. Elevated levels typically occur
`when one site of a multiple s ite communication system fails,
`loses contact with the rest of the system, or loses the
`capability of inter-site communications, also referred to as
`wide-are communications. An elevated level may also be
`assumed for specific times o( day, such as a the change o( a
`work shift or in an emergency situation.
`At step 303, a group recovery time is selected. In the
`preferred embodiment, the controller determines the number
`of communication units expected to register at a particular
`site, a current inbound request load at the site, and a tolerable
`registration fai lure rate. The controller 101 then selects the
`group recovery time by utilizing the number of communi(cid:173)
`cation units expected to register, the current inbound request
`load, and the tolerable registration failure rate. The follow(cid:173)
`ing equation may be used:
`
`T=a•St(1 nW)- l n(c)-a•B),
`
`where: T=time value, in seconds; a=coostant; S=expected
`number of communication units to register; F=failure rate, as
`a percentage (0 to 100, not 0.00 to 1.00); c=constaot; and
`B=baseline traffic load, in messages per second. In the
`preferred embodiment, the constants have the values a=1.4
`and c=0.06. The expected number of communication units
`can be calculated as follows:
`
`S=T•(N-M),
`
`where: S =expected number of communication units; T =lime
`value, calculated above; N=new registration rate, in regis(cid:173)
`trations per second; and M=baseline registration rate, i.e.,
`the number of registrations per second prior to the elevated
`registration level. The formula for T is used first, w·ith a
`starting value of S, which may be the (total number of
`communication units)/(number of adjacent sites) in the
`situation where a site becomes unavailable, or an estimate
`related to the reason for the elevated registration level, such
`as a message sent to S communication units that requires an
`ACK from each communication unit. 11len, the second
`formula is used to update the expected number of commu-
`60 nication units based on measuring what is going on in the
`system. To prevent (ln(F)-ln(c)-a*B) from being negative
`or 0, in the preferred embodiment, if (ln(F)-ln(c)-a*B) is
`less than a small positive value (such as 0.1), then Tis set
`as a large positive value (such as 1000 seconds).
`At step 305, the group recovery time selected at step 303
`is broadcasted to the appropriate target communication
`units, such as those at the site for which an elevated
`
`
`
`6,119,017
`
`7
`registration level was detected at step 301. At step 307, any
`incoming registrations are processed by the controller 101.
`The controller 101 may detect group activity by receiving a
`registration for a talkgroup, processing a group call message,
`or processing a group signalling message, as described 5
`above. The process continues with step 311, where the
`controller determines if all of the talkgroups intended for use
`at the site are active. In the preferred embodiment, the
`controller 101 makes such a determination by waiting u.ntil
`a communication unit has registered for each of the tal.k- 10
`groups that the controller 101 has registered in the system.
`Such registration may have occured prior to step 301. The
`controller may also allow for fewer than all talkgroups to be
`active, if no activity for inactive talkgroups occurs over a
`certain period of time.
`If all the tal.kgroups are not presently active at step 311,
`the process continues with step 313, where the controller
`selects a new group recovery time, and the process continues
`with step 305. The new group recovery time may be
`determined by first determining at least a number of com- 20
`municatioo units expected to register at the site, a current
`inbound registration load at the site, a current inbound
`non-registration load at the site, and a tolerable registration
`fa.ilure rate. The current inbound registration load at the site
`is the rate at which registration messages are being received 25
`,in messages per second. The current inbound non(cid:173)
`registration load at the site is the rate at which any other
`inbound message is received, in messages per second. The
`tolerable registration failure rate is the percentage of regis(cid:173)
`tration messages that can fail and still consider the system to 30
`be operating with acceptable performance. The controller
`101 then utilizes at least one of the number of communica(cid:173)
`tion units expected to register, the current inbound registra(cid:173)
`tion load, the cu.rrent inbound non-registration load, and the
`tolerable registration failure rate to determine a new group
`recovery time. This information may be found in a table
`within the controller, or calculated using an equation, such
`as the one described above. Typically, the oew group recov(cid:173)
`ery time is a shorter time than the previous group recovery
`time. Once all talkgroups are active at step 311, the process
`continues with step 315, where an individual recovery time
`is selected by the controller 101. In the preferred
`embodiment, the controller 101 determines at least one of
`the number of communication units expected to register, a
`current inbound registration load at the site, a current 45
`inbound non-registration load at the site, and a tolerable
`registration failure rate. The controller 101 then utilizes at
`least one of these factors to yield the individual recovery
`time at step 315. An equation such as described above may
`be used. At step 317, the individual recovery time is 50
`broadcasted, and individual registrations are processed as is
`known in the art at step 319, and the process ends. In the
`preferred embodiment, the steps of the flowchart of FIG. 3
`are performed on a site-by-site basis, i.e., for each site where
`an elevated registration level is detected.
`The following describes a particular application for the
`present invention. Upon detection of a fai lure of one site S2
`of a multiple-site communication system, the controller 101
`determines how many communication units ill, 113, liS,
`and 117 could possibly move to each of the wide-area sites 60
`Sl and S2 adjacent to the failed site S2, by determining the
`number of communication units registered at the failed site,
`and dividing that among the number of sites adjacent to the
`failed site. The controller 101 thea broadcasts a group
`recovery time needed for all communication units to register 65
`without colliding. Each of the communication units then
`detem1ines a random registration time based on the broad-
`
`8
`casted group recovery time and registers at the random
`registration time, unless talkgroup activity for the talkgroup
`associated with the communication unit is detected before
`the random registration time for that particular communica(cid:173)
`tion unit. If talk group activity is detected, all communication
`units in that talkgroup that have not yet registered will delay
`registration. Each time talkgroup activity or a new registra(cid:173)
`tion with a not yet registered (i.e., affiliated) talkgroup
`occurs, the controller 101 recalculates a new recovery time
`to take into account that the recently registered or active
`talkgroup no longer needs to register to obtain talkgroup
`resources at that site. This new recovery time will be shorter
`than the previous group recovery time. Each time activity for
`a new talkgroup is detected, the group recovery time s hrinks
`15 until alltalkgroups are accounted for in the system. When all
`the tal.kgroups have been registered, or have bad activity
`within them in the system, the controller thea requests the
`remaining unregistered communication units 113, 115, and
`117, register within the site. Typically, group activity for
`each of the talkgroups will occur in a time much shorter than
`the originally calculated group recovery time, and thus all
`the communication units can participate in talkgroup activity
`in a much shorter time than if aU communication units had
`registered, without the need to register. The controller will
`calculate a new recovery time for the remaining individuals,
`which time is needed to recover the total number of com-
`munication units less those already recovered, via the entire
`registration process. Typically, approximately one commu(cid:173)
`nication unit per talkgroup will have registered during the
`previous recovery of tal.kgroups at that site. Hence, the vast
`majority of the communication units will still need to
`register with their new site, although the units can participate
`in group ca