Difference between revisions of "EnOcean Link Solution"

From ESS-WIKI
Jump to: navigation, search
(.)
(udate software download link)
 
(118 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== <span style="font-size:x-large;">System Architecture:</span> ==
+
= System Architecture =
  
[[File:Rohm light tower sensor demokit 01.png|left|640x480px|Rohm light tower sensor demokit 01.png]]
+
[[File:Rohm light tower sensor demokit 01.png|640x480px|Rohm light tower sensor demokit 01.png]]
  
 +
= EnOcean Sensor and Light Tower (chip & demo kit vendor: ROHM) =
  
 +
[[File:EnOcean light sensor 01.png|480x280px|EnOcean light sensor 01.png]]
  
 +
<br/><span style="font-size:large;"><span style="color:#FF0000;">Notice: Please make sure DIP switch of Light Tower module is setting in normal mode as below diagram.</span></span>
  
 +
[[File:Tower Light normal mode.jpg|RTENOTITLE]]
  
 +
= Sensor Communication Protocol =
  
 +
[[File:EnOcean light sensor 03.png|480x100px|EnOcean light sensor 03.png]]
  
 +
Lighting Condition Data Format:
  
 +
*First 4 bits = pervious status
 +
*Last 4 bits = current status
  
 +
Lighting Condition Value Definition:
  
 +
*0x0 Light off
 +
*0x1 Fast blink (0.5s per blink)
 +
*0x2 Blinking medium speed (1s per blink)
 +
*0x3 Slow flashing (2s per blink)
 +
*0x4 Light on
  
 +
For example, value of third light is 41.
  
 +
*First 4 bits is 4 , which mean previous status is Light On
 +
*Last 4 bits is 1 , which mean current status is Fast Blink.
  
 +
= Tower Light Data Format =
  
 +
[[File:EnOcean light sensor 02.png|480x320px|EnOcean light sensor 02.png]]
  
  
  
 
+
= Protocol Specification =
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
== <span style="font-size:x-large;">EnOcean Sensor and Light Tower (chip & demo kit vendor: ROHM)</span> ==
 
 
 
[[File:EnOcean light sensor 01.png|left|480x280px|EnOcean light sensor 01.png]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
== <span style="font-size:x-large;">Sensor Communication Protocol:</span> ==
 
 
 
[[File:EnOcean light sensor 03.png|left|480x100px|EnOcean light sensor 03.png]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
<span style="font-size:larger;">Lighting Condition Data Format:</span>
 
 
 
First 4 bits = pervious status
 
 
 
Last 4 bits = current status
 
 
 
 
 
 
 
<span style="font-size:larger;">Lighting Condition Value Definition:</span>
 
 
 
0x0 Light off
 
 
 
0x1 Fast blink (0.5s per blink)
 
 
 
0x2 Blinking medium speed (1s per blink)
 
 
 
0x3 Slow flashing (2s per blink)
 
 
 
0x4 Light on
 
 
 
== <span style="font-size:x-large;">Tower Light Data Format:</span> ==
 
 
 
[[File:EnOcean light sensor 02.png|left|480x320px|EnOcean light sensor 02.png]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
== <span style="font-size:x-large;">EnOcean Sample Program:</span> ==
 
 
 
[[File:EnOcean light sensor 04.png|left|640x180px|EnOcean light sensor 04.png]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
== <span style="font-size:x-large;">Data type and Data Format:</span> ==
 
 
 
<span style="font-size:medium;">'''Agent ID (Sensor ID):''' String</span>
 
 
 
<span style="font-size:medium;">'''Sensor Data:''' Unsigned Integer number</span>
 
 
 
== <span style="font-size:x-large;">Data Capability in JSON:</span> ==
 
 
 
{
 
&nbsp; &nbsp;"susiCommData":{
 
&nbsp; &nbsp; &nbsp; "infoSpec":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"SenHub":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "SenData":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"e":[
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Header",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":255,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"ExtendedTelegramType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":255,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"OriginatorID",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"s",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"FwVersion",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":255,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"PacketType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":15,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"ActionMode",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":15,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"PacketIndex",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":255,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"TxType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":15,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"BatteryVoltage",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":15,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light1",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"State",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":4,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light2",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"State",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":4,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light3",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"State",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":4,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light4",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"State",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":4,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"SignalStrength",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"dBm",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":255,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"bn":"SenData"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "Info":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"e":[
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Name",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"LightSensor",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"s",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"sw",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"1.0.00",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"s",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"bn":"Info"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "Net":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"e":[
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"sw",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"2.0.0.0",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"s",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Neighbor",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"s",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Health",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"u":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":100,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"min":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"max":0,
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"asm":"r",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"type":"d",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"rt":"",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"st":"ipso",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"exten":""
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"bn":"Net"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "Action":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"e":[
 
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"bn":"Action"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "ver":1
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}
 
&nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; "commCmd":2052,
 
&nbsp; &nbsp; &nbsp; "requestID":2001,
 
&nbsp; &nbsp; &nbsp; "agentID":"0017000004016943",
 
&nbsp; &nbsp; &nbsp; "handlerName":"general",
 
&nbsp; &nbsp; &nbsp; "sendTS":160081024
 
&nbsp; &nbsp;}
 
}
 
 
 
== <span style="font-size:x-large;">Data Upload&nbsp;Format in JSON:</span> ==
 
 
 
{
 
&nbsp; &nbsp;"susiCommData":{
 
&nbsp; &nbsp; &nbsp; "data":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"SenHub":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "SenData":{
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"e":[
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Header",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":47
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"ExtendedTelegramType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":7
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"OriginatorID",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"sv":"000004016943"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"FwVersion",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":1
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"PacketType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"ActionMode",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"PacketIndex",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":195
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"TxType",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":1
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"BatteryVoltage",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":15
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light1",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light2",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light3",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"Light4",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":0
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"n":"SignalStrength",
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"v":54
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"bn":"SenData"
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "ver":1
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}
 
&nbsp; &nbsp; &nbsp; },
 
&nbsp; &nbsp; &nbsp; "commCmd":2055,
 
&nbsp; &nbsp; &nbsp; "requestID":2001,
 
&nbsp; &nbsp; &nbsp; "agentID":"0017000004016943",
 
&nbsp; &nbsp; &nbsp; "handlerName":"general",
 
&nbsp; &nbsp; &nbsp; "sendTS":160081115
 
&nbsp; &nbsp;}
 
}
 
 
 
== Protocol Specification: ==
 
  
 
[http://ess-wiki.advantech.com.tw/wiki/images/d/d9/Advantech_EnOcean_light_tower_2018.03.18.pdf http://ess-wiki.advantech.com.tw/wiki/images/d/d9/Advantech_EnOcean_light_tower_2018.03.18.pdf]
 
[http://ess-wiki.advantech.com.tw/wiki/images/d/d9/Advantech_EnOcean_light_tower_2018.03.18.pdf http://ess-wiki.advantech.com.tw/wiki/images/d/d9/Advantech_EnOcean_light_tower_2018.03.18.pdf]
  
== <span style="font-size:x-large;">Dashboard Configuration:</span> ==
 
  
<span style="font-size:medium;">1. Sign in WISE-PaaS Dashboard using your User ID and Password:</span>
 
  
<span style="font-size:medium;">&nbsp; &nbsp;&nbsp;[https://dashboard-grafana-eiot.wise-paas.com https://dashboard-grafana-eiot.wise-paas.com]</span>
+
= How to =
  
[[File:Tower Light 03-1.png|640x480px|Tower Light 03-1.png]]
+
== Software Requirements ==
  
 +
*USB receiver driver
 +
*MQTT broker
 +
*WISE-Agent
 +
*API-GW
  
 +
== Software Installation for Windows 10 ==
  
<span style="font-size:medium;">2. Drop down “Home” and select Tower Light Board.</span>
+
<span style="color:#FF0000;">Notice: Please connect the gateway to the Internet before performing the installation.</span>
  
<span style="font-size:medium;">&nbsp; &nbsp; Board name: '''Advantech EIoT DTOS Tower Light Monitoring'''</span>
+
Install Steps
  
 +
#Install&nbsp;USB receiver driver
 +
#Install MQTT Broker
 +
#Install&nbsp;API-GW
 +
#Install&nbsp;EoLinkManager , edit config, then restart service.
 +
#Install&nbsp;WISE-Agent
  
 +
Uninstall Steps
  
[[File:Tower Light 04-1.png|640x300px|Tower Light 04-1.png]]
+
*Select the Start button, then select Settings > Apps. Choose the program&nbsp;you want to remove, and then select Uninstall.
  
 +
#WISE-Agent
 +
#EoLinkManager
 +
#API-GW
 +
#MQTT Broker
  
 +
== Configuration ==
  
 +
In Windows 10
  
 +
*You can edit&nbsp;C:\Program Files (x86)\Advantech\EoLinkManager\EoLinkManager.ini to change setting.
 +
*<span style="color:#FF0000;">Notice: Once config is modified, please&nbsp;restart EoLinkManager service in Task Manager&nbsp;or reboot gateway in order to apply new setting.</span>
 +
*[[File:TLS service manager.PNG|RTENOTITLE]]
  
 +
Setting File example:
  
 +
{| border="1" cellspacing="1" cellpadding="1" style="width:500px;"
 +
|-
 +
|
 +
[Platform]<br/>InterfaceName=EoLinkReceiver<br/>ServerURL=127.0.0.1<br/>ServerPort=1883<br/>ModuleName=EoLinkManager<br/>SensorName=LightSensor<br/>'''<span style="color:#0000FF;">SerialPort=COM3</span>'''<br/>Interval=1<br/><br/>[Sensors]<br/><span style="color:#0000FF;">'''NumberOfSensors=2'''</span><br/>'''<span style="color:#0000FF;">Sensor0=04016943<br/>Sensor1=0400E889</span>'''
  
[[File:Tower Light 05-1.png|640x200px|Tower Light 05-1.png]]
+
|}
  
 +
<span style="color:#FF0000;">Notice: Please make sure above&nbsp;settings (in blue color) is correct. And please do not change other settings.</span>
  
 +
SerialPort
  
<span style="font-size:medium;">3. You will see the board is showed like this when all lights off:</span>
+
*Assign serial port which USB receiver (USB300) is using.
  
[[File:Tower Light 01 .png|800x480px|Tower Light 01 .png]]
+
Interval
  
 +
*The time delay between data access round in second.
  
 +
NumberOfSensors
  
<span style="font-size:medium;">4. You will see the board is showed like this when all lights on:</span>
+
*Assign number of Tower Light Sensor module
  
[[File:Tower Light 02 .png|800x480px|Tower Light 02 .png]]
+
Sensor0
  
 +
*Assign id for Tower Light Sensor module. Format is Sensor0=&lt;<MODULE_ID&gt;>
 +
*If you have multi Tower Light Sensor module, please start at a number 0 for the first module.
 +
*Second module use Sensor1.
  
 +
== Debug ==
  
<span style="font-size:medium;">5. Drop down “Tower Light” and select “Edit” to edit the widget’s HTML:</span>
+
1. Check all installed software versions are&nbsp;correct.
  
[[File:Tower Light 06-2.png|640x400px|Tower Light 06-2.png]]
+
2. Check if&nbsp;service is running
  
 +
*Make sure&nbsp;EoLinkManager service is running.
 +
*Make sure WISEAgent service is running.
 +
*Make sure APIGateway service is running.
 +
*Make sure mosquitto service is running.
  
 +
3. Check EoLinkManger log file
  
<span style="font-size:medium;">6. Define Tower Light Sensor ID in the widget’s HTML:</span>
+
*log files is available at&nbsp;EoLinkManager installed folder, (ex:&nbsp;C:\Program Files (x86)\Advantech\EoLinkManager\logs)
 +
*View logs files to check if there are&nbsp;any error messages.
  
[[File:Tower Light 10.png|640x200px|Tower Light 10.png]]
+
4. Check EoLinkManager configuration
  
 +
*Make sure SerialPort setting is the port number USB receiver (USB300) is using.
 +
*Make sure&nbsp;Tower Light Sensor module id is correct and assigned in Sensors section in configuration file.
  
 +
5. Check if device id&nbsp;of Tower Light Module is listed in Sensor Hub List
  
<span style="font-size:medium;">7. RESTful API and HTML request content:</span>
+
In web browser and open url&nbsp;:&nbsp;http://<span style="color:#FF0000;">GATEWAY_IP</span>:3000/restapi/WSNManage/SenHub/AllSenHubList
  
[[File:Tower Light 08-1.png|640x300px|Tower Light 08-1.png]]
+
*Assign ip address for GATEWAY_IP
 +
*ex:&nbsp;[http://127.0.0.1:3000/restapi/WSNManage/SenHub/AllSenHubList http://127.0.0.1:3000/restapi/WSNManage/SenHub/AllSenHubList]
  
 +
Once Tower Light Module is managed by EoLinkManager, its device id will be listed in Sensor Hub List&nbsp;as shown on below picture.
  
 +
[[File:Tower Light senhublist.png|RTENOTITLE]]
  
<span style="font-size:larger;">Dashboard HTML:</span>
+
6. Check WISE-Agent connection status
  
<span style="font-size:larger;">[https://www.dropbox.com/s/mwtz64atix0uavb/Advantech%20EIoT%20DTOS%20Tower%20Light%20Monitoring-Graph-04016943-ADF-20180430.json?dl=0 https://www.dropbox.com/s/mwtz64atix0uavb/Advantech%20EIoT%20DTOS%20Tower%20Light%20Monitoring-Graph-04016943-ADF-20180430.json?dl=0]</span>
+
*Launch WISE-Agent shortcut in Windows Desktop.<br/>[[File:TLS debug wiseagent shortcut.jpg|RTENOTITLE]]
 +
*Check if WISE-Agent is connected as below picture.<br/>[[File:TLS debug wiseagent connection2.PNG|600px|TLS debug wiseagent connection2.PNG]]
  
 +
7. Check if sensor data is published to WISE-PaaS/EdgeSense
  
 +
*Use web browser to open WISE-PaaS/EdgeSense web pages.
 +
*Go to Device Page and choose the LightSensor device you are using, click on Monitor icon.
 +
*In Monitor page, select SenHub , then you can monitor the LightSensor data payload.
  
<span style="font-size:larger;">RESTful API:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
+
= Grafana Dashboard =
  
<span style="font-size:larger;">'''[https://portal-rmm-advantech-eiot.wise-paas.com/rmm/v1/grafana/simplejson/query https://portal-rmm.wise-paas.com/rmm/v1/grafana/simplejson/query]'''</span>
+
*<span style="font-size:large;">[[Gantt-chart-for-TLS|A Gantt chart panel for TLS on Grafana]]</span>
  
&nbsp;
 
  
<span style="font-size:larger;">Example:</span>
 
  
<span style="font-size:larger;">''cache: false''</span>
 
  
<span style="font-size:larger;">''url: '[https://portal-rmm-advantech-eiot.wise-paas.com/rmm/v1/grafana/simplejson/query' https://portal-rmm.wise-paas.com/rmm/v1/grafana/simplejson/query']''</span>
 
  
<span style="font-size:larger;">''type: "post",''</span>
+
= Release =
  
<span style="font-size:larger;">''contentType: 'application/json'''</span>
+
{| border="1" cellspacing="1" cellpadding="1" style="width: 1492px;"
 +
|-
 +
| style="text-align: center; width: 55px;" | Version
 +
| style="text-align: center; width: 78px;" | Date<br/>
 +
| style="text-align: center; width: 85px;" | Platform<br/>
 +
| style="text-align: center; width: 89px;" | OS<br/>
 +
| style="text-align: center; width: 394px;" | Release Note<br/>
 +
| style="text-align: center; width: 759px;" | Download Link<br/>
 +
| style="text-align: center; width: 759px;" | Note
 +
|-
 +
| style="text-align: center; width: 55px;" | 1.0.6
 +
| style="width: 78px; text-align: center;" | 2021/8/23
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 89px; text-align: center;" | Windows 10<br/>
 +
| style="width: 394px;" |
 +
*Add log message
 +
*Watchdog
 +
*Improve stability
 +
*Verified&nbsp;by&nbsp;<span style="color:#FF0000;">WISE-Agent 1.2.17</span>
  
<span style="font-size:larger;">''dataType: 'json'''</span>
+
| style="width: 759px;" |
 +
[https://www.dropbox.com/s/gqwvai9v8x9fjzw/API-GW-2.0.9.exe?dl=0 API-GW 2.0.9]
  
<span style="font-size:larger;">''data: '{"timezone":"browser","panelId":2,"range":{"from":"2018-04-09T05:46:51.357Z","to":"2018-04-09T09:46:51.357Z","raw":{"from":"now-6h","to":"now"}},"rangeRaw":{"from":"now-6h","to":"now"},"interval":"20s","intervalMs":20000,"targets":[{"target":"00000001-0000-0000-0017-000004016940|SenHub|/SenData/Light1","device":"00000001-0000-0000-0017-000004016940","plugin":"SenHub","sensor":"/SenData/Light1","refId":"A","type":"table"}],"maxDataPoints":960,"scopedVars":{"__interval":{"text":"20s","value":"20s"},"__interval_ms":{"text":20000,"value":20000}}}'''</span>
+
[https://www.dropbox.com/s/rkbl747zi02gmzd/EoLinkManager-1.0.6.exe?dl=0 EoLinkManager 1.0.6]
  
<span style="font-size:larger;">''xhrFields: {withCredentials: true}''</span>
+
[https://www.dropbox.com/s/rzubwa511g8h5x0/MQTTBroker-1.0.6.exe?dl=0 MQTTBroker 1.0.6]
  
 +
USB receiver driver:<br/>[https://www.dropbox.com/s/vi00t4ueb1nwe14/CDM21228_Setup.exe?dl=0 CDM21228_Setup.exe]
  
 +
| style="width: 759px;" | Notice: If API-GW 2.0.7 is installed in your system, please remove API-GW 2.0.7 first, then install API-GW v2.0.9. Please follow this [[#After_upgrading_API-GW.2C_API-GW_not_running|guide]].<br/>
 +
|-
 +
| style="text-align: center; width: 55px;" | 1.0.5<br/>
 +
| style="width: 78px; text-align: center;" | 2020/6/1<br/>
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 89px; text-align: center;" | Windows 10<br/>
 +
| style="width: 394px;" |
 +
*Fix same Device&nbsp;Name shown in EdgeSense.
 +
*Verified&nbsp;by&nbsp;<span style="color:#FF0000;">WISE-Agent 1.2.17</span>
  
<span style="font-size:medium;">8. Lights blinking status for the Tower Light:</span>
+
| style="width: 759px;" |
 +
[https://www.dropbox.com/s/4ou8wsr4hd6a1ku/API-GW-2.0.8.exe?dl=0 API-GW 2.0.8]
  
[[File:Tower Light 09.png|640x360px|Tower Light 09.png]]
+
[https://www.dropbox.com/s/4d3sl03pwlv48pd/EoLinkManager-1.0.5.exe?dl=0 EoLinkManager 1.0.5]
  
== Gateway Configuration: ==
+
[https://www.dropbox.com/s/q7p0d3ctk7pxbez/MQTTBrokerSetup_1.0.4.exe?dl=0 MQTTBrokerSetup 1.0.4]
  
=== '''For the user of&nbsp;WISE-PaaS/EdgeSense''' ===
+
USB receiver driver:<br/>[https://www.dropbox.com/s/vi00t4ueb1nwe14/CDM21228_Setup.exe?dl=0 CDM21228_Setup.exe]
  
1. Download RMM EI Agent 1.2.4 (or newer)&nbsp;from [https://portal-rmm.wise-paas.com/main/system https://portal-rmm.wise-paas.com/main/system] and install it to the Gateway.
+
| style="width: 759px;" | Notice: If API-GW 2.0.7 is installed in your system, please remove API-GW 2.0.7 first, then install API-GW v2.0.8. Please follow this [[#After_upgrading_API-GW.2C_API-GW_not_running|guide]].<br/>
 +
|-
 +
| style="text-align: center; width: 55px;" | 1.0.4<br/>
 +
| style="width: 78px; text-align: center;" | 2019/12/20<br/>
 +
| style="width: 85px; text-align: center;" | x86_64 CPU<br/>
 +
| style="width: 89px; text-align: center;" | Windows 10<br/>
 +
| style="width: 394px;" |
 +
*Add log message
 +
*Fix no sensor data received cause lost connection
 +
*Verified&nbsp;by <span style="color:#FF0000;">EdgeSense 1.0.106</span>
 +
*Verified&nbsp;by&nbsp;<span style="color:#FF0000;">WISE-Agent 1.2.17</span>
  
2. Double click "ServerSettings" icon on Gateway's&nbsp;desktop.
+
| style="width: 759px;" |
 +
API-GW 2.0.7
  
*Input Password for the Password Authentications dialog and press [Confirm]&nbsp;button to close the dialog.&nbsp;
+
EoLinkManager 1.0.4
  
*Input Credential URL and IoTKey for the Server Setting dialog. Press [Save] to close the dialog.
+
MQTTBrokerSetup 1.0.4
  
Notice: You can get your "Credential URL" and "IoTKey" from&nbsp; Agent Credential screen&nbsp;in the WISE-PaaS portal: [https://portal-rmm.wise-paas.com/main/system https://portal-rmm.wise-paas.com/main/system]
+
USB receiver driver:<br/>CDM21228_Setup.exe
  
 +
| style="width: 759px;" | <br/>
 +
|}
  
 +
= Troubleshooting =
  
 +
== After upgrading API-GW, API-GW not running ==
  
 +
API-GW v2.0.7 or older version is not able to upgrade to v2.0.8
  
=== '''Install additional software modules''' ===
+
Please remove older version API-GW first, then install API-GW v2.0.8
  
1. Download USB receiver driver from [https://www.dropbox.com/s/6bguuh4nfynuekn/CDM21228_Setup.zip?dl=0 https://www.dropbox.com/s/6bguuh4nfynuekn/CDM21228_Setup.zip?dl=0]&nbsp;and install it to the Gateway.
+
Below steps shows how to cleanly remove API-GW v2.0.7 or older version.
  
2. Download MQTTBroker 1.0.3 from [https://www.dropbox.com/s/wyt3gnenyf7xv3d/MQTTBrokerSetup_1.0.3.exe?dl=0 https://www.dropbox.com/s/wyt3gnenyf7xv3d/MQTTBrokerSetup_1.0.3.exe?dl=0] and install it to the Gateway.
+
Step-1. Remove API-GW
  
3. Download API-GW 2.0.7 and install it to the Gateway.
+
[[File:TLS remove app.png|RTENOTITLE]]
  
4. Download EoLinkManager 1.0.2&nbsp;from [https://www.dropbox.com/s/2ggh18mijhj2fm8/EoLinkManagerSetup_1.0.2.exe?dl=0 https://www.dropbox.com/s/2ggh18mijhj2fm8/EoLinkManagerSetup_1.0.2.exe?dl=0]&nbsp;and install it to the Gateway.
+
Step-2. Remove service.
  
5. Open EoLinkManager.ini and set the configurations:<br/>&nbsp; &nbsp;> notepad C:\Program Files (x86)\Advantech\EoLinkManager\EoLinkManager.ini
+
If API-GW is still listed in service manager as below picture,
  
{| border="1" cellspacing="1" cellpadding="1" style="width:500px;"
+
[[File:TLS apigw in service list.png|RTENOTITLE]]
|-
 
|
 
[Platform]<br/>InterfaceName=EoLinkReceiver<br/>ServerURL=127.0.0.1<br/>ModuleName=EoLinkManager<br/>SensorName=LightSensor<br/>SerialPort=COM3<br/>ServerPort=1883<br/>Interval=1<br/>#Interval: The time delay between data access round in second.&nbsp;
 
  
[Sensors]<br/>NumberOfSensors=2<br/>Sensor0=04016943<br/>Sensor1=0400E889
+
Then, use command line with Administrator privileges to run
 
 
|}
 
  
Notice: Once config is changed, need to restart service or reboot gateway in order to apply new setting.
+
sc delete apigw.exe
  
6. Open WISE-PaaS/EdgeSense portal and add your device, then you can see&nbsp;the data you uploaded from monitor page of WISE-PaaS/EdgeSense or&nbsp;RMM.
+
[[File:TLS sc delete old apigw service name.png|RTENOTITLE]]
[[Category:Editor]]
 

Latest revision as of 06:00, 23 August 2021

System Architecture

Rohm light tower sensor demokit 01.png

EnOcean Sensor and Light Tower (chip & demo kit vendor: ROHM)

EnOcean light sensor 01.png


Notice: Please make sure DIP switch of Light Tower module is setting in normal mode as below diagram.

RTENOTITLE

Sensor Communication Protocol

EnOcean light sensor 03.png

Lighting Condition Data Format:

  • First 4 bits = pervious status
  • Last 4 bits = current status

Lighting Condition Value Definition:

  • 0x0 Light off
  • 0x1 Fast blink (0.5s per blink)
  • 0x2 Blinking medium speed (1s per blink)
  • 0x3 Slow flashing (2s per blink)
  • 0x4 Light on

For example, value of third light is 41.

  • First 4 bits is 4 , which mean previous status is Light On
  • Last 4 bits is 1 , which mean current status is Fast Blink.

Tower Light Data Format

EnOcean light sensor 02.png


Protocol Specification

http://ess-wiki.advantech.com.tw/wiki/images/d/d9/Advantech_EnOcean_light_tower_2018.03.18.pdf


How to

Software Requirements

  • USB receiver driver
  • MQTT broker
  • WISE-Agent
  • API-GW

Software Installation for Windows 10

Notice: Please connect the gateway to the Internet before performing the installation.

Install Steps

  1. Install USB receiver driver
  2. Install MQTT Broker
  3. Install API-GW
  4. Install EoLinkManager , edit config, then restart service.
  5. Install WISE-Agent

Uninstall Steps

  • Select the Start button, then select Settings > Apps. Choose the program you want to remove, and then select Uninstall.
  1. WISE-Agent
  2. EoLinkManager
  3. API-GW
  4. MQTT Broker

Configuration

In Windows 10

  • You can edit C:\Program Files (x86)\Advantech\EoLinkManager\EoLinkManager.ini to change setting.
  • Notice: Once config is modified, please restart EoLinkManager service in Task Manager or reboot gateway in order to apply new setting.
  • RTENOTITLE

Setting File example:

[Platform]
InterfaceName=EoLinkReceiver
ServerURL=127.0.0.1
ServerPort=1883
ModuleName=EoLinkManager
SensorName=LightSensor
SerialPort=COM3
Interval=1

[Sensors]
NumberOfSensors=2
Sensor0=04016943
Sensor1=0400E889

Notice: Please make sure above settings (in blue color) is correct. And please do not change other settings.

SerialPort

  • Assign serial port which USB receiver (USB300) is using.

Interval

  • The time delay between data access round in second.

NumberOfSensors

  • Assign number of Tower Light Sensor module

Sensor0

  • Assign id for Tower Light Sensor module. Format is Sensor0=<<MODULE_ID>>
  • If you have multi Tower Light Sensor module, please start at a number 0 for the first module.
  • Second module use Sensor1.

Debug

1. Check all installed software versions are correct.

2. Check if service is running

  • Make sure EoLinkManager service is running.
  • Make sure WISEAgent service is running.
  • Make sure APIGateway service is running.
  • Make sure mosquitto service is running.

3. Check EoLinkManger log file

  • log files is available at EoLinkManager installed folder, (ex: C:\Program Files (x86)\Advantech\EoLinkManager\logs)
  • View logs files to check if there are any error messages.

4. Check EoLinkManager configuration

  • Make sure SerialPort setting is the port number USB receiver (USB300) is using.
  • Make sure Tower Light Sensor module id is correct and assigned in Sensors section in configuration file.

5. Check if device id of Tower Light Module is listed in Sensor Hub List

In web browser and open url : http://GATEWAY_IP:3000/restapi/WSNManage/SenHub/AllSenHubList

Once Tower Light Module is managed by EoLinkManager, its device id will be listed in Sensor Hub List as shown on below picture.

RTENOTITLE

6. Check WISE-Agent connection status

  • Launch WISE-Agent shortcut in Windows Desktop.
    RTENOTITLE
  • Check if WISE-Agent is connected as below picture.
    TLS debug wiseagent connection2.PNG

7. Check if sensor data is published to WISE-PaaS/EdgeSense

  • Use web browser to open WISE-PaaS/EdgeSense web pages.
  • Go to Device Page and choose the LightSensor device you are using, click on Monitor icon.
  • In Monitor page, select SenHub , then you can monitor the LightSensor data payload.

Grafana Dashboard



Release

Version Date
Platform
OS
Release Note
Download Link
Note
1.0.6 2021/8/23 x86_64 CPU
Windows 10
  • Add log message
  • Watchdog
  • Improve stability
  • Verified by WISE-Agent 1.2.17

API-GW 2.0.9

EoLinkManager 1.0.6

MQTTBroker 1.0.6

USB receiver driver:
CDM21228_Setup.exe

Notice: If API-GW 2.0.7 is installed in your system, please remove API-GW 2.0.7 first, then install API-GW v2.0.9. Please follow this guide.
1.0.5
2020/6/1
x86_64 CPU
Windows 10
  • Fix same Device Name shown in EdgeSense.
  • Verified by WISE-Agent 1.2.17

API-GW 2.0.8

EoLinkManager 1.0.5

MQTTBrokerSetup 1.0.4

USB receiver driver:
CDM21228_Setup.exe

Notice: If API-GW 2.0.7 is installed in your system, please remove API-GW 2.0.7 first, then install API-GW v2.0.8. Please follow this guide.
1.0.4
2019/12/20
x86_64 CPU
Windows 10
  • Add log message
  • Fix no sensor data received cause lost connection
  • Verified by EdgeSense 1.0.106
  • Verified by WISE-Agent 1.2.17

API-GW 2.0.7

EoLinkManager 1.0.4

MQTTBrokerSetup 1.0.4

USB receiver driver:
CDM21228_Setup.exe


Troubleshooting

After upgrading API-GW, API-GW not running

API-GW v2.0.7 or older version is not able to upgrade to v2.0.8

Please remove older version API-GW first, then install API-GW v2.0.8

Below steps shows how to cleanly remove API-GW v2.0.7 or older version.

Step-1. Remove API-GW

RTENOTITLE

Step-2. Remove service.

If API-GW is still listed in service manager as below picture,

RTENOTITLE

Then, use command line with Administrator privileges to run

sc delete apigw.exe

RTENOTITLE