This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/plc4x-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new a0e1ceb3e Site checkin for project PLC4X: Jenkins Tools
a0e1ceb3e is described below

commit a0e1ceb3ef80465dc451944b9dd18d26e381f5fa
Author: jenkins <[email protected]>
AuthorDate: Sun Aug 16 14:28:01 2026 +0000

    Site checkin for project PLC4X: Jenkins Tools
---
 plc4x/pre-release/users/protocols/ctrlx.html |  46 ++-
 plc4x/pre-release/users/protocols/index.html | 418 ++++++++++++++-------------
 search-index.js                              |   2 +-
 3 files changed, 254 insertions(+), 212 deletions(-)

diff --git a/plc4x/pre-release/users/protocols/ctrlx.html 
b/plc4x/pre-release/users/protocols/ctrlx.html
index 92bf5bf13..bfcc447b6 100644
--- a/plc4x/pre-release/users/protocols/ctrlx.html
+++ b/plc4x/pre-release/users/protocols/ctrlx.html
@@ -483,9 +483,10 @@
 <i class="fa icon-warning" title="Warning"></i>
 </td>
 <td class="content">
-This driver is unfinished and not usable yet. Only browsing and pinging work 
at all; there
-is no tag address syntax, so reading and writing are not available. This page 
describes the current
-state for anyone continuing the work - it is not linked from the navigation.
+This driver is unfinished and not usable yet. Discovery and pinging are the 
only things
+that work; there is no tag address syntax, so reading and writing are not 
available, and the browse
+implementation does not work yet either. This page describes the current state 
for anyone
+continuing the work - it is not linked from the navigation.
 </td>
 </tr>
 </table>
@@ -512,26 +513,38 @@ HTTPS, rather than over an industrial fieldbus 
protocol.</p>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>browse</code></p></td>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>ping</code></p></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div 
class="paragraph">
-<p>Enumerates the device&#8217;s Data Layer nodes. This is the driver&#8217;s 
main capability.</p>
+<p>Checks that the device is reachable and the credentials are accepted.</p>
 </div></div></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>ping</code></p></td>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>discover</code></p></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div 
class="paragraph">
-<p>Checks that the device is reachable and the credentials are accepted.</p>
+<p>Locates ctrlX CORE devices on the local network.</p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>browse</code></p></td>
+<td class="tableblock halign-left valign-top"><div class="content"><div 
class="paragraph">
+<p><strong>Does not work yet.</strong> The connection carries an 
implementation that is meant to enumerate the
+device&#8217;s Data Layer nodes, and it is the furthest along of the 
unfinished operations, but it does
+not produce usable results.</p>
 </div></div></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>read</code> / <code>write</code> / 
<code>subscribe</code></p></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div 
class="paragraph">
-<p><strong>Not implemented.</strong> The connection reports these as supported 
in its metadata, but the
-corresponding request builders return <code>null</code>, so attempting one 
fails. Use <code>browse</code> for now.</p>
+<p><strong>Not implemented.</strong> The corresponding request builders return 
<code>null</code>, so attempting one fails.</p>
 </div></div></td>
 </tr>
 </tbody>
 </table>
+<div class="paragraph">
+<p>The connection reports all four of these as unsupported in its metadata, so 
a caller that checks
+<code>getMetadata()</code> before deciding what to do gets an honest answer 
rather than being sent into a
+request that cannot succeed.</p>
+</div>
 </div>
 </div>
 <div class="sect1">
@@ -579,9 +592,22 @@ object that is not a username/password pair is rejected as 
well.
 <div class="sect1">
 <h2 id="_browsing"><a class="anchor" href="#_browsing"></a>Browsing</h2>
 <div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Browsing does not work yet. What follows describes how the existing 
implementation is meant
+to be used, for whoever picks the work up.
+</td>
+</tr>
+</table>
+</div>
 <div class="paragraph">
 <p>Browse queries are glob patterns matched against the Data Layer node paths, 
not tag addresses.
-<code>**</code> matches everything and is the simplest way to see what a 
device exposes:</p>
+<code>**</code> matches everything and is intended as the simplest way to see 
what a device exposes:</p>
 </div>
 <div class="listingblock">
 <div class="content">
diff --git a/plc4x/pre-release/users/protocols/index.html 
b/plc4x/pre-release/users/protocols/index.html
index 2cdf2420b..56818076a 100644
--- a/plc4x/pre-release/users/protocols/index.html
+++ b/plc4x/pre-release/users/protocols/index.html
@@ -477,6 +477,11 @@
 <h1 class="page">Current language support for protocols</h1>
 <div id="preamble">
 <div class="sectionbody">
+<div class="paragraph">
+<p>The tables below list the drivers that actually ship with each language 
implementation.
+A protocol only appears as supported where a driver exists and is registered 
with that
+implementation&#8217;s driver manager - a protocol specification on its own is 
not enough.</p>
+</div>
 <table class="tableblock frame-all grid-all stretch">
 <colgroup>
 <col style="width: 16.6666%;">
@@ -522,18 +527,26 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">CBus</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">CAN 
(raw)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">CANopen</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock">CBus</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
@@ -542,7 +555,7 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
@@ -557,7 +570,7 @@
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">EtherNet/IP</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
@@ -573,8 +586,8 @@
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Firmata</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
@@ -588,7 +601,7 @@
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">KNXnet/IP</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
@@ -605,7 +618,7 @@
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">OPC-UA</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
@@ -619,7 +632,7 @@
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">PLC4X 
(Proxy-Protocol)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
@@ -637,15 +650,15 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock">S7</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Simulated</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
@@ -654,7 +667,7 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
@@ -674,264 +687,255 @@
 <tbody>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Legend:</p>
-<p class="tableblock">- <span class="icon green"><i class="fa 
fa-check"></i></span> Implemented and fully supported
-- <span class="icon yellow"><i class="fa fa-exclamation"></i></span> Work in 
progress
-- <span class="icon red"><i class="fa fa-check"></i></span> Not implemented yet
-- <span class="icon red"><i class="fa fa-question"></i></span> Unsure</p></td>
+<p class="tableblock">- <span class="icon green"><i class="fa 
fa-check"></i></span> Implemented and usable
+- <span class="icon yellow"><i class="fa fa-exclamation"></i></span> Partially 
implemented - see the notes below
+- <span class="icon red"><i class="fa fa-times"></i></span> Not 
implemented</p></td>
 </tr>
 </tbody>
 </table>
+<div class="paragraph">
+<p>Notes on the partially implemented drivers:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>AB-Ethernet</strong> (Java) reads and offers polled subscriptions; 
there is no write support.</p>
+</li>
+<li>
+<p><strong>BACnet/IP</strong> passively receives broadcast traffic and exposes 
it as subscriptions. It does not read or write properties.</p>
+</li>
+<li>
+<p><strong>CAN (raw)</strong> (Java) writes and subscribes; there is no read 
support.</p>
+</li>
+<li>
+<p><strong>CBus</strong> (Java) is a skeleton that connects but implements no 
operations. The Go driver is the complete one.</p>
+</li>
+<li>
+<p><strong>ctrlX</strong> (Java) discovers devices and answers pings. Its 
read, write and subscribe builders are not implemented, and although the 
connection carries browse code, browsing does not work yet.</p>
+</li>
+<li>
+<p><strong>Firmata</strong> (Java) writes and subscribes; there is no read 
support.</p>
+</li>
+<li>
+<p><strong>KNXnet/IP</strong> (C#) is the only driver in plc4net and has not 
kept pace with the other implementations.</p>
+</li>
+<li>
+<p><strong>Open-Protocol</strong> (Java) is a skeleton that connects but 
implements no operations.</p>
+</li>
+<li>
+<p><strong>Profinet</strong> (Java) browses, discovers and subscribes to 
cyclic data; it has no read or write support. Both the <code>profinet</code> 
and the newer <code>profinet-ng</code> driver behave this way.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p><strong>DF1</strong> has a protocol specification in the repository, and 
plc4go additionally ships the generated
+message model for it, but no language implementation has a driver: there is 
nothing that can open a
+DF1 connection. DF1 command messages also appear inside the AB-Ethernet model, 
which is where that
+protocol is actually used today.</p>
+</div>
 </div>
 </div>
 <div class="sect1">
 <h2 id="_features"><a class="anchor" href="#_features"></a>Features</h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>The following table contains a list of operations and the protocols that 
support them:</p>
+<p>The table below lists which operations each driver actually implements. It 
describes <strong>plc4j</strong>,
+because that is the most complete implementation; the other languages support 
a subset. An
+operation is listed as supported where the driver implements it - drivers 
report their own
+metadata inconsistently, so this table follows the code rather than the 
metadata.</p>
 </div>
 <table class="tableblock frame-all grid-all stretch">
 <colgroup>
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
-<col style="width: 10%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2857%;">
+<col style="width: 14.2858%;">
 </colgroup>
 <thead>
 <tr>
 <th class="tableblock halign-left valign-top">Protocol</th>
-<th class="tableblock halign-left valign-top">Auto-Discover</th>
+<th class="tableblock halign-left valign-top">Discovery</th>
 <th class="tableblock halign-left valign-top">Browse</th>
-<th class="tableblock halign-left valign-top">Read Single Address Value</th>
-<th class="tableblock halign-left valign-top">Read Multiple Address Values</th>
-<th class="tableblock halign-left valign-top">Write Single Address Value</th>
-<th class="tableblock halign-left valign-top">Write Multiple Address Value</th>
-<th class="tableblock halign-left valign-top">Subscribe to Value changes</th>
-<th class="tableblock halign-left valign-top">Subscribe to PLC 
Events/Alarms</th>
-<th class="tableblock halign-left valign-top">Publish Values</th>
+<th class="tableblock halign-left valign-top">Read</th>
+<th class="tableblock halign-left valign-top">Write</th>
+<th class="tableblock halign-left valign-top">Subscribe</th>
+<th class="tableblock halign-left valign-top">Ping</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">AB-Ethernet</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">ADS 
/AMS</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">BACnet/IP</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">CBus</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">CAN 
(raw)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">CANopen</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">DF1</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock">CBus</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p 
class="tableblock">ctrlX</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">EtherNet/IP</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">EtherNet/IP - Logix</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Firmata</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">IEC-60870</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">KNXnet/IP</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Modbus 
(TCP/RTU/ASCII)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">OPC-UA</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Open-Protocol (Torque-Tools)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">PLC4X 
(Proxy-Protocol)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Profinet</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">S7</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">Simulated</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">SLMP 
(MELSEC)</p></td>
@@ -939,23 +943,17 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p 
class="tableblock">UMAS</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-times"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon yellow"><i class="fa fa-exclamation"></i></span></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon green"><i class="fa fa-check"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><span 
class="icon red"><i class="fa fa-question"></i></span></p></td>
 </tr>
 </tbody>
 </table>
@@ -966,13 +964,31 @@
 <tbody>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Legend:</p>
-<p class="tableblock">- <span class="icon green"><i class="fa 
fa-check"></i></span> Implemented and fully supported
-- <span class="icon yellow"><i class="fa fa-exclamation"></i></span> 
Implemented and supported by simulation
-- <span class="icon red"><i class="fa fa-check"></i></span> Not implemented yet
-- <span class="icon red"><i class="fa fa-question"></i></span> Unsure</p></td>
+<p class="tableblock">- <span class="icon green"><i class="fa 
fa-check"></i></span> Implemented by the driver
+- <span class="icon yellow"><i class="fa fa-exclamation"></i></span> Emulated: 
the protocol has no native support, so PLC4X provides it
+- <span class="icon red"><i class="fa fa-times"></i></span> Not 
implemented</p></td>
 </tr>
 </tbody>
 </table>
+<div class="paragraph">
+<p>Protocols such as Modbus have no notion of a subscription - a client has to 
poll. Drivers for those
+protocols extend <code>PollingSubscriptionConnectionBase</code>, which turns a 
subscription request into a
+polling loop and emits change events from it, so application code can use the 
same subscription API
+everywhere. This is what the yellow subscription entries above mean; the 
traffic on the wire is
+still a sequence of reads. AB-Ethernet, EtherNet/IP (including Logix), Modbus, 
SLMP and UMAS work
+this way.</p>
+</div>
+<div class="paragraph">
+<p>The Logix driver reuses the EtherNet/IP connection, so it supports the same 
operations, but it does
+not expose device discovery. S7 discovery uses PROFINET DCP and needs the 
optional pcap4j runtime
+(and libpcap on the host) to be installed.</p>
+</div>
+<div class="paragraph">
+<p>A read or write request always carries a set of tags, so there is no 
separate "single value" and
+"multiple values" support: a driver that can read can read any number of tags 
in one request. How
+efficiently it does so differs - some drivers split a request into several PLC 
requests and merge
+the responses.</p>
+</div>
 </div>
 </div>
 </article>
diff --git a/search-index.js b/search-index.js
index 763bfeb85..568a2cb8f 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1 +1 @@
-antoraSearch.initSearch(lunr, 
{"index":{"version":"2.3.9","fields":["title","name","text","component"],"fieldVectors":[["title/1",[0,68.524]],["name/1",[1,1.482]],["text/1",[]],["component/1",[2,0.399]],["title/2-1",[3,34.33,4,29.841]],["name/2-1",[]],["text/2-1",[]],["component/2-1",[]],["title/2-2",[5,43.394]],["name/2-2",[]],["text/2-2",[]],["component/2-2",[]],["title/2-3",[6,12.025,7,12.723,8,9.568,9,16.188,10,15.491,11,20.832,12,26.129,13,12.057]],["name/2-3",[]],["text/2-3",[]],["
 [...]
\ No newline at end of file
+antoraSearch.initSearch(lunr, 
{"index":{"version":"2.3.9","fields":["title","name","text","component"],"fieldVectors":[["title/1",[0,68.524]],["name/1",[1,1.482]],["text/1",[]],["component/1",[2,0.399]],["title/2-1",[3,34.33,4,29.841]],["name/2-1",[]],["text/2-1",[]],["component/2-1",[]],["title/2-2",[5,43.394]],["name/2-2",[]],["text/2-2",[]],["component/2-2",[]],["title/2-3",[6,12.025,7,12.723,8,9.549,9,16.188,10,15.491,11,20.832,12,25.715,13,12.088]],["name/2-3",[]],["text/2-3",[]],["
 [...]
\ No newline at end of file

Reply via email to