ISE smart connect Modbus Vaillant (geoTHERM/3 auxiliary heater) Modbus register map
Backup heater of a Vaillant geoTHERM/3 through the ise gateway
- Official
- 8 registers
- Modbus TCP
- Revision 1 · 2026-11-11
Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.
Communication
- Protocol
- Modbus TCP
- Unit ID
- 3
- TCP port
- 502
- Byte / word order
- CDAB · bytes big-endian, words low first (word swap)
- Addresses
- 1-based · wire address = address − 1
Connection values are defaults: the device may be configured differently.
Map
- Registers
- 5 holding registers, 3 input registers
- Groups
- 2
- Translation tables
- 2
- Revision
- 1 · 2026-11-11
- Added
- ()
- File
- maps/ise/smart-connect-vaillant-geotherm3-auxiliary.mbmap.json · 3 KB · history
- SHA-256
- 5159fec85e8f26c5a9378584ecf2ad82a4b0d654a8e9ee143b8365bda2e6b0bb
- Manufacturer
- ise.de
Sources and notes
- ise smart connect Modbus Vaillant, Product Manual · version S-0002-007 Section 4.5 Modbus registers and 4.6 data types
Source: ISE Individuelle Software und Elektronik, ise smart connect Modbus Vaillant, Product Manual (order no. S-0002-007), section 4.5
- The gateway (ise smart connect Modbus Vaillant with the ise eBUS adapter) answers Modbus TCP and reads the Vaillant device over eBUS; this map is for unit ID 3, the auxiliary (backup) heater (the manual's Modbus unit ID). The manual covers the Vaillant geoTHERM/3 VWS 220/3 to 460/3 ground-source heat pump only; other Vaillant heat pumps such as the aroTHERM are not covered.
- Modbus TCP, port 502 by default (configurable from 2000 to 4000). Functions 0x03, 0x04, 0x06 and 0x10. Addresses are one-based: register 1 is address 1 with address_base 1.
- 32-bit values (uint32 and IEEE 754 floats) take two registers and the first register holds the least significant word (little word order); they can only be written together with function 0x10.
- The gateway polls the heat pump over eBUS every 2 to 60 minutes depending on the value (2 minutes for most sensors, 15 for error history and outside temperature, 60 for counters), so reads show the last polled value. A request to a unit ID whose device is not present gets exception 0x0B.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| IR | 1 | uint32 CDAB | R | ||||
| IR | 3 | uint32 CDAB | R | h | |||
| IR | 5 | uint16 | R | ||||
| HR | 6 | uint16 | RW | K | |||
| HR | 7 | int16 | RW | °min | |||
| HR | 8 | int16 | RW | °C | |||
| HR | 9 | uint16 | RW | ||||
| HR | 10 | uint16 | RW |
No registers match
Try part of the name, an address (decimal or 0x hex) or clear the filters.
Help improve this map
- I tested it on a deviceReport whether it worked, even if you did not write the map.
- Suggest a correctionEdit the file on GitHub; it opens a pull request.
- Report a problemA wrong address, type, scale or byte order.
- Read the formatWhat each key of the file means (SPEC.md).