Methods and apparatus to communicate with an end point device

An end point (EP) device may communicate with multiple gateways via wireless signals, e.g. wireless broadcast signals. An EP device is controlled, under the direction of a control server, e.g., an application server, to communicate via a single gateway. The control server associates the EP device with a single target gateway and/or uses EP transmission power control training iterations to reduce the EP transmission power level until the EP device is only able to successfully communicate its wireless signals to a single gateway.

FIELD

The present invention relates to wireless communications systems, and more particularly, to methods and apparatus for reducing interference and/or increasing throughput in a wireless communications system, e.g., a wireless communications system using end point device wireless broadcast signaling and/or a wireless communications system supporting alternative wireless communications paths for an end point device.

BACKGROUND

Internet of Things (IoT) and Low Power Wide Area (LPWA) devices suffer from lack of device to gateway (GW)/edge node association and are rather associated with a network server (NS). This is a blocker to enable technologies like 6lowpan on top of LPWA. A lack of device and gateway (GW) association also limits low cost localization capabilities of the device.

In various existing architectures IoT and LPWA devices are not paired to a gateway. The device can, and sometimes does, communicate with multiple gateways at the same time, e.g., via a transmitted broadcast signal which is intended to be received, recovered and forwarded by any GW which can recover the broadcast signal. Thus the same device's application data is frequently sent over multiple wireless links and multiple paths in the network, e.g., to an application server, which is redundant, inefficient and often unnecessary. This redundant communications wastes both air link and backhaul network resources and the transmissions can interfere with transmissions from other device when transmitted at a power level higher than is necessary.

Based on the above, there is a need for new methods and apparatus for supporting device communications, e.g. with an application server, in a more efficient manner and particularly the transmission power used by individual end point devices.

SUMMARY

Various features relate to methods and apparatus for power controlling end point devices which communicate with an application server using wireless signals transmitted to one or more gateways that are connected to a control server. In many embodiments the control server is an application server which supports one or more applications, e.g., meter reading, billing or other applications, but also acts to control transmission power levels of end point devices that transmit data to the server for use by the applications the server supports. Accordingly, it should be appreciated that in many cases a server operates as both an application and control server. In embodiments where the application and control server are a single entity it may be referred to as either an application or control server since it serves both functions. While a control server supports power control operations additional application functionality is optional and need not be supported in all embodiments.

The methods and apparatus of the invention are well suited for use in a wide variety of systems including systems which use a low power wide area network to communicate information. The low power wide area networks may support long range signaling.

In various embodiments end point (EP) devices, e.g., IoT devices, which may be, for example, voltage meters, parking meters, sensors or any of a wide range of devices are power controlled through the use of training data transmissions and power control signaling from a control server, e.g., an application server which is responsible in some embodiments for collecting and/or using data from IoT devices but also, in accordance with the invention power controlling at least some IoT devices.

In various embodiments, IoT devices transmit wireless signals, e.g., broadcast signals. Gateways in the system receive the wireless signals, recover the data in the signals and transmit it to the application server. In some embodiments, the wireless gateways are connected via a wired or wireless network to the application server. The application in some embodiments also acts as a control server which may and sometimes does control the transmission power used by one or more EP devices. Because wireless signals are broadcast by EP devices, the signals may be received by multiple gateways if there is more than one gateway in the transmission coverage area of the transmitting EP device.

The coverage area of the signals transmitted by the EP devices depends on the transmission power at which they are transmitted. As gateways receive data, e.g., messages, from EP devices they communicate them through the network used to couple the gateway to the application server. Since the same data may be received by multiple gateways, the same data, received by different gateways, can and sometimes is transmitted in the communications network towards the application server. In some cases a network server in the communications network aggregates data, e.g., messages from different gateways, and communicates the data, e.g., message, to the application and/or control server with information identifying the gateways that received the data being forwarded. In such a case, due to aggregation, the application and/or control server may receive a single copy of data that was received by multiple gateways but with information as to which gateways received the wireless signal communicating the data from the EP device to which the data corresponds.

In accordance with various features in some embodiments, the server, acting as a control server, signals an EP device to operate in a training mode of operation. Power control training mode operation the EP device being trained transmits, e.g., wirelessly broadcasts a set of training data. The initial training data is transmitted at maximum power and in at least some embodiments using a maximum transmission data rate supported by the EP device being subjected to training. Gateway devices receiving the training data transmission recover the data and forward it to the control server along with information identifying the gateway that received the transmission that is being forwarded. The initial transmission of training data, because it is transmitted at maximum transmit power, is likely to be received by multiple gateways. Thus multiple gateways may, and often will, receive and forward the initial training data message to the control server.

Optionally a network device in the communications path between the receiving gateways and the control, e.g., application, server may and sometimes does aggregate the messages, e.g., forward training data and gateway identifiers, so that a single message communicates the training data received by multiple gateways and the gateway identifiers. In other embodiments the control server receives separate messages from the different gateways that successfully receive the transmitted training data from the end point device.

In various embodiments, where a EP device is to be associated with a particular gateway, the control device operates with respect to the EP device in what is referred to as an associated mode of operation where the EP device is to be associated with a particular gateway that is to be used in a communications path between the EP device and application server which, as discussed above may also be the control server. In associated mode, an EP device can be associated with a gateway specified by the EP device, e.g., in an associate request or with a gateway selected by the control server. In associated mode as part of transmission power control training EP transmission power is reduce in a sequence of operations to a level that allows the EP device to communicate using the gateway with which is to be associated but without requiring use of full transmission power in cases where the gateway with which an EP device is associated can be reached, and still support a maximum data transmission rate, using less than full transmission power.

In unassociated mode the EP device may be and sometimes is controlled to use a single gateway for communication to the application server where the gateway may be and sometimes is a gateway which can support a maximum transmission power level at a lower EP transmission power level than other gateways in the system. In many such embodiments the gateway which will be used will be the gateway with the best wireless communications path to the EP device.

In both the unassociated mode and the associated mode, the gateway which is to be used for communications with the application server may be and sometimes is referred to as the target gateway. Power control training takes into consideration the target gateway when reducing transmission power to the level that will be used for actual data transmissions, e.g., transmission of meter readings, sensor readings and/or parking meter toll information relating to a parked car.

An exemplary communications method, in accordance with some embodiments, comprises: receiving at a control server, training data that was wirelessly transmitted by a first end point device and received by one or more gateways coupled to said control server; determining whether the training data was successfully received by at least one gateway in addition to a target gateway; when it is determined that the training data was successfully received by at least one gateway in addition to the target gateway, sending a command to the first end point device to reduce the transmit power level; and when it is determined that the training data was not successfully received by at least one gateway in addition to the target gateway, sending a command to the first end point device to indicate that training has ended.

Methods and apparatus in accordance with the present invention are well suited for long range low power wireless IoT communications technologies such as, e.g. Sigfox and LoRaWAN. In addition methods and apparatus in accordance with the present invention are also suitable for use in other access technologies such as, e.g. Narrow Band—Internet of Things (NB—IoT), LTE-M and future C-LPWAN.

While various features discussed in the summary are used in some embodiments it should be appreciated that not all features are required or necessary for all embodiments and the mention of features in the summary should in no way be interpreted as implying that the feature is necessary or critical for all embodiments. Numerous additional features and embodiments are discussed in the detailed description which follows. Numerous additional benefits will be discussed in the detailed description which follows.

DETAILED DESCRIPTION

FIG. 1is a drawing of an exemplary communications system100including Internet-of-Things (IoT) gateways (IoT GW1102, IoT GW M104), a core network server106, an Element management system/Internet of Things Fixed Wireless Access Customer Premises Equipment (EMS/IoT FWA CPE) database108, a service provider domain proxy node110, Internet112, control network114, and a plurality of IoT devices (IoT device1120, e.g., a temperature sensor device, IoT device2122, e.g., a fire sensor device, IoT device3124, e.g., a security sensor device, IoT device4126, e.g., a water meter sensor device, IoT device5128, e.g., a power grid sensor device, IoT device6130, e.g., a vehicle sensor device, IoT device7, e.g., a power meter sensor device, . . . , IoT device N134, e.g., a gas meter sensor device). IoT GW1102and IoT GW M104are coupled to core network server106, via backhaul network link(s)158. Core network server106is coupled to service provider domain proxy node110via link160. Core network server106is coupled to EMS/IoT FWA CPE database108via link162. The service provider domain proxy node110is coupled to EMS/IoT FWA CPE database108via link163. The service provider domain proxy node110and the EMS/IoT FWA CPE database are coupled to Internet112, via communications links166,164, respectively. The control network114is coupled to Internet112via communications link168. The control network114includes a network server116and application server118coupled together via communications link170.

Each of the IoT devices (120,122,124,126,126,130,132, . . .134) transmits broadcast uplink IoT wireless signals, e.g., at maximum transmit power level. Depending upon channel conditions, a broadcast IoT signal may be received by one or more IoT GW devices. IoT device broadcast uplink signals from an IoT device, may be, and sometimes are, detected by both IoT GWs (102,104) and information communicated in the received signals is forwarded by each of the GWs (102,104), e.g., toward the application server118. This results in redundant data being communicated toward the application server.

In drawing100ofFIG. 1, IoT device1120has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow136. In drawing100ofFIG. 1, IoT device2122has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow138and a wireless IoT communications link with IoT GW M104as indicated by dashed arrow140. In drawing100ofFIG. 1, IoT device3124has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow143and a wireless IoT communications link with IoT GW M104as indicated by dashed arrow144. In drawing100ofFIG. 1, IoT device4126has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow146. In drawing100ofFIG. 1, IoT device5128has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow148. In drawing100ofFIG. 1, IoT device6130has a wireless IoT communications link with IoT GW M104as indicated by dashed arrow150. In drawing100ofFIG. 1, IoT device7132has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow152and a wireless IoT communications link with IoT GW M104as indicated by dashed arrow154. In drawing100ofFIG. 1, IoT device N134has a wireless IoT communications link with IoT GW M104as indicated by dashed arrow156.

FIG. 2is a drawing of an exemplary communications system200supporting IoT communications, e.g., long range IoT communications, implemented in accordance with an exemplary embodiment. Exemplary communications system200supports transmission power control (TPC), e.g., on an individual device basis, for end point (EP) IoT devices, e.g., under the direction of a control server, e.g., application server219of control network263. Exemplary communications system200supports association, e.g., pairing, of an EP IoT device with a single selected IoT GW, and establishment of an end-to-end (E2E) communications path between the EP IoT device and a control server, e.g., application server218, said E2E communications path including an IoT wireless link between the EP IoT device and the selected IoT GW. In various embodiments, a transmission power level of an EP IoT device is determined, e.g., via TPC training iterations, and set to the determined level so that an EP IoT device's broadcast application data transmissions, e.g., sensor reports, are successfully communicated to one IoT gateway.

Exemplary communications system200includes Internet-of-Things (IoT) gateways (IoT GW1202, IoT GW M204), a core network server206, an Element management system/Internet of Things Fixed Wireless Access Customer Premises Equipment (EMS/IoT FWA CPE) database208, a service provider domain proxy node210, Internet212, control network214, and a plurality of end point (EP) IoT devices (IoT device1220, e.g., a temperature sensor device, IoT device2222, e.g., a fire sensor device, IoT device3224, e.g., a security sensor device, IoT device4226, e.g., a water meter sensor device, IoT device5228, e.g., a power grid sensor device, IoT device6230, e.g., a vehicle sensor device, IoT device7232, e.g., a power meter sensor device, . . . , IoT device N234, e.g., a gas meter sensor device). IoT GW1202and IoT GW M204are coupled to core network server206, via backhaul network link(s)258. Core network server206is coupled to service provider domain proxy node210via link260. Core network server206is coupled to EMS/IoT FWA CPE database208via link262. The service provider domain proxy node210is coupled to EMS/IoT FWA CPE database208via link263. The service provider domain proxy node210and the EMS/IoT FWA CPE database208are coupled to Internet212, via communications links266,264, respectively. The control network214is coupled to Internet212via communications link268. The control network214includes a network server216and application server218coupled together via communications link270. Network server216includes a transmit power control component280and an association component284. Application server216includes a transmit power control component282and an association component286.

Each of the EP IoT devices (220,222,224,226,226,228,230,232, . . .234) transmits broadcast uplink IoT wireless signals. In accordance with a feature of various embodiments, the EP IoT devices shown inFIG. 2have been subjected to transmit power control (TPC) training operations and/or association operations under the direction of a control server, e.g., application server218. In the example ofFIG. 2, the TPC has resulted in each of the EP IoT devices (220,222,224,226,226,228,230,232, . . .234) having a wireless IoT communications link with a single IoT gateway device. Due to the TPC operations, at least some of the EP IoT devices (220,222,224,226,226,228,230,232, . . .234) have been controlled to operate at a reduced transmission power level from the maximum allowable transmission power level, thus eliminating some redundant connections with IoT GWs in the system, reducing interference in the wireless spectrum being used for communications and reducing backhaul signaling between the IoT GWs and the application server.

EP IoT device1120has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow236. EP IoT device2222has a wireless IoT communications link with IoT GW M104as indicated by dashed arrow240. EP IoT device3224has with a wireless IoT communications link with IoT GW M104as indicated by dashed arrow244. EP IoT device4226has a wireless IoT communications link with IoT GW1102as indicated by dashed arrow246. EP IoT device5228has a wireless IoT communications link with IoT GW1202as indicated by dashed arrow248. EP IoT device6230has a wireless IoT communications link with IoT GW M204as indicated by dashed arrow250. EP IoT device7232has a wireless IoT communications link with IoT GW M204as indicated by dashed arrow254. EP IoT device N234has a wireless IoT communications link with IoT GW M204as indicated by dashed arrow256.

FIG. 3, comprising the combination ofFIG. 3A,FIG. 3B,FIG. 3D, andFIG. 3E, is an exemplary signaling drawing300, comprising Part A301, Part B303, Part C305, Part D307and Part E309, in accordance with an exemplary embodiment. Exemplary signaling drawing300includes an exemplary end point IoT device302, GW1202, GW2204, Network Server (NS)216and Application Server (AS)218. Exemplary EP IoT device302is, e.g., any of the IoT devices (220,222,224,226,228,230,232, . . . ,234) of system200ofFIG. 2. Exemplary signaling drawing300illustrates: exemplary end point (EP) IoT device association with a single selected gateway device in response to an association request, exemplary EP IoT device transmit power control (TPC) training operations under the direction of a control server, a determination of a transmit power level to be used by the EP IoT for application data transmission while in associated mode, said determined power being lower than the maximum allowable TX power, and the transmission of EP IoT application data at the determined TX power level, with the EP IoT application data being received by a single IoT GW, which is the selected GW associated with (paired to) the EP IoT device.

In step304, EP IoT device302generates and transmits wireless IoT broadcast signals306communicating a join request. In step308GW1202receives signal306. In step310GW1202generates and sends message312communicating the joint request to network server (NS)216. In step312the network server216receives message312and recovers the join request from GW1202. In step314GW2204receives signal306. In step316GW2204generates and sends message318communicating the joint request to network server216. In step320the network server216receives message318and recovers the join request from GW2204. In step322the network server generates and sends message324communicating the join request to application server (AS)218. In step326, in response to the received join request, the AS218generates and send message330communicating a join accept to NS216. In step332, NS216receives message330, and in step334, the NS216generates and sends message336communicating the join accept to GW2204. In step340GW2204generates and sends wireless IoT signals342communicating the join accept to EP IoT device302. In step344EP IoT device302receives signals342and recovers the join accept.

In step346EP IoT device302generates and sends wireless IoT broadcast signals348communicating an association request. In step350GW1202receives signal348. In step352GW1202generates and sends message354communicating the association request and GW1metadata (MD)358including RF information, to network server (NS)216. In step358the network server216receives message354and recovers the communicated association request and GW1metadata from GW1202. In step360GW2204receives signal348. In step362GW2204generates and sends message363communicating the association request and GW2metadata364including RF information, to network server (NS)216. In step366the network server216receives message363and recovers the communicated association request and GW2metadata from GW2204.

In step368network server216aggregates the data received from both GWs, corresponding to EP IoT device302, generates message370communicating the association request information, GW1metadata356and GW2metadata364, and sends message370to the application server218. In step374the application server218receives message370and recovers the communicated information. In step374, the application server decides to use GW2204for an end-to-end (E2E) communications route, e.g. based on RF characteristics from GW1metadata356and GW2metadata364, e.g., a stronger signal was received at GW2204. Thus application server218has associated EP IoT device302with GW2204.

In step374, application server218generates and sends message377to network server216. Message377includes an acknowledgment382corresponding to the association request, an instruction380to the network server216to request EP IoT device302to operate in class C always on and application server metadata378. In some embodiments, the AS metadata378includes an identifier corresponding the selected GW, which is GW2204and/or an identifier corresponding to the E2E communications path which is being established and which includes the selected GW, which is GW2. In step383the network server216receives message377and recovers the communicated information. In step384the network server216generates and sends association acknowledgment message384to GW2204. The association acknowledgement message384includes the acknowledgment382for the association request, a request380′ to the EP IoT device302to set the device in class C always on, and the application server metadata378. In step386GW2204receives the association acknowledgement message384and recovers the communicated information. In step388GW2204generates and sends wireless IoT signals390communicating the acknowledgment382for the association request, a request380′ to the EP302for class C always on, and application server metadata378. In step392EP IoT device302receives signals390and recovers the communicated information.

In step394, EP IoT device302switches to class C operation. In step396EP IoT device302generates and transmits broadcast IoT signals398communicating a route request. The route request conveys a command to acknowledge the received request for class C, as indicated by block400. In step404GW1202receives signals398and recovers the communicated information. In step404GW1202generates and sends route request message406to network server216, and in step408the network server receives route request message406. In step410GW2204receives signals398and recovers the communicated information. In step412GW2204generates and sends route request message414to network server216, and in step414the network server216receives route request message412. In step416the network server processes information from received messages408and414, generates route request message418, and sends route request message418to application server218. Router request message418communicates an ACK for the class C request. In step420, the application server218receives the router request message418, and in response, in step422generates and sends a route acknowledgement message424to the network server. In some embodiments, the route acknowledgment message424includes an instruction for the network server216to command the EP IoT device302to start transmit power control (TPC) training. In step426the network server216receives the route acknowledgment message424, and in step428, the network server generate and sends route acknowledgment message436to GW2204. In some embodiments, the route acknowledgment message430includes a command to start TPC training. In step431GW2204receives route acknowledgment message430, and in step432GW2204generates and sends IoT signals434including a route acknowledgment message, e.g., including an ack to the route request of signals398and including a command to start TPC training.

In step438, EP IoT device302starts transmit power control (TPC) training operations. In step440, the EP IoT device302generates and transmits IoT wireless signals442including training route data frame1. The IoT wireless signals442including training route data frame1are transmitted, e.g., broadcast, at the highest data rate and highest transmit power level, as indicated by box444. In step446, GW1202successfully receives the IoT signals442and recovers the communicated training route data frame1. In step448GW1202generates and sends message450including training route data frame1and GW1metadata452, e.g., including GW1ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step454network server216receives message450and recovers the communicated information including the training route1data frame and the GW1metadata452. In step458, GW2204successfully receives the IoT signals442and recovers the communicated training route data frame1. In step456GW2204generates and sends message460including training route data frame1and GW2metadata461, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step464network server216receives message460and recovers the communicated information including the training route1data frame and the GW2metadata461. In step464the network server216aggregates information from receives messages450and460, generates aggregated training route data frame1message466including training route data frame1, GW1metadata452and GW2metadata461and sends message466to application server218. In step468, the AS218receives message466and recovers the communicated information. In step470the AS218determines, based on the received information of message466that both GW1202and GW2204have successfully received the training route data frame1, decides to reduce the transmission power level of EP IoT device302, generates message472and sends message472to NS216. Message472includes an acknowledgment474, acknowledging reception of the training route data frame1, and an instruction476to the NS216to command the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step448, NS216receives message472and recovers the communicated information. In step480NS216generates and sends message481to GW2204. Message481includes an acknowledgment482, acknowledging reception of the training route data frame1, and a command484to the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step485GW2204receives message481and recovers the communicated information. In step486GW2204generates and transmits IoT wireless signals488to EP IoT device302communicating ACK482and the command484to drop the TX power by one level. In step490, EP IoT device302receives signals488, recovers the communicated information and drops its TX power by one level.

In step492, the EP IoT device302generates and transmits IoT wireless signals494including training route data frame2. The IoT wireless signals442including training route data frame2are transmitted, e.g., broadcast, at the highest data rate and first reduced transmit power level, as indicated by box496. In step498, GW1202successfully receives the IoT signals494and recovers the communicated training route data frame2. In step500GW1202generates and sends message502including training route data frame2and GW1metadata504, e.g., including GW1ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step506network server216receives message512and recovers the communicated information including the training route2data frame and the GW1metadata504. In step508, GW2204successfully receives the IoT signals494and recovers the communicated training route data frame2. In step510GW2204generates and sends message512including training route data frame2and GW2metadata514, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step516network server216receives message512and recovers the communicated information including the training route2data frame and the GW2metadata514. In step518the network server216aggregates information from receives messages502and512, generates aggregated training route data frame2message520including training route data frame2, GW1metadata504and GW2metadata514and sends message520to application server218. In step522, the AS218receives message520and recovers the communicated information. In step524the AS218determines, based on the received information of message520that both GW1202and GW2204have successfully received the training route data frame2, decides to reduce the transmission power level of EP IoT device302, generates message526and sends message526to NS216. Message526includes an acknowledgment528, acknowledging reception of the training route data frame2, and an instruction530to the NS216to command the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step532, NS216receives message526and recovers the communicated information. In step534NS216generates and sends message535to GW2204. Message535includes an acknowledgment536, acknowledging reception of the training route data frame2, and a command538to the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step540GW2204receives message535and recovers the communicated information. In step542GW2204generates and transmits IoT wireless signals544to EP IoT device302communicating ACK536and the command538to drop the TX power by one level. In step546, EP IoT device302receives signals544, recovers the communicated information and drops its TX power by one level.

Additional iterations of a frame of training route data be sent and the EP IoT device302being subsequently commanded to reduce power, e.g., in response to the AS218determining that both GW1202and GW2204successfully received the frame of training route data may be, and sometimes are performed.

In step448, the EP IoT device302generates and transmits IoT wireless signals550including training route data frame N. The IoT wireless signals550including training route data frame N are transmitted, e.g., broadcast, at the highest data rate and N-1 th. reduced transmit power level, as indicated by box552. GW1202does not successfully receives the IoT signals554as indicated by X554. In step556, GW2204successfully receives the IoT signals550and recovers the communicated training route data frame N. In step558GW2204generates and sends message560including training route data frame N and GW2metadata562, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step564network server216receives message560and recovers the communicated information including the training route data frame N and the GW2metadata562. In step558the network server generates training route data frame N message568including training route data frame N, and GW2metadata562and sends message568to application server218. In step570, the AS218receives message568and recovers the communicated information. In step572the AS218determines, based on the received information of message568that power reductions have eliminated EP302communications via GW1202, that EP302communications via GW2204to the NS216/AS218are still operating and are satisfactory, and that TPC training for EP IoT device302is complete. In step574, AS218generates and sends ACK message574to NS216, said message conveying that training route data frame N was successfully received, that TPC training is complete, that TX power should remain at the current setting level, and that it is ok to proceed with sending sensor measurement reports using the current TX power level. In step576NS216receives ACK message575. In response, in step578, NS216generates and sends ACK message580, e.g., a forwarded version of ACK575communicating information of ACK message575, to GW2204. In step582, GW2204receives ACK message580, and recovers the information communicated in message580. In step584GW2204generates and transmits IoT wireless signals486communicating the information of ACK message580, to EP IoT device302. In step588, EP IoT device302receives signals586and recovers the communicated information.

In step590EP IoT device302determines that TPC training is complete and that the current TX power level should be used. In step590EP IoT device302is operated, e.g., to perform sensor measurements and generate a sensor measurement report including sensor application data set1. In step594, EP IoT device302generates wireless IoT signals598communicating device, e.g. sensor, application data set1. Signals598are transmitted at the highest data rate and N-lth reduced power level, as indicated by block598. Wireless IoT signals596are not received by GW1202, as indicated by X600. However, in step602, wireless signals596are successfully received by GW2204and the device, e.g., sensor, application data set1is successfully recovered. In step604GW2204generates and sends message606to NS216conveying the device, e.g. sensor, application data set1. In step608NS216receives message606and recovers the communicated information. In step609, NS216generates and sends message610including the device, e.g., sensor application data set1, to application server218. Application server218in step612receives message612and recovers the communicated information and forwards the recovered device, e.g. sensor, application data set1to the appropriate application to which it corresponds, e.g. a temperature monitoring application, a security application, a meter application, etc. In step614AS218generates and sends ACK616to NS216in response to the received set of application data of signals596. In step618NS216receives ACK message616, and in response in step620, generates and sends ACK message622, e.g., a forwarded copy version of message616, to GW2204. In step624, GW2204receives ACK message622, and in response in sep626, generates and sends wireless IoT signals628communicating the ACK of message622, to EP IoT device302. In step630EP IoT device302receives signals628and recovers the communicated ACK.

EP IoT device302repeats the process of performing measurements, generating measurement reports and sending the measurement reports to AS218, which are communicated via only GW2204due to the TX power level setting.

In step632EP IoT device302is operated, e.g., to perform sensor measurements and generate a sensor measurement report including sensor application data set M. In step634, EP IoT device302generates wireless IoT signals636communicating device, e.g. sensor, application data set M. Signals636are transmitted at the highest data rate and N-1 th. reduced power level, as indicated by block638. Wireless IoT signals636are not received by GW1202, as indicated by X639. However, in step640, wireless signals636are successfully received by GW2204and the device, e.g., sensor, application data set M is successfully recovered. In step642GW2204generates and sends message644to NS216conveying the device, e.g. sensor, application data set M. In step646NS216receives message644and recovers the communicated information. In step648, NS216generates and sends message650including the device, e.g., sensor application data set M, to application server218. Application server218in step652receives message650and recovers the communicated information and forwards the recovered device, e.g. sensor, application data set M to the appropriate application to which it corresponds, e.g. a temperature monitoring application, a security application, a meter application, etc. In step654AS218generates and sends ACK656to NS216in response to the received set of application data of signals636. In step658NS216receives ACK message656, and in response in step660, generates and sends ACK message662, e.g., a forwarded copy version of message656, to GW2204. In step664, GW2204receives ACK message662, and in response in step666, generates and sends wireless IoT signals668communicating the ACK of message662, to EP IoT device302. In step670EP IoT device302receives signals668and recovers the communicated ACK.

FIG. 3DandFIG. 3Epresent two alternative scenarios in which the EP IoT device leaves an associated mode of operation. Thus operation can proceeds from the end ofFIG. 3Dto the beginning ofFIG. 3Dor from the end ofFIG. 3Cto the beginning ofFIG. 3E.

In step670the EP IoT device302decides to terminate the associated link and the association with a single GW, which is GW2204. In step672EP IoT device302generates and transmits wireless IoT signals674including an association exit request message (command) directed to application server218. Signals674are transmitted at the highest data rate and N-1 reduced power level, as indicated by block676. In some other embodiments, IoT signals communicating an association exit request are transmitted at the maximum power level. Signals674are not received by GW1202, as indicated by X678. However, in step680signals674are received by GW2204and the association exit request (command) is successfully recovered. In step682, GW2204generates and sends association exit request message684to NS216. In step686, NS216receives message684, and in response, in step688, generates and sends association exit request message690to AS218. In step692, AS218receives association exit request message690. In step694, AS218generates and sends association exit ACK message696and sends message696to NS216. In step698AS218suspends the associated link with EP302, e.g., EP IoT device302is no longer associated with single GW2204. Thus AS218may now expect to receive information from EP302via any of the plurality of alternative GWs (GW1202or GW2204). In step700NS216receives message696, and in response, generates and sends associated exit ACK message704to GW2204. In step706, GW2204receives associated exit ACK message704, and in response in step708, generates and sends IoT wireless signals708to EP IoT device302communicating the associated exit ACK. In step710EP IoT device302receives signals302, recovers the communicated information, and recognizes that the association exit request has been granted. In step712EP IoT device suspends the associated link with NS/AS and enters a fall back mode of non-associated connectivity. In various embodiments, as part of step712the EP IoT device302increases its TX power level to maximum power.

In step714AS218decides to terminate the associated link with EP IoT302and the association of EP IoT device302with a single GW, which is GW2204. In step714AS218generates and sends message718to NS216notifying the NS to send an association exit request (command) to EP IoT device320. In step720NS216receives message718, and in response in step722, generates and sends association exit request (command) message724to GW2204, which is received by GW2204in step726. In step726, GW2204generates and transmits IoT wireless signals730communicating the association exit request (command) to EP IoT device302. In step732, EP IoT device302receives signals732, and in response in step734generates and transmits IoT wireless signals736including an association exit ACK. Signals736are transmitted at the highest data rate and N-1 reduced power level, as indicated by box737. In some other embodiments a signal communicating an association exit ACK are transmitted at the higher power level.

Signals736are not received by GW1202, as indicated by X738. However, in step740signals736are received by GW2204and the association exit request ACK is successfully recovered.

In step741EP IoT device302suspends the associated link with NS/AS and enters a fall back mode of non-associated connectivity. In various embodiments, as part of step741the EP IoT device302increases its TX power level to maximum power.

In step742, GW2204generates and sends association ACK message744to NS216. In step748, NS216receives message744, and in response, in step750, generates and sends association exit ACK message752to AS218. In step751NS216suspends the associated link with EP302.

In step754, AS218receives association exit ACK message752. In step755AS218suspends the associated link with EP IoT device302, e.g. EP IoT device302is no longer associated with single GW2204. Thus AS218may now expect to receive information from EP IoT device302via any of the plurality of alternative GWs (GW1202or GW2204).

FIG. 4, comprising the combination ofFIG. 4AandFIG. 4B, is an exemplary signaling drawing800, comprising Part A801and Part B803, in accordance with an exemplary embodiment. Exemplary signaling drawing800includes an exemplary end point IoT device302, GW1202, GW2204, Network Server (NS)216and Application Server (AS)218. Exemplary EP IoT device302is, e.g., any of the IoT devices (220,222,224,226,228,230,232, . . . ,234) of system200ofFIG. 2. Exemplary signaling drawing800illustrates: exemplary EP IoT device transmit power control (TPC) training operations under the direction of a control server, a determination of a transmit power level to be used by the EP IoT for application data transmission while in non-associated mode, said determined power being lower than the maximum allowable TX power, and the transmission of EP IoT application data at the determined TX power level, with the EP IoT application data being received by a single IoT GW.

In step804, EP IoT device302generates and transmits wireless IoT broadcast signals806communicating a join request. In step808GW1202receives signal806. In step810GW1202generates and sends message812communicating the join request to network server (NS)216. In step814the network server216receives message812and recovers the join request from GW1202. In step818GW2204receives signal806. In step817GW2204generates and sends message818communicating the join request to network server216. In step820the network server216receives message818and recovers the join request from GW2204. In step822the network server216generates and sends message824communicating the join request to application server (AS)218. IN step816AS218receives join request message824. In step826, in response to the received join request, the AS218generates and send message830communicating a join accept to NS216. In step832, NS216receives message830, and in step834, the NS216generates and sends message836communicating the join accept to GW2204. In step840GW2204generates and sends wireless IoT signals842communicating the join accept to EP IoT device302. In step844EP IoT device302receives signals842and recovers the join accept.

In step846, EP IoT device302starts transmit power control (TPC) training operations. In some embodiments, EP IoT device starts the TPC training operations in response to a received Join accept. In some embodiment, the EP IoT device starts the TPC training operation in response to a command sent from a control server, e.g., AS218, e.g., a command to start TPC training operation for non-associated mode. In some such embodiments, the command instructs the EP IoT device802to set the data rate to the highest data rate and initially set the TX power level to the highest power level.

In step848, the EP IoT device302generates and transmits IoT wireless signals850including training route data frame1. The IoT wireless signals850including training route data frame1are transmitted, e.g., broadcast, at the highest data rate and highest transmit power level, as indicated by box852. In step854GW1202successfully receives the IoT signals850and recovers the communicated training route data frame1. In step856GW1202generates and sends message868including training route data frame1and GW1metadata860, e.g., including GW1ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step862network server216receives message858and recovers the communicated information including the training route data frame1and the GW1metadata860. In step866, GW2204successfully receives the IoT signals850and recovers the communicated training route data frame1. In step866GW2204generates and sends message868including training route data frame1and GW2metadata870, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step871network server216receives message868and recovers the communicated information including the training route data frame1and the GW2metadata870. In step872the network server216aggregates information from receives messages858and868, generates aggregated training route data frame1message874including training route data frame1, GW1metadata860and GW2metadata870and sends message874to application server218. In step876, the AS218receives message874and recovers the communicated information. In step878the AS218determines, based on the received information of message874that both GW1202and GW2204have successfully received the training route data frame1, decides to reduce the transmission power level of EP IoT device302, generates message880and sends message880to NS216. Message880includes an acknowledgment882, acknowledging reception of the training route data frame1, and an instruction884to the NS216to command the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step886, NS216receives message880and recovers the communicated information. In step888NS216generates and sends message890to GW2204. Message890includes an acknowledgment892, acknowledging reception of the training route data frame1, and a command894to the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step896GW2204receives message490and recovers the communicated information. In step898GW2204generates and transmits IoT wireless signals900to EP IoT device302communicating ACK892and the command894to drop the TX power by one level. In step902, EP IoT device302receives signals900, recovers the communicated information and drops its TX power by one level.

In step904, the EP IoT device302generates and transmits IoT wireless signals906including training route data frame2. The IoT wireless signals906including training route data frame2are transmitted, e.g., broadcast, at the highest data rate and first reduced transmit power level, as indicated by box908. In step910, GW1202successfully receives the IoT signals906and recovers the communicated training route data frame2. In step911GW1202generates and sends message912including training route data frame2and GW1metadata914, e.g., including GW1ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step915network server216receives message912and recovers the communicated information including the training route2data frame and the GW1metadata914. In step916, GW2204successfully receives the IoT signals906and recovers the communicated training route data frame2. In step918GW2204generates and sends message920including training route data frame2and GW2metadata922, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step5924network server216receives message920and recovers the communicated information including the training route2data frame and the GW2metadata922. In step926the network server216aggregates information from receives messages912and920, generates aggregated training route data frame2message928including training route data frame2, GW1metadata914and GW2metadata922and sends message928to application server218. In step930, the AS218receives message928and recovers the communicated information. In step932the AS218determines, based on the received information of message928that both GW1202and GW2204have successfully received the training route data frame2, decides to reduce the transmission power level of EP IoT device302, generates message934and sends message934to NS216. Message934includes an acknowledgment936, acknowledging reception of the training route data frame2, and an instruction938to the NS216to command the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step940, NS216receives message934and recovers the communicated information. In step942NS216generates and sends message944to GW2204. Message944includes an acknowledgment946, acknowledging reception of the training route data frame2, and a command948to the EP302to drop transmit (TX) power by one level, e.g. 1.5 dBm. In step950GW2204receives message944and recovers the communicated information. In step952GW2204generates and transmits IoT wireless signals954to EP IoT device302communicating ACK956and the command958to drop the TX power by one level. In step960, EP IoT device302receives signals954, recovers the communicated information and drops its TX power by one level.

Additional iterations of a frame of training route data be sent and the EP IoT device302being subsequently commanded to reduce power, e.g., in response to the AS218determining that both GW1202and GW2204successfully received the frame of training route data may be, and sometimes are, performed.

In step962, the EP IoT device302generates and transmits IoT wireless signals964including training route data frame N. The IoT wireless signals964including training route data frame N are transmitted, e.g., broadcast, at the highest data rate and N-1 th. reduced transmit power level, as indicated by box966. GW1202does not successfully receives the IoT signals964as indicated by X968. In step970, GW2204successfully receives the IoT signals964and recovers the communicated training route data frame N. In step972GW2204generates and sends message974including training route data frame N and GW2metadata976, e.g., including GW2ID info, received RF info, e.g., received signal strength info, received SNR info, etc., to network server216. In step978network server216receives message974and recovers the communicated information including the training route data frame N and the GW2metadata976. In step980the network server generates training route data frame N message982including training route data frame N, and GW2metadata976and sends message982to application server218. In step984, the AS218receives message982and recovers the communicated information. In step986the AS218determines, based on the received information of message982that power reductions have eliminated EP302communications via GW1202, that EP302communications via GW2204to the NS216/AS218are still operating and are satisfactory, and that TPC training for EP IoT device302is complete, e.g. since valid communications now remain via only one gateway. In step988, AS218generates and sends ACK message990to NS216, said message conveying that training route data frame N was successfully received, that TPC training is complete, that TX power should remain at the current setting level, and that it is ok to proceed with sending sensor measurement reports using the current TX power level. In step992NS216receives ACK message990. In response, in step994, NS216generates and sends ACK message996, e.g., a forwarded version of ACK990communicating information of ACK message990, to GW2204. In step998, GW2204receives ACK message996, and recovers the information communicated in message996. In step1000GW2204generates and transmits IoT wireless signals1002communicating the information of ACK message996, to EP IoT device302. In step1004, EP IoT device302receives signals1002and recovers the communicated information.

In step1006EP IoT device302determines that TPC training is complete and that the current TX power level should be used. In step1008EP IoT device302is operated, e.g., to perform sensor measurements and generate a sensor measurement report including sensor application data set1. In step1010, EP IoT device302generates wireless IoT signals1012communicating device, e.g. sensor, application data set1. Signals1012are transmitted at the highest data rate and N-lth reduced power level, as indicated by block1014. Wireless IoT signals1012are not received by GW1202, as indicated by X1016. However, in step1018, wireless signals1012are successfully received by GW2204and the device, e.g., sensor, application data set1is successfully recovered. In step1020GW2204generates and sends message1022to NS216conveying the device, e.g. sensor, application data set1. In step1024NS216receives message1022and recovers the communicated information. In step1026, NS216generates and sends message1028including the device, e.g., sensor, application data set1, to application server218. Application server218in step1030receives message1028and recovers the communicated information and forwards the recovered device, e.g. sensor, application data set1to the appropriate application to which it corresponds, e.g. a temperature monitoring application, a security application, a meter application, etc. In step1032AS218generates and sends ACK1034to NS216in response to the received set of application data of signals1012. In step1036NS216receives ACK message1034, and in response in step1038, generates and sends ACK message1040, e.g., a forwarded copy version of message1034, to GW2204. In step1042, GW2204receives ACK message1040, and in response in step1044, generates and transmits wireless IoT signals1046communicating the ACK of message1040, to EP IoT device302. In step1048EP IoT device302receives signals1046and recovers the communicated ACK.

EP IoT device302repeats the process of performing measurements, generating measurement reports and sending the measurement reports to AS218, which are communicated via only GW2204due to the TX power level setting.

In step1050EP IoT device302is operated, e.g., to perform sensor measurements and generate a sensor measurement report including sensor application data set M. In step1052, EP IoT device302generates wireless IoT signals1054communicating device, e.g. sensor, application data set M. Signals1054are transmitted at the highest data rate and N-1 th. reduced power level, as indicated by block1056. Wireless IoT signals1054are not received by GW1202, as indicated by X1058. However, in step1060, wireless signals1054are successfully received by GW2204and the device, e.g., sensor, application data set M is successfully recovered. In step1062GW2204generates and sends message1064to NS216conveying the device, e.g. sensor, application data set M. In step1066NS216receives message1064and recovers the communicated information. In step1068, NS216generates and sends message1070including the device, e.g., sensor, application data set M, to application server218. Application server218in step1072receives message1070and recovers the communicated information and forwards the recovered device, e.g. sensor, application data set M to the appropriate application to which it corresponds, e.g. a temperature monitoring application, a security application, a meter application, etc. In step1074AS218generates and sends ACK1076to NS216in response to the received set of application data of signals1054. In step1078NS216receives ACK message1076, and in response in step1080, generates and sends ACK message1082, e.g., a forwarded copy version of message1076, to GW2204. In step1084, GW2204receives ACK message1082, and in response in step1086, generates and sends wireless IoT signals1087communicating the ACK of message662, to EP IoT device302. In step1088EP IoT device302receives signals1087and recovers the communicated ACK.

FIG. 5is a drawing1100illustrating an exemplary end point (EP) Internet-of-Things (IoT) device302initially successfully communicating via two communications paths, each communications path including a different gateway, and then after transmit power control (TPC) training which results in a reduction in EP IoT transmit power, successfully communicating via only one communications path corresponding to one gateway, in accordance with an exemplary embodiment. EP IoT device302includes a wireless transmitter TXW1108and a wireless receiver RXW1110. GW1202includes a wireless transmitter TXW1113, a wireless receiver RXW1115, a network receiver RXN11119and a network transmitter TXN11117. GW2204includes a wireless transmitter TW1112, a wireless receiver RXW1114, a network receiver RXN11118and a network transmitter TXN11116. Network Server (NS)216includes a first network transmitter TXN11120, a first network receiver RXN11122, a second network transmitter RXN21124and a second network transmitter TXN21126. In some embodiments, the first and second network transmitters of the NS216are the same component. In some embodiments, the first and second network receivers of the NS216are the same component. Application server (AS)218includes network transmitter TXN21128and network receiver RXN21130.

Drawing portion1102illustrates exemplary EP IoT device302initially communicating with the application server, e.g., sending information to the AS218, via a first communications path (EP TXW->GW1RXW->GW1TXN1->GW1TXN1->NS RXN1->NS RXN2->AS RXN2) which includes GW1202and via a second communications path (EP TXW->GW2RXW->GW2TXN1->GW2TXN1->NS RXN1->NS RXN2->AS RXN2), which includes GW2204. First communications path is illustrated by arrows1150a,1151a,1152a,1153cand1154c. Second communications path is illustrated by arrows1150b,1151b,1152b,1153cand1154cin drawing portion1102. At this point in time the EP302has very strong links, e.g., due to the high transmission power level. EP302is seen by multiple GWs (202,204). In this example, the stronger connection is between EP302and GW2204. EP device302is “jamming” GWs (GW1202) that need not be serving it. GW1202could be better used to serve another EP device in the communications system at this time. Network capacity could be increased if EP302were to lower its TX power.

Larger Arrow1104represents application server (AS) driven iterations of TPC with regard to controlling EP302, e.g., reducing TX power during each iteration, until only one GW is able to successfully receive IoT wireless signals transmitted from the EP IoT device302using the highest data rate. In this example, GW1202drops out resulting in a single end-to-end (E2E) path being used for communications between the EP IoT device302and the AS218, said single E2E communications path including GW2204.

AS218driven iterations include the following. Commands are issued by the AS218: i) set device302at highest data rate (SF8BW500); ii) at each iteration command GW TX power to decrease by 1.5 dBM; iii) at each iteration AS218instructs NS216to issue ADR command to device302to drop TX power by 1.5 dBm. The exit criteria for the loop is: device seen by only one GW, which is GW2302, and, in some embodiments, device virtually associated to GW2302.

Drawing portion1106illustrates exemplary EP IoT device302communicating with the application server, e.g., sending information to the AS218, via the remaining communications path (EP TXW->GW2RXW->GW2TXN1->GW2TXN1->NS RXN1->NS RXN2->AS RXN2), which includes GW2204. The remaining communications path is illustrated by arrows1150b,1151b,1152b,1153cand1154cin drawing portion1106. At this point is time EP302is transmitting at the right level in order to be received by the network, e.g. via only GW2204. Other GWs in the system, e.g., GW1202that are not associated with EP302are available and free to process more devices. As a result, network capacity scales up.

It should be appreciated that by reducing the transmit power of EP IoT device to eliminate redundant wireless IoT links not only has benefit of a reduction of overall interference in the wireless communications spectrum with potentially increased throughput, but additional benefits are gained including, e.g., a reduction in battery power expended by EP IoT device302, a reduction in the amount of processing by GW1202, network server1153and AS218, and a reduction in the amount of backhaul signaling traffic communicated between the gateways and the network server.

FIG. 6, comprising the comprising the combination ofFIG. 6A,FIG. 6B,FIG. 6CandFIG. 6D, is a flowchart1200of an exemplary method of operating a control server, e.g. an application server, e.g., in a communications system including the control server, a network server, a plurality of end point (EP) Internet of Things (IoT) devices, and a plurality of IoT Gateways (GWs), in accordance with an exemplary embodiment.

Operation starts in step1201in which the control server is powered on and initialized. Operation proceeds from step1201to step1202and step1210. In step1202the control server, e.g., an application server (AS), monitors for an association request from an end point (EP) IoT device. Step1202may, and sometimes does, include step1204in which the control server receives an association request from an EP IoT device, said association request requesting association with a gateways and establishment of an end to end (E2E) communications path between the EP IoT device and the control server, wherein the E2E communications path includes a selected gateway, e.g., a selected IoT gateway, and a wireless link between the EP IoT device and the selected GW. In some embodiments, each iteration of step1204includes one of step1206and step1208. In step1206the control server receives an association request including information identifying a requested gateway to be used in the E2E communications path. In step1208the control server receives an association request, which does not include information identifying a requested gateway to be used in said E2E communications path and wherein said control server is expected to select the gateway to be used in said E2E communications path.

Returning to step1201, in step1210, which is performed on an ongoing basis, the control server receives RF information, e.g., SNR information, received signal strength information, etc., corresponding to the EP IoT device for one or more gateways which may be used by the IoT device. Operation proceeds from steps1204and1210to step1212.

In step1212the control server selects a gateway to be associated with the EP IoT device and to be used for the E2E communications path. In some embodiments, each iteration of step1212includes one of steps1214and1216. In step1214the control server selects the EP IoT device requested gateway to be used for the E2E communications path. In step1216the control server selects, e.g., based on RF information, a gateway to be used for the E2E communications path. For example, the control server selects the gateway with the strongest received signal strength, with regard to signals transmitted from the EP IoT device, e.g., based on received signals at the GWs, data measurements at the GWs, and metadata from gateways, said data from the GWs being forwarded to the control server, e.g., via a network server, which aggregates information from a plurality of gateways.

Operation proceeds from step1212to step1218. In step1218the control server generates an association response message. Step1218includes step1220, step1222and, in some embodiments, step1224. In step1220the control server includes an acknowledgment, indicating that the association request is granted, in the association response message. In step1222the control server includes information, e.g. an E2E path identifier, identifying the E2E communications path, in the association response message. In step1224the control server includes information, e.g. a gateway (GW) identifier, identifying the gateway selected by the control serve to be used for the E2E communications path, in the association response message. Operation proceeds from step1218to step1226.

In step1226the control server sends the generated association response message to the EP IoT device. Step1226includes step1228,1230, and, in some embodiments, step1232. In step1228the control server sends an acknowledgement indicating that the association request is granted, and the EP IoT device has been associated with a particular GW, which is the selected GW. In step1230the control server sends information, e.g. a E2E path identifier, identifying the E2E communications path. In step1232the control server sends information, e.g. a GW identifier, identifying the gateway selected by the control server to be used for the E2E communications path, said selected gateway being associated with the EP IoT device. Operation proceeds from step1226, via connecting node A1234, to step1236.

In step1236the control server performs operation to transmission power control (TPC) the EP IoT device for associated mode operation. Step1236includes steps1238,1240,1242,1244,1246,1248,1250,1252,12541256and1258. In step1238the control server sends a command to the EP IoT device to set the EP IoT device at maximum transmit power level and maximum data rate. Operation proceeds from step1238to step1240. In step1240the control server sends a command to the EP IoT device to transmit a frame of training data. Operation proceeds from step1240to step1242. In step1242the control server monitors for and/or receives data, e.g., aggregated data, corresponding to one or more gateways via which the frame of training data was received. Operation proceeds from step1242to step1244.

In step1244the control server determines if the training data was successfully received by the selected gateway. If the training data was successfully received by the selected gateway, then operation proceeds from step1244to step1250. However, if the training data was not received by the selected gateway, then operation proceeds from step1244to step1246.

In step1250the control server determines if the training data was successfully received by any additional gateways in addition to the selected gateway. If the training data was successfully received by one or more additional gateways in addition to the selected gateway, then operation proceeds from step1250to step1254; otherwise, operation proceeds from step1250to step1258. In step1254the control server sends a command to the EP IoT device to reduce the transmit power level, e.g., by 1.5 dB, at the EP IoT device. Operation proceeds from step1254to step1240, in which the control server sends a command to the EP IoT device to transmit another frame of training data.

Returning to step1258, in step1258the control server sends a command to the EP IoT device to inform the EP IoT device that TPC training is ended and the current transmit power level is the power level to be used for associated mode data transmissions.

Returning to step1246, in step1246if the evaluation is of the initial training frame, then operation proceeds from sep1246, to step1248, in which the control server determines that the selected gateway, which has been associated (paired) with the EP IoT device, is currently unacceptable, and a different gateway needs to be selected and the transmission power control training needs to be restarted. However, if the evaluation of step1244was not of the initial training frame, then operation proceeds from step1246, to step1252, in which the control server sends a command to the EP IoT device to increase the transmit power level at the EP IoT device to the power level used for the last successful training reception with respect to the selected gateway. Operation proceeds from step1252to step1256. In step1256the control server sends a command to the EP IoT device to information the EP IoT device that the TPC training is ended and the current transmission power level is the power level to be used for associated mode data transmissions.

Operation proceeds from step1236to step1260, in which the control server receives forwarded EP IoT application data.

In some embodiments, the forwarded EP IoT application data may, and sometimes does, include aggregated forwarded EP IoT application data, e.g. forwarded from the selected GW and another gateway, e.g., based on a changed location of the EP IoT device since TPC training, a change in channel conditions since TPC training, or the inability of TPC training to limit wireless communications to just the selected gateway, e.g. due to the EP IoT device being equidistance between two GWs.

Operation proceeds from step1260to step1262. In step1262the control server filters out any received EP IoT application data which was not communicated via the E2P communications path including the selected gateway, which is associated with (or paired to) the EP IoT. In some embodiments, the filtering is based on inclusion of a path identifier. In some embodiments, the filtering is based on a GW identifier corresponding to the selected GW associated with the EP IoT device. In some embodiments, the filtering is performed by a network server preceding the control server, which receives and aggregates information from GWs.

Steps1260and1262are performed repetitively, e.g., as additional data reports, e.g., sensor reports are sent by the EP IoT device.

Operation proceeds from step1262, via connecting node B1264to step1266. In step1266. The control server is operated to determine if the EP IoT device should exit from associated mode. Step1266includes steps1268,1270and1272.

In step1268the control server checks and determines whether or not the control server has received an associated exit request from the EP IoT device. If the determination is that the EP IoT device has not received an associated exit request from the EP IoT device, then operation proceeds from the output of step1268to the input of step1268and another check is made at a later point in time, e.g., after a predetermined time interval. However, if the determination is that the EP IoT device has received an associated exit request from the EP IoT device, then operation proceeds from step1268to step1272in which the control server determines that associated mode with regard to the EP IoT device should be ended.

In step1270the control server determines if the control server has determined that continual use of the selected GW for the E2E path is undesirable, e.g. reception quality has degraded since the EP IoT device has moved since the association determination and TPC. If the determination is that continual use of the selected GW is acceptable, then operation proceeds from the output of step1270to the input of step1270and another check is made at a later point in time, e.g., after a predetermined time interval. However, if the determination is that the continual use of the selected GW is undesirable, then operation proceeds from step1270to step1272in which the control server determines that associated mode with regard to the EP IoT device should be ended. Operation proceeds from step1272to step1274.

In step1274the control server sends a message to the EP IoT device to terminate associated mode and cause the EP IoT device to transition to non-associated mode. Each iteration of step1274includes one of step1276or step1278. In step1276the control server sends an acknowledgment in response to the received association exit request. In step1274the control server sends an association exit request to the EP IoT device. Operation proceeds from step1274, via connecting node C1280, to step1282.

In step1282the control server performs operation to transmission power control (TPC) the EP IoT device for non-associated mode operation. Step1282includes steps1284,1286,1288,1290,1292,1294,1296,1298,1300,1302and1304. In step1284the control server sends a command to the EP IoT device to set the EP IoT device at maximum transmit power level and maximum data rate. Operation proceeds from step1284to step1286. In step1286the control server sends a command to the EP IoT device to transmit a frame of training data. Operation proceeds from step1286to step1288. In step1288the control server monitors for and/or receives data, e.g., aggregated data, corresponding to one or more gateways via which the frame of training data was received. Operation proceeds from step1288to step1290.

In step1290the control server determines if the training data was successfully received by at least one gateway. If the training data was successfully received by at least one gateway, then operation proceeds from step1290to step1294. However, if the training data was not received by at least one gateway, then operation proceeds from step1290to step1292.

In step1294the control server determines if the training data was successfully received by more than one gateway. If the training data was successfully received by more than one gateway, then operation proceeds from step1294to step1300; otherwise, operation proceeds from step1294to step1304. In step1300the control server sends a command to the EP IoT device to reduce the transmit power level, e.g., by 1.5 dB, at the EP IoT device. Operation proceeds from step1300to step1286, in which the control server sends a command to the EP IoT device to transmit another frame of training data.

Returning to step1304, in step1304the control server sends a command to the EP IoT device to inform the EP IoT device that TPC training is ended and the current transmit power level is the power level to be used for non-associated mode data transmissions.

Returning to step1292, in step1292if the evaluation is of the initial training frame, then operation proceeds from step1292, to step1296, in which the control server determines that the EP IoT device, is currently inaccessible and TPC training will be restarted at later point in time, e.g. following a predetermined delay interval. However, if the evaluation of step1290was not of the initial training frame, then operation proceeds from step1292, to step1298, in which the control server sends a command to the EP IoT device to increase the transmit power level at the EP IoT device to the power level used for the last successful training data reception. Operation proceeds from step1298to step1302. In step1302the control server sends a command to the EP IoT device to inform the EP IoT device that the TPC training is ended and the current transmission power level is the power level to be used for non-associated mode data transmissions.

Operation proceeds from step1282to step1306, in which the control server receives forwarded EP IoT application data. In some embodiments, the forwarded EP IoT application data may, and sometimes does, include aggregated forwarded EP IoT application data, e.g. forwarded from the a plurality of GWs, e.g., based on a changed location of the EP IoT device since TPC training, a change in channel conditions since TPC training, or the inability of TPC training to limit wireless communications to just the selected gateway, e.g. due to the EP IoT device being equidistance between two GWs.

Steps1306is performed repetitively, e.g., as additional data reports, e.g., sensor reports are sent by the EP IoT device. Operation proceeds from step1306, via connecting node D1308to step1202, in which the control server monitors for another association request from the EP IoT device.

Flowchart1200ofFIG. 6has been described from the perspective of controlling a single EP IoT device. It should be appreciated the control server is operated to control multiple EP IoT devices in the communications system. Thus, the steps of flowchart1200may be, and sometimes are performed by the control server for each of a plurality of different EP IoTs devices in the communications system. Thus each EP IoT device in the system may be, and sometimes is, associated with (paired with) one of the GWs in the system. In addition each EP IoT device in the system may be, and sometimes is, individually transmission power controlled (TPC) by the control server.

FIG. 7is a drawing of an exemplary control server1400, e.g., an application server, in accordance with an exemplary embodiment. Exemplary control server1400is, e.g. exemplary control server218, e.g., an application server, ofFIGS. 2, 3, 4, and 5, and/or a control server, e.g. an application server, described with respect to the flowchart ofFIG. 6. Exemplary control server1400includes a processor1402, e.g., a CPU, a network interface1404, e.g., a wired or optical interface, an I/O interface1406, an assembly of hardware components1408, e.g., an assembly of circuits, and memory1410coupled together via a bus1412over which the various elements may interchange data and information. Network interface1404includes a receiver1424and a transmitter1426. In some embodiments, receiver1424and transmitter1426are included as part of a transceiver1428. Network interface1404couples the control server, e.g. an application server, to a network server, e.g., network server216.

Control server1400further includes a plurality of input/output devices (speaker1414, switches1416, mouse1418, keyboard/keypad1420and display1422, which are coupled to I/O interface1406allowing the various I/O devices to communicate with other elements coupled to bus1412.

Memory1410includes an assembly of components1430, e.g., an assembly of software components1430and data/information1432. Assembly of components1430includes an association app1434for performing operations and control related to associating an EP device with a particular GW and a communications path, a transmit power control (TPC) app1436for performing operations and control related to TPC controlling an EP device and/or a GW device, and a plurality of device, e.g. sensor, applications, e.g., corresponding to different functions and/or services (device, e.g., sensor, app11434, e.g., a temperature app, device, e.g., sensor, app21436, e.g., a security app, device, e.g., sensor, app31438, e.g., a gas meter app, device, e.g., sensor, app41440, e.g., an eclectic meter app, device, e.g., sensor, app51442, e.g., a water meter app, device, e.g., sensor, app61444, e.g., a fire detection and/or notification app, device, e.g., sensor, app71434, e.g., a vehicle app such as a vehicle tracking app or vehicle status reporting app, . . . , a device, e.g., sensor, app N). Data information1432includes information corresponding to a plurality of end point (EP) devices (EP device1, e.g. EP IoT device1, data information1450, . . . EP device N data/information1452). EP device1data/information1450includes association information, e.g. information associating EP device1with a particular selected or determined GW and an E2E communications path between EP device1and the control server1410, determined EP TX power level information1456, e.g., a determined TX power level to be used by EP device1following TPC training operations under the control of control server1400, an a received device, e.g. sensor, application data1458, e.g., a received sensor report from EP device1.

FIG. 8is a drawing of an exemplary end point (EP) device1500, e.g., an EP IoT device, e.g., an EP IoT sensor device, in accordance with an exemplary embodiment. Exemplary EP device1500is, e.g., any of the EP devices (220,222,224,226,228,230,232, . . . ,234) ofFIG. 2, EP device302ofFIGS. 3, 4, and 5, and/or an EP device described with respect to the flowchart ofFIG. 6. Exemplary EP device1500includes a processor1502, e.g., a CPU, a wireless interface1504, e.g., an IoT wireless interface, a network interface1506, e.g., a wired or optical interface, an I/O interface1510, an assembly of hardware components1508, e.g., an assembly of circuits, memory1512, and in some embodiments, SIM card1509, coupled together via a bus1514over which the various elements may interchange data and information. Wireless interface1504includes a wireless receiver1522coupled to one or more receive antennas1526, . . . ,1528, and a wireless transmitter1524coupled to one or more transmit antennas1530, . . . ,1532. In some embodiments, the same antenna(s) are used for transmit and receive. Network interface1504includes a receiver1518and a transmitter1520. In some embodiments, receiver1518and transmitter1520are included as part of a transceiver1516.

End point (EP) device1500further includes a plurality of input/output devices (speaker1534, switches1536, mouse1538, keyboard/keypad1540, display1532, camera1544, microphone1546, and one or more of: temperature sensor1580, fire sensor1582, vehicle sensor1584, water meter sensor1586, electric meter sensor1588, power line sensor1590, gas meter sensor1592, security sensor1594, . . . , custom sensor1596) which are coupled to I/O interface1510allowing the various I/O devices to communicate with other elements coupled to bus1514.

Memory1510includes an assembly of components1548, e.g., an assembly of software components and data/information1560. Assembly of components1548includes an association app1562for performing operations and related to associating the EP device with a single GW and a communications path between the EP device and a control server, e.g. an application server, a transmit power control (TPC) app1564for performing operations related to EP device TX power control under the direction of a control server, e.g., to determine a TX power level to use, and a device app1566, e.g., a sensor app corresponding to the function and/or type of data to be reported by the EP device to the control server, e.g. an application server. Data/information1560includes association information1568, e.g., information identifying a particular GW which has been associated with the EP device and/or information identifying an E2E communication path between the EP device and the control server, e.g., an application server, mode information1570, e.g., information identifying whether the EP device is currently in associated mode or non-associated mode, a determined TX power level1572to be used by the EP device, and device application data1574, e.g., a sensor report, to be sent to the application server.

FIG. 9is a drawing of an exemplary network server1600in accordance with an exemplary embodiment. Exemplary network server1600is, e.g., network server216ofFIGS. 2, 3, 4, and 5and/or a network server described with respect to flowchart ofFIG. 6. Exemplary network server1600includes a processor1602, e.g., a CPU, a first network interface1604, e.g., a wired or optical interface, a second network interface1606, an I/O interface1630, an assembly of hardware components1608, e.g., an assembly of circuits, and memory1610coupled together via a bus1617over which the various elements may interchange data and information. First network interface1604includes a receiver1612and a transmitter1614. In some embodiments, receiver1612and transmitter1614are included as part of a transceiver1616. First network interface1604couples the network server, e.g. to other network nodes and/or the Internet. Second network interface1606includes a receiver1618and a transmitter1620. In some embodiments, receiver1618and transmitter1620are included as part of a transceiver1622. Second network interface1606couples the network server, e.g. to a control server, e.g. an application server such as AS218. In some embodiments, there is a single network interface which performs the functionality of both first and second network interfaces1604,1606.

Network server1600further includes a plurality of input/output devices (speaker1628, switches1632, mouse1634, keyboard/keypad1636and display1638, which are coupled to I/O interface1630allowing the various I/O devices to communicate with other elements coupled to bus1617.

Memory1610includes an assembly of components1624, e.g., an assembly of software components, and data/information1626. Assembly of components1624includes an association app1650for performing operations and control related to associating an EP device with a particular GW and a communications path, a transmit power control (TPC) app1652for performing operations and control related to TPC controlling an EP device and/or a GW device. Operation performed by network device1600include aggregation related to messages received from one or more gateways and communication of data/information received from gateways including aggregated information to a control server, e.g. an application server. The network device1600also receives messages from the control server, e.g. application server, instructing the network server to send messages, e.g. including commands such as power control commands to an EP device and/or a GW.

FIG. 10is a drawing of an exemplary gateway (GW)1700, e.g., an IoT gateway, in accordance with an exemplary embodiment. Exemplary gateway1700is, e.g. one of the gateways (202, . . . ,204) ofFIGS. 2, 3, 4 and 5and/or a GW described with respect to the flowchart ofFIG. 6. Exemplary gateway1700includes a processor1702, e.g., a CPU, a wireless interface1704, a network interface1706, e.g., a wired or optical interface, an I/O interface1710, an assembly of hardware components1708, e.g., an assembly of circuits, a memory1710, and in some embodiments, a SIM card1709, coupled together via a bus1714over which the various elements may interchange data and information. Wireless interface1704, e.g., an IoT wireless interface, includes a wireless receiver1726coupled to one or more receive antennas1730, . . .1732, via which the gateway receives wireless signals, e.g. IoT broadcast signals from EP devices, e.g. EP IoT devices, and a wireless transmitter1728coupled to one or more transmit antennas1734, . . .1736, via which the gateway transmits wireless signals, e.g. IoT downlink signals, to EP devices, e.g. EP IoT devices. In some embodiments, the same antenna(s) are used for both transmit and receive. Network interface1706includes a receiver1722and a transmitter1724. In some embodiments, receiver1722and transmitter1724are included as part of a transceiver1720. Network interface1706couples the gateway1700, e.g. to other network nodes and/or the Internet.

Gateway1700further includes a plurality of input/output devices (speaker1738, switches1740, mouse1742, keyboard/keypad1744and display1746, which are coupled to I/O interface1710allowing the various I/O devices to communicate with other elements coupled to bus1714.

Memory1712includes an assembly of components1716, e.g., an assembly of software components, and data/information1718.

FIG. 11, comprising the combination ofFIG. 11A,FIG. 11B,FIG. 11CandFIG. 11Dis a drawing of an exemplary assembly of components1800, comprising the combination of Part A1801, Part B1803, Part C1805and Part D1807, which may be included in an exemplary control server, e.g. an application server, in accordance with an exemplary embodiment. Exemplary assembly of components is, e.g. included in control server1400, e.g., an application server, ofFIG. 7, exemplary control server218, e.g., an application server, ofFIGS. 2, 3, 4, and 5, and/or a control server, e.g. an application server, described with respect to the flowchart ofFIG. 6.

The components in the assembly of components1800can, and in some embodiments are, implemented fully in hardware within a processor, e.g., processor1402, e.g., as individual circuits. The components in the assembly of components1800can, and in some embodiments are, implemented fully in hardware within the assembly of hardware components1408, e.g., as individual circuits corresponding to the different components. In other embodiments some of the components are implemented, e.g., as circuits, within processor1402with other components being implemented, e.g., as circuits within assembly of components1408, external to and coupled to the processor1402. As should be appreciated the level of integration of components on the processor and/or with some components being external to the processor may be one of design choice. Alternatively, rather than being implemented as circuits, all or some of the components may be implemented in software and stored in the memory1410of the control server1400, with the components controlling operation of control server1400to implement the functions corresponding to the components when the components are executed by a processor e.g., processor1402. In some such embodiments, the assembly of components1800is included in the memory1410as part of assembly of software components1430. In still other embodiments, various components in assembly of components1800are implemented as a combination of hardware and software, e.g., with another circuit external to the processor providing input to the processor which then under software control operates to perform a portion of a component's function.

When implemented in software the components include code, which when executed by a processor, e.g., processor1402, configure the processor to implement the function corresponding to the component. In embodiments where the assembly of components1800is stored in the memory1410, the memory1410is a computer program product comprising a computer readable medium comprising code, e.g., individual code for each component, for causing at least one computer, e.g., processor1402, to implement the functions to which the components correspond.

Completely hardware based or completely software based components may be used. However, it should be appreciated that any combination of software and hardware, e.g., circuit implemented components may be used to implement the functions. As should be appreciated, the components illustrated inFIG. 11control and/or configure the control server1400or elements therein such as the processor1402, to perform the functions of corresponding steps illustrated and/or described in the method of one or more of the flowcharts, signaling diagrams and/or described with respect to any of the Figures. Thus the assembly of components1800includes various components that perform functions of corresponding one or more described and/or illustrated steps of an exemplary method.

Assembly of components1800includes a component1802configured to operate the control server to monitor at the control server for an association request from and end point (EP) Internet of Things (IoT) device. Component1802includes a component1804configured to operate the control server to receive, at the control server, an association request requesting association with a gateway and establishment of an end to end (E2E) communications path between the end point IoT device and the control server. Component1804includes a component1806configured to operate the control server to receive an association request including information identifying a requested gateway to be used in said end to end communications path and a component1808configured to operate the control server to receive an association request, which does not include information identifying a requested gateway to be used in said end to end communications path and wherein said control server is expected to select the gateway.

Assembly of components1800further includes a component1810configured to operate the control server to receive, at the control serve, radio frequency (RF) information, e.g. SNR information, received signal strength information, etc., corresponding to the end point IoT device for one or more gateways which may be used by the end point IoT device, and component1812configured to select, at the control server, a gateway to be associated with the EP IoT device and to be used for the end to end communications path. Component1812includes a component1814configured to select, the EP IoT requested gateway to be used for the end to end communications path, and a component1816configured to select, e.g. based on RF information, a gateway to be used for the end to end communications path.

Assembly of components1800further includes a component1818configured to generate an association response message. Component1818includes a component1820configured to include an acknowledgment indicating that the association request is granted, a component1822configured to include information, e.g., an end to end (E2E) path identifier, identifying the E2E path, and a component1824configured to include information, e.g., a gateway identifier, identifying the gateway selected by the control server to be used for the E2E communications path.

Assembly of components1800further includes a component1826configured to operate the control server to send the generated association request response message to the EP IoT device. Component1826includes a component1828configured to operate the control server to send an acknowledgment indicating that the association request is granted, a component1830configured to operate the control server to send information, e.g. an E2E path identifier, identifying the end to end communications path and a component1832configured to operate the control server to send information, e.g., a GW identifier, identifying the gateway selected by the control server to be used for the E2E communications path.

Assembly of component1800further includes a component1836configured to operate the control server to transmission power control (TPC) the EP IoT device for associated mode. Component1836includes a component1838configured to operate the control server to send a command to the EP IoT device to set the EP IoT device at maximum transmission power level and maximum data rate, a component1840configured to operate the control server to send a command to set the EP IoT device to transmit a frame of training data, a component1842configured to operate the control server to monitor for and/or receive data, e.g., aggregated data, corresponding to one or more gateways via which the frame of training data was received, a component1844configured to determine if the training data was successfully received by the selected gateway and to control operation as a function of the determination, a component1846configured to determine if successful reception of an initial training frame is being evaluated and control operation as a function of the determination, a component1848configured to determine that the selected gateway is currently unacceptable, e.g., in response to a determination that that reception of the initial training frame is being evaluated and that the selected gateway failed to successfully receive the data, and a component1852configured to operate the control server to increase the transmit power level at the EP IoT device to the power level used for the last successful training reception with respect to the selected gateway, e.g. in response to a determination that the training data was not successfully received by the selected gateway and that this was not the initial training frame. Component1836further includes a component1850configured to determine if the training frame was received by any additional gateways in addition to the selected gateway and to control operation as a function of the determination, and a component1854configured to operate the control server to send a command to the EP IoT device to reduce the transmit power level, e.g., by 1.5 dB, at the EP IoT device, e.g., in response to a determination that one or more additional gateways received the training data in addition to the selected gateway.

Component1836further includes a component1856configured to operate the control server to send a command to the EP IoT device to inform the EP IoT device that the TPC training is ended and the current TX power level is the power level to be used for associated mode data transmissions, e.g., following component1852sending a command to the EP IoT device, and a component1858configured to operate the control server to send a command to the EP IoT device to inform the EP IoT device that the TPC training is ended and the current power level is the power level to be used for associated mode data transmissions, e.g., in response to a determination the training data was successfully received by the selected gateway but was not successfully received by an additional gateways.

Assembly of components1800further includes a component1860configured to operate the control server to received forwarded EP IoT device application data, and a component1862configured to operate the control server to filter out any received EP IoT application data which was not communicated via the E2E communications path including the selected gateway. Assembly of component1800further includes a component1866configured to operate the control server to determine if the EP IoT device should exit from associated mode. Component1866includes a component1868configured to determine if the control server has received an associated exit request from an EP IoT device and control operation as a function of the determination, a component1870configured to determine if the control server has determined that continual use of the selected gateway for the E2E path is undesirable and to control operation as a function of the determination, and a component1872configured to determine that associated mode with regard to the EP IoT device should be ended, e.g., in response to either of: i) a received associated exit request from the EP IoT device or ii) a control server determination that continued use of the selected gateway for the E2E path is undesirable, e.g., based on a change, e.g., degradation, in RF reported information, e.g., SNR and/or signal strength, corresponding to the EP IoT device and the selected gateway, based on changes in network loading among GW, and/or based on an observed decrease in successful recovery of information from the EP IoT. Assembly of components1800further includes a component1874configured to operate the control serve to send a message to the EP IoT device to terminate associated mode and cause the EP IoT device to transition into non-associated mode, e.g. in response to a determination that associated mode with regard to the EP IoT device should be ended. Component1874includes a component1876configured to operate the control server to send an acknowledgment in response to the received association exit request, and a component1878configured to operate the control server to send an association exit request to the EP IoT device, e.g., in response to a determination by the control server that continued use of the selected gateway is undesirable and that the control server has determined that associated mode should be ended.

Assembly of component1800further includes a component1882configured to operate the control server to transmission power control (TPC) the EP IoT device for non-associated mode. Component1882includes a component1884configured to operate the control server to send a command to the EP IoT device to set the EP IoT device at maximum transmission power level and maximum data rate, a component1886configured to operate the control server to send a command to set the EP IoT device to transmit a frame of training data, a component1888configured to operate the control server to monitor for and/or receive data, e.g., aggregated data, corresponding to one or more gateways via which the frame of training data was received, a component1890configured to determine if the training data was successfully received by the at least one gateway and to control operation as a function of the determination, a component1892configured to determine if reception of an initial training frame is being evaluated and control operation as a function of the determination, a component1896configured to determine that the EP IoT device is currently inaccessible, e.g., in response to a determination that that reception of the initial training frame was evaluated and that the initial training frame data was not successfully received by any of the gateways, and a component1898configured to operate the control server to increase the transmit power level at the EP IoT device to the power level used for the last successful training reception, e.g. in response to a determination that the training data was not successfully received by any gateways and that this was not the initial training frame.

Component1882further includes a component1894configured to determine if the training frame was received by more than one gateway and to control operation as a function of the determination, and a component1900configured to operate the control server to send a command to the EP IoT device to reduce the transmit power level, e.g., by 1.5 dB, at the EP IoT device, e.g., in response to a determination that the training data was successfully received by more than one gateway.

Component1882further includes a component1902configured to operate the control server to send a command to the EP IoT device to inform the EP IoT device that the TPC training is ended and the current TX power level is the power level to be used for non-associated mode data transmissions, e.g., following component1898sending a command to the EP IoT device, and a component1904configured to operate the control server to send a command to the EP IoT device to inform the EP IoT device that the TPC training is ended and the current power level is the power level to be used for non-associated mode data transmissions, e.g., in response to a determination the training data was successfully received by the a single gateway but was not successfully received by an additional gateways.

Assembly of components1800further includes a component1906configured to operate the control server to receive forwarded EP IoT device application data, e.g. while in the non-associated mode.

Various aspects and/or features of some embodiments of the present invention are further described below.

In some embodiments in association mode, an End Point—Gateway (EP—GW) association, e.g., a virtual association, is imposed on top of a Medium Access Control Layer (MAC) layer, e.g., a Long Range Low Power Wide Area Network (LPWAN) (LoRaWAN) MAC layer or other protocol MAC layer.

In some embodiments, in non-association mode, higher throughputs across the network are achieved and an end point (EP) device is able to use the largest available payload size to minimize end to end (E2E) delays and fragmentation.

In some embodiments, transmit power control loops are implemented, e.g. at the physical (PHY) and MAC layer, that guarantee that a device, e.g., and EP device communicates with a single GW. In some embodiments, transmit power control loops are implemented, e.g. at the physical (PHY) and MAC layer, that increase the likelihood, e.g., significantly increase the likelihood, that a device, e.g., and EP device communicates with a single GW.

In some embodiments, a control server, e.g. an application server (AS) or a network server (NS), or an EP device, requests a single route from the EP to the NS/AS through a unique GW. In some embodiments, multiple modes of EP operation are supported, e.g., an associated mode and a non-associated mode. In some embodiments, a fall-safe mode is incorporated in the implementation to exit the GW associated mode and fall back to the original architecture, e.g., a LoRaWAN architecture or other protocol architecture. In some embodiments, both the associated mode and the non-associated mode support transmission power control (TPC) of the EP device under the control of a control server, e.g., an application server.

In some embodiments, implementation includes a building block for Internet Protocol (IP) connectivity on top of another protocol, e.g., a LoRaWAN protocol or another protocol.

Various exemplary Transmit Power Control (TPC) loops, implemented in accordance with some embodiments the present invention, provide a unique way to guarantee or significantly increase the likelihood of a single route communication from the NS/AS to the device/EP. This approach of using TPC to achieve or increase the likelihood of a single route is advantageous in that it can result in one or more or all of: i) increase the ability to achieve higher data rates, e.g. up to 22 kpbs as opposed to the 1.1-5 kbps in the normal way of operation in LoRaWAN, ii) provide for low cost device localization by cell association; iii) minimize interference of different sensors to each other and ensure longer battery life for devices (EP devices); and iv) guarantee or provide for device backward compatibility, e.g. full device backward compatibility, to an existing protocol, e.g., LoRaWAN or another protocol being used.

In some embodiments, in associated mode, the exemplary embodiment, in accordance with the present invention, allows devices, e.g. EP devices such as IoT EP devices, to be associated, e.g. virtually associated, to gateways (GWs) in the network, e.g., LoRaWAN or other network. This approach allows for easier, non-intrusive device localization, easier device management and easier Operations and Management (O&M) and/or easier Operations and Maintenance (O&M) operations such as, e.g. firmware updates for devices within the same cell.

In various embodiments, the associated mode introduces new procedures, e.g. new LoRaWAN procedures, that can be implemented either at the application of the MAC layer.

In some embodiments, in non-associated mode, the exemplary embodiment allows an increase in the payload sizes for devices, e.g. EP devices such as EP IoT devices, and makes use of the highest available data rates. In some embodiments, non-associated mode facilitates similar functionalities as described above with respect to associated mode while guaranteeing or providing for backward compatibility, e.g. full backward compatibility, on the device.

In some embodiments, the transmit power control (TPC) method, in accordance with the present invention, makes it possible to ensure that every EP device, e.g. sensor device, is served by only 1 GW to ensure a single path from NS/AS to the EP (thru a single GW). In some embodiments, the transmit power control (TPC) method, in accordance with the present invention, increases the likelihood that an EP device, e.g. a sensor device, is served by only 1 GW with a single path from NS/AS to the EP (thru a single GW).

In various embodiments, novel architecture and/or methods in accordance with an exemplary embodiment includes one or more or all of the following features. Devices can be and sometimes are paired, e.g., virtually paired, to a single GW. An exemplary TPC method facilitates locking a device to a single GW. In some embodiments, the TPC algorithm acts only on the application (APP) layer, thus not breaking the lower protocol, e.g., LoRaWAN protocol or other implemented protocol dependencies. In some embodiments, a virtualized edge-node is able to generate and maintain E2E unique routes. In some embodiments, a virtualized edge-node includes GW HW and encompasses NS functionalities.

Application level implication of some embodiments will now be described. In some embodiments, a base protocol, e.g. a LPWAN/LoRaWAN protocol or another protocol, is augmented with custom application-layer commands built on the standard MAC layer, e.g., LoRaWAN MAC layer or other protocol MAC layer, to request and initiate an IP connectivity on top of the connection, e.g., LPWAN or LoRaWAN or other protocol connection.

Exemplary added MAC commands include:i) AssociationReq: a command issued by the EP to initiate a unique E2E route between the device and NS/AS;ii) AssociationACK: a command issued by the NS to acknowledge the request and send back a request to put the EP in Class C always On device;iii) RouteReq: a command that ACKs the Class C capability of the EP and is transmitted at the highest DataRate highest TX power and EP switches to Class C.iv) RouteAck: a command issued by the NS to the EPv) TrainingRoute: N ACK-ed frames are generated by the EP and are all ACK-ed by the NS; those frames will be used to generate and guarantee a single route between EP and NS thru a single GW.vi) AssociationExitReq: a command generated by either NS or EP to request suspending the associated link; and vii) AssociationExitACK: EP or NS acknowledging fall back mode to non-associated connectivity, e.g. LoRaWAN/LPWAN non-associated connectivity or another protocol non-associated connectivity.

Various MAC-Level implications will now be described. Various implementation of the current invention, includes the unique feature that it is built on a standard existing MAC protocols, e.g., a standard LPWAN existing MAC protocol. It can be firmware update over the air (FUOTA) on top of LoRaWAN, SIGFox, NB-IoT, LTE CAt-M, etc. Previously discussed application request and ACKs can be expressed as a function of existing MAC commands, e.g., existing LoRaWAN MAC commands or existing another protocol MAC commands, e.g. ADR Req, MAC ACK, LinkCheck, etc.

In some embodiments, according to the existing protocol, e.g. LPWAN/LoRaWAN, each of the JoinReq and DATA transmission will stay compliant with the standard. In some embodiments, starting at AssociationReq, those commands are custom commands to enable EP-GW-NS unique EE2E connection. In some embodiments, as per the existing protocol, e.g. LoRaWAN protocol or other existing protocol, each of the frames are broadcast and there is no GW association. Various features of the current invention help maintain a single route between each given EP and GW. This will help implement 6lowpan and other compression mechanisms on top of the existing protocol, e.g., on top of LPWAN/LoRaWAN or on top of another implemented protocol. In some embodiments, TrainingRoute are a set of MAC frames that used adaptable bit rates (ADR) to set an EP with regard to TX to ensure that each EP is received by at most a single GW.

Various aspects and/or features related to TrainingRoute will now be described. In some embodiments, TrainingRoute frames are special AD RACK-ed frames where the EP starts transmitting at its maxpower and max DataRate, e.g., 22 kbps (SF7BW500). Transmitting at the max rate, ensures that as the EP and NS iterate on the TX powers, it is always guaranteed that the link budget is decreasing by fixing one of the variable (i.e. DataRate (DR)). Fixing DR at the highest DR will ensure that a connection at 22 kbps, which is suitable for most sensor applications and delay tolerant applications. In each TrainingRoute frame, the EP and AS exchange thru one or more GWs, and the goal is to have the EP transmit at a low enough TX power to be received and ACK-ed by a single GW. This is ensured by using standard ADR commands, e.g., LoRaWAN standard ADR commands or another protocol standard ADR commands, and decreasing at each iteration TX power by 1.5 dB or another predetermined value, from both EP and GW (uplink frames will tune the EP TX power and DL frames will tune the GW TX power.)

Information regarding exemplary messages, in accordance with some embodiments, will now be described. The application server (AS) appends Meta data to messages. Exemplary Meta data appended by AS includes, e.g., app_id, device_id, hardware serial, port, counter, and is retry.

Exemplary Meta data appended by NS includes, e.g. “airtime”—airtime in milliseconds, “time”—time when the server received the message, “frequency”—frequency at which the message was sent, “modulation”—modulation that was used, e.g. LORA or FSK, “data rate”—Data Rate that was used—if LORA modulation, “bit rate”—Bit rate that was used if FSK modulation, “coding_rate”—Coding rate that was used.

Exemplary Meta data information appended by the GWs includes, e.g. “gtw-id”—EUI of the gateway, “timestamp”—timestamp when the gateway received the message, “time”—time when the gateway received the message, “channel”—channel where the gateway received the message, “rssi”—signal strength of the received message, “snr”—signal to noise ratio of the received message, “rf_chain”—RF chain where the gateway received the message, “latitude”—latitude of the gateway reported in its status updates, “longitude”—longitude of the gateway, “device_latitude”—latitude of the EP device, “device—longitude”—longitude of the EP device.

In some embodiments every time the EP sends data (payload or MAC commands), the EP actually sends encrypted bytes over a modulation, e.g. a LoRa modulation following the LoRaWAN standard, or another alternative modulation following an alternative corresponding standard.

Gateway(s) receive the data and convert the payload, e.g., into base64 data, and append some RF characteristics, timestamp, their location, etc. Gateway(s) send this converted payload and appended meta data to a network server, e.g. via a backhaul including the Internet.

The network server (NS) receives this data, e.g. from one or more gateways and aggregates the traffic per device, e.g. per EP device. The NS sends the aggregated data to the AS.

The AS receives the data per device and takes decisions on the application data.

In some embodiments of the present invention, standard messages are used, but a unique differentiator is that in accordance with a feature of some embodiments of the present invention, an association is created on top of an existing protocol, e.g., LoRaWAN protocol or other protocol. This novel mechanism is not included in the existing standard. Some embodiments, in accordance with the present invention, include a unique E2E route association. An association request message is sent by an EP device, and is received by two or more GWs, but it is intended that an association be established with only one GW. The GWs which successfully received the association request message forward the recovered message with GW meta data including RF information, e.g., GW ID info, received signal strength info (RSSI) and SNR information to the network server. The NS receives the information from the GWs which successfully received the association request, e.g., aggregating received information. In some embodiments, the NS decides to use one GW, e.g., GW2based on RF characteristics and informs the AS of the decision. In other embodiments, the NS sends the aggregated information to the AS which makes the decision as to which GW to use, e.g. selecting GW2based on better RF characteristics. An association ACK is generated and sent back to the EP. Subsequently, TPC of the EP under the direction of the application server is performed. A training route data frame is broadcast by the EP, e.g., starting with maximum TX power level at maximum data rate. If the training route frame is received my multiple GWs, then the AS controls the EP to reduce TX power, e.g., by 1.5 dB, and send another frame. Eventually, e.g., after N frames, the transmitted frame is only received by a single GW, which is the associated GW, and the training is terminated.

In some embodiments, in non-associated mode, for non-associated mode, TPC training is still performed, in a similar manner to associated mode, but there is no formal association between the EP and a particular GW. The TPC reductions are performed in iterations until the EP is just left communicating with one GW.

Note that during non-associated mode the target gateway is the gateway which can receive data from the end point device at the maximum data rate using the lowest transmit power. In some embodiments, the determination of the target gateway and determination of the lowest transmit power level is made via a power control training phase in which end point transmission power is successively reduced, e.g., until successful communications with only one gateway remain. The determined target gateway will normally be the gateway with the best wireless communications path to the end point device and will in most, if not all cases, be the gateway closest to the end point device.

In embodiments where an end point device can operate what is referred to as associated mode, the end point device or control server, e.g., application server, may specify a particular target gateway to be used. The gateway could be specified because it is operated by the same service provider and/or for other reasons such as having a good backhaul connection to the control server (e.g., application server) and/or having a good wireless connection to the end point device. In associated mode a power control training phase is used to determine an end point device transmission power level, e.g., a minimum level or near minimum level, in which data is received by the target gateway at the maximum supported transmission data rate.

Numbered List of Exemplary Method Embodiments

Method Embodiment 1 A communications method, the method comprising: receiving at a control server, training data (1242or1288) that was wirelessly transmitted by a first end point device (e.g., EP device220) and received by one or more gateways (e.g., GW1202and/or GW2(204)) coupled to said control server (218); determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway (e.g., where the target gateway is either a selected gateway when in association mode or a gateway which can be reached by the lowest power transmission that can support the maximum transmission data rate, if the target gateway is the individual gateway which can support the maximum transmission data rate at the lowest power level if more than one gateway successful receives the training data at the maximum data rate than the training data was successfully received by an additional gateway if the identity of the target gateway is unknown since it has not yet been identified via power down operations); when it is determined that ((1250) or (1294)) the training data was successfully received by at least one gateway in addition to the target gateway, sending ((1254) or (1300)) a command to the first end point device to reduce the transmit power level (e.g., by a predetermined amount such as 1.5 dB or some other amount, e.g., 2 dB); and when it is determined that ((1250) or (1294)) the training data was not successfully received by at least one gateway in addition to the target gateway, sending ((1258) or (1304)) a command to the first end point device to indicate that training (e.g., transmit power control (TPC) training) has ended.

Method Embodiment 2 The method of Method Embodiment 1, further comprising, prior to determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway performing the step of: operating the control server (218) to send ((1238) or (1284)) a command to the first end point device (e.g., EP device220) to transmit training data at a maximum transmission power level.

Method Embodiment 3 The method of Method Embodiment 2, wherein the command to the first end point also commands the end point to use a maximum transmission data rate.

Method Embodiment 4 The method of Method Embodiment 2, further comprising prior to determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway performing the step of: determining (1244) that the training data was successfully received by the selected gateway.

Method Embodiment 5 The method of Method Embodiment 1, wherein the target gateway is a single individual gateway in the communications system capable of receiving data at the maximum transmission data rate using a lowest transmission power level that can successfully support the maximum transmission data rate given a current location of the first end point device.

Method Embodiment 6 The method of Method Embodiment 1, wherein a plurality of gateways are able to receive data transmitted by the first end point device at the maximum transmission rate and highest transmission power level, and wherein the target gateway is the single gateway from among the plurality of gateways which is able to receive data transmitted by the first end point device at the maximum transmission rate and a determined reduced transmission power level to be used for subsequent application data transmissions.

Method Embodiment 7 The method of Method Embodiment 6, wherein said subsequent application data transmissions are sensor measurement reports.

Method Embodiment 8 The method of Method Embodiment 6, wherein the target gateway is the single remaining gateway following one or more iterations of transmission power control training which eliminated the other gateways in the plurality of gateways.

Method Embodiment 9 The method of Method Embodiment 1, wherein the target gateway is a gateway specified by the first end point device or the control server (application server) when the first end point device is to operate in an associated mode of operation.

Method Embodiment 10 The method of Method Embodiment 1, further comprising: selecting (1212) at the control server, a gateway to be used for communications from the first end point device to the control server, said selected gateway being the target gateway.

Method Embodiment 11 The method of Method Embodiment 10, further comprising: receiving (1204,1206, or1208) at the control server, prior to selecting (1212) the gateway to be used for communications from the first end point device to the control server (218), an association request from the first end point device.

Method Embodiment 12 The method of Method Embodiment 11, wherein said association request (see step1206) indicates a requested gateway to be used for communications with said control server.

Method Embodiment 13 The method of Method Embodiment 1, wherein the method includes determining ((1250) or (1294)) that the training data was successfully received by at least one gateway in addition to a target gateway and sending ((1254) or (1300)) a command to the first end point device to reduce the transmit power level, the method further comprising: receiving at a control server, training data (second iteration of step1242or step1288) that was wirelessly transmitted at a reduced power level by the first end point device and received by one or more gateways (e.g., GW1102and/or GW2(204)) coupled to said control server (218); determining (second iteration of step1244or1290through the loop) whether the training data transmitted by the first end point device at the reduced power level was successfully received by the target gateway.

Method Embodiment 14 The method of Method Embodiment 13, further comprising: in response to determining that the training data transmitted by the first end point at the reduced power level was not successfully received by the target gateway (e.g., a no decision in step1244or1290during second iteration of loop), sending ((1552) or1298)) a command to the first end point device to increase the transmit power level.

Method Embodiment 15 The method of Method Embodiment 14, wherein said command to the end point device to increase the transmit power level also indicates that the end point device is to exit a power control training phase of operation or the method further includes the control server sending an exit power control training phase of operation command to the end point device.

Method Embodiment 16 The method of Method Embodiment 13, further comprising: in response to determining that the training data transmitted by the first end point at the reduced power level was successfully received by the target gateway, determining (step (1250) or (1294) performed e.g., during a second iteration of the loop) whether the training data transmitted at the reduced power level was successfully received by at least one gateway in addition to the target gateway.

Method Embodiment 17 The method of Method Embodiment 16, further comprising: in response to determining that the training data transmitted at the reduced power level was successfully received by at least one gateway in addition to the target gateway, sending (1254or1300) a command to the end point device to reduce the transmit power level.

Method Embodiment 18 The method of Method Embodiment 16, further comprising, in response to determining that the training data transmitted at the reduced power level was not successfully received by at least one gateway in addition to the target gateway, sending (1258or1304) a command to the end point device indicating that the current transmission power level is to be used for data transmissions.

Method Embodiment 19 The method of Method Embodiment 18, wherein said command to the end point device indicating that the current transmission power level is to be used for data transmissions further indicates that transmission power control training mode of operation has ended.

Method Embodiment 20 The method of Method Embodiment 1, wherein the first end point device is an Internet-of-Things (IoT) end point device.

Method Embodiment 21 The method of Method Embodiment 20, wherein said one or more gateways are IoT gateways.

Numbered List of Exemplary Apparatus Embodiments

Apparatus Embodiment 1 A control server (218or1400) comprising: a processor (1402) configured to: operate the control server to receive, at the control server, training data (1242or1288) that was wirelessly transmitted by a first end point device (e.g., EP device220) and received by one or more gateways (e.g., GW1202and/or GW2(204)) coupled to said control server (218); determine ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway (e.g., where the target gateway is either a selected gateway when in association mode or a gateway which can be reached by the lowest power transmission that can support the maximum transmission data rate, if the target gateway is the individual gateway which can support the maximum transmission data rate at the lowest power level if more than one gateway successful receives the training data at the maximum data rate than the training data was successfully received by an additional gateway if the identity of the target gateway is unknown since it has not yet been identified via power down operations); when it is determined that ((1250) or (1294)) the training data was successfully received by at least one gateway in addition to the target gateway, operate the control server to send ((1254) or (1300)) a command to the first end point device to reduce the transmit power level (e.g., by a predetermined amount such as 1.5 dB or some other amount, e.g., 2 dB); and when it is determined that ((1250) or (1294)) the training data was not successfully received by at least one gateway in addition to the target gateway, operate the control server to send ((1258) or (1304)) a command to the first end point device to indicate that training (e.g., transmit power control (TPC) training) has ended.

Apparatus Embodiment 2 The control server of Apparatus Embodiment 1, wherein said processor is further configured to: operate the control server (218) to send ((1238) or (1284)) a command to the first end point device (e.g., EP device220) to transmit training data at a maximum transmission power level, prior to determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway.

Apparatus Embodiment 3 The control server of Apparatus Embodiment 2 wherein the command to the first end point also commands the end point to use a maximum transmission data rate.

Apparatus Embodiment 4 The control server of Apparatus Embodiment 2, wherein said processor determines (1244) that the training data was successfully received by the selected gateway, prior to determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway.

Apparatus Embodiment 5 The control server of Apparatus Embodiment 1, wherein the target gateway is a single individual gateway in the communications system capable of receiving data at the maximum transmission data rate using a lowest transmission power level that can successfully support the maximum transmission data rate given a current location of the first end point device.

Apparatus Embodiment 6 The control server of Apparatus Embodiment 1, wherein a plurality of gateways are able to receive data transmitted by the first end point device at the maximum transmission rate and highest transmission power level, and wherein the target gateway is the single gateway from among the plurality of gateways which is able to receive data transmitted by the first end point device at the maximum transmission rate and a determined reduced transmission power level to be used for subsequent application data transmissions.

Apparatus Embodiment 7 The control server of Apparatus Embodiment 6, wherein said subsequent application data transmissions are sensor measurement reports.

Apparatus Embodiment 8 The control server of Apparatus Embodiment 6, wherein the target gateway is the single remaining gateway following one or more iterations of transmission power control training which eliminated the other gateways in the plurality of gateways.

Apparatus Embodiment 9 The control server of Apparatus Embodiment 1, wherein the target gateway is a gateway specified by the first end point device or the control server (application server) when the first end point device is to operate in an associated mode of operation.

Apparatus Embodiment 10 The control server of Apparatus Embodiment 1, wherein said processor is further configured to: select (1212) at the control server, a gateway to be used for communications from the first end point device to the control server, said selected gateway being the target gateway.

Apparatus Embodiment 11 The control server of Apparatus Embodiment 10, wherein said processor is further configured to: operate the control server to receive (1204,1206, or1208) at the control server, prior to selecting (1212) the gateway to be used for communications from the first end point device to the control server (218), an association request from the first end point device.

Apparatus Embodiment 12 The control server of Apparatus Embodiment 11, wherein said association request (see step1206) indicates a requested gateway to be used for communications with said control server.

Apparatus Embodiment 13 The control server of Apparatus Embodiment 1, wherein the processor determines ((1250) or (1294)) that the training data was successfully received by at least one gateway in addition to a target gateway and operates the control server sending ((1254) or (1300)) a command to the first end point device to reduce the transmit power level, and wherein said processor is further configured to: operate the control server to receive at a control server, training data (second iteration of step1242or step1288) that was wirelessly transmitted at a reduced power level by the first end point device and received by one or more gateways (e.g., GW1102and/or GW2(204)) coupled to said control server (218); and determine (second iteration of step1244or1290through the loop) whether the training data transmitted by the first end point device at the reduced power level was successfully received by the target gateway.

Apparatus Embodiment 14 The control server of Apparatus Embodiment 13, wherein said processor is further configured to: in response to determining that the training data transmitted by the first end point at the reduced power level was not successfully received by the target gateway (e.g., a no decision in step1244or1290during second iteration of loop), operate the control server to send ((1552) or1298)) a command to the first end point device to increase the transmit power level.

Apparatus Embodiment 15 The control server of Apparatus Embodiment 14, wherein said command to the end point device to increase the transmit power level also indicates that the end point device is to exit a power control training phase of operation or the method further includes the control server sending an exit power control training phase of operation command to the end point device.

Apparatus Embodiment 16 The control server of Apparatus Embodiment 13, wherein said processor is further configured to: in response to determining that the training data transmitted by the first end point at the reduced power level was successfully received by the target gateway, determine (step (1250) or (1294) performed, e.g., during a second iteration of the loop) whether the training data transmitted at the reduced power level was successfully received by at least one gateway in addition to the target gateway.

Apparatus Embodiment 17 The control server of Apparatus Embodiment 16, wherein said processor is further configured to: in response to determining that the training data transmitted at the reduced power level was successfully received by at least one gateway in addition to the target gateway, operate the control server to send (1254or1300) a command to the end point device to reduce the transmit power level.

Apparatus Embodiment 18 The control server of Apparatus Embodiment 16, wherein said processor is further configured to, in response to determining that the training data transmitted at the reduced power level was not successfully received by at least one gateway in addition to the target gateway, operate the control server to send (1258or1304) a command to the end point device indicating that the current transmission power level is to be used for data transmissions.

Apparatus Embodiment 19 The control server of Apparatus Embodiment 18, wherein said command to the end point device indicating that the current transmission power level is to be used for data transmissions further indicates that transmission power control training mode of operation has ended.

Apparatus Embodiment 20 The control server of Apparatus Embodiment 1, wherein the first end point device is an Internet-of-Things (IoT) end point device.

Apparatus Embodiment 21 The control server of Apparatus Embodiment 20, wherein said one or more gateways are IoT gateways.

Numbered List of Exemplary Non-Transitory Computer Readable Medium Embodiments:

Non-Transitory Computer Readable Medium Embodiment 1 A non-transitory computer readable medium (1410) including computer executable instructions which when executed by a processor (1402) of a control server (1400) cause the control server (1400) to perform the steps of: receiving at a control server, training data (1242or1288) that was wirelessly transmitted by a first end point device (e.g., EP device220) and received by one or more gateways (e.g., GW1202and/or GW2(204)) coupled to said control server (218); determining ((1250) or (1294)) whether the training data was successfully received by at least one gateway in addition to a target gateway (e.g., where the target gateway is either a selected gateway when in association mode or a gateway which can be reached by the lowest power transmission that can support the maximum transmission data rate, if the target gateway is the individual gateway which can support the maximum transmission data rate at the lowest power level if more than one gateway successful receives the training data at the maximum data rate than the training data was successfully received by an additional gateway if the identity of the target gateway is unknown since it has not yet been identified via power down operations); when it is determined that ((1250) or (1294)) the training data was successfully received by at least one gateway in addition to the target gateway, sending ((1254) or (1300)) a command to the first end point device to reduce the transmit power level (e.g., by a predetermined amount such as 1.5 dB or some other amount, e.g., 2 dB); and when it is determined that ((1250) or (1294)) the training data was not successfully received by at least one gateway in addition to the target gateway, sending ((1258) or (1304)) a command to the first end point device to indicate that training (e.g., transmit power control (TPC) training) has ended.

Various embodiments are directed to apparatus, e.g., control servers such as application servers (ASs), network server, gateways such as IoT gateways, End Point (EP) devices such as EP IoT devices, e.g. EP IoT sensor or application devices, user devices such as a user equipment (UE) device, base stations, e.g. cellular base stations (macro cell base stations and small cell base stations) such as a eNB or gNB or ng-eNB, non-cellular network access points, e.g. WiFi APs, network nodes, mobility management entity (MME), home subscriber server (HSS), wireless local area network controller (WLC), gateways, e.g. S-GW, P-GW, S-GW/P-GW, an AMF device, servers, customer premises equipment devices, cable systems, non-cellular networks, cellular networks, service management systems, network nodes, gateways, cable headend/hubsites, network monitoring node/servers, cluster controllers, cloud nodes, production nodes, cloud services servers and/or network equipment devices. Various embodiments are also directed to methods, e.g., method of controlling and/or operating control servers such as application servers (ASs), network server, gateways such as IoT gateways, End Point (EP) devices such as EP IoT devices, e.g. EP IoT sensor or application devices user devices such as a user equipment (UE) device, base stations, e.g. cellular base stations (macro cell base stations and small cell base stations) such as a eNB or gNB or ng-eNB, non-cellular network access points, e.g. WiFi APs, network nodes, mobility management entity (MME), home subscriber server (HSS), wireless local area network controller (WLC), gateways, e.g. S-GW, P-GW, S-GW/P-GW, user devices, base stations, gateways, servers, cable networks, cloud networks, nodes, servers, cloud service servers, customer premises equipment devices, controllers, network monitoring nodes/servers and/or cable or network equipment devices. Various embodiments are also directed to methods, e.g., method of controlling and/or operating a communications system including EP devices, e.g. IoT EP devices, gateways, a network server, and a control server, e.g. an application server. Various embodiments are also directed to methods, e.g., method of operating a control server to associate and EP device with a particular gateway, establish an E2E communications path between an EP device and the control server, control TX power levels at EP devices and gateways, and manage loading and interference. Various embodiments are also directed to machine, e.g., computer, readable medium, e.g., ROM, RAM, CDs, hard discs, etc., which include machine readable instructions for controlling a machine to implement one or more steps of a method. The computer readable medium is, e.g., non-transitory computer readable medium.

Non-associated mode can be, and in various embodiments is, implemented without the need for end user devices to include any additional functionality, e.g., hardware functionality, or capabilities beyond that normally included in standard EP devices. This is because in non-associated mode, control, e.g., intelligence used to implemented the mode, is placed and implemented in the network server (NS or controller) thus allowing EP devices to obtain the benefits made possible by non-associated mode without requiring changes to EP devices.

It is understood that the specific order or hierarchy of steps in the processes and methods disclosed is an example of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes and methods may be rearranged while remaining within the scope of the present disclosure. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented. In some embodiments, one or more processors are used to carry out one or more steps of the each of the described methods.

In various embodiments each of the steps or elements of a method are implemented using one or more processors. In some embodiments, each of elements are steps are implemented using hardware circuitry.

In various embodiments nodes and/or elements described herein are implemented using one or more components to perform the steps corresponding to one or more methods, for example, message reception, message generation, signal generation, signal processing, sending, comparing, determining and/or transmission steps. Thus, in some embodiments various features are implemented using components or in some embodiments logic such as for example logic circuits. Such components may be implemented using software, hardware or a combination of software and hardware. Many of the above described methods or method steps can be implemented using machine executable instructions, such as software, included in a machine readable medium such as a memory device, e.g., RAM, floppy disk, etc. to control a machine, e.g., general purpose computer with or without additional hardware, to implement all or portions of the above described methods, e.g., in one or more nodes. Accordingly, among other things, various embodiments are directed to a machine-readable medium, e.g., a non-transitory computer readable medium, including machine executable instructions for causing a machine, e.g., processor and associated hardware, to perform one or more of the steps of the above-described method(s). Some embodiments are directed to a device, e.g. a control server such as application server (AS), a network server, a gateway such as an IoT gateway, an End Point (EP) device such as EP IoT device, e.g. EP IoT sensor or application device, a user device such as a user equipment (UE) device, base stations, e.g. cellular base station supporting NB-IoT (macro cell base station or small cell base station) such as a eNB or gNB or ng-eNB, non-cellular network access point supporting NB-IoT, e.g. WiFi AP supporting NB-IoT, network node, mobility management entity (MME) node, home subscriber server (HSS), wireless local area network controller (WLC), gateway, e.g. S-GW, P-GW, S-GW/P-GW, etc., said device including a processor configured to implement one, multiple or all of the steps of one or more methods of the invention.

In some embodiments, the processor or processors, e.g., CPUs, of one or more devices, e.g., a control server such as application server (AS), network server, gateway such as IoT gateway, End Point (EP) device such as EP IoT device, e.g. EP IoT sensor or application device, user device such as a user equipment (UE) device, base stations, e.g. cellular base station supporting NB-IoT (macro cell base station or small cell base station) such as a eNB or gNB or ng-eNB, non-cellular network access point supporting NB-IoT, e.g. WiFi AP supporting NB-IoT, network node, mobility management entity (MME) node, home subscriber server (HSS), wireless local area network controller (WLC), gateway, e.g. S-GW, P-GW, S-GW/P-GW, are configured to perform the steps of the methods described as being performed by the communications nodes, e.g., controllers. The configuration of the processor may be achieved by using one or more components, e.g., software components, to control processor configuration and/or by including hardware in the processor, e.g., hardware components, to perform the recited steps and/or control processor configuration. Accordingly, some but not all embodiments are directed to a device, e.g., communications node such as a control server such as application server (AS), network server, gateway such as an IoT gateway, End Point (EP) device such as EP IoT device, e.g. EP IoT sensor or application device, user device such as a user equipment (UE) device, base stations, e.g. cellular base station supporting NB-IoT (macro cell base station or small cell base station) such as a eNB or gNB or ng-eNB, non-cellular network access point supporting NB-IoT, e.g. WiFi AP supporting NB-IoT, network node, mobility management entity (MME) node, home subscriber server (HSS), wireless local area network controller (WLC), gateway, e.g. S-GW, P-GW, S-GW/P-GW, etc., includes a component corresponding to each of one or more of the steps of the various described methods performed by the device in which the processor is included. In some but not all embodiments a device, e.g., a control server such as application server (AS), network server, gateway such as IoT gateway, End Point (EP) device such as EP IoT device, e.g. EP IoT sensor or application device, user device such as a user equipment (UE) device, base stations, e.g. cellular base station supporting NB-IoT (macro cell base station or small cell base station) such as a eNB or gNB or ng-eNB, non-cellular network access point supporting NB-IoT, e.g. WiFi AP supporting NB-IoT, network node, mobility management entity (MME) node, home subscriber server (HSS), wireless local area network controller (WLC), gateway, e.g. S-GW, P-GW, S-GW/P-GW, etc., includes a controller corresponding to each of the steps of the various described methods performed by the device in which the processor is included. The components may be implemented using software and/or hardware.

Some embodiments are directed to a computer program product comprising a computer-readable medium, e.g., a non-transitory computer-readable medium, comprising code for causing a computer, or multiple computers, to implement various functions, steps, acts and/or operations, e.g. one or more steps described above.

Depending on the embodiment, the computer program product can, and sometimes does, include different code for each step to be performed. Thus, the computer program product may, and sometimes does, include code for each individual step of a method, e.g., a method of controlling a controller or node. The code may be in the form of machine, e.g., computer, executable instructions stored on a computer-readable medium, e.g., a non-transitory computer-readable medium, such as a RAM (Random Access Memory), ROM (Read Only Memory) or other type of storage device. In addition to being directed to a computer program product, some embodiments are directed to a processor configured to implement one or more of the various functions, steps, acts and/or operations of one or more methods described above. Accordingly, some embodiments are directed to a processor, e.g., CPU, configured to implement some or all of the steps of the methods described herein. The processor may be for use in, e.g., a communications device such as control server such as an application server (AS), network server, gateway such as IoT gateway, End Point (EP) device such as EP IoT device, e.g. EP IoT sensor or application device3, user device such as a user equipment (UE) device, base stations, e.g. cellular base station supporting NB-IoT (macro cell base station or small cell base station) such as a eNB or gNB or ng-eNB, non-cellular network access point supporting NB-IoT, e.g. WiFi AP supporting NB-IoT, network node, mobility management entity (MME) node, home subscriber server (HSS), wireless local area network controller (WLC), gateway, e.g. S-GW, P-GW, S-GW/P-GW, or other device described in the present application. In some embodiments components are implemented as hardware devices in such embodiments the components are hardware components. In other embodiments components may be implemented as software, e.g., a set of processor or computer executable instructions. Depending on the embodiment the components may be all hardware components, all software components, a combination of hardware and/or software or in some embodiments some components are hardware components while other components are software components.

Numerous additional variations on the methods and apparatus of the various embodiments described above will be apparent to those skilled in the art in view of the above description. Such variations are to be considered within the scope. Numerous additional embodiments, within the scope of the present invention, will be apparent to those of ordinary skill in the art in view of the above description and the claims which follow. Such variations are to be considered within the scope of the invention.