Our step-by-step guide to configure the reader to run Pareto Anywhere at the edge.
Learn how we at reelyActive configure the readers to make any physical space context-aware
A CSL CS463 reader.
Connect to the CS463 to configure its network settings.
Connect the CS463 to your computer with a network cable and then:
After logging in, from the left menu, select Network | Cloud Server | Add Cloud Server and enter the following configuration:
Parameter | Value |
---|---|
Server ID | Pareto Anywhere (local) |
Description | Pareto Anywhere open source middleware running on the CS463 itself |
Protocol | HTTP |
Path | http://127.0.0.1:3001/csl |
Click Add to save the configuration.
From the left menu, select Network | Cloud Server | Configuration, disable the Buffer Undeliverable Tag Data option* and then click Modify to save the configuration.
* this prevents stale data from being unnecessarily forwarded to the real-time middleware
The reader will require an Internet connection to install the middleware and its dependencies.
Configure either a WiFi or Ethernet connection, as below, ensuring that the computer can connect to the same network to complete the configuration.
From the left menu, select Network | WiFi Configuration and enter the WiFi credentials specific to your network, similar to the screenshot below.
Click Set to save the configuration. The CS463 will automatically initiate the connection.
From the left menu, select Status and scroll down to the Network Setting section. Note the WiFi IP address that has been assigned to the reader, as this will be required in Step 2 below.
From the left menu, select Network | Ethernet Configuration and enter the configuration specific to your network, similar to the screenshot below.
Click Set to save the configuration. The CS463 will adopt the new configuration on the next power cycle.
From the left menu, select Users | Logout, disconnect the network cable connecting your computer to the reader, and proceed to Step 2 below.
If the Ethernet option was selected above, connect the reader to the network and perform a power cycle.
Install Node.js, Pareto Anywhere and Node-RED from online repositories.
With your computer and the reader on the same network, complete the following:
ssh root@xxx.xxx.xxx.xxx
replacing the x values with the reader's new IP address on the network If you're still using the default password, this is as good a time as any to change it via the web interface.
From the same terminal , open a new file for editing with the command sudo nano /etc/yum.repos.d/csl-remote-repo.repo
and paste in the following contents:
[cslrepo] name=CSL Intelligent Reader Repository baseurl=http://repos01.convergence.com.hk/repo enabled=1 gpgcheck=0
Save the file with Ctrl+X and y.
Update the reader's repositories with the command dnf -v repolist all
From the same terminal , complete the following:
sudo dnf install node
sudo npm install -g --unsafe-perm node-red
First create a reelyActive folder under the home folder.
mkdir ~/reelyActive
cd ~/reelyActive
Next, install Pareto Anywhere under this folder.
git clone --recurse-submodules https://github.com/reelyactive/pareto-anywhere.git
cd pareto-anywhere
npm install
5 mins It is possible that some dependencies produce warnings or errors. Do not despair: in most cases these have no impact on functionality.
Read tags and relay the data to Pareto Anywhere.
From your computer browse to the reader (by entering its IP address on the network) and log in to complete the configuration using the web interface.
From the left menu, select Events | Resultant Action | Add Resultant Action and enter the following configuration:
Parameter | Value |
---|---|
Resultant Action ID | Send to Pareto Anywhere (local) |
Description | Relay data to Pareto Anywhere open source middleware running on the CS463 itself |
Condition | None |
Action Mode | Low Latency Alert to Server |
Transport Type | HTTP POST |
Server ID | Pareto Anywhere (local) |
Data Format ID | Example Tag Upload to Cloud Server Data Format |
Click Add to save the action.
From the left menu, select Events | Event Management | List Event and select Default Event from the Event Table. Update the configuration by changing the Resultant Action and selecting Event Enabled as follows:
Parameter | Value |
---|---|
Event ID | Default Event |
Description | Ex Factory Default Event |
Operation Profile | Default Profile |
Exclusivity | Non-exclusive |
Tag Duplicate Elimination Window | 1 second |
Tag Duplicate Eliminate Antenna Differentiation | Disabled |
Inventory Enabling Trigger | Always On |
Inventory Enabling Action | None THEN None |
Trigger Logic | Read Any Tags |
Resultant Action | Send to Pareto Anywhere (local) THEN None |
Inventory Disabling Trigger | Never Stop |
Inventory Disabling Action | None THEN None |
Event Enabled | Enabled |
Click Modify to save the event configuration.
The Default Profile for operation will read tags on Antenna Port 1 only: edit the profile as required.
From the left menu, select System | Operation Profile | List Profile and select Default Profile from the Operation Profile table.
If the only modification is to add Antenna Ports as Capture Points, then it is reasonable to simply update the Default Profile.
However, if additional modifications are required, we recommend creating a new Operation Profile. After creating a new profile, repeat Part 2 above for the Default Event to use the newly created Operation Profile.
Run Pareto Anywhere and Node-RED to observe tag data.
This step will be documented once the CS463 supports an updated version of Node.js.
Our cheatsheet details the raddec JSON output from the Pareto Anywhere open source middleware.
Configure a systemd service to run Pareto Anywhere and Node-RED each time the CS463 boots.
This step will be documented once the CS463 supports an updated version of Node.js.
Tutorial prepared with ♥ by jeffyactive.
You can reelyActive's open source efforts directly by contributing code & docs, collectively by sharing across your network, and commercially through our packages.Continue exploring our open architecture and all its applications.