How does it work?

All EMS compatible Bosch brand boilers and heat pumps have an EMS bus (Sometimes also called Heatronic). This is the same 2-wire bus as your thermostat connects to. Its a 16V DC bidirectional data bus with integrated power supply for peripherals.

The EMS bus is available via the thermostat wires and on most boilers and heat pumps also via a service jack on the front panel. You can connect the Gateway to the bus via either method.

Devices on the bus communicate via telegrams.
Each device on the bus has an address. The boiler f.i. sends telegrams to the thermostat by using the thermostats’ address. There are multiple EMS devices possible on the same bus.
The Gateway identifies itself as a ‘service key’ module on the bus.

The Gateway ‘knows’ most of the telegram types of a lot of EMS devices (currently more than 100). So it knows how to interpret for instance the broadcast telegram of the boiler status. It also knows how to instruct thermostats to change its temperature etc.

Depending on the EMS device you get up to 100 or even more entities/parameters available. See this page for the huge amount of data that gets available to you.

Depending on the connected EMS devices the Gateway can monitor almost everything but it can also set a lot of boiler, mixer module and thermostat parameters.

The Gateway does not emulate a thermostat, so although the Gateway can instruct the thermostat to change the room temperature, it cannot start the burner of the boiler by itself.
This remains the task of the thermostat, which has complicated algorithms to determine the boiler modulation.

So on one side the Gateway connects to the EMS bus, and it connects via Wi-Fi and your home network to your home automation like Domoticz or Home Assistant.

You can configure the Gateway via an easy to use web interface like below.

For Domoticz you can install a plugin and for Home Assistant the awesome MQTT auto discovery has been implemented, so that with a few clicks you have everything into Home Assistant!.
If you have added the configuration to Home Assistant it will look something like this:

So now if you change setpoint value in Home Assistant, Home Assistant will send a MQTT command to the Gateway with the instruction to change the setpoint of the thermostat.
Because the Gateway knows the address of the thermostat and in which telegram type the new setpoint value goes, it sends an EMS telegram on the bus directed at the thermostat encoded with the new setpoint value.

The Gateway supports all heating circuits simultaneously.

In Domoticz your dashboard will be similar to this: