Welcome To Our Support Portal

Browse Impinj resources for help with FAQ, downloads, quick links, and more.


Submit a request

Setting Receive Sensitivity and Transmit Power on Revolution Reader using LLRP

Follow


One of the most common questions is how to set the Receive Sensitivity and Transmit Power settings.

These are both configured in SET_READER_CONFIG class in the AntennaConfiguration message as shown in the C# code sample below.  Please note that if you specify antenna transmit power and receive sensitivity in the AI Spec of your AddROSpec code, this will override those settings in the Set_Reader_Config.

Note that Receive Sensitivity and Transmit Power can be set independently on each antenna port of the reader. In this example we are configuring all of them the same by using the value [0].

Setting Receive Sensitivity

If we query the capabilities of the reader using the RShell command "Show RFID LLRP Capabilities", we can see the Receive Sensitivity Table, part of which is shown here:

<ReceiveSensitivityTableEntry>
<Index>1</Index>
<ReceiveSensitivityValue>0</ReceiveSensitivityValue>
</ReceiveSensitivityTableEntry>
<ReceiveSensitivityTableEntry>
<Index>2</Index>
<ReceiveSensitivityValue>10</ReceiveSensitivityValue>
</ReceiveSensitivityTableEntry>
<ReceiveSensitivityTableEntry>
<Index>3</Index>
<ReceiveSensitivityValue>11</ReceiveSensitivityValue>
</ReceiveSensitivityTableEntry>

 

For receive sensitivity, you calculate the actual sensitivity setting on the reader by adding the ReceiveSensitivityValue to -80dBm (the lowest, most sensitive setting).


Example…
An Index setting of ‘1’ = a ReceiveSensitivityValue of '0' which = -80dBm
An index of ‘2’ = a ReceiveSensitivityValue of '10' which = -70dBm (10 + (-80))
This continues on in 1dB steps from there (i.e. Index ‘3’ = 11 = -69dBm)
up to index 42 = ReceiveSensitivityvalue of 50 = -30dBm (the highest, least sensitive setting).

Setting Transmit Power

Transmit power is a little more straightforward, each index = a TransmitPowerValue which is read out as dBm (when divided by 100).
 
<TransmitPowerLevelTableEntry>
<Index>1</Index>
<TransmitPowerValue>1000</TransmitPowerValue>
</TransmitPowerLevelTableEntry>
<TransmitPowerLevelTableEntry>
<Index>2</Index>
<TransmitPowerValue>1025</TransmitPowerValue>
</TransmitPowerLevelTableEntry>
<TransmitPowerLevelTableEntry>
<Index>3</Index>
<TransmitPowerValue>1050</TransmitPowerValue>
</TransmitPowerLevelTableEntry>
Example…
An index setting of ‘1’ = TransmitPowerValue of 1000 or +10.00 dBm (the lowest transmit power on the Revolution reader). Each step in the index table increases the transmit power value by 0.25dB up to the max power of 32.5dBm (= index ‘91’) if using external power supply.

NOTE: Max power when using Power over Ethernet (PoE) is +30dBm (index of 81).
 
msg.AntennaConfiguration = new PARAM_AntennaConfiguration[1];
msg.AntennaConfiguration[0] = new PARAM_AntennaConfiguration();
msg.AntennaConfiguration[0].AirProtocolInventoryCommandSettings = new
UNION_AirProtocolInventoryCommandSettings();
 
msg.AntennaConfiguration[0].AirProtocolInventoryCommandSettings.Add(cmd);
msg.AntennaConfiguration[0].AntennaID = 0;
 
msg.AntennaConfiguration[0].RFReceiver = new PARAM_RFReceiver();
// Receiver sensitivity
msg.AntennaConfiguration[0].RFReceiver.ReceiverSensitivity = 1;
 
msg.AntennaConfiguration[0].RFTransmitter = new PARAM_RFTransmitter();
msg.AntennaConfiguration[0].RFTransmitter.ChannelIndex = 1;
msg.AntennaConfiguration[0].RFTransmitter.HopTableID = 1;
// Transmit power
msg.AntennaConfiguration[0].RFTransmitter.TransmitPower = 61;

Was this article helpful?
0 out of 0 found this helpful

Comments

Impinj (NASDAQ: PI) wirelessly connects billions of everyday items such as apparel, medical supplies, and automobile parts to consumer and business applications such as inventory management, patient safety, and asset tracking. The Impinj platform uses RAIN RFID, delivering information about items to the digital world and enabling the Internet of Things.