Overview
Modbus Mapping allows you to map Modbus devices (clients and servers), such as power meters, a temperature sensor board, a boiler controller, and a third-party AC controller, to the CoolAutomation Cloud applications as well as to simplify connections with BMS or home automation systems. This allows you to monitor these devices, control operations, and create interlocking rules with other systems.
Getting Started
| Term | Description |
|---|---|
| Modbus Device | A physical device connected to the RS-485 line (Modbus RTU) or IP network (Modbus TCP/IP) and communicates over the Modbus protocol. |
| Functional Unit (App Unit) | A logical application entity that includes a set of one or more Modbus points on a specific Modbus device. Multiple App Units can be created from a single Modbus device. |
| Parameter (Register, point) | One value inside a functional unit which is mapped to a register on the Modbus device table. E.g., setpoint, temperature, on/off state, multi-state operation mode. |
| Control UI | A custom image used to map App Unit parameters to visual controls. |
| Modbus Client | Initiates communication and sends requests. |
| Modbus Server | Processes requests and returns an appropriate response (or error message). |
- Connect an EDGE device with Edge Firmware version 1.10.0 and above
- Make sure you know the Modbus RTU or TCP/IP communication settings (e.g. baud rate, slave ID / host)
- Make sure you have the Modbus device's specification required for mapping at hand (register addresses, data types, and the meaning of each value)
- Select the right CoolAutomation Device & Line where your Modbus devices are (L1,L2,L3)
Mapping Steps
From the left pane, go to Site Management → Modbus Mapping.
The previously mapped Modbus Devices table lists everything already mapped on the selected line.
Note!
- Bound means the device is configured and ready to establish a connection
- Not Bound means the device is saved but not yet ready to be connected
Configure a Modbus Device
The indication of which line type is being configured is shown in the grayed-out row at the top of the configuration dialog box (e.g., IP/TCP: Line Settings: Modbus IP).
Fill in the required details:
- Device Name — e.g., Multi Channel Power Meter.
- Manufacturer & Model are free-text fields used for identification only.
- Slave ID - The device's Modbus address; it must be unique on the line.
- Comm Timeout (ms) -How long to wait for a reply before retrying.
- Host — Host IP address
- Port – Host communication port number
The indication of the line and configuration is shown in the grayed-out row at the top of the configuration dialog box (e.g., RTU, Modbus RTU, Baud rate).
Fill in the required details:
- Slave ID - is the device's Modbus address and must be unique on the line.
- Comm Timeout (ms) - is how long to wait for a reply before retry.
- "+ Add Functional Unit" - Used to add the functional units.
Adding Functional Unit
A functional unit is a physical unit (e.g. Fan Coil Controller Top Floor).
After clicking the "+ Functional Unit" option, the following screen will appear and allow you to set up the functional unit's attributes and registers.
- App Unit Name (free text): Represents the logical entity; this name will be visible in the application,adn it is recommended that a meaningful name is set for app users. E.g., Circuit A Left Panel, Temp Sensor Meeting Room, On/Off Fan Kitchen, etc.
- Control UI: A custom representation for the functional unit and how it will be presented in the application's Control tab.
- Map to Universal Unit: Used to map AC units to a functional unit
Each row in the table represents one register. Click "+ Add Register" to add an additional register.
After setting all registers and parameter settings, verify the mapping by clicking the “Test” button. This reads the value in real time and confirms that the result is as expected
Note!
Up to 20 points can be mapped to a single App Unit, with a total of 64 App Units on a single EDGE device.
.
| Term | Description |
|---|---|
| PARAMETER NAME | The value the user sees, e.g.Energy, Power, Room Temp |
| TYPE | The type of parameter that is stored in this register |
| ENG UNITS | Unit of measurement for this parameter's value (e.g. kW, °C) |
| Value | Numeric readings and setpoints; enables Min, Max, Step and Scale |
| Binary | Two-state point where 1 = on / active |
| Reverse Binary | Two-state point wired the other way round, where 0 = on / active |
| Enumeration | A fixed list of states, such as mode or fan speed |
| MIN | Lowest valid value that can be written to this parameter |
| MAX | Highest valid value that can be written to this parameter |
| R/W | Specifies whether the register is read-only or read/write |
| SCALE | Divider applied to the raw register value |
| STEP | The resolution of change between 2 adjacent values |
| REG TYPE | Modbus register category; sets the address range and access rules |
| REGISTER | Modbus register address of this parameter |
| DATA TYPE | Raw bytes interpretation; sets range and precision |
| VALUE MAP | Table that maps Modbus values to textual application names (e.g. 0 = Off, 1 = On, 2 = Auto) |
| UNIVERSAL POINT | Check to map this parameter to a specific Universal AC Unit parameter (e.g. map a parameter to the Setpoint parameter) |
| VERIFY / TEST | Click the Test button to read the register's current value |
When the app unit parameters configuration is complete, click Save Unit or create a control UI
Map to a Universal AC Unit
If the functional unit is an AC unit, and the Map to Universal AC Unit is checked, the behaviour will be like a native CoolAutomation indoor unit and be shown in the server-side interface of the EDGE device.
This is very useful when integrating with home automation systems or BMS, simplifying their integration with any HVAC unit through the same set of parameters for the control operations (setpoint, on/off, mode, room temperature, fan speed, etc.).
For each parameter that has a standard AC meaning, tick its matching point checkbox
Setting up a Control UI
A Control UI is your custom representation for the functional unit and how it will be presented in the application's Control tab.
- Click the ‘+ Create’ next to the Control UI field.
- Name — for your own records.
- Background image — a floor plan, a photo of the panel, a schematic — with the parameters placed on top of it as live controls. Choose a file or drag it onto the canvas.
- Drag each parameter from the Parameter List on the left onto the image. Dropped parameters are marked ✓ Mapped, so you can see at a glance what is still missing.
- Click a placed parameter to configure it in the right-hand panel — its Label Position, Label Size, Text Color, and Control Type. Match the control type to the parameter type: On/Off or Toggle for Binary, Dropdown Menu for Enumeration, Up/Down Arrows or Textual Value for numeric values.
- To reposition a control, drag it. To remove one, click the × on it. The trash icon at the top right of the canvas removes the background image.
- Click Save, then Save Unit.
Bind the Modbus Device
The device now appears in the list with status Not Bound, meaning that the mapping is saved but not yet live.
Click Bind in the Actions column to activate it.
The Modbus Device will start communicating with the applications, and its App Units become available to users (control tab, unit diagnostics, interlocks)
Managing an existing device
From the Actions column in the device list:
- Edit — reopen the device to change details or add and remove functional units
- Duplicate — copy the whole device with all its units and parameters, for a second identical meter or controller
- Bind / Unbind — connect or disconnect the Modbus device to the App
- Delete — remove the device and its mapping permanently from the app context.
Libraries — Reuse or Import/Export your devices & Functional Units
Device Library
Opened from Device Library in the New Modbus Device dialog. Holds complete devices — every functional unit and every register.
Select to load the whole device configuration. Adjusting the device name and the connection details to your particular site — Slave ID (Host, Port if IP) is still required
Functional Unit Library
Opened from the Functional Unit Library inside a device. Holds unit settings that can be replicated between devices and sites — e.g. a temperature sensor, a power meter, a control unit — with their parameters already defined.
Select to load the unit into the device you're building. The table shows each unit's register count and parameter names so you can confirm you have the right one.
Library Import / Export
Both libraries have Export and Import. Export a mapping you have built on one site and import it on another, so a device you map once for one customer is only two clicks away from being used in another site.
Important Note: All Modbus mappings (device, Functional Units, Control UI) are at the site level. You have to export/import libraries in order to reuse these mappings.
Once the Device Is Configured
Control
Once a Modbus Device is configured, you can control its operations(e.g., turn ON/OFF, fan speed, mode)
Unit Diagnostic
You can also view unit diagnostics and monitor specific parameters for ongoing health operations.
Interlocking Rules
You can also configure interlocking rules.
Modbus Architecture