# Read jobs

## Read Jobs

A *Job* in the Modbus context is a recurring task that is defined to read data from a Modbus device. This data can then be used for further processing, visualization, or control. A *Job* defines which data (registers) are read from a Modbus slave device and at what intervals the query should take place.

## Steps for creating a new job

<figure><img src="https://content.gitbook.com/content/Nyvwhz1kEMXcHf4HLuZ8/blobs/ICgtMRA7FxMWMFuYQPkm/image.png" alt=""><figcaption></figcaption></figure>

1. Click in the [-> Modbus connection](https://docs.buildings.ability.abb/collection/english-v14/connectivity-as-a-service/connect-devices-with-abb-buildingpro/connect-devices-via-modbus/create-a-new-modbus-connection) on  <img src="https://content.gitbook.com/content/Nyvwhz1kEMXcHf4HLuZ8/blobs/gACUHLw4AgMd2KBEJG6p/image.png" alt="" data-size="line">to create a new job.

   ▷ A configuration window for the new job opens.
2. **Job configuration**

   Fill in the following fields in the configuration window:

   * **Name**: Enter a name for the job that describes the task (e.g., "Read temperature").
   * **Function**: Select the Modbus function to be used for this job (e.g., "Read holding registers").
     * Typical functions include reading coil registers, input registers, or holding registers.
   * **Address**: Enter the start address of the registers you want to read. This is the memory address in the Modbus device.
   * **Length**: Enter the number of registers to be read.
   * **Interval**: Enter the interval (in seconds) at which the job should query the registers (e.g., every 10 seconds).
3. **Save job**
   * Click on **Save**, to create the job.
   * ▷ The new job appears in the list of defined jobs under *Read jobs*.

***

### Examples of typical Modbus jobs

* **Temperature monitoring**\
  A job that reads the temperature from a specific sensor every 30 seconds.
* **Collect power data**\
  A job that queries the power data of a generator via holding registers every hour.

***

{% hint style="danger" %}
Make sure that the address and length of the registers are specified correctly to ensure that the correct data is read. Incorrect information can lead to malfunctions or incorrect values.
{% endhint %}
