=head2 Plugin C<modbus>
The B<modbus plugin> connects to a Modbus "slave" via Modbus/TCP and reads
-register values. It supports reading single registers (unsigned 16E<nbsp>bit
-values), large integer values (unsigned 32E<nbsp>bit values) and floating point
-values (two registers interpreted as IEEE floats in big endian notation).
+register values. It supports reading single registers (16E<nbsp>bit integer
+values), large integer values (32E<nbsp>bit values) and floating point values
+(two registers interpreted as IEEE floats in big endian notation).
Synopsis:
Instance "input-2"
</Data>
+ <Datagroup "device-type-1">
+ Collect "voltage-input-1"
+ Collect "voltage-input-2"
+ </Datagroup>
+
<Host "modbus.example.com">
Address "192.168.0.42"
Port "502"
Collect "voltage-input-1"
Collect "voltage-input-2"
</Slave>
+
+ <Slave 2>
+ Instance "power-supply"
+ Datagroup "device-type-1"
+ </Slave>
</Host>
=over 4
=back
+=item E<lt>B<Datagroup> I<Name>E<gt> blocks
+
+Datagroup blocks define a group of B<Data>-definitions. Datagroups can be used
+to collect the same data from a number of similar devices.
+
+Within E<lt>DatagroupE<nbsp>/E<gt> blocks, the following options are allowed:
+
+=over 4
+
+=item B<Collect> I<DataName>
+
+Specifies which data to include in the datagroup. I<DataName> must be the same
+string as the I<Name> argument passed to a B<Data> block. You can specify this
+option multiple times to include more than one value in the datagroup. All
+values in the datagroup will be collected from the devices that use is. At
+least one B<Collect> option is mandatory.
+
+=back
+
=item E<lt>B<Host> I<Name>E<gt> blocks
Host blocks are used to specify to which hosts to connect and what data to read
Specifies which data to retrieve from the device. I<DataName> must be the same
string as the I<Name> argument passed to a B<Data> block. You can specify this
option multiple times to collect more than one value from a slave. At least one
-B<Collect> option is mandatory.
+B<Collect> or B<Datagroup> option is mandatory.
+
+=item B<Datagroup> I<DatagroupName>
+
+Specifies which data to retrieve from the device. I<DatagroupName> must be the
+same string as the I<Name> argument passed to a B<Datagroup> block. All data
+specified in the Datagroup definition will be retrieved from the device. You
+can specify this option multiple or combine it with the B<Collect> option. At
+least one B<Collect> or B<Datagroup> option is mandatory.
=back