Power gain and sensitivity

When configuring a node and a network, one important parameter is related with power gain and sensitivity.

Power level

Power level (dBm) at which the module transmits conducted power.

The possible values are Low ('L'), High ('H') and Max ('M'):

Parameter

SX1272 power level

'L'

0 dBm

'H'

7 dBm

'M'

14 dBm

Figure: Transmission power values

It is also possible to set the conducted power indicating the quantity as a parameter in the function setPower.

Note: dBm is a standard unit to measure power level taking as reference a 1 mW signal.

Values expressed in dBm can be easily converted to mW using the next formula:

mW=10(valuedBm/10)mW = 10^{(value dBm/10)}

Graphic about transmission power is exposed next:

Figure: SX1272 output power level

Example of use:

{
sx1272.setPower(0); // Set Power Output Level to the minimum value
sx1272.getPower(); // Get Power Output Level
}

Related variables:

sx1272._power → stores the selected power output level

Note: It is the responsibility of the users to know the maximum allowed power level in their country (if any), and use levels below it. Ignoring this could lead to considerable penalties.

RSSI of one packet and RSSI of the channel

It reports the Received Signal Strength of the last received packet and the current value of the Received Signal Strength in the selected channel. The RSSI of the packet is the meaningful one: if its value is greater than the sensitivity the packet sent is going to be successfully detected, otherwise the packet will be lost. The RSSI of the channel reports the signal level detected in every moment, even if it is not signal being transmitted, so it provides also noise level information. In the case the user develops a multi-hop network, this parameters only indicate the signal strength of the last hop, so it does not provide an accurate quality measurement of a multihop link.

Example of use:

{
sx1272.getRSSIpacket(); // Get the Receive Signal Strength Indicator
sx1272.getRSSI(); // Get the current Receive Signal Strength Indicator
}

Related variables:

sx1272._RSSIpacket → stores the RSSI of the last received packet

sx1272._RSSI → stores the current RSSI value

SX1272 RSSI example:

The ideal working mode is at getting maximum coverage with the minimum power level. Thereby, a compromise between power level and coverage appears. Each application scenario will need some tests to find the best combination of both parameters.

SNR

It reports the Signal-to-Noise Ratio of the last received packet. The LoRa module is capable to demodulate received signals with SNR values as low as -20 dB. Getting the SNR, it is possible to have an idea about the link\'s quality or health, and thus the additional distance we could get in a communication link.

Example of use:

{
sx1272.getSNR(); // Get the Signal Noise Ratio
}

Related variables:

sx1272._SNR → stores the SNR of the last received packet

SX1272 RSSI example: