Difference between revisions of "Edge Sense LoRa GW Solution"

From ESS-WIKI
Jump to: navigation, search
(edit)
 
(.)
 
(270 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<span style="font-size:xx-large;">Release</span>
+
= Introduction =
  
*0.0.1 (for GBLM demo)
+
An IoT total solution, mainly composed of UTX-3117 gateway/EIS-D210 gateway, RYLR89D Lora demo board and WISE-PaaS.
 +
 
 +
= LoRa GW Solution =
 +
 
 +
<span style="color:#FF0000;">Notice: EdgeSense LoRa GW Solution not support LoRaWAN</span>
 +
 
 +
Support OS
 +
 
 +
*Ubuntu 16.04
 +
*Windows 10
 +
 
 +
Topology:
 +
 
 +
[[File:LoRaMgt ryx topylogy.jpg|RTENOTITLE]]
 +
 
 +
== Gateway Support Lists ==
 +
 
 +
*[http://www.advantech.tw/products/bda911fe-28bc-4171-aed3-67f76f6a12c8/utx-3117/mod_9a201cd3-1416-4282-9fc4-de8ca1e6bcbc UTX-3117]
 +
*[http://www.advantech.tw/products/071c0784-5e9b-4bb8-bb07-2cb06da757a1/eis-d210/mod_5e343ae5-0935-4a82-8cf4-cd0a30ec7d5b EIS-D210]
 +
 
 +
== Support Node ==
 +
 
 +
node type #1<br/>Sensor:Temperature , Humidity , LED x 5 , ADC , Relay x 4 , Input x 4<br/><span style="color:#FF0000;">(NOTE:SW 1.0.0 only support&nbsp;Temperature , Humidity , LED x 5 , ADC)</span><br/><span style="color:#FF0000;">(NOTE:Relay x 4, Input x4 need to running SW 1.0.1-rc1 above, but&nbsp;not yet testing)</span><br/>[[File:LoRaMgt ryx nodetype1.jpg|RTENOTITLE]]
 +
 
 +
<br/>node type #2<br/>Sensor:Temperature , Humidity , CO2<br/><span style="color:#FF0000;">(NOTE:SW 1.0.0 support CO2 , but CO2 sensor not yet testing)</span>
 +
 
 +
[[File:LoRaMgt ryx nodetype2.jpg|RTENOTITLE]]
 +
 
 +
node type #3<br/>Sensor:GPS<br/><span style="color:#FF0000;">(NOTE:This node type and GPS&nbsp;sensor need to running SW 1.0.1-rc1 above, but&nbsp;not yet testing)</span>
 +
 
 +
<span style="color:#FF0000;">[[File:LoRaMgt ryx nodetype3.jpg|RTENOTITLE]]</span>
 +
 
 +
== Software Stack ==
 +
 
 +
[[File:LoRaMgt ryx software stack.jpg|RTENOTITLE]]
 +
 
 +
= How to =
 +
 
 +
== Software Requirements ==
 +
 
 +
*Driver for USB to UART Bridge Controller , (only Windows need this)
 +
*Microsoft Visual C++ 2015 Redistributable ,&nbsp;(only Windows need this)&nbsp;
 +
*MQTT broker
 +
*[[WISE-PaaS/RMM_Agent|RMM 3.3 Agent]]&nbsp;or EI Agent
 +
*uartmgr
 +
*API-GW
 +
 
 +
== LoRa Module Firmware Upgrade ==
 +
 
 +
*Refer to [[Edge_Sense_LoRa_Module_Firmware_Upgrade|this wiki]]
 +
 
 +
== LoRa Module setting ==
 +
 
 +
After upgrade RYLRxxH mini PCIe board and RYLRxx6 demo board, need to config via AT Command.
 +
 
 +
Make sure these setting is correct for your environment.
 +
 
 +
*Firmware Version
 +
*Band
 +
*Address
 +
*Network ID
 +
 
 +
Firmware Version
 +
 
 +
*To query Firmware Version , issue AT Command <span style="color:#0000FF;">AT+VER?</span>&nbsp;&nbsp;.&nbsp;Then, receive AT Command ex:&nbsp;<span style="color:#0000FF;">+VER=RYLRxxP_V0.1.28</span>
 +
 
 +
Band
 +
 
 +
*To query Band, issue AT Command&nbsp;<span style="color:#0000FF;">AT+BAND?</span> .&nbsp;Then, receive AT Command ex:&nbsp;<span style="color:#0000FF;">+BAND=TW</span>
 +
*To change Band, issue AT Command <span style="color:#0000FF;">AT+BAND=YOUR_OPTION</span>&nbsp;, ex: <span style="color:#0000FF;">AT+BAND=JP</span>
 +
*Detailed option, please see&nbsp;[[#Configuration|Configuration]].
 +
 
 +
Address
 +
 
 +
*To query Address, issue AT Command&nbsp;<span style="color:#0000FF;">AT+ADDRESS?</span> .&nbsp;Then, receive AT Command ex:&nbsp;<span style="color:#0000FF;">+ADDRESS=1</span>
 +
*To change Address, issue AT Command <span style="color:#0000FF;">AT+ADDRESS=ADDRESS_YOU_WANT</span>&nbsp;, ex: <span style="color:#0000FF;">AT+ADDRESS=23</span>
 +
*Detailed option, please see&nbsp;[[#Configuration|Configuration]].
 +
 
 +
Network ID
 +
 
 +
*To query Network ID, issue AT Command&nbsp;<span style="color:#0000FF;">AT+NETWORKID?</span>&nbsp;&nbsp;.&nbsp;Then, receive AT Command ex:&nbsp;<span style="color:#0000FF;">+NETWORKID=3</span>
 +
*To change Network ID, issue AT Command <span style="color:#0000FF;">AT+NETWORKID=NETWORK_ID_YOU_WANT</span>&nbsp;, ex: <span style="color:#0000FF;">AT+NETWORKID=5</span>
 +
*Detailed option, please see&nbsp;[[#Configuration|Configuration]].
 +
 
 +
== Software Installation for Windows 10 ==
 +
 
 +
<span style="color:#FF0000;">NOTE: Please wire the gateway&nbsp;to&nbsp;Internet with Network cable before install.</span>
 +
 
 +
Install Steps
 +
 
 +
#Install [[#Driver_for_USB_to_UART_Bridge_Controller|Driver for USB to UART Bridge Controller]]
 +
#Install&nbsp;[https://www.microsoft.com/en-us/download/details.aspx?id=53587 Microsoft Visual C++ 2015 Redistributable]&nbsp;for x86
 +
#Install MQTT Broker
 +
#Install uartmgr
 +
#Install&nbsp;API-GW
 +
#Install&nbsp;LoRaMgt_ryx , edit config, then restart service.
 +
#Install&nbsp;RMM 3.3 Agent (v3.3.29&nbsp;above) or EI&nbsp;Agent
 +
 
 +
Uninstall Steps
 +
 
 +
*Select the Start button, then select Settings > Apps. Choose the program&nbsp;you want to remove, and then select Uninstall.
 +
 
 +
#RMM 3.3 Agent or EI Agent
 +
#​LoRaMgt_ryx
 +
#API-GW
 +
#uartmgr
 +
#MQTT Broker
 +
 
 +
== Software Installation for Ubuntu 16.04 ==
 +
 
 +
Install Steps
 +
 
 +
#Install OS - [http://releases.ubuntu.com/16.04/ Ubuntu 16.04]&nbsp;(ex: ubuntu-16.04.5-desktop-amd64.iso)
 +
#Install MQTT Broker
 +
#Install uartmgr
 +
#Install&nbsp;API-GW
 +
#Install&nbsp;LoRaMgt_ryx , edit config, then restart service.
 +
#Install&nbsp;RMM 3.3 Agent&nbsp;(v3.3.29&nbsp;above) o EI Agent
 +
<pre>$ sudo chmod +x MQTTBrokerSetup-1.0.5-Ubuntu_16.04-x86_64.run
 +
$ sudo chmod +x uartmgr-1.0.3-Ubuntu_16.04-x86_64.run
 +
$ sudo chmod +x API-GW-2.0.7-Ubuntu_16.04-x86_64.run
 +
$ sudo chmod +x LoRaMgt_ryx-1.0.3-Ubuntu_16.04-x86_64.run
 +
$ sudo chmod +x rmmagent-Ubuntu 16.04.5 LTS x86_64-1.1.3.0.run
 +
$ sudo ./MQTTBrokerSetup-1.0.5-Ubuntu_16.04-x86_64.run
 +
$ sudo ./uartmgr-1.0.3-Ubuntu_16.04-x86_64.run
 +
$ sudo ./API-GW-2.0.7-Ubuntu_16.04-x86_64.run
 +
$ sudo ./LoRaMgt_ryx-1.0.3-Ubuntu_16.04-x86_64.run
 +
$ sudo ./rmmagent-Ubuntu 16.04.5 LTS x86_64-1.1.3.0.run
 +
</pre>
 +
 
 +
<span style="color:#FF0000;">NOTE: Please wire the gateway&nbsp;to&nbsp;Internet with Network cable before install, it is necessary to install the dependencies.&nbsp;</span>
 +
 
 +
Uninstall Steps
 +
 
 +
To uninstall RMM 3.3 Agent or EI Agent
 +
<pre>$ sudo /usr/local/AgentService/uninstall.sh</pre>
 +
 
 +
To uninstall LoRaMgt_ryx
 +
<pre>$ sudo /usr/local/EdgeSense/LoRaMgt_ryx/uninstall.bash</pre>
 +
 
 +
To uninstall API-GW
 +
<pre>$ sudo /usr/local/EdgeSense/API-GW/uninstall.bash</pre>
 +
 
 +
To uninstall uartmgr
 +
<pre>$ sudo /usr/local/EdgeSense/uartmgr/uninstall.bash</pre>
 +
 
 +
to uninstall MQTT Broker
 +
<pre>$ sudo /usr/local/EdgeSense/MQTTBroker/uninstall.bash</pre>
 +
 
 +
== Configuration ==
 +
 
 +
In Windows 10
 +
 
 +
*You can edit&nbsp;C:\Program Files (x86)\Advantech\LoRaMgt_ryx\settings.ini to change setting.
 +
*Once config is changed, please using Windows Services Manager to restart LoRaMgt_ryx service.
 +
 
 +
In Ubuntu 16.04
 +
 
 +
*You can edit&nbsp;/usr/local/EdgeSense/LoRaMgt_ryx/settings.ini&nbsp;to change setting.
 +
**You can execute "<span style="color:#0000FF;">sudo vi&nbsp;/usr/local/EdgeSense/LoRaMgt_ryx/settings.ini</span>" command in Ubuntu terminal to modify config.
 +
**Also you can use gedit to edit file, command is "<span style="color:#0000FF;">sudo gedit /usr/local/EdgeSense/LoRaMgt_ryx/settings.ini</span>"&nbsp;
 +
*Once config is changed , please execute "<span style="color:#0000FF;">sudo systemctl restart LoRaMgt_ryx.service</span>" to restart service&nbsp;in order to&nbsp;apply new setting.
 +
 
 +
Setting File example:
 +
 
 +
{| border="1" cellspacing="1" cellpadding="1" style="width:500px;"
 +
|-
 +
|
 +
[gateway]<br/>node_num=2<br/>polling_rate=20
 +
 
 +
[rf]<br/>band=TW<br/>hostaddr=1<br/>networkid=0<br/>crfop1=15<br/>crfop2=15<br/><br/>[node-1]<br/>addr=8<br/>nodetype=1
 +
 
 +
[node-2]<br/>addr=69<br/>nodetype=1
 +
 
 +
|}
 +
 
 +
node_num
 +
 
 +
*Support maxinum 4&nbsp;nodes
 +
 
 +
polling_rate
 +
 
 +
*range from 5&nbsp;to 3600 second,&nbsp;default value is 20 second
 +
*If setting is greater than maximum value or is less than minimum value, it will use default value.
 +
 
 +
band
 +
 
 +
*option&nbsp;:&nbsp;
 +
**'''TW'''&nbsp; - for Taiwan
 +
**'''JP''' - for Japan
 +
**'''KR''' - for Korea
 +
**'''US''' - for US
 +
 
 +
hostaddr
 +
 
 +
*Assign address for LoRa Host (LoRa pcie module inside gateway)
 +
*hostaddr is needed to be 1
 +
 
 +
networkid
 +
 
 +
*Network ID, default is 0
 +
*<span style="color:#FF0000;">NOTE:In firmware RYLRxxP_V0.1.22, range from 0 to 5</span>
 +
*<span style="color:#FF0000;">NOTE:In firmware RYLRxxP_V0.2.23 and above, range from 0 to 11</span>
 +
 
 +
crfop1 / crfop2
 +
 
 +
*LoRa module&nbsp;power , range from 0 to 15 dBm
 +
 
 +
addr:
 +
 
 +
*address for LoRa Node , range from 2 to 65000
 +
 
 +
notetype:
 +
 
 +
*nodetype=1&nbsp;:&nbsp;temperature + humidity + output x 5 + adc + relay x 4 + input x 4
 +
*nodetype=2&nbsp;: temperature + humidity + co2
 +
*nodetype=3&nbsp;: GPS
 +
 
 +
== Downlink for sensor ==
 +
 
 +
'''Relay'''
 +
 
 +
Node Type#1 have 4 Normally Close type of Relay.
 +
 
 +
When relay is triggered to On status in WISE-PaaS, relay contact&nbsp;is open.
 +
 
 +
When relay is triggered to Off&nbsp;status in WISE-PaaS, relay contact is close.
 +
 
 +
== Service control ==
 +
 
 +
'''In Windows'''
 +
 
 +
Check if ​LoRaMgt_ryx service is running:
 +
 
 +
*Use Service to check status of ​LoRaMgt_ryx service
 +
 
 +
Restart ​LoRaMgt_ryx service:
 +
 
 +
*Use Service to restart ​LoRaMgt_ryx service
 +
 
 +
Start ​LoRaMgt_ryx service:
 +
 
 +
*Use Service start ​LoRaMgt_ryx service
 +
 
 +
Stop ​LoRaMgt_ryx service:
 +
 
 +
*Use Service stop ​LoRaMgt_ryx service
 +
 
 +
'''In Ubuntu'''
 +
 
 +
Check if ​LoRaMgt_ryx service is running:
 +
<pre>$ sudo systemctl status LoRaMgt_ryx.service
 +
</pre>
 +
 
 +
Restart ​LoRaMgt_ryx service:
 +
<pre>$ sudo systemctl restart LoRaMgt_ryx.service
 +
</pre>
 +
 
 +
Start ​LoRaMgt_ryx service:
 +
<pre>$ sudo systemctl start LoRaMgt_ryx.service
 +
</pre>
 +
 
 +
Stop ​LoRaMgt_ryx service:
 +
<pre>$ sudo systemctl stop LoRaMgt_ryx.service
 +
</pre>
 +
 
 +
= Tools =
 +
 
 +
== Driver for USB to UART Bridge Controller ==
 +
 
 +
In Windows, please use&nbsp;Device Manager to check if Devicer&nbsp;for&nbsp;USB to UART Bridge Controller is installed.
 +
 
 +
If your Device Manager does not recognize a CP2102 USB&nbsp;to UART Bridge Controller, you have to install its driver.
 +
 
 +
Please visit&nbsp;[https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers]&nbsp;and download driver, then install it.
 +
 
 +
[[File:LoRaMgt ryx uart driver 1.jpg|RTENOTITLE]]
 +
 
 +
After installing driver, Device Manage will look like this picture
 +
 
 +
[[File:LoRaMgt ryx uart driver 2.jpg|RTENOTITLE]]
 +
 
 +
 
 +
 
 +
== Reyax AT Command Demo Script ==
 +
 
 +
This demo script is a simple bash script, aim to provide a preliminary understanding about Reyax At Command.
 +
 
 +
This Script only support Ubuntu 16.04.
 +
 
 +
Script version&nbsp;: 0.3-beta
 +
 
 +
Support Reyax firmware version&nbsp;: RYLRxxP_V0.1.22
 +
 
 +
Support&nbsp;Lora Proprietary Command Set&nbsp;: V0.97
 +
 
 +
Download
 +
 
 +
*This demo script is available at&nbsp;[[Media:Reyax-atcmd-demo.bash.tar.gz|Reyax-atcmd-demo.bash.tar.gz]]
 +
*Download the file and upload it to Ubuntu. (Execute "<span style="color:#0000FF;">wget [http://ess-wiki.advantech.com.tw/wiki/images/4/4b/Reyax-atcmd-demo.bash.tar.gz http://ess-wiki.advantech.com.tw/wiki/images/4/4b/Reyax-atcmd-demo.bash.tar.gz]</span>" in terminal)
 +
*Uncompress the file with command "<span style="color:#0000FF;">tar zxfv Reyax-atcmd-demo.bash.tar.gz</span>" , then&nbsp;reyax-atcmd-demo.bash will be ready to use.
 +
 
 +
Usage
 +
 
 +
#In Ubuntu Desktop , open two terminals.
 +
#Terminal 1 (Left) , run "<span style="color:#0000FF;">sudo cat /dev/ttyUSB0</span>"
 +
#Terminal 2 (Right) , run "<span style="color:#0000FF;">sudo ./reyax-atcmd-demo.bash</span>"<br/>[[File:Reyax-atcmd-demo-screenshot.jpg|RTENOTITLE]]
 +
#You can enter your choice in the right terminal to issue AT command
 +
#Message from AT Command RX will be shown in the&nbsp;left terminal.
 +
#If you want to change node address , press 0 to enter new node's address.
 +
 
 +
= Restful API =
 +
 
 +
== Restful API for get SenHubList ==
 +
 
 +
<span style="color:#0000FF;">&lt;ServerIP&gt;</span>:3000/restapi/WSNManage/SenHub/AllSenHubList
 +
 
 +
ex: get Sensor Hub List in Ubuntu Terminal on the gateway
 +
<pre>$ curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/AllSenHubList</pre>
 +
 
 +
Result:
 +
<pre>{"n":"AllSenHubList","sv":"0017000E8C000055"}</pre>
 +
 
 +
Or you can get Sensor Hub List via web browser , enter url such as:
 +
 
 +
[[File:EdgeSense LoRa GW restful1.jpg|RTENOTITLE]]
 +
 
 +
== Restful API for Get Sensor Value ==
 +
 
 +
<span style="color:#0000FF;">&lt;ServerIP&gt;</span>:3000/restapi/WSNManage/SenHub/<span style="color:#0000FF;">&lt;DEVID&gt;</span>/SenHub/SenData/<span style="color:#0000FF;">&lt;SENSOR&gt;</span>
 +
 
 +
DEVID: Device ID of LoRa SenHub ( e.g. 0017000E8C000055 )
 +
 
 +
SENSOR: Temperature / Humidity / ADC / GPIO1/ GPIO2 / GPIO3 / GPIO4 / GPIO5 / Relay1 / Relay2 / Relay3 / Relay4 / SNR / RSSI
 +
 
 +
ex: get Temperature in Ubuntu Terminal on the gateway
 +
<pre>curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/0017000E8C000052/SenHub/SenData/Temperature
 +
</pre>
 +
 
 +
Result:
 +
<pre>{"v":23.5}</pre>
 +
 
 +
Or you can get Temperature from device&nbsp;0017000E8C000052&nbsp;via web browser , enter url such as:
 +
 
 +
[[File:EdgeSense LoRa GW restful2.jpg|RTENOTITLE]]
 +
 
 +
ex: get RSSI&nbsp;in Ubuntu Terminal on the gateway
 +
<pre>curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/0017000E8C000052/SenHub/SenData/RSSI
 +
</pre>
 +
 
 +
Result:
 +
<pre>{"v":-63}</pre>
 +
 
 +
= Debug =
 +
 
 +
== Collect LoRa minipcie module command log ==
 +
 
 +
Refer to [[Uartmgr#Display_UART_transaction_log|uartmgr wiki]].
 +
 
 +
== Check if LoRaMgt_ryx service is running ==
 +
 
 +
In Ubuntu ,
 +
<pre>$ sudo systemctl status LoRaMgt_ryx.service
 +
</pre>
 +
 
 +
In Windows,
 +
<pre>Use Service to check status of LoRaMgt_ryx service
 +
</pre>
 +
 
 +
= Use Case =
 +
 
 +
[[File:LoRaMgt ryx use case1.jpg|RTENOTITLE]]
 +
 
 +
= Release =
 +
 
 +
{| border="1" cellspacing="1" cellpadding="1" style="width: 1492px;"
 +
|-
 +
| style="text-align: center;" | Index
 +
| style="text-align: center;" | Version
 +
| style="text-align: center; width: 76px;" | Date<br/>
 +
| style="text-align: center; width: 85px;" | Platform<br/>
 +
| style="text-align: center; width: 72px;" | OS<br/>
 +
| style="text-align: center; width: 728px;" | Release Note<br/>
 +
| style="text-align: center; width: 417px;" | Download Link<br/>
 +
|-
 +
| style="text-align: center;" | 1
 +
| style="text-align: center;" | 1.0.0
 +
| style="width: 76px; text-align: center;" | 2018/08/13
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 72px; text-align: center;" | Ubuntu 16.04<br/>
 +
| style="width: 728px;" |
 +
*Support Minipcie LoRa module firmware Version RYLRxxP_V0.1.22
 +
*Support LoRa nodetype#1&nbsp;firmware version:&nbsp;RYLRxx6_V0.1.13 +&nbsp;RYLRxxE_V0.1.7&nbsp;(for I/O board)
 +
*Support LoRa nodetype#2&nbsp;firmware version:&nbsp;RYLRxx2_V0.1.13
 +
*Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2
 +
*Support maxinum 4&nbsp;nodes
 +
*Command line monitor tools
 +
 
 +
| style="width: 417px;" |
 +
[https://www.dropbox.com/s/91urak2oazhxth0/LoRaMgt_ryx-1.0.0-Ubuntu_16.04-x86_64.run?dl=0 LoRaMgt_ryx-1.0.0-Ubuntu_16.04-x86_64.run]
 +
 
 +
[https://www.dropbox.com/s/v3923zf2n86voa3/API-GW-2.0.6-Ubuntu_16.04-x86_64.run?dl=0 API-GW-2.0.6-Ubuntu_16.04-x86_64.run]
 +
 
 +
RMM 3.3 Agent:<br/>[https://www.dropbox.com/s/5opglbgr220k7n1/rmmagent-Ubuntu%2016.04.4%20LTS%20x86_64-3.3.23.8242.run?dl=0 rmmagent-Ubuntu 16.04.4 LTS x86_64-3.3.23.8242.run]
 +
 
 +
|-
 +
| style="text-align: center;" | 2
 +
| style="text-align: center;" | 1.0.1
 +
| style="width: 76px; text-align: center;" | 2018/11/27
 +
| style="width: 85px; text-align: center;" | x86_64 CPU
 +
| style="width: 72px; text-align: center;" | Windows 10
 +
| style="width: 728px;" |
 +
*Support Minipcie LoRa module firmware Version RYLRxxP_V0.1.28
 +
*Support LoRa nodetype#1&nbsp;firmware version:&nbsp;RYLRxx6_V0.1.20 +&nbsp;RYLRxxE_V0.1.11 (for I/O board)
 +
*Support LoRa nodetype#2&nbsp;firmware version:&nbsp;RYLRxx2_V0.1.20
 +
*Support LoRa nodetype#3&nbsp;firmware version:&nbsp;RYLRxxS_V0.1.20
 +
*Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
 +
*Support maxinum 4&nbsp;nodes
 +
 
 +
| style="width: 417px;" |
 +
[https://www.dropbox.com/s/ab1yg3xo7e9be89/API-GW-2.0.6.exe?dl=0 API-GW-2.0.6.exe]
 +
 
 +
[https://www.dropbox.com/s/2idnzzmkjlcfstr/LoRaMgt_ryx-1.0.1.exe?dl=0 LoRaMgt_ryx-1.0.1.exe]
 +
 
 +
[https://www.dropbox.com/s/slnv815o5g3o0j4/MQTTBrokerSetup_1.0.3.exe?dl=0 MQTTBrokerSetup_1.0.3.exe]
 +
 
 +
[https://www.dropbox.com/s/ktrmlb7of8u63sd/uartmgr-1.0.2.exe?dl=0 uartmgr-1.0.2.exe]
 +
 
 +
|-
 +
| style="text-align: center;" | 3
 +
| style="text-align: center;" | 1.0.2
 +
| style="width: 76px; text-align: center;" | 2018/12/4
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 72px; text-align: center;" | Windows 10<br/>
 +
| style="width: 728px;" |
 +
*Support Minipcie LoRa module firmware Version RYLRxxP_V0.2.9
 +
*Support LoRa nodetype#1&nbsp;firmware version:&nbsp;RYLRxx6_V0.2.9 +&nbsp;RYLRxxE_V0.1.16 (for I/O board)
 +
*Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
 +
*Support maxinum 4&nbsp;nodes
 +
*Add openssl dll
 +
 
 +
| style="width: 417px;" |
 +
[https://www.dropbox.com/s/ab1yg3xo7e9be89/API-GW-2.0.6.exe?dl=0 API-GW-2.0.6.exe]
 +
 
 +
[https://www.dropbox.com/s/4ouyzztxb94mdnd/LoRaMgt_ryx-1.0.2.exe?dl=0 LoRaMgt_ryx-1.0.2.exe]
 +
 
 +
[https://www.dropbox.com/s/slnv815o5g3o0j4/MQTTBrokerSetup_1.0.3.exe?dl=0 MQTTBrokerSetup_1.0.3.exe]
 +
 
 +
[https://www.dropbox.com/s/s5xtvxty0lcbkel/uartmgr-1.0.3.exe?dl=0 uartmgr-1.0.3.exe]
 +
 
 +
|-
 +
| style="text-align: center;" | 4
 +
| style="text-align: center;" | 1.0.3
 +
| style="width: 76px; text-align: center;" | 2019/2/21
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 72px; text-align: center;" | Ubuntu 16.04<br/>
 +
| style="width: 728px;" |
 +
*Support Minipcie LoRa module firmware Version RYLRxxP_V0.2.9
 +
*Support LoRa nodetype#1&nbsp;firmware version:&nbsp;RYLRxx6_V0.2.9 +&nbsp;RYLRxxE_V0.1.16 (for I/O board)
 +
*Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
 +
*Support maxinum 4&nbsp;nodes
 +
*Verified&nbsp;by&nbsp;WISE-PaaS/EdgeSense 1.0.96 + EI-Agent 1.1.3.0
 +
 
 +
| style="width: 417px;" |
 +
[file://eossfs/ESS-Release/EdgeSense/Release/Ubuntu16.04-x86_64/API-GW/ API-GW 2.0.7]
 +
 
 +
[file://eossfs/ESS-Release/EdgeSense/Release/Ubuntu16.04-x86_64/LoRaMgt_ryx/ LoRaMgt_ryx 1.0.3]
 +
 
 +
[file://eossfs/ESS-Release/EdgeSense/Release/Ubuntu16.04-x86_64/MQTTBroker/ MQTTBroker 1.0.5]
 +
 
 +
[file://eossfs/ESS-Release/EdgeSense/Release/Ubuntu16.04-x86_64/uartmgr/ uartmgr 1.0.3]
 +
 
 +
Above files are available at local server, please paste file's&nbsp;url in File Explorer&nbsp;to copy file.
 +
 
 +
 
 +
 
 +
|}
 +
[[Category:Pages with broken file links]]

Latest revision as of 04:32, 25 February 2019

Introduction

An IoT total solution, mainly composed of UTX-3117 gateway/EIS-D210 gateway, RYLR89D Lora demo board and WISE-PaaS.

LoRa GW Solution

Notice: EdgeSense LoRa GW Solution not support LoRaWAN

Support OS

  • Ubuntu 16.04
  • Windows 10

Topology:

RTENOTITLE

Gateway Support Lists

Support Node

node type #1
Sensor:Temperature , Humidity , LED x 5 , ADC , Relay x 4 , Input x 4
(NOTE:SW 1.0.0 only support Temperature , Humidity , LED x 5 , ADC)
(NOTE:Relay x 4, Input x4 need to running SW 1.0.1-rc1 above, but not yet testing)
RTENOTITLE


node type #2
Sensor:Temperature , Humidity , CO2
(NOTE:SW 1.0.0 support CO2 , but CO2 sensor not yet testing)

RTENOTITLE

node type #3
Sensor:GPS
(NOTE:This node type and GPS sensor need to running SW 1.0.1-rc1 above, but not yet testing)

RTENOTITLE

Software Stack

RTENOTITLE

How to

Software Requirements

  • Driver for USB to UART Bridge Controller , (only Windows need this)
  • Microsoft Visual C++ 2015 Redistributable , (only Windows need this) 
  • MQTT broker
  • RMM 3.3 Agent or EI Agent
  • uartmgr
  • API-GW

LoRa Module Firmware Upgrade

LoRa Module setting

After upgrade RYLRxxH mini PCIe board and RYLRxx6 demo board, need to config via AT Command.

Make sure these setting is correct for your environment.

  • Firmware Version
  • Band
  • Address
  • Network ID

Firmware Version

  • To query Firmware Version , issue AT Command AT+VER?  . Then, receive AT Command ex: +VER=RYLRxxP_V0.1.28

Band

  • To query Band, issue AT Command AT+BAND? . Then, receive AT Command ex: +BAND=TW
  • To change Band, issue AT Command AT+BAND=YOUR_OPTION , ex: AT+BAND=JP
  • Detailed option, please see Configuration.

Address

  • To query Address, issue AT Command AT+ADDRESS? . Then, receive AT Command ex: +ADDRESS=1
  • To change Address, issue AT Command AT+ADDRESS=ADDRESS_YOU_WANT , ex: AT+ADDRESS=23
  • Detailed option, please see Configuration.

Network ID

  • To query Network ID, issue AT Command AT+NETWORKID?  . Then, receive AT Command ex: +NETWORKID=3
  • To change Network ID, issue AT Command AT+NETWORKID=NETWORK_ID_YOU_WANT , ex: AT+NETWORKID=5
  • Detailed option, please see Configuration.

Software Installation for Windows 10

NOTE: Please wire the gateway to Internet with Network cable before install.

Install Steps

  1. Install Driver for USB to UART Bridge Controller
  2. Install Microsoft Visual C++ 2015 Redistributable for x86
  3. Install MQTT Broker
  4. Install uartmgr
  5. Install API-GW
  6. Install LoRaMgt_ryx , edit config, then restart service.
  7. Install RMM 3.3 Agent (v3.3.29 above) or EI Agent

Uninstall Steps

  • Select the Start button, then select Settings > Apps. Choose the program you want to remove, and then select Uninstall.
  1. RMM 3.3 Agent or EI Agent
  2. ​LoRaMgt_ryx
  3. API-GW
  4. uartmgr
  5. MQTT Broker

Software Installation for Ubuntu 16.04

Install Steps

  1. Install OS - Ubuntu 16.04 (ex: ubuntu-16.04.5-desktop-amd64.iso)
  2. Install MQTT Broker
  3. Install uartmgr
  4. Install API-GW
  5. Install LoRaMgt_ryx , edit config, then restart service.
  6. Install RMM 3.3 Agent (v3.3.29 above) o EI Agent
$ sudo chmod +x MQTTBrokerSetup-1.0.5-Ubuntu_16.04-x86_64.run
$ sudo chmod +x uartmgr-1.0.3-Ubuntu_16.04-x86_64.run
$ sudo chmod +x API-GW-2.0.7-Ubuntu_16.04-x86_64.run
$ sudo chmod +x LoRaMgt_ryx-1.0.3-Ubuntu_16.04-x86_64.run
$ sudo chmod +x rmmagent-Ubuntu 16.04.5 LTS x86_64-1.1.3.0.run
$ sudo ./MQTTBrokerSetup-1.0.5-Ubuntu_16.04-x86_64.run
$ sudo ./uartmgr-1.0.3-Ubuntu_16.04-x86_64.run
$ sudo ./API-GW-2.0.7-Ubuntu_16.04-x86_64.run
$ sudo ./LoRaMgt_ryx-1.0.3-Ubuntu_16.04-x86_64.run
$ sudo ./rmmagent-Ubuntu 16.04.5 LTS x86_64-1.1.3.0.run

NOTE: Please wire the gateway to Internet with Network cable before install, it is necessary to install the dependencies. 

Uninstall Steps

To uninstall RMM 3.3 Agent or EI Agent

$ sudo /usr/local/AgentService/uninstall.sh

To uninstall LoRaMgt_ryx

$ sudo /usr/local/EdgeSense/LoRaMgt_ryx/uninstall.bash

To uninstall API-GW

$ sudo /usr/local/EdgeSense/API-GW/uninstall.bash

To uninstall uartmgr

$ sudo /usr/local/EdgeSense/uartmgr/uninstall.bash

to uninstall MQTT Broker

$ sudo /usr/local/EdgeSense/MQTTBroker/uninstall.bash

Configuration

In Windows 10

  • You can edit C:\Program Files (x86)\Advantech\LoRaMgt_ryx\settings.ini to change setting.
  • Once config is changed, please using Windows Services Manager to restart LoRaMgt_ryx service.

In Ubuntu 16.04

  • You can edit /usr/local/EdgeSense/LoRaMgt_ryx/settings.ini to change setting.
    • You can execute "sudo vi /usr/local/EdgeSense/LoRaMgt_ryx/settings.ini" command in Ubuntu terminal to modify config.
    • Also you can use gedit to edit file, command is "sudo gedit /usr/local/EdgeSense/LoRaMgt_ryx/settings.ini
  • Once config is changed , please execute "sudo systemctl restart LoRaMgt_ryx.service" to restart service in order to apply new setting.

Setting File example:

[gateway]
node_num=2
polling_rate=20

[rf]
band=TW
hostaddr=1
networkid=0
crfop1=15
crfop2=15

[node-1]
addr=8
nodetype=1

[node-2]
addr=69
nodetype=1

node_num

  • Support maxinum 4 nodes

polling_rate

  • range from 5 to 3600 second, default value is 20 second
  • If setting is greater than maximum value or is less than minimum value, it will use default value.

band

  • option : 
    • TW  - for Taiwan
    • JP - for Japan
    • KR - for Korea
    • US - for US

hostaddr

  • Assign address for LoRa Host (LoRa pcie module inside gateway)
  • hostaddr is needed to be 1

networkid

  • Network ID, default is 0
  • NOTE:In firmware RYLRxxP_V0.1.22, range from 0 to 5
  • NOTE:In firmware RYLRxxP_V0.2.23 and above, range from 0 to 11

crfop1 / crfop2

  • LoRa module power , range from 0 to 15 dBm

addr:

  • address for LoRa Node , range from 2 to 65000

notetype:

  • nodetype=1 : temperature + humidity + output x 5 + adc + relay x 4 + input x 4
  • nodetype=2 : temperature + humidity + co2
  • nodetype=3 : GPS

Downlink for sensor

Relay

Node Type#1 have 4 Normally Close type of Relay.

When relay is triggered to On status in WISE-PaaS, relay contact is open.

When relay is triggered to Off status in WISE-PaaS, relay contact is close.

Service control

In Windows

Check if ​LoRaMgt_ryx service is running:

  • Use Service to check status of ​LoRaMgt_ryx service

Restart ​LoRaMgt_ryx service:

  • Use Service to restart ​LoRaMgt_ryx service

Start ​LoRaMgt_ryx service:

  • Use Service start ​LoRaMgt_ryx service

Stop ​LoRaMgt_ryx service:

  • Use Service stop ​LoRaMgt_ryx service

In Ubuntu

Check if ​LoRaMgt_ryx service is running:

$ sudo systemctl status LoRaMgt_ryx.service

Restart ​LoRaMgt_ryx service:

$ sudo systemctl restart LoRaMgt_ryx.service

Start ​LoRaMgt_ryx service:

$ sudo systemctl start LoRaMgt_ryx.service

Stop ​LoRaMgt_ryx service:

$ sudo systemctl stop LoRaMgt_ryx.service

Tools

Driver for USB to UART Bridge Controller

In Windows, please use Device Manager to check if Devicer for USB to UART Bridge Controller is installed.

If your Device Manager does not recognize a CP2102 USB to UART Bridge Controller, you have to install its driver.

Please visit https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers and download driver, then install it.

RTENOTITLE

After installing driver, Device Manage will look like this picture

RTENOTITLE


Reyax AT Command Demo Script

This demo script is a simple bash script, aim to provide a preliminary understanding about Reyax At Command.

This Script only support Ubuntu 16.04.

Script version : 0.3-beta

Support Reyax firmware version : RYLRxxP_V0.1.22

Support Lora Proprietary Command Set : V0.97

Download

Usage

  1. In Ubuntu Desktop , open two terminals.
  2. Terminal 1 (Left) , run "sudo cat /dev/ttyUSB0"
  3. Terminal 2 (Right) , run "sudo ./reyax-atcmd-demo.bash"
    RTENOTITLE
  4. You can enter your choice in the right terminal to issue AT command
  5. Message from AT Command RX will be shown in the left terminal.
  6. If you want to change node address , press 0 to enter new node's address.

Restful API

Restful API for get SenHubList

<ServerIP>:3000/restapi/WSNManage/SenHub/AllSenHubList

ex: get Sensor Hub List in Ubuntu Terminal on the gateway

$ curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/AllSenHubList

Result:

{"n":"AllSenHubList","sv":"0017000E8C000055"}

Or you can get Sensor Hub List via web browser , enter url such as:

RTENOTITLE

Restful API for Get Sensor Value

<ServerIP>:3000/restapi/WSNManage/SenHub/<DEVID>/SenHub/SenData/<SENSOR>

DEVID: Device ID of LoRa SenHub ( e.g. 0017000E8C000055 )

SENSOR: Temperature / Humidity / ADC / GPIO1/ GPIO2 / GPIO3 / GPIO4 / GPIO5 / Relay1 / Relay2 / Relay3 / Relay4 / SNR / RSSI

ex: get Temperature in Ubuntu Terminal on the gateway

curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/0017000E8C000052/SenHub/SenData/Temperature

Result:

{"v":23.5}

Or you can get Temperature from device 0017000E8C000052 via web browser , enter url such as:

RTENOTITLE

ex: get RSSI in Ubuntu Terminal on the gateway

curl -H "Content-Type: application/json" -X GET http://127.0.0.1:3000/restapi/WSNManage/SenHub/0017000E8C000052/SenHub/SenData/RSSI

Result:

{"v":-63}

Debug

Collect LoRa minipcie module command log

Refer to uartmgr wiki.

Check if LoRaMgt_ryx service is running

In Ubuntu ,

$ sudo systemctl status LoRaMgt_ryx.service

In Windows,

Use Service to check status of LoRaMgt_ryx service

Use Case

RTENOTITLE

Release

Index Version Date
Platform
OS
Release Note
Download Link
1 1.0.0 2018/08/13 x86_64 CPU
Ubuntu 16.04
  • Support Minipcie LoRa module firmware Version RYLRxxP_V0.1.22
  • Support LoRa nodetype#1 firmware version: RYLRxx6_V0.1.13 + RYLRxxE_V0.1.7 (for I/O board)
  • Support LoRa nodetype#2 firmware version: RYLRxx2_V0.1.13
  • Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2
  • Support maxinum 4 nodes
  • Command line monitor tools

LoRaMgt_ryx-1.0.0-Ubuntu_16.04-x86_64.run

API-GW-2.0.6-Ubuntu_16.04-x86_64.run

RMM 3.3 Agent:
rmmagent-Ubuntu 16.04.4 LTS x86_64-3.3.23.8242.run

2 1.0.1 2018/11/27 x86_64 CPU Windows 10
  • Support Minipcie LoRa module firmware Version RYLRxxP_V0.1.28
  • Support LoRa nodetype#1 firmware version: RYLRxx6_V0.1.20 + RYLRxxE_V0.1.11 (for I/O board)
  • Support LoRa nodetype#2 firmware version: RYLRxx2_V0.1.20
  • Support LoRa nodetype#3 firmware version: RYLRxxS_V0.1.20
  • Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
  • Support maxinum 4 nodes

API-GW-2.0.6.exe

LoRaMgt_ryx-1.0.1.exe

MQTTBrokerSetup_1.0.3.exe

uartmgr-1.0.2.exe

3 1.0.2 2018/12/4 x86_64 CPU
Windows 10
  • Support Minipcie LoRa module firmware Version RYLRxxP_V0.2.9
  • Support LoRa nodetype#1 firmware version: RYLRxx6_V0.2.9 + RYLRxxE_V0.1.16 (for I/O board)
  • Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
  • Support maxinum 4 nodes
  • Add openssl dll

API-GW-2.0.6.exe

LoRaMgt_ryx-1.0.2.exe

MQTTBrokerSetup_1.0.3.exe

uartmgr-1.0.3.exe

4 1.0.3 2019/2/21 x86_64 CPU
Ubuntu 16.04
  • Support Minipcie LoRa module firmware Version RYLRxxP_V0.2.9
  • Support LoRa nodetype#1 firmware version: RYLRxx6_V0.2.9 + RYLRxxE_V0.1.16 (for I/O board)
  • Support sensor: Temperature , Humidity , LED x 5 , ADC, CO2, Relay x 4, Digit Input x 4, GPS
  • Support maxinum 4 nodes
  • Verified by WISE-PaaS/EdgeSense 1.0.96 + EI-Agent 1.1.3.0

API-GW 2.0.7

LoRaMgt_ryx 1.0.3

MQTTBroker 1.0.5

uartmgr 1.0.3

Above files are available at local server, please paste file's url in File Explorer to copy file.