
The Viessmann Vitogate 300 (Type BN/MB) is a gateway that bridges the Viessmann LON bus to Modbus RTU or Modbus TCP, enabling TapHome to control Vitocal 200 heat pumps via the Vitotronic 200 WO1C controller. This template exposes 27 devices covering heating circuit HC1, a separate cooling circuit, domestic hot water (DHW), solar thermal monitoring, compressor diagnostics, and a general alarm.
The Vitogate 300 is a compact DIN rail module (100 x 48 x 70 mm) with RS-485, LAN (RJ45), LON (2x RJ45), and USB ports. It connects to the Vitotronic controller via LON and translates selected data points into Modbus registers accessible by TapHome.
Dynamic register assignment – The Vitogate 300 assigns Modbus register numbers dynamically based on which LON data points are selected in the web interface. The register numbers in the TapHome template correspond to a specific data point selection. If you change the data point selection in the Vitogate web interface, the register numbers will shift and the template will read incorrect values.
Hardware connection
Connection diagram

Front panel connections (left to right):
- Power LED – illuminates green when power is on
- Status LED – multi-color (red, green, orange) for operational status
- RX / TX LEDs – flash yellow during data receive/transmit
- DIP switch (A) – 1: Bias voltage RS-485, 2: Bias voltage RS-485, 3: 120 ohm terminator
- RS-485 (B) – removable plug with terminals: Shld, AGND, A- (Data-), B+ (Data+)
- PWR (C) – 24 VDC power supply connection
- LAN (D) – RJ45 for Modbus TCP/IP or web interface access
- LON (E) – 2x RJ45, screened, for LON connection to Vitotronic
- USB (F) – for firmware updates
- Reset – reset button
Technical specifications
- Dimensions: 100 x 48 x 70 mm (DIN rail mount, TS35)
- Power supply: 12-24 V AC/DC, max 320 mA (3.85 W)
- Operating temperature: 0°C to +45°C
- Protocol: Modbus RTU (RS-485) or Modbus TCP/IP (LAN port 502)
- RS-485 settings: 9600 baud, 8 data bits, no parity, 1 stop bit
RS-485 wiring
Connect using a 4-wire RS-485 connection to the removable RS-485 plug (B):
- B+ (Data+) –> A+/D+ on TapHome RS-485
- A- (Data-) –> B-/D- on TapHome RS-485
- AGND –> GND on TapHome
- Shld –> Shield (optional, for long cable runs)
RS-485 termination – DIP switch 3 enables a 120 ohm termination resistor. Enable it only if the Vitogate 300 is the last device on the RS-485 bus. TapHome Core has a built-in 120 ohm resistor on its BUS terminals.
Wiring in junction box

The Vitogate 300 and its power supply unit mount on a DIN rail inside the heat pump junction box. The RS-485 connection (C) routes to TapHome. Power is supplied via 24 VDC from the included power supply unit.
LON connection
The Vitogate 300 connects to the Vitotronic controller via LON (RJ45). The Viessmann LON uses a “Line” bus topology with terminal end resistors at both ends. Use 2-core screened CAT5 cable or JY(St)Y 2x2x0.8 mm telephone cable. Maximum distance: 900 m with on-site cabling.
The LON communication module must be installed into the Vitotronic control unit. Depending on the controller model, this may be an additional accessory. Refer to the Vitotronic Installation and Service Instructions.
Configuration
Web interface access


- Connect a PC/laptop to the Vitogate 300 LAN port with an Ethernet cable
- Set your computer IP to 169.254.0.20 (subnet mask 255.255.0.0)
- Open a browser and navigate to http://169.254.0.1
- Log in with user name vitogate and password viessmann
Beginning second half of 2024, new Vitogate 300 units ship with a unique password printed on the device label. After a factory reset, the password reverts to “viessmann”.
Switching to Modbus mode
- Go to General > Vitogate in the web interface
- Set “Vitogate type” to “Vitogate 300 MB (Modbus)”
- Set “Language of datapoints” to English and “Units” to SI units
- Press Save, then go to General > Restart and press Restart
LON participant scan
- Go to VI LON > Scan participants
- Set System number: 1 and participant number range (e.g., 1 to 10)
- Press Start – the gateway scans for Vitotronic controllers on the LON bus
- After scan completes, check the desired participants and press Save
- Go to General > Restart and press Restart (do not select “complete system restart”)
Data point selection

- Under VI LON > Participants, click on a participant (e.g., 1.1)
- Select the data point tabs (All, General, Heating circuit A1, Cooling, DHW, Solar, etc.)
- Check the desired data points for transfer to Modbus
- Press Save
Critical step – The data points selected here determine the Modbus register assignments. You must select exactly the same data points that the TapHome template expects, in the same order. Changing the selection will shift all register numbers.
Modbus configuration


- Go to Modbus > Configuration
- Set the Slave address (must match the Slave ID in TapHome)
- For RS-485 connection, verify: Protocol RTU, Baudrate 9600, Databits 8, Parity none, Stopbits 1
- For TCP/IP connection, the default port is 502
- Press Save
The Modbus > Objects page shows the dynamically assigned register map with columns: Type (CO/HO/IN/ST), Register number, Name, Unit, and Format.
Status LED indicators
| Status LED | Meaning |
|---|---|
| Flashes green | Standard operation |
| Flashes green/red | DHCP server enabled |
| Illuminates orange | Re-start in progress |
| Flashes orange | No gateway configuration |
| Flashes red | BUS errors in the MS/TP network (framing errors) |
| Illuminates red | Files are being connected prior to reset |
Device capabilities
Temperature monitoring
The template provides temperature sensors for the system, heating circuit, and solar system, reading from analog input registers with automatic /10 conversion:
- Outdoor Temperature (A:88) – damped outdoor temperature from the Vitotronic controller
- DHW Storage Temperature (A:102) – domestic hot water buffer storage actual temperature
- Supply Temperature (A:100) – system supply (flow) temperature
- Room Temperature HC1 (A:54) – actual room temperature for heating circuit 1
- Solar Collector Temperature (A:110) – solar collector panel temperature
- Solar Storage Temperature (A:114) – solar buffer storage temperature
Heating circuit control (HC1)
The heating circuit HC1 has independent operating program, operating status, and thermostat control:
Operating Program HC1 (H:33) – selects the operating mode with 7 options:
- 0 = Standby
- 1 = DHW Only
- 2 = Heating/Cooling/DHW
- 3 = Continuous Reduced
- 4 = Continuous Normal
- 5 = Normal OFF
- 6 = Cooling Only
Operating Status HC1 (A:139) – shows the active status (Standby, Reduced, Normal, Fixed Temperature) as a read-only indicator.
Thermostats provide room temperature control with current temperature reading and writable setpoint:
- Room Temperature Setpoint HC1 – reads A:54 (current), writes H:12 (normal setpoint, 10-30°C)
- Reduced Room Temperature Setpoint HC1 – reads A:54 (current), writes H:13 (reduced setpoint, 10-30°C)
- Party Mode Room Temperature Setpoint HC1 – reads A:54 (current), writes H:34 (party setpoint, 10-30°C)
Cooling circuit control
- Cooling Circuit Temperature Setpoint (H:24) – desired temperature for the separate cooling circuit, reads current temp from A:54
DHW control
- DHW Temperature Setpoint (6000) (H:29) – desired domestic hot water temperature (read/write)
- DHW Temperature Setpoint 2 (600C) (H:28) – secondary DHW temperature setpoint (read/write)
Heating/Cooling operation mode
Heating/Cooling Operation Mode (H:77) enables switching between the system’s primary operating modes:
- 0 = Heating
- 1 = Cooling
- 2 = Auto
Party and economy modes
- Party Mode HC1 (C:5) – read/write party mode switch for heating circuit 1
- Economy Mode HC1 (C:8) – read/write economy (setback) mode switch for heating circuit 1
Pump monitoring
- Heating Circuit Pump HC1 (D:8) – read-only pump status for heating circuit 1
- DHW Charging Pump (D:21) – read-only storage tank charging pump status
- Circulation Pump (D:15) – read-only DHW circulation pump status
Compressor monitoring
- Compressor Frequency (A:126) – compressor operating power/frequency
- Compressor 1 Operating Hours (A:162) – cumulative operating hours for compressor stage 1
- Compressor 2 Operating Hours (A:44) – cumulative operating hours for compressor stage 2
Solar system monitoring
- Solar Collector Temperature (A:110) – collector panel temperature
- Solar Storage Temperature (A:114) – buffer storage temperature
- Solar Energy Yield (A:47) – cumulative solar energy production in kWh
- Solar Pump (Internal Control) (D:19) – read-only solar pump status (internal controller)
- Solar Pump (Vitosolic) (D:20) – read-only solar pump status (external Vitosolic controller)
Alarm monitoring
- General Alarm (C:200) – read-only general fault/alarm status from the heat pump system (0=no alarm, 1=alarm active)
Additional capabilities
The Vitocal 200 / Vitotronic 200 WO1C also exposes LON data points for heating circuit M2/M3 control (room setpoints, operating programs, party/economy modes), ventilation control (supply/exhaust air temperatures, CO2, humidity, filter status), energy balance (COP values, electrical energy consumption), heating curve adjustments (level and slope), and defrost status. These can be added in a future template update by selecting additional data points in the Vitogate web interface.
The heating circuit M2/M3 setpoints and operating programs are not included in the current template. To control additional heating circuits, add the corresponding LON data points in the Vitogate web interface and create custom Modbus devices in TapHome using the newly assigned register numbers.
Troubleshooting
Status LED flashes orange (no configuration)
- Access the web interface at http://169.254.0.1
- Go to General > Vitogate and verify the Vitogate type is set to “Vitogate 300 MB (Modbus)”
- Go to VI LON > Scan participants and scan for Vitotronic controllers
- Select data points and save
No Modbus communication
- Check RS-485 cables:
- B+ (Data+) correctly connected to A+/D+ on TapHome
- A- (Data-) correctly connected to B-/D- on TapHome
- AGND connected to TapHome ground
- Verify the Modbus Slave address in the Vitogate web interface matches TapHome
- Check DIP switch 3 termination – enable only on the last device on the bus
- Confirm TapHome is set to: 9600 baud, no parity, 1 stop bit
- Try Modbus TCP/IP via the LAN port (port 502) as an alternative
Register values are incorrect or shifted
- The Vitogate 300 assigns registers dynamically. If data point selection was changed, register numbers shift
- Go to Modbus > Objects in the web interface and compare the register map with the TapHome template
- If registers don’t match, re-select the correct LON data points to match the template’s expected mapping
LON communication errors
- Check RJ45 LON cables between Vitogate and Vitotronic
- Verify terminal end resistors are installed at both ends of the LON bus
- Ensure the LON communication module is installed in the Vitotronic controller
- Check LON system number and participant numbers (Code “77:x” and “98:x” on the Vitotronic)
