How to use an Impinj R700 Reader with a USB WiFi Adapter

This article will walk you through how to configure an Impinj R700 reader to use a USB Wi-Fi Adapter. In this case, we will walk through an example using the Panda PAU06 USB Wi-Fi Adapter unit to provide networking to an Impinj R700 Reader.

The Impinj R700 currently supports WiFi devices using the Ralink RT2870. Impinj has tested the following models of WiFi adapters and confirmed they work properly with the Impinj R700 reader.

1. Panda PAU06 (Link for reference, not endorsed or sponsored)
2. Detroit DIY USB Wi-Fi Adapter for Raspberry Pi (Link for reference, not endorsed or sponsored).


Once you have a compatible USB Wi-Fi device, please follow the steps below.


1. Connect the Supported USB Wi-Fi Adapter:

The Impinj R700 Reader features three type A host USB 2.1 ports on the back side of the unit. You will want to ensure your USB Wi-Fi adapter uses the above-mentioned chipset, and physically plug into one of USB ports on the back of the Impinj R700 Reader.

 

2. Ensure the Impinj R700 Reader is Running Compatible Firmware:

In order to use the USB Wi-Fi adapters mentioned above, the Impinj R700 Reader will need to be running at least Impinj R700 firmware version 7.4.0, though it is always recommended to be on the latest available version. You can check the current installed firmware version by issuing the following RShell command and checking the 'PrimaryImageSystemVersion':

> show image summary
Status='0,Success'
UpgradeStatus='Ready'
PrimaryImageType='10'
PrimaryImageState='Active'
PrimaryImageSystemVersion='7.4.0.14'
PrimaryImageConfigVersion='255.255.255.255'
SecondaryImageType='10'
SecondaryImageState='Active'
SecondaryImageSystemVersion='7.4.0.14'
SecondaryImageConfigVersion='255.255.255.255'

Note: If running a version prior to 7.4.0, you will see the following error in RShell when attempting to configure:

> config network interface primary wlan
Status='15,Incompatible-With-Enabled-Feature'

 

3. Connect to the Impinj R700 Reader's RShell Interface

In order to configure the reader to use this USB Wi-Fi device, you will need to make some changes through the reader's RShell interface. The RShell interface can be accessed by either connecting to the reader via SSH (with Ethernet cable connected either to PC or shared router), or directly connecting to the reader through the microUSB connection on the backside of the reader and using a serial connection.

As we will be changing the active networking configuration from Ethernet to WLAN, and need to maintain consistent access to RShell, we only support using a serial connection when configuring these network settings.


When connecting to the reader's RShell interface, it will ask for a username and password. By default, these values should be set to the following:

User: root
Password: impinj


4. Ensure the Reader is Configured to use PoE+ Power:

In order to use the WLAN functionality on the reader, you will need to ensure the reader is configured to use PoE+ as a power source, rather than just PoE. To configure the reader to use PoE+, you can issue the following RShell command, which will then require a reboot after for changes to take affect:

> config system power source PoE+
Status='0,Success'
> reboot
Status='0,Success'

After rebooting the reader, you should be able to confirm it is using the PoE+ source by checking the RShell command:

> show system power
Status='0,Success'
ServiceEnabled='False'
NegotiationTimeout='20000'
PoePlusRequired='False'
NegotiationState='Unknown'
RequiredPowerAvailable='AssumedTrue'
RequestedPower='0'
AllocatedPower='0'
PowerSource='PoE+'

 

Note: If you try applying newly configured WLAN settings while running on PoE instead of PoE+, you will receive the following errors:

> config network wlan commit
Status='8,Permission-Denied'
FeatureStatus='NotSupportedOnPoE'

 

5. Configure the Active Network Interface to WLAN:

In order to make any changes to the WLAN interface, you will first need to set the active network interface to WLAN. By default, the active network interface will be set to Ethernet, so in order to change it, issue the following RShell command:

 > config network interface active wlan
Status='0,Success'

You can then confirm it has been set correctly by viewing the output of the command:

> show network summary
Status='0,Success'
PrimaryInterface='eth:eth0'
ActiveInterface='wlan:wlan0'
Hostname='impinj-13-f9-20'
connectionStatus='AdminDown'
ipAddressMode='Dynamic'
HTTPService='active'
HTTPSService='inactive'

Note: As the WLAN is not configured with the correct settings, the connection is not able to resolve, prompting the AdminDown ConnectionStatus. This will be resolved once you configure the proper WLAN settings.

If the active network interface is not set to WLAN when attempting to configure the adapter settings, you will see an error pointing to the interface status being set to inactive:

> config network wlan ssid "test"
Status='8,Permission-Denied'
InterfaceStatus='inactive'

6. Configure the WLAN Settings:

You will now need to provide the proper settings and credentials to the reader's WLAN configuration. Please configure the following two fields: ssid and psk.

These parameters are explained in our RShell Reference Manual with the following information:

Command Argument Format Description
ssid <ssid> string Set the WiFi SSID, up to 32 characters
psk <preshared-key> string Set the preshared key used for WPA/WPA2 secured connection. Must be between 8 and 32 characters inclusive
commit NA NA Save the parameters entered into persistent storage without applying them
quit NA NA Discard the parameters entered.


More information on the WLAN configuration can be found in the RShell Reference Manual available here.

 

To help with configuring these parameters, it can be useful to see a list of available SSIDs. To get a list with reachable SSIDs, we can use the "show network wlan scanlist" command. An example of the output response when three different networks are scanned is shown below:

 > show network wlan scanlist
Status='0,Success'
s_aNetTypeIdxFmt
SSID0='test_wifi1'
BSSID0='2C:6E:81:F1:EC:97'
Security0='WPA2'
s_aNetTypeIdxFmt
SSID1='test_wifi2'
BSSID1='60:3D:22:B3:CC:D3'
Security1='WPA2'
s_aNetTypeIdxFmt
SSID2='xfinitywifi'
BSSID2='3E:7E:81:F1:EF:97'
Security2='NONE'


I would want to configure these in RShell, with the following commands:

>config network wlan ssid <Wi-Fi SSID>
>config network wlan psk <Wi-Fi password/key>

In my case, I am using the WPA2 network with an SSID of 'test_wifi1', from the output above. In the example below, I configure my reader to use this test network:


> config network wlan ssid "test_wifi1"
Status='0,Success'
SSID='test_wifi1'
PSK='******'

> config network wlan psk "my_password"
Status='0,Success'
SSID='test_wifi1'
PSK='******'

Note: When running a reader with Octane Firmware 7.4.0/7.4.1, the RShell configuration will list two additional parameters, "keymgmt" and "encrypt". These parameters do not need to be configured manually during this step of the configuration, as they are now configured automatically.  These two parameters have been removed in future firmware releases, as to reduce confusion. On all firmware versions, only the "SSID" and "PSK" parameters are needed to be specified when configuring the WLAN settings.

Now that these settings are input, we will need to complete the process by applying the reader settings. This is shown in the next step.

7. Apply the WLAN Configuration

To use these newly applied settings, you will need to update the applied WLAN configuration. To do this, run the RShell command:

> config network wlan commit
Status='0,Success'
SSID='test_wifi1'
PSK='******'


You can then confirm that the connection is successful by ensuring a successful status return from the RShell command:

> show network wlan summary
Status='0,Success'
connectionStatus='Connected'
SSID='test_wifi1'
PSK='XXXXXXXX'
MyMACAddress='2C:6E:81:F1:EC:97'

It is crucial to use the above-mentioned commit command in order for the newly configured WLAN settings to take affect.

8. Set WLAN Interface to Primary

If you would like to always use the WLAN interface at boot-up, rather than Ethernet, please change the primary interface with RShell command:

> config network interface primary wlan
Status='0,Success'

You can then confirm the settings are applied correctly by checking the following RShell command:

> show network summary
Status='0,Success'
PrimaryInterface='wlan:wlan0'
ActiveInterface='wlan:wlan0'
Hostname='impinj-13-f9-20'
connectionStatus='Connected'
ipAddressMode='Dynamic'
ipAddress='192.168.1.17'
ipMask='255.255.255.0'
broadcastAddress='192.168.1.255'
gatewayAddress='192.168.1.1'
MACAddress='9C:EF:D5:FB:EB:1C'
Connectivity='FULL'
HTTPService='active'
HTTPSService='inactive'

This should complete the configuration process for your USB Wi-Fi Adapter.

 

Additional Notes:

  • The reader will automatically reconnect to the Wi-Fi network, should the connection be lost or go down.
  • After following the steps in this guide, you can use the following commands to change the networking interface back to Ethernet:

    >config network interface active eth
    >config network interface primary eth
    >reboot

The WLAN settings previously configured (SSID and PSK) will stay set, but not used as the WLAN interface is inactive. You can change the interface (while using a microUSB connection) back to WLAN and see these settings persist.

 

 

 

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

Comments

0 comments

Article is closed for comments.