This is an automated email from the ASF dual-hosted git repository.
chrisdutz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git
The following commit(s) were added to refs/heads/develop by this push:
new f8fcee41be doc: Updated the driver partials and updated the slmp to
use the newly generated partial.
f8fcee41be is described below
commit f8fcee41bead38f4f19f894027e1fe59ebda8a53
Author: Christofer Dutz <[email protected]>
AuthorDate: Tue Jul 14 17:07:09 2026 +0200
doc: Updated the driver partials and updated the slmp to use the newly
generated partial.
---
.../modules/users/pages/protocols/slmp.adoc | 14 +-----
.../asciidoc/modules/users/partials/ab-eth.adoc | 17 +++++--
.../asciidoc/modules/users/partials/bacnet-ip.adoc | 37 ++++-----------
website/asciidoc/modules/users/partials/c-bus.adoc | 12 +++--
.../asciidoc/modules/users/partials/canopen.adoc | 14 ++++--
website/asciidoc/modules/users/partials/eip.adoc | 17 +++++--
.../asciidoc/modules/users/partials/firmata.adoc | 54 +++++++++++-----------
.../modules/users/partials/genericcan.adoc | 11 +++--
.../modules/users/partials/iec-60870-5-104.adoc | 14 ++++--
.../asciidoc/modules/users/partials/knxnet-ip.adoc | 37 +++++----------
website/asciidoc/modules/users/partials/logix.adoc | 20 ++++----
.../modules/users/partials/modbus-ascii.adoc | 13 ++----
.../modules/users/partials/modbus-rtu.adoc | 13 ++----
website/asciidoc/modules/users/partials/opcua.adoc | 20 +++++---
.../modules/users/partials/open-protocol.adoc | 13 ++++--
website/asciidoc/modules/users/partials/plc4x.adoc | 37 +++++++++++++--
.../asciidoc/modules/users/partials/profinet.adoc | 24 +++++++---
website/asciidoc/modules/users/partials/s7.adoc | 14 ++----
.../partials/{iec-60870-5-104.adoc => slmp.adoc} | 21 ++++++---
19 files changed, 221 insertions(+), 181 deletions(-)
diff --git a/website/asciidoc/modules/users/pages/protocols/slmp.adoc
b/website/asciidoc/modules/users/pages/protocols/slmp.adoc
index 51257c8b39..f7f83c60c3 100644
--- a/website/asciidoc/modules/users/pages/protocols/slmp.adoc
+++ b/website/asciidoc/modules/users/pages/protocols/slmp.adoc
@@ -30,19 +30,7 @@ This initial version is *read-only* and supports reading
word devices (D, W and
== Connection String Options
-[cols="2,2a,2a,2a,4a"]
-|===
-|Name |Type |Default Value |Required |Description
-|Name 4+|SLMP
-|Code 4+|`slmp`
-|Default Transport 4+|`tcp`
-|Default Port 4+|`5007`
-|Supported Transports 4+|
- - `tcp`
-5+|Config options:
-|`monitoring-timer` |INT |0| |SLMP monitoring timer written into each 3E
request frame (0 = wait infinitely).
-|`request-timeout` |INT |5000| |Client-side timeout in milliseconds awaiting a
response.
-|===
+include::partial$slmp.adoc[]
== Supported Operations
diff --git a/website/asciidoc/modules/users/partials/ab-eth.adoc
b/website/asciidoc/modules/users/partials/ab-eth.adoc
index e345f4c29f..e5c753ef1f 100644
--- a/website/asciidoc/modules/users/partials/ab-eth.adoc
+++ b/website/asciidoc/modules/users/partials/ab-eth.adoc
@@ -32,17 +32,24 @@
<version>{page-component-version}</version>
</dependency>
----
-|Default Transport 4+|`raw`
+|Default Transport 4+|`tcp`
|Supported Transports 4+|
- `tcp`
5+|Config options:
-|`station` |INT | | |Id of the station we want to connect to
+|`station` |INT |0| |Id of the station we want to connect to.
+|`request-timeout` |INT |10000| |Maximum time (in milliseconds) to wait for
the gateway to acknowledge the connection request or for a read response.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/bacnet-ip.adoc
b/website/asciidoc/modules/users/partials/bacnet-ip.adoc
index f495d950d7..3ac7890017 100644
--- a/website/asciidoc/modules/users/partials/bacnet-ip.adoc
+++ b/website/asciidoc/modules/users/partials/bacnet-ip.adoc
@@ -35,8 +35,6 @@
|Default Transport 4+|`udp`
|Supported Transports 4+|
- `udp`
- - `tcp`
- - `pcap`
5+|Config options:
|`ede-file-path` |FILE | | |Path to the location of a single EDE file, that
contains the descriptor for the target device.
|`ede-directory-path` |FILE | | |Path to the directory used for storing
multiple EDE files. These files contain the descriptors for the possible target
devices.
@@ -45,29 +43,14 @@
+++
<h4>udp</h4>
+++
-|`udp.local-port` |INT |-1| |Some connections require a UDP listener to listen
on a fixed port. +
-Use this configuration option in order to define the port number of the local
port.
-5+|
-+++
-<h4>tcp</h4>
-+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
-5+|
-+++
-<h4>pcap</h4>
-+++
-|`pcap.support-vlans` |BOOLEAN |false| |Enables support for VLans
-|`pcap.replay-speed-factor` |FLOAT |1.0| |Numeric value for changing the
replay speed: +
-- 1 = Normal speed (default) +
-- 0 = Maximum speed +
-- 0.5 = Half speed +
-- 2 = Double speed
-|`pcap.loop` |BOOLEAN |false| |Should the replay start at the beginning of the
file as soon as the end is reached? +
-- true = Automatically start again +
-- false = Stop at the end (default)
-|`pcap.filter` |STRING | | |Filter expression used to filter out unwanted
packets from the replay.
-|`pcap.support-vlans` |BOOLEAN |false| |Should VLan packets be automatically
unpacked?
-|`pcap.protocol-id` |INT |-1| |When provided, filters all packets to let only
packets matching this ethernet protocol-id pass.
+|`udp.local-address` |STRING | | |Local address to bind to. If not set, binds
to all interfaces.
+|`udp.local-port` |INT |0| |Local port to bind to. 0 uses ephemeral port.
+|`udp.read-timeout` |INT |0| |Socket read timeout in milliseconds. 0 means no
timeout.
+|`udp.max-packet-size` |INT |65507| |Maximum UDP packet size in bytes.
+|`udp.send-buffer-size` |INT |0| |Send buffer size in bytes. 0 uses system
default.
+|`udp.receive-buffer-size` |INT |0| |Receive buffer size in bytes. 0 uses
system default.
+|`udp.broadcast` |BOOLEAN |false| |Enable SO_BROADCAST for sending broadcast
packets.
+|`udp.reuse-address` |BOOLEAN |false| |Enable SO_REUSEADDR to allow multiple
bindings to the same address/port.
+|`udp.share-socket` |BOOLEAN |false| |Share the underlying UDP socket across
multiple transport instances. When true, instances with the same
localAddress:localPort will share a socket. This is useful for protocols where
multiple logical connections share one UDP port.
+|`udp.multicast-ttl` |INT |1| |Time-to-live for multicast packets (1-255).
|===
diff --git a/website/asciidoc/modules/users/partials/c-bus.adoc
b/website/asciidoc/modules/users/partials/c-bus.adoc
index b19dc5fc63..e198fa7583 100644
--- a/website/asciidoc/modules/users/partials/c-bus.adoc
+++ b/website/asciidoc/modules/users/partials/c-bus.adoc
@@ -42,7 +42,13 @@
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/canopen.adoc
b/website/asciidoc/modules/users/partials/canopen.adoc
index fd9b02c874..49f219620a 100644
--- a/website/asciidoc/modules/users/partials/canopen.adoc
+++ b/website/asciidoc/modules/users/partials/canopen.adoc
@@ -20,7 +20,7 @@
[cols="2,2a,2a,2a,4a"]
|===
|Name |Type |Default Value |Required |Description
-|Name 4+|CAN open
+|Name 4+|CANopen
|Code 4+|`canopen`
|Maven Dependency 4+|
@@ -32,16 +32,20 @@
<version>{page-component-version}</version>
</dependency>
----
-|Default Transport 4+|`socketcan`
+|Default Transport 4+|`can-socketcan`
|Supported Transports 4+|
- - `socketcan`
+ - `can-socketcan`
+ - `can-virtualcan`
5+|Config options:
|`node-id` |INT | | |CAN node identifier. Depending on used CAN version it
might be 11 or 29 bit unsigned int.
-|`heartbeat` |BOOLEAN | | |Forces PLC4X to send CANopen heartbeat (NMT)
messages to the bus.
|`request-timeout` |INT |1000| |Time after which dispatched BUS operation (ie.
SDO request) will be marked as failed.
5+|Transport config options:
5+|
+++
-<h4>socketcan</h4>
+<h4>can-socketcan</h4>
++++
+5+|
++++
+<h4>can-virtualcan</h4>
+++
|===
diff --git a/website/asciidoc/modules/users/partials/eip.adoc
b/website/asciidoc/modules/users/partials/eip.adoc
index 1f8d2bbf1a..3eaaba4d96 100644
--- a/website/asciidoc/modules/users/partials/eip.adoc
+++ b/website/asciidoc/modules/users/partials/eip.adoc
@@ -36,17 +36,24 @@
|Supported Transports 4+|
- `tcp`
5+|Config options:
-|`backplane` |INT |1| |Without using routing information the backplane
defaults to 1. This is overridden if communicationPath is provided.
-|`slot` |INT |0| |The slot within the backplane the CPU is located.
|`big-endian` |BOOLEAN |true| |Configure if the connection should be set to
transport data in Big-Endian format, or not.
|`force-unconnected-operation` |BOOLEAN |false| |Forces the driver to use
unconnected requests. +
*Since: 0.13.0*
+|`request-timeout` |INT |10000| |Default timeout for all types of requests.
+|`communication-path` |STRING | | |The communication path allows for
connection routing across multiple backplanes. It uses a common format found in
Logix controllers. +
+It consists of pairs of values, each pair begins with either 1 (Backplane) or
2 (Ethernet), followed by a slot in the case of a backplane address, or if
using Ethernet an ip address. e.g. [1,4,2,192.168.0.1,1,1] - Routes to the 4th
slot in the first rack, which is an Ethernet module, it then connects to the
address 192.168.0.1, then finds the module in slot 1.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/firmata.adoc
b/website/asciidoc/modules/users/partials/firmata.adoc
index 551e1a2b61..61d0d30afe 100644
--- a/website/asciidoc/modules/users/partials/firmata.adoc
+++ b/website/asciidoc/modules/users/partials/firmata.adoc
@@ -35,38 +35,36 @@
|Default Transport 4+|`serial`
|Supported Transports 4+|
- `serial`
+ - `tcp`
5+|Config options:
+|`request-timeout` |INT |10000| |Maximum time (in milliseconds) to wait for
the initial firmware-report reply during connection setup.
5+|Transport config options:
5+|
+++
<h4>serial</h4>
+++
-|`serial.baud-rate` |INT |57600| |Baud-rate the serial port is set to. +
-Typical values are: +
-- 9600 +
-- 14400 +
-- 19200 +
-- 38400 +
-- 57600 +
-- 115200 +
-- 128000 +
-But can also be smaller or larger values.
-|`serial.num-data-bits` |INT |8| |Number of data-bits used to send data. +
-Typical values are: +
-- 7 +
-- 8 +
-But can also be smaller or larger values.
-|`serial.num-stop-bits` |INT |1| |Number of stop-bits used to terminate data. +
-Typical values are: +
-- 1 +
-- 2 +
-(The theoretical 1.5 stop-bits setting is not supported)
-|`serial.parity` |STRING |NO_PARITY| |Number of bits used to calculate data
parity. +
-This is used to detect errors in transmission. +
-Allowed values are: +
-- NO_PARITY +
-- ODD_PARITY +
-- EVEN_PARITY +
-- MARK_PARITY +
-- SPACE_PARITY
+|`serial.baud-rate` |INT |9600| |Baud rate (bits per second)
+|`serial.data-bits` |INT |8| |Number of data bits (5, 6, 7, or 8)
+|`serial.stop-bits` |INT |1| |Number of stop bits (1 or 2)
+|`serial.parity` |STRING |none| |Parity: none, odd, even, mark, space
(case-insensitive)
+|`serial.flow-control` |STRING |none| |Flow control: none, rts-cts, xon-xoff
(case-insensitive)
+|`serial.read-timeout` |INT |1000| |Read timeout in milliseconds. 0 means
blocking read.
+|`serial.write-timeout` |INT |1000| |Write timeout in milliseconds.
+|`serial.dtr` |BOOLEAN |false| |Enable DTR (Data Terminal Ready) signal
+|`serial.rts` |BOOLEAN |false| |Enable RTS (Request To Send) signal
+|`serial.reuse-port` |BOOLEAN |false| |Reuse the underlying serial port across
multiple transport instances. When true, instances with the same port will
share a connection. This is useful for protocols where multiple logical
connections share one serial port. Connections sharing a port must target
distinct unit ids; Modbus RTU responses carry no transaction ids, so same-unit
traffic from multiple connections cannot be told apart.
+|`serial.interframe-delay` |INT |0| |Interframe delay in milliseconds for
protocols that need spacing between messages. Applies to shared and dedicated
ports; the gap is measured from the last write or received data.
+5+|
++++
+<h4>tcp</h4>
++++
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/genericcan.adoc
b/website/asciidoc/modules/users/partials/genericcan.adoc
index b49a50d4ad..028b2babab 100644
--- a/website/asciidoc/modules/users/partials/genericcan.adoc
+++ b/website/asciidoc/modules/users/partials/genericcan.adoc
@@ -32,15 +32,20 @@
<version>{page-component-version}</version>
</dependency>
----
-|Default Transport 4+|`socketcan`
+|Default Transport 4+|`can-socketcan`
|Supported Transports 4+|
- - `socketcan`
+ - `can-socketcan`
+ - `can-virtualcan`
5+|Config options:
|`node-id` |INT | | |Node id of the target device.
|`request-timeout` |INT |1000| |Default timeout for all types of requests.
5+|Transport config options:
5+|
+++
-<h4>socketcan</h4>
+<h4>can-socketcan</h4>
++++
+5+|
++++
+<h4>can-virtualcan</h4>
+++
|===
diff --git a/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
b/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
index 982376f3f8..9d526f9ee1 100644
--- a/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
+++ b/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
@@ -36,13 +36,19 @@
|Supported Transports 4+|
- `tcp`
5+|Config options:
-|`request-timeout` |INT |4000| |Default timeout for all types of requests.
+|`request-timeout` |INT |4000| |Maximum time (in milliseconds) to wait for the
test-frame and start-data-transfer handshake replies during connection setup.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/knxnet-ip.adoc
b/website/asciidoc/modules/users/partials/knxnet-ip.adoc
index f60e173e57..95030d1362 100644
--- a/website/asciidoc/modules/users/partials/knxnet-ip.adoc
+++ b/website/asciidoc/modules/users/partials/knxnet-ip.adoc
@@ -35,8 +35,6 @@
|Default Transport 4+|`udp`
|Supported Transports 4+|
- `udp`
- - `pcap`
- - `raw`
5+|Config options:
|`knxproj-file-path` |FILE | | |Path to the `knxproj` file. The default
KNXnet/IP protocol doesn't provide all the information needed to be able to
fully decode the messages.
|`knxproj-password` |STRING | | |Optional password needed to read the knxproj
file.
@@ -52,33 +50,20 @@ The default is 3 levels. If the `knxproj-file-path` this
information is provided
- 'LINK_LAYER' (default): The client becomes a participant of the KNX bus and
gets it's own individual KNX address. +
- 'RAW': The client gets unmanaged access to the bus (be careful with this) +
- 'BUSMONITOR': The client operates as a busmonitor where he can't actively
participate on the bus. Only one 'BUSMONITOR' connection is allowed at the same
time on a KNXnet/IP gateway.
+|`request-timeout` |INT |10000| |Maximum time (in milliseconds) to wait for a
reply during the KNXnet/IP search, connect and tunnelling exchanges.
5+|Transport config options:
5+|
+++
<h4>udp</h4>
+++
-|`udp.local-port` |INT |-1| |Some connections require a UDP listener to listen
on a fixed port. +
-Use this configuration option in order to define the port number of the local
port.
-5+|
-+++
-<h4>pcap</h4>
-+++
-|`pcap.replay-speed-factor` |FLOAT |1.0| |Numeric value for changing the
replay speed: +
-- 1 = Normal speed (default) +
-- 0 = Maximum speed +
-- 0.5 = Half speed +
-- 2 = Double speed
-|`pcap.loop` |BOOLEAN |false| |Should the replay start at the beginning of the
file as soon as the end is reached? +
-- true = Automatically start again +
-- false = Stop at the end (default)
-|`pcap.filter` |STRING | | |Filter expression used to filter out unwanted
packets from the replay.
-|`pcap.support-vlans` |BOOLEAN |false| |Should VLan packets be automatically
unpacked?
-|`pcap.protocol-id` |INT |-1| |When provided, filters all packets to let only
packets matching this ethernet protocol-id pass.
-5+|
-+++
-<h4>raw</h4>
-+++
-|`raw.resolve-mac-address` |BOOLEAN | | |If set to true, the transport will
automatically resolve the MAC address for a given IP address (Allows connecting
to a raw-socket device using the devices host-name or ip-address).
-|`raw.support-vlans` |BOOLEAN |false| |Should VLan packets be automatically
unpacked?
-|`raw.protocol-id` |INT |-1| |When provided, filters all packets to let only
packets matching this ethernet protocol-id pass.
+|`udp.local-address` |STRING | | |Local address to bind to. If not set, binds
to all interfaces.
+|`udp.local-port` |INT |0| |Local port to bind to. 0 uses ephemeral port.
+|`udp.read-timeout` |INT |0| |Socket read timeout in milliseconds. 0 means no
timeout.
+|`udp.max-packet-size` |INT |65507| |Maximum UDP packet size in bytes.
+|`udp.send-buffer-size` |INT |0| |Send buffer size in bytes. 0 uses system
default.
+|`udp.receive-buffer-size` |INT |0| |Receive buffer size in bytes. 0 uses
system default.
+|`udp.broadcast` |BOOLEAN |false| |Enable SO_BROADCAST for sending broadcast
packets.
+|`udp.reuse-address` |BOOLEAN |false| |Enable SO_REUSEADDR to allow multiple
bindings to the same address/port.
+|`udp.share-socket` |BOOLEAN |false| |Share the underlying UDP socket across
multiple transport instances. When true, instances with the same
localAddress:localPort will share a socket. This is useful for protocols where
multiple logical connections share one UDP port.
+|`udp.multicast-ttl` |INT |1| |Time-to-live for multicast packets (1-255).
|===
diff --git a/website/asciidoc/modules/users/partials/logix.adoc
b/website/asciidoc/modules/users/partials/logix.adoc
index 6bea88dbc3..8a773fecba 100644
--- a/website/asciidoc/modules/users/partials/logix.adoc
+++ b/website/asciidoc/modules/users/partials/logix.adoc
@@ -36,20 +36,24 @@
|Supported Transports 4+|
- `tcp`
5+|Config options:
-|`communication-path` |STRING | | |The communication path allows for
connection routing across multiple backplanes. It uses a common format found in
Logix controllers. +
-It consists of pairs of values, each pair begins with either 1 (Backplane) or
2 (Ethernet), followed by a slot in the case of a backplane address, +
-or if using Ethernet an ip address. e.g. [1,4,2,192.168.0.1,1,1] - Routes to
the 4th slot in the first rack, which is a ethernet module, it then connects to
the address 192.168.0.1, then finds the module in slot 1.
-|`backplane` |INT |1| |Without using routing information the backplane
defaults to 1. This is overridden if communicationPath is provided.
-|`slot` |INT |0| |The slot within the backplane the CPU is located.
|`big-endian` |BOOLEAN |true| |Configure if the connection should be set to
transport data in Big-Endian format, or not.
|`force-unconnected-operation` |BOOLEAN |false| |Forces the driver to use
unconnected requests. +
*Since: 0.13.0*
+|`request-timeout` |INT |10000| |Default timeout for all types of requests.
+|`communication-path` |STRING | | |The communication path allows for
connection routing across multiple backplanes. It uses a common format found in
Logix controllers. +
+It consists of pairs of values, each pair begins with either 1 (Backplane) or
2 (Ethernet), followed by a slot in the case of a backplane address, or if
using Ethernet an ip address. e.g. [1,4,2,192.168.0.1,1,1] - Routes to the 4th
slot in the first rack, which is an Ethernet module, it then connects to the
address 192.168.0.1, then finds the module in slot 1.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/modbus-ascii.adoc
b/website/asciidoc/modules/users/partials/modbus-ascii.adoc
index 76a298efb8..1d69c574f7 100644
--- a/website/asciidoc/modules/users/partials/modbus-ascii.adoc
+++ b/website/asciidoc/modules/users/partials/modbus-ascii.adoc
@@ -40,7 +40,7 @@
- `tls-psk`
- `udp`
5+|Config options:
-|`request-timeout` |INT |5000| |Default timeout for all types of requests.
+|`request-timeout` |INT |5000| |Default timeout for all types of requests. The
timeout covers the full time from submission including queueing; queued
requests whose remaining budget falls below a small dispatch margin (at most a
quarter of the timeout, capped at 50 ms) fail fast instead of being sent.
|`default-unit-identifier` |INT |1| |Unit-identifier or slave-id that
identifies the target PLC (On RS485 multiple Modbus Devices can be listening).
Defaults to 1.
|`ping-address` |STRING |4x00001:BOOL| |Simple address, that the driver will
use to check, if the connection to a given device is active (Defaults to
reading holding-register 1).
|`default-payload-byte-order` |STRING |BIG_ENDIAN| |Default encoding used for
transporting register values (Defaults to BIG_ENDIAN). +
@@ -63,17 +63,14 @@ Allowed values are: +
|`serial.baud-rate` |INT |9600| |Baud rate (bits per second)
|`serial.data-bits` |INT |8| |Number of data bits (5, 6, 7, or 8)
|`serial.stop-bits` |INT |1| |Number of stop bits (1 or 2)
-|`serial.parity` |STRING |NONE| |Parity: NONE, ODD, EVEN, MARK, SPACE
-|`serial.flow-control` |STRING |NONE| |Flow control: NONE, RTS_CTS, XON_XOFF,
RTS_CTS_XON_XOFF
+|`serial.parity` |STRING |none| |Parity: none, odd, even, mark, space
(case-insensitive)
+|`serial.flow-control` |STRING |none| |Flow control: none, rts-cts, xon-xoff
(case-insensitive)
|`serial.read-timeout` |INT |1000| |Read timeout in milliseconds. 0 means
blocking read.
|`serial.write-timeout` |INT |1000| |Write timeout in milliseconds.
|`serial.dtr` |BOOLEAN |false| |Enable DTR (Data Terminal Ready) signal
|`serial.rts` |BOOLEAN |false| |Enable RTS (Request To Send) signal
-|`serial.reuse-port` |BOOLEAN |false| |Reuse the underlying serial port across
multiple transport instances. When true, instances with the same port will
share a connection. This is useful for protocols where multiple logical
connections share one serial port.
-|`serial.receive-buffer-size` |INT |4096| |Receive buffer size in bytes. 0
uses system default.
-|`serial.send-buffer-size` |INT |4096| |Send buffer size in bytes. 0 uses
system default.
-|`serial.break-enabled` |BOOLEAN |false| |Enable break signal
-|`serial.interframe-delay` |INT |0| |Interframe delay in milliseconds for
protocols that need spacing between messages. Only applies when reusePort is
true.
+|`serial.reuse-port` |BOOLEAN |false| |Reuse the underlying serial port across
multiple transport instances. When true, instances with the same port will
share a connection. This is useful for protocols where multiple logical
connections share one serial port. Connections sharing a port must target
distinct unit ids; Modbus RTU responses carry no transaction ids, so same-unit
traffic from multiple connections cannot be told apart.
+|`serial.interframe-delay` |INT |0| |Interframe delay in milliseconds for
protocols that need spacing between messages. Applies to shared and dedicated
ports; the gap is measured from the last write or received data.
5+|
+++
<h4>tcp</h4>
diff --git a/website/asciidoc/modules/users/partials/modbus-rtu.adoc
b/website/asciidoc/modules/users/partials/modbus-rtu.adoc
index 7d9771efec..b9a635e202 100644
--- a/website/asciidoc/modules/users/partials/modbus-rtu.adoc
+++ b/website/asciidoc/modules/users/partials/modbus-rtu.adoc
@@ -40,7 +40,7 @@
- `tls-psk`
- `udp`
5+|Config options:
-|`request-timeout` |INT |5000| |Default timeout for all types of requests.
+|`request-timeout` |INT |5000| |Default timeout for all types of requests. The
timeout covers the full time from submission including queueing; queued
requests whose remaining budget falls below a small dispatch margin (at most a
quarter of the timeout, capped at 50 ms) fail fast instead of being sent.
|`default-unit-identifier` |INT |1| |Unit-identifier or slave-id that
identifies the target PLC (On RS485 multiple Modbus Devices can be listening).
Defaults to 1.
|`ping-address` |STRING |4x00001:BOOL| |Simple address, that the driver will
use to check, if the connection to a given device is active (Defaults to
reading holding-register 1).
|`default-payload-byte-order` |STRING |BIG_ENDIAN| |Default encoding used for
transporting register values (Defaults to BIG_ENDIAN). +
@@ -63,17 +63,14 @@ Allowed values are: +
|`serial.baud-rate` |INT |9600| |Baud rate (bits per second)
|`serial.data-bits` |INT |8| |Number of data bits (5, 6, 7, or 8)
|`serial.stop-bits` |INT |1| |Number of stop bits (1 or 2)
-|`serial.parity` |STRING |NONE| |Parity: NONE, ODD, EVEN, MARK, SPACE
-|`serial.flow-control` |STRING |NONE| |Flow control: NONE, RTS_CTS, XON_XOFF,
RTS_CTS_XON_XOFF
+|`serial.parity` |STRING |none| |Parity: none, odd, even, mark, space
(case-insensitive)
+|`serial.flow-control` |STRING |none| |Flow control: none, rts-cts, xon-xoff
(case-insensitive)
|`serial.read-timeout` |INT |1000| |Read timeout in milliseconds. 0 means
blocking read.
|`serial.write-timeout` |INT |1000| |Write timeout in milliseconds.
|`serial.dtr` |BOOLEAN |false| |Enable DTR (Data Terminal Ready) signal
|`serial.rts` |BOOLEAN |false| |Enable RTS (Request To Send) signal
-|`serial.reuse-port` |BOOLEAN |false| |Reuse the underlying serial port across
multiple transport instances. When true, instances with the same port will
share a connection. This is useful for protocols where multiple logical
connections share one serial port.
-|`serial.receive-buffer-size` |INT |4096| |Receive buffer size in bytes. 0
uses system default.
-|`serial.send-buffer-size` |INT |4096| |Send buffer size in bytes. 0 uses
system default.
-|`serial.break-enabled` |BOOLEAN |false| |Enable break signal
-|`serial.interframe-delay` |INT |0| |Interframe delay in milliseconds for
protocols that need spacing between messages. Only applies when reusePort is
true.
+|`serial.reuse-port` |BOOLEAN |false| |Reuse the underlying serial port across
multiple transport instances. When true, instances with the same port will
share a connection. This is useful for protocols where multiple logical
connections share one serial port. Connections sharing a port must target
distinct unit ids; Modbus RTU responses carry no transaction ids, so same-unit
traffic from multiple connections cannot be told apart.
+|`serial.interframe-delay` |INT |0| |Interframe delay in milliseconds for
protocols that need spacing between messages. Applies to shared and dedicated
ports; the gap is measured from the last write or received data.
5+|
+++
<h4>tcp</h4>
diff --git a/website/asciidoc/modules/users/partials/opcua.adoc
b/website/asciidoc/modules/users/partials/opcua.adoc
index 43dd271986..7b080a2056 100644
--- a/website/asciidoc/modules/users/partials/opcua.adoc
+++ b/website/asciidoc/modules/users/partials/opcua.adoc
@@ -61,14 +61,14 @@ Possible values are between others `jks`, `pkcs11`, `dks`,
`jceks`.
|`trust-store-type` |STRING |pkcs12| |Keystore type used to access keystore
and private key, defaults to PKCS (for Java 11+). +
Possible values are between others `jks`, `pkcs11`, `dks`, `jceks`.
|`trust-store-password` |STRING | | |Password used to open trust store.
+|`insecure-certificate-verification` |BOOLEAN |false| |Disables verification
of the OPC UA server certificate, trusting any certificate the server presents.
+
+This is UNSAFE: it leaves the connection open to man-in-the-middle attacks and
defeats the integrity/authenticity +
+guarantees of a signed secure channel. Only enable it for local testing. In
production, establish trust with +
+`trust-store-file` (chain validation) or `server-certificate-file`
(certificate pinning) instead.
|`channel-lifetime` |LONG |3600000| |Time for which negotiated secure channel,
its keys and session remains open. Value in milliseconds, by default 60 minutes.
|`session-timeout` |LONG |120000| |Expiry time for opened secure session,
value in milliseconds. Defaults to 2 minutes.
|`negotiation-timeout` |LONG |60000| |Timeout for all negotiation steps prior
acceptance of application level operations - this timeout applies to open
secure channel, create session and close calls. Defaults to 60 seconds.
|`request-timeout` |LONG |30000| |Timeout for read/write/subscribe calls.
Value in milliseconds.
-|`encoding.receive-buffer-size` |INT |65535| |Maximum size of received TCP
transport message chunk value in bytes.
-|`encoding.send-buffer-size` |INT |65535| |Maximum size of sent transport
message chunk.
-|`encoding.max-message-size` |INT |2097152| |Maximum size of complete message.
-|`encoding.max-chunk-count` |INT |64| |Maximum number of chunks for both sent
and received messages.
|`endpoint-host` |STRING | | |Endpoint host used to establish secure channel
connection. Used when client made connection to server which advertises
different hostname than one used for network connection.
|`endpoint-port` |INT | | |Endpoint port used to establish secure channel.
Used when client made connection to server which advertises different port
number than one used for network connection.
5+|Transport config options:
@@ -76,7 +76,13 @@ Possible values are between others `jks`, `pkcs11`, `dks`,
`jceks`.
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/open-protocol.adoc
b/website/asciidoc/modules/users/partials/open-protocol.adoc
index 7291d8cf21..48a620d985 100644
--- a/website/asciidoc/modules/users/partials/open-protocol.adoc
+++ b/website/asciidoc/modules/users/partials/open-protocol.adoc
@@ -36,12 +36,19 @@
|Supported Transports 4+|
- `tcp`
5+|Config options:
+|`request-timeout` |INT |10000| |Maximum time (in milliseconds) to wait for a
reply during the Open-Protocol session setup or any per-request exchange.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/plc4x.adoc
b/website/asciidoc/modules/users/partials/plc4x.adoc
index 3eff6a20e0..e365864373 100644
--- a/website/asciidoc/modules/users/partials/plc4x.adoc
+++ b/website/asciidoc/modules/users/partials/plc4x.adoc
@@ -32,18 +32,47 @@
<version>{page-component-version}</version>
</dependency>
----
-|Default Transport 4+|`tcp`
+|Default Transport 4+|`tls`
|Supported Transports 4+|
+ - `tls`
- `tcp`
5+|Config options:
|`remote-connection-string` |STRING | | |URL-Encoded connection string to use
on the proxy side to reach the given PLC.
|`request-timeout` |INT |5000| |Default timeout for all types of requests.
+|`username` |STRING | | |Username for authenticating against the PLC4X proxy
server. Authentication is mandatory.
+|`password` |STRING | | |Password for authenticating against the PLC4X proxy
server. Authentication is mandatory.
5+|Transport config options:
5+|
+++
+<h4>tls</h4>
++++
+|`tls.verify-ssl` |BOOLEAN |true| |
+|`tls.ignore-common-name` |BOOLEAN |false| |Tells the target to not validate
the common name
+|`tls.tls-version` |STRING | | |TLS protocol version (e.g., 'TLSv1.2',
'TLSv1.3'). If not set, uses TLS 1.3 with fallback to TLS 1.2.
+|`tls.keystore` |STRING | | |Path to keystore (PKCS12/JKS) containing the
client certificate and private key for mutual TLS.
+|`tls.keystore-password` |STRING | | |Password for the client keystore.
+|`tls.keystore-type` |STRING | | |Keystore type (e.g., 'PKCS12', 'JKS').
Defaults to PKCS12.
+|`tls.log-session-keys` |BOOLEAN |false| |Log TLS session keys to the audit
log in SSLKEYLOGFILE format for Wireshark decryption.
+|`tls.connect-timeout` |INT |5000| |
+|`tls.read-timeout` |INT |0| |
+|`tls.write-timeout` |INT |0| |
+|`tls.tcp-no-delay` |BOOLEAN |true| |
+|`tls.keep-alive` |BOOLEAN |false| |
+|`tls.send-buffer-size` |INT |81920| |
+|`tls.receive-buffer-size` |INT |81920| |
+|`tls.local-address` |STRING | | |
+|`tls.local-port` |INT |0| |
+5+|
++++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===
diff --git a/website/asciidoc/modules/users/partials/profinet.adoc
b/website/asciidoc/modules/users/partials/profinet.adoc
index aca4434a6f..dc300301dc 100644
--- a/website/asciidoc/modules/users/partials/profinet.adoc
+++ b/website/asciidoc/modules/users/partials/profinet.adoc
@@ -32,9 +32,9 @@
<version>{page-component-version}</version>
</dependency>
----
-|Default Transport 4+|`raw`
+|Default Transport 4+|`raw-socket`
|Supported Transports 4+|
- - `raw`
+ - `raw-socket`
5+|Config options:
|`gsd-directory` |STRING |~/.gsd|required |
|`dap-id` |STRING | | |
@@ -42,9 +42,21 @@
5+|Transport config options:
5+|
+++
-<h4>raw</h4>
+<h4>raw-socket</h4>
+++
-|`raw.resolve-mac-address` |BOOLEAN | | |If set to true, the transport will
automatically resolve the MAC address for a given IP address (Allows connecting
to a raw-socket device using the devices host-name or ip-address).
-|`raw.support-vlans` |BOOLEAN |false| |Should VLan packets be automatically
unpacked?
-|`raw.protocol-id` |INT |-1| |When provided, filters all packets to let only
packets matching this ethernet protocol-id pass.
+|`raw-socket.interface-name` |STRING | | |Network interface name to use (e.g.,
"eth0", "en0", "\\Device\\NPF_{GUID}" on Windows). If not specified, will use
the first available interface.
+|`raw-socket.local-address` |STRING | | |Local MAC address to send from. If
not set, uses interface's MAC address.
+|`raw-socket.remote-address` |STRING | |required |Remote MAC address to send
to.
+|`raw-socket.protocol-id` |INT | |required |EtherType / Protocol number (e.g.,
0x88B5 for PROFINET, 0x88CC for LLDP, custom values)
+|`raw-socket.promiscuous-mode` |BOOLEAN |false| |Promiscuous mode - capture
all packets on the network, not just those destined for this interface.
+|`raw-socket.capture-timeout` |INT |1000| |Packet capture timeout in
milliseconds.
+|`raw-socket.snapshot-length` |INT |65536| |Snapshot length - maximum bytes to
capture per packet. 0 means capture entire packet.
+|`raw-socket.buffer-size` |INT |1048576| |Buffer size for packet capture in
bytes.
+|`raw-socket.vlan-id` |INT |0| |VLAN ID (0 means no VLAN tag). Range: 0-4095
+|`raw-socket.vlan-priority` |INT |0| |VLAN priority (0-7). Only used if vlanId
> 0.
+|`raw-socket.reuse-interface` |BOOLEAN |false| |Reuse the underlying network
interface across multiple transport instances. When true, instances with the
same interface and protocol will share a pcap handle. This is useful for
protocols where multiple logical connections share one Ethernet type.
+|`raw-socket.bpf-filter` |STRING | | |BPF (Berkeley Packet Filter) expression
to filter packets.
+|`raw-socket.max-frame-size` |INT |1500| |Maximum frame size (MTU) in bytes.
+|`raw-socket.read-timeout` |INT |0| |Read timeout for blocking reads in
milliseconds.
+|`raw-socket.include-ethernet-header` |BOOLEAN |false| |Deliver full Ethernet
frames to the driver and accept raw Ethernet frames on send. Required for L2
protocols that build their own Ethernet headers.
|===
diff --git a/website/asciidoc/modules/users/partials/s7.adoc
b/website/asciidoc/modules/users/partials/s7.adoc
index edceb88b45..da227c85ce 100644
--- a/website/asciidoc/modules/users/partials/s7.adoc
+++ b/website/asciidoc/modules/users/partials/s7.adoc
@@ -36,14 +36,6 @@
|Supported Transports 4+|
- `cotp`
5+|Config options:
-|`local-rack` |INT |1| |Rack value for the client (PLC4X device).
-|`local-slot` |INT |1| |Slot value for the client (PLC4X device).
-|`local-device-group` |STRING |PG_OR_PC| |Local Device Group. PG_OR_PC
requests programming-device privileges from the PLC, which is required for
block introspection (browse) on most CPUs. Override to OS or OTHERS if your CPU
has no PG slot free.
-|`local-tsap` |INT |0| |Local Transport Service Access Point. Overrides
local-rack/local-slot/local-device-group when non-zero.
-|`remote-rack` |INT |0| |Rack value for the remote main CPU (PLC).
-|`remote-slot` |INT |0| |Slot value for the remote main CPU (PLC).
-|`remote-device-group` |STRING |PG_OR_PC| |Remote Device Group.
-|`remote-tsap` |INT |0| |Remote Transport Service Access Point. Overrides
remote-rack/remote-slot/remote-device-group when non-zero.
|`pdu-size` |INT |1024| |Maximum size of an S7 data-packet sent to and
received from the remote PLC.
|`max-amq-caller` |INT |8| |Maximum number of unconfirmed requests the PLC
will accept in parallel.
|`max-amq-callee` |INT |8| |Maximum number of unconfirmed responses or
requests PLC4X will accept in parallel.
@@ -58,12 +50,12 @@
+++
|`cotp.local-rack` |INT |1| |Rack value for the client (PLC4X device).
|`cotp.local-slot` |INT |1| |Slot value for the client (PLC4X device).
-|`cotp.local-device-group` |STRING |PG_OR_PC| |Local Device Group.
+|`cotp.local-device-group` |STRING |OTHERS| |Local Device Group.
|`cotp.remote-rack` |INT |0| |Rack value for the remote main CPU (PLC).
|`cotp.remote-slot` |INT |0| |Slot value for the remote main CPU (PLC).
|`cotp.remote-device-group` |STRING |PG_OR_PC| |Remote Device Group.
-|`cotp.local-tsap` |INT |785| |Local TSAP (Transport Service Access Point)
identifier.
-|`cotp.remote-tsap` |INT |256| |Remote TSAP (Transport Service Access Point)
identifier.
+|`cotp.local-tsap` |INT |0| |Local TSAP (Transport Service Access Point)
identifier.
+|`cotp.remote-tsap` |INT |0| |Remote TSAP (Transport Service Access Point)
identifier.
|`cotp.cotp-tpdu-size` |INT |8192| |COTP PDU size for data transmission. Valid
values: 128, 256, 512, 1024, 2048, 4096, 8192.
|`cotp.cotp-connection-timeout` |INT |5000| |Connection timeout for COTP
handshake in milliseconds.
|`cotp.protocol-class` |INT |0| |COTP protocol class to use. Class 0 is most
commonly used (simple class, no flow control).
diff --git a/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
b/website/asciidoc/modules/users/partials/slmp.adoc
similarity index 67%
copy from website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
copy to website/asciidoc/modules/users/partials/slmp.adoc
index 982376f3f8..1e70cbfb0c 100644
--- a/website/asciidoc/modules/users/partials/iec-60870-5-104.adoc
+++ b/website/asciidoc/modules/users/partials/slmp.adoc
@@ -20,15 +20,15 @@
[cols="2,2a,2a,2a,4a"]
|===
|Name |Type |Default Value |Required |Description
-|Name 4+|IEC 60870-5-104
-|Code 4+|`iec-60870-5-104`
+|Name 4+|SLMP (MELSEC) 3E
+|Code 4+|`slmp`
|Maven Dependency 4+|
[subs=attributes+]
----
<dependency>
<groupId>org.apache.plc4x</groupId>
- <artifactId>plc4j-driver-iec-60870</artifactId>
+ <artifactId>plc4j-driver-slmp</artifactId>
<version>{page-component-version}</version>
</dependency>
----
@@ -36,13 +36,20 @@
|Supported Transports 4+|
- `tcp`
5+|Config options:
-|`request-timeout` |INT |4000| |Default timeout for all types of requests.
+|`monitoring-timer` |INT |0| |SLMP monitoring timer written into each 3E
request frame (0 = wait infinitely).
+|`request-timeout` |INT |5000| |Client-side timeout in milliseconds awaiting a
response.
5+|Transport config options:
5+|
+++
<h4>tcp</h4>
+++
-|`tcp.keep-alive` |BOOLEAN |false| |Should keep-alive packets be sent?
-|`tcp.no-delay` |BOOLEAN |true| |Should packets be sent instantly or should we
give the OS some time to aggregate data.
-|`tcp.default-timeout` |INT |1000| |Timeout after which a connection will be
treated as disconnected.
+|`tcp.connect-timeout` |INT |5000| |
+|`tcp.read-timeout` |INT |0| |
+|`tcp.write-timeout` |INT |0| |
+|`tcp.tcp-no-delay` |BOOLEAN |true| |
+|`tcp.keep-alive` |BOOLEAN |false| |
+|`tcp.send-buffer-size` |INT |81920| |
+|`tcp.receive-buffer-size` |INT |81920| |
+|`tcp.local-address` |STRING | | |
+|`tcp.local-port` |INT |0| |
|===