Changes

no edit summary
Line 99: Line 99:     
{{#switch: {{{name}}}  
 
{{#switch: {{{name}}}  
| TRB141 = [[File:Networking_trb141_manual_input_output_status_v3.png|border|class=tlt-border]]
+
| TRB141 = [[File:Networking_trb141_manual_input_output_status_v4.png|border|class=tlt-border]]
| RUT950 = [[File:Networking_RUT950_manual_input_output_status.png|border|class=tlt-border]]
+
| RUT955|RUT956|RUT906 = [[File:Networking_RUT955_manual_input_output_status_v4.png|border|class=tlt-border]]
| RUT955|RUT956|RUT906 = [[File:Networking_RUT955_manual_input_output_status_v3.png|border|class=tlt-border]]
+
| TRB245|TRB246|TRB255|TRB256 = [[File:Networking_trb2_manual_input_output_status_v3.png|border|class=tlt-border]]
| TRB245|TRB255 = [[File:Networking_trb2_manual_input_output_status_v3.png|border|class=tlt-border]]
   
| [[File:Networking_{{lc:{{{series}}}}}_manual_input_output_status.png|border|class=tlt-border]]
 
| [[File:Networking_{{lc:{{{series}}}}}_manual_input_output_status.png|border|class=tlt-border]]
 
}}
 
}}
    
You can invert an Input pin by clicking the on/off slider under the "Inversion" column or switch the state of an Output pin by clicking the on/off slider under the "State" column.
 
You can invert an Input pin by clicking the on/off slider under the "Inversion" column or switch the state of an Output pin by clicking the on/off slider under the "State" column.
 +
 +
User can <b> Rename </b> Input/Output interface by clicking on the "Edit" button.
    
{{#switch: {{{name}}}  
 
{{#switch: {{{name}}}  
 
| TRB141 = '''Note:''' When dry/wet input is not connected to anything - the state of level is undetermined.
 
| TRB141 = '''Note:''' When dry/wet input is not connected to anything - the state of level is undetermined.
| RUT955|RUT956|RUT906|TRB245|TRB255|TRB141 = [[File:Networking_manual_input_output_status_formula.png|border|class=tlt-border]]
+
| #default =}}
| RUT955|RUT956|RUT906|TRB245|TRB255|TRB141 = '''Note:''' You can edit the adc/acl formula to customize values.
+
{{#switch: {{{name}}}
 +
| RUT955|RUT956|RUT906|TRB245|TRB246|TRB255|TRB141|TRB256 =
 +
'''Note:''' You can edit the adc/acl formula to customize values.
 +
 
 +
Custom I/O status labels for "Analog input":
 +
[[File:Networking_manual_input_output_status_formula_adc0.png|border|class=tlt-border]]
 +
 
 +
Custom I/O status labels for "Analog current loop":
 +
[[File:Networking_manual_input_output_status_formula_acl0.png|border|class=tlt-border]]
 
| #default =
 
| #default =
 
}}
 
}}
Line 127: Line 136:  
}}
 
}}
   −
{{#switch: {{{series}}}
+
{{#switch: {{{name}}}
| RUT300|RUT360|TRB245|TRB255|TRB140|TRB141|TRB142|TRB143|TRB145 = '''Note:''' Changes of configurable pin type  from output to input (and reverse) could causes the issues where the specific type was set in configurations. Make sure that configurations do not contradict one another.
+
| RUT300|RUT301|RUT360|TRB245|TRB246|TRB255|TRB140|TRB141|TRB142|TRB143|TRB145|TRB256 = '''Note:''' Changes of configurable pin type  from output to input (and reverse) could causes the issues where the specific type was set in configurations. Make sure that configurations do not contradict one another.
 
| #default =
 
| #default =
 
}}
 
}}
Line 136: Line 145:  
Enabling <b>Post/Get</b> provides the possibility to control the state of an output via HTTP POST/GET requests. The figure below is an example of the Auth Settings section of the Post/Get page. It is used to turn Post/Get requests on or off and to set authentication parameters.
 
Enabling <b>Post/Get</b> provides the possibility to control the state of an output via HTTP POST/GET requests. The figure below is an example of the Auth Settings section of the Post/Get page. It is used to turn Post/Get requests on or off and to set authentication parameters.
   −
[[File:Networking_rutos_manual_input_output_post_get_auth_settings_v2.png|border|class=tlt-border]]
+
[[File:Networking_rutos_manual_input_output_post_get_auth_settings_v3.png|border|class=tlt-border]]
    
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 146: Line 155:  
     <tr>
 
     <tr>
 
       <td>Enable</td>
 
       <td>Enable</td>
       <td>off | on; default: <b>off</b></td>
+
       <td>off {{!}} on; default: <b>off</b></td>
 
       <td>Turns Post/Get on or off.</td>
 
       <td>Turns Post/Get on or off.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td>Access</td>
 
       <td>Access</td>
       <td>io_state | io_type | io_value; default: <b>io_state, io_type, io_value</b></td>
+
       <td>io_state {{!}} io_type {{!}} io_value {{!}} io_invert; default: <b>io_state, io_type, io_value, io_invert</b></td>
 
       <td>Accessible methods. It is considered that all methods are allowed if this list is empty.</td>
 
       <td>Accessible methods. It is considered that all methods are allowed if this list is empty.</td>
 
     </tr>
 
     </tr>
Line 186: Line 195:  
       <th style="width: 900px">POST/GET URL</th>
 
       <th style="width: 900px">POST/GET URL</th>
 
     </tr>
 
     </tr>
{{#ifeq:{{{configurableio}}}|1|
+
 
 
     <tr>
 
     <tr>
 
       <td>Turn Output state to high</td> <!--  another ifeq to change ip subnet according to trb14x...  -->
 
       <td>Turn Output state to high</td> <!--  another ifeq to change ip subnet according to trb14x...  -->
       <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_state</b></span><nowiki>?username=user1&password=user1&pin=</nowiki>{{#ifeq:{{{series}}}|RUTX|dout1|dio1}}<span style="color: #0054a6;"><b><nowiki>&state=on</nowiki></b></span></td>
+
       <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_state</b></span><nowiki>?username=user1&password=user1&pin=</nowiki>{{#ifeq:{{{series}}}|RUTX|dout1|<dio0/dio1{{#switch:{{{series}}}|TRB2|TRB2M=/dio2}}>}}<span style="color: #0054a6;"><b><nowiki>&state=on</nowiki></b></span></td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td>Turn Output state to low after 5 seconds for 3 seconds</td>
 
       <td>Turn Output state to low after 5 seconds for 3 seconds</td>
       <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_state</b></span><nowiki>?username=user1&password=user1&pin=</nowiki>{{#ifeq:{{{series}}}|RUTX|dout1|dio1}}&state=on<span style="color: #0054a6;"><b><nowiki>&delay=5</nowiki></b></span><span style="color: #3232ff;"><b><nowiki>&time=3</nowiki></b></span></td>
+
       <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_state</b></span><nowiki>?username=user1&password=user1&pin=</nowiki>{{#ifeq:{{{series}}}|RUTX|dout1|<dio0/dio1{{#switch:{{{series}}}|TRB2|TRB2M=/dio2}}>}}&state=on<span style="color: #0054a6;"><b><nowiki>&delay=5</nowiki></b></span><span style="color: #3232ff;"><b><nowiki>&time=3</nowiki></b></span></td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
         <td>Change Configurable Input/Output with pin3 to Output</td>
+
         <td>Check t_time parameter - time is set in miliseconds</td>
         <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_type</b></span><nowiki>?username=user1&password=user1&</nowiki><span style="color: #0054a6;"><b>pin=dio0</b></span><span style="color: #3232ff;"><b><nowiki>&type=out</nowiki></b></span></td>
+
         <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_state</b></span><nowiki>?username=user1&password=user1&pin=</nowiki>{{#ifeq:{{{series}}}|RUTX|dout1|<dio0/dio1{{#switch:{{{series}}}|TRB2|TRB2M=/dio2}}>}}&state=on<span style="color: #0054a6;"><b><nowiki>&t_time=msec</nowiki></b></span><span style="color: #3232ff;"><b><nowiki>&time=5000</nowiki></b></span><span style="color: #3232ff;"><b><nowiki>&time=1000</nowiki></b></span></td>
 
     </tr>
 
     </tr>
|
   
     <tr>
 
     <tr>
      <td>Turn Output state to high</td>
+
        <td>Invert input</td>
      <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/io_state?username=user1&password=user1&pin=dout1<span style="color: #0054a6;"><b><nowiki>&state=on</nowiki></b></span></td>
+
        <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/io_invert?username=user1&password=user1&pin={{#ifeq:{{{series}}}|RUTX|din1|<dio0/dio1{{#switch:{{{series}}}|TRB2|TRB2M=/dio2}}>}}<span style="color: #0054a6;"><b><nowiki>&invert=<0/1> (0 - disable inversion/1 - enable inversion</nowiki></b></span></td>
 
     </tr>
 
     </tr>
 +
{{#ifeq:{{{configurableio}}}|1|
 
     <tr>
 
     <tr>
      <td>Turn Output state to low after 5 seconds for 3 seconds</td>
+
        <td>Change Configurable Input/Output with pin3 to Output</td>
      <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/io_state?username=user1&password=user1&pin=dout1&state=on<span style="color: #0054a6;"><b><nowiki>&delay=5</nowiki></b></span><span style="color: #3232ff;"><b><nowiki>&time=3</nowiki></b></span></td>
+
        <td><nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1/cgi-bin/<span style="color: #0054a6;"><b>io_type</b></span><nowiki>?username=user1&password=user1&</nowiki><span style="color: #0054a6;"><b>pin=dio0</b></span><span style="color: #3232ff;"><b><nowiki>&type=out</nowiki></b></span></td>
 
     </tr>
 
     </tr>
}}
+
||}}
   
+
 
 
</table>
 
</table>
   Line 215: Line 224:  
<ul>
 
<ul>
 
     <li>192.168.{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1 - device default LAN IP address; replace it in accordance with your own configuration.</li>
 
     <li>192.168.{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}.1 - device default LAN IP address; replace it in accordance with your own configuration.</li>
{{#ifeq:{{{configurableio}}}|1|<li>io_state or io_type - allows you to change IO state or type.</li>}}
+
{{#ifeq:{{{configurableio}}}|1|<li>io_state,io_type or io_invert- allows you to change IO state, type or invert cofigurable input.</li>}}
 
     <li>username - login name from Post/Get configuration.</li>
 
     <li>username - login name from Post/Get configuration.</li>
 
     <li>password- password from Post/Get configuration.</li>
 
     <li>password- password from Post/Get configuration.</li>
 
     <li>state - turn Output on or off.</li>
 
     <li>state - turn Output on or off.</li>
 
{{#ifeq:{{{configurableio}}}|1|<li>type - turn Configurable Input/Output to Input or Output.</li>}}
 
{{#ifeq:{{{configurableio}}}|1|<li>type - turn Configurable Input/Output to Input or Output.</li>}}
 +
    <li>invert - enables inversion on/off (only works with inputs).</li>
 
     <li>delay - defines a delay (in seconds) after which the specified action will be performed.</li>
 
     <li>delay - defines a delay (in seconds) after which the specified action will be performed.</li>
 
     <li>time - defines a window of time during which the action will take place. For instance, if you post an <i>on</i> action while specifying <i>time=5</i>, the output will turn on and stay on for 5 seconds before turning off.</li>
 
     <li>time - defines a window of time during which the action will take place. For instance, if you post an <i>on</i> action while specifying <i>time=5</i>, the output will turn on and stay on for 5 seconds before turning off.</li>
Line 241: Line 251:  
<b>Examples:</b>
 
<b>Examples:</b>
   −
{{#ifeq:{{{configurableio}}}|1|* <b>Read state of Configurable Input/Output PIN3:</b>
+
{{#ifeq:{{{configurableio}}}|1|* {{#switch:{{{name}}}|TRB245|TRB246|TRB255|TRB256 = <b>Read state of Configurable Input/Output PIN2/PIN3/PIN4:</b>
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio0</nowiki>"|
+
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio0</nowiki>"
* <b>Read state of digital output:</b>
+
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio1</nowiki>"
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio2</nowiki>" | #default = <b>Read state of Configurable Input/Output PIN3/PIN4:</b>
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio0</nowiki>"
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dio1</nowiki>"}}|
 +
* <b>Read state of digital input/output:</b>
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=din1</nowiki>"
 
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dout1</nowiki>"}}
 
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dout1</nowiki>"}}
 
{{#ifeq:{{{analog}}}|1|* <b>Read state of analog input (in voltage mode):</b>
 
{{#ifeq:{{{analog}}}|1|* <b>Read state of analog input (in voltage mode):</b>
Line 261: Line 276:  
{{#ifeq:{{{latchingrelay}}}|1|* <b>Read state of Latching Relay:</b>
 
{{#ifeq:{{{latchingrelay}}}|1|* <b>Read state of Latching Relay:</b>
 
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=relay1</nowiki>"|}}
 
  curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=relay1</nowiki>"|}}
 +
{{#ifeq:{{{galvanic}}}|1|* <b>Read state of Galvanically isolated open collector output:</b>
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=dout2</nowiki>"|}}
 +
{{#ifeq:{{{digitalpassive}}}|1|* <b>Read state of Digital input (only for passive sensors):</b>
 +
curl -X GET "<nowiki>http://192.168.</nowiki>{{#switch:{{{series}}}|TRB1|TRB5=2|#default=1}}<nowiki>.1/cgi-bin/io_value?username=user1&password=user1&pin=din2</nowiki>"|}}
    
==Scheduler==
 
==Scheduler==
Line 332: Line 351:  
The <b>I/O Juggler</b> is a feature that provides the possibility to create automated rules that perform certain actions based on Input state changes and other conditions. The operating sequence of I/O Juggler can be visualized as such:
 
The <b>I/O Juggler</b> is a feature that provides the possibility to create automated rules that perform certain actions based on Input state changes and other conditions. The operating sequence of I/O Juggler can be visualized as such:
   −
[[File:Networking_rutos_manual_input_output_io_juggler_scheme_condition_mobile_{{{mobile}}}.png]]
+
[[File:Networking_rutos_manual_input_output_io_juggler_scheme_condition_mobile_{{{mobile}}}.png|border|class=tlt-border]]
    
When an Input Trigger occurs, the Input check to see if user-specified conditions are also met. If so, it executes a user-specified action.
 
When an Input Trigger occurs, the Input check to see if user-specified conditions are also met. If so, it executes a user-specified action.
Line 437: Line 456:  
{{#switch: {{{name}}}
 
{{#switch: {{{name}}}
 
| RUTX12| RUTM12 =  [[File:Networking rutos manual input output io juggler actions email rutx12 v2.png|border|class=tlt-border]]
 
| RUTX12| RUTM12 =  [[File:Networking rutos manual input output io juggler actions email rutx12 v2.png|border|class=tlt-border]]
 +
| RUTX10 = [[File:Networking_rutos_manual_input_output_io_juggler_actions_email_rutx10_v2.png|border|class=tlt-border]]
 
| #default = [[File:Networking rutos manual input output io juggler actions email v2.png|border|class=tlt-border]]
 
| #default = [[File:Networking rutos manual input output io juggler actions email v2.png|border|class=tlt-border]]
 
}}
 
}}
Line 586: Line 606:  
Executes a custom, user-written shell script.
 
Executes a custom, user-written shell script.
   −
[[File:Networking_rutos_manual_input_output_io_juggler_actions_script.png|border|class=tlt-border]]
+
{{#switch: {{{name}}}
 +
| RUTX10 = [[File:Networking_rutos_manual_input_output_io_juggler_actions_script_rutx10_v1.png|border|class=tlt-border]]
 +
| #default = [[File:Networking_rutos_manual_input_output_io_juggler_actions_script.png|border|class=tlt-border]]
 +
}}
 +
 
    
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 687: Line 711:  
Executes a MQTT action.
 
Executes a MQTT action.
   −
[[File:Networking rutos manual input output io juggler actions mqtt.png|border|class=tlt-border]]
+
{{#switch: {{{name}}}
 +
| RUTX10 = [[File:Networking_rutos_manual_input_output_io_juggler_actions_mqtt_rutx10_v1.png|border|class=tlt-border]]
 +
| #default = [[File:Networking rutos manual input output io juggler actions mqtt_v1.png|border|class=tlt-border]]
 +
}}
 +
 
 +
 
    
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 705: Line 734:  
         <td>string; default: <b>none</b></td>
 
         <td>string; default: <b>none</b></td>
 
         <td>The name of the topic that the broker will subscribe to.</td>
 
         <td>The name of the topic that the broker will subscribe to.</td>
 +
    </tr>
 +
    <tr>
 +
        <td>Client ID</td>
 +
        <td>string; default: <b>none</b></td>
 +
        <td>Client ID to send with the data. If empty, a random client ID will be generated.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 735: Line 769:  
         <td>string; default: <b>none</b></td>
 
         <td>string; default: <b>none</b></td>
 
         <td>Password used for authentication to the Broker.</td>
 
         <td>Password used for authentication to the Broker.</td>
 +
    </tr>
 +
    <tr>
 +
        <td>TLS</td>
 +
        <td>off {{!}} <span style="color:blue">on</span>; default: <b>off</b></td>
 +
        <td>Select to enable TLS encryption.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">TLS Type</span></td>
 +
        <td>Certificate based {{!}} Pre-Shared-Key based; default: <b>Certificate based</b></td>
 +
        <td>Type of TLS encryption.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Certificate based:</span>Allow insecure connection</td>
 +
        <td>off {{!}} on; default: <b>off</b></td>
 +
        <td>Allow not verifying server authenticity.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Certificate based:</span>Certificate files from device</td>
 +
        <td>off {{!}} on; default: <b>off</b></td>
 +
        <td>Choose this option if you want to select certificate files from device.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Certificate based:</span>CA file</td>
 +
        <td>.crt file; default: <b>none</b></td>
 +
        <td>Upload CA file.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Certificate based:</span>Certificate file</td>
 +
        <td>.crt file; default: <b>none</b></td>
 +
        <td>TLS client or server certificate file.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Certificate based:</span>Key file</td>
 +
        <td>.key file; default: <b>none</b></td>
 +
        <td>TLS client or server key file.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Pre-Shared-Key based:</span>Pre-Shared-Key</td>
 +
        <td>string; default: <b>none</b></td>
 +
        <td>The pre-shared-key in hex format with no leading “0x”.</td>
 +
    </tr>
 +
    <tr>
 +
        <td><span style="color:blue">Pre-Shared-Key based:</span>Identity</td>
 +
        <td>string; default: <b>none</b></td>
 +
        <td>Specify the Identity.</td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>