Once a Register Map is created or uploaded, it is stored in the Desigo Optic directory under the project > data > modbus folder.

Modbus Folder Path:C:\Program Files (x86)\Desigo Optic\Desigo Optic 5.x..x.x.xxx\var\proj\demo\data\modbus

You can create the folder manually and add the CSV files manually.
You need to stop and restart the service.

Creating Register Map Manually

  1. To create one from scratch, click Add.
  • The New Modbus Register dialog box displays
  1. Name the Modbus Register.
  • Once created, it displays under Register Map, where you can select it to edit.
  1. Once the register map is selected in Register Map, you can add more registers by clicking Add or manually editing it via Edit Source.
    A "ping" register is automatically added by default. This is required and needs to be a valid ping register in order to test connectivity to the slave.

Uploading Register Map

  1. If you already have a register map with registers, click Upload.
  • The Upload Register Map dialog box displays, allowing you to upload a Register Map.
  1. Once selected, the register map is available in the Grid view and under Register Maps.
  1. Select the uploaded register map to edit or add registers.
    A "ping" register is required and needs to be a valid ping register in order to test connectivity to the slave.

Deleting Register Map

If you no longer need a register map, select the Register Map, and then click Delete.

Using Register Maps

① Adding New Registers

  • To add more registers, click Add.
  • The Add Register dialog box displays with required fields.
Add Register dialog box required fields



name (required)

Name of register.
It must be unique and must start with a lower case letter a-z and a-z,A-Z,0-9, and underscores are allowed. No spaces or other special characters.

addr (required)

The address of the register that follows the modbus convention.
0xxxx - Coil (00001-065536)
1xxxx - Discrete Input (10001-165536)
3xxxx - Input Register (30001-365536)
4xxxx - Holding Register (40001-465536)

data (required)

Defines the data type of the register.
bit – Bool
u1 - Unsigned 8-bit Int
u2 - Unsigned 16-bit Int
u4 - Unsigned 32-bit Int
s1 - Signed 8-bit Int
s2 - Signed 16-bit Int
s4 - Signed 32-bit Int
s8 - Signed 64-bit Int
f4 - 32-bit Float
f8 - 64-bit Float
Bit Mask Types - Supports a position notation for cases where bits are packed into input or holding registers:
format - name, addr, data, rw
do0, 40101, bit:0, rw
do1, 40101, bit:1, rw
do2, 40101, bit:2, rw
Word and Byte Order - If register data not stored in network byte order, you can specify the order using suffix:
u21e Unsigned 16-bit Int - Little endian byte and word order
u21eb Unsigned 16-bit Int - Little endian byte order only
u21ew Unsigned 16-bit Int - Little endian word order only

rw (required)

Determines the read/write permissions Register may be read and written.
r - Register is read-only
w - Register is write-only

scale (optional)

Allows you to apply a scale factor to the registers. The format is [operator] [number] where the factor is a numeric constant.
add: +1.5
minus: -0.25
mult: *10
div: /1000

dis (optional)

An optional tag that you can specify a pretty display name for the register.

unit (optional)

Defines the unit to use for the register.

tags (optional)

Tags to apply to the point when learned into the database.

folderPath (optional)

If you want to organize the points, you can do so by applying a folderPath.


② Editing Registers

  • If you need to edit a register, click Edit.
  • The Add Register dialog box displays.

③ Deleting Registers

To delete a register from a Register Map, select the register, and then click Delete.

④ Editing Register Maps via Edit Source

  1. Select the register map to edit under Register Maps and then click Edit Source.
  • The Edit Source dialog box displays to make any edits or copy to CSV.
  1. Click Save to save changes.

Supported Protocols

The supported protocols for Modbus are, TCP/IP, RTU over TCP/IP.

The URI setup for each are as follows:

  • TCP/IP:`modbus-tcp://host/`
  • RTU over TCP/IP: `modbus-rtutcp://host/`

Example Register Map Formats for Uploading

Make sure the CSV files are saved as CSV UTF-8 if degree units are included.


History synchronization is not supported by Modbus.
You need to use the history collection to store history.