
The Olimpia Splendid Bi2 series are fan coil units from the Italian HVAC manufacturer Olimpia Splendid. The physical device communicates via Modbus ASCII over RS-485 (9600 baud, 7E1). TapHome connects through a Modbus TCP-to-RTU gateway — no direct Ethernet port is available on the fan coil.
The template provides heating/cooling mode selection, fan speed control (Automatic, Low, Night, Maximum), temperature setpoint, ambient temperature feedback, standby and absence switches, and valve status monitoring.
Gateway requirement
The Bi2 fan coil uses RS-485 with Modbus ASCII framing. TapHome communicates via Modbus TCP, so a TCP-to-RTU gateway is required between TapHome Core and the fan coil.
- Physical layer: RS-485 (2-wire: A, B)
- Baud rate: 9600
- Data format: 7 data bits, Even parity, 1 stop bit (7E1)
- Protocol: Modbus ASCII (converted to Modbus TCP by the gateway)
- Default slave address: 0 (range 0–31, configurable via register H:200)
Common gateway options include Waveshare and USR-TCP232 series converters. Configure the gateway’s serial side to 9600 baud, 7E1 to match the fan coil parameters.
Enabling remote mode
The fan coil must be in “remote enabled” mode to accept Modbus commands. Once Modbus communication is active:
- Touch controls on the unit will stop working
- IR remote control will stop working
This is a hardware limitation of the Bi2 series — the unit can only accept commands from one source at a time.
Enabling Modbus disables all local controls (touch panel and IR remote). The fan coil can only be operated through TapHome or another Modbus master while remote mode is active.
Configuration
When importing the template in TapHome, provide:
- IP Address — the gateway’s IP on the local network (default: 192.168.0.1)
- Slave ID — Modbus slave address of the fan coil (default: 1)
Assign a static IP address to the gateway in the router’s DHCP settings to prevent the address from changing after a power cycle.
Device capabilities
The template exposes the following devices:
Heating/cooling mode
- Mode — select from: Auto, Heating, Cooling, Heating+Cooling. Reads bits 13–14 of register H:101 and writes via the module-level write script.
Fan speed control
- Fan Speed — multi-value switch with modes: Automatic, Low, Night, Maximum. Reads bits 0–2 of register H:101. The template defines values 0–9, but the documented speeds are 0–3 (Automatic, Low, Night, Maximum).
Power and absence
- Standby — toggle switch reading bit 7 of register H:101. When set (1), the fan coil is off (standby). When cleared (0), the unit is running.
- Absence (CP) — toggle switch reading bit 12 of register H:101. Activates the absence condition, reducing energy consumption when the room is unoccupied.
Temperature control
- Setpoint Temperature — reads/writes register H:102 with ×10 scaling. Range 15.0–40.0 °C. A value of 215 in the register represents 21.5 °C.
- Ambient Temperature — reads/writes register H:103 with ×10 scaling. Range 1.0–45.0 °C. TapHome periodically writes the current room temperature to this register, which the fan coil needs for correct auto-mode operation.
The ambient temperature register (H:103) must be written periodically for the fan coil to regulate correctly in auto mode. The TapHome template handles this automatically via the writestate script.
Valve status monitoring
- Valve EV1 — read-only binary contact showing the state of the EV1 solenoid valve (heating/hot water circuit) from bit 14 of register H:9.
- Valve EV2 — read-only binary contact showing the state of the EV2 solenoid valve (cooling/chilled water circuit) from bit 11 of register H:9.
Register 101 — shared control word
All control devices (Fan Speed, Standby, Absence, Mode) share a single holding register H:101 with bitmask encoding. The template uses a module-level write script that combines all values into one 16-bit write:
| Bits | Byte | Field | Device |
|---|---|---|---|
| 0–2 | Low | Fan speed | Fan Speed |
| 7 | Low | Standby | Standby |
| 12 | High | Absence | Absence (CP) |
| 13–14 | High | Mode | Mode |
The write script assembles: (Absence << 12) | (Mode << 13) | (Standby << 7) | FanSpeed and writes the combined value to H:101 in a single operation.
Additional capabilities not in template
The Bi2 fan coils also expose registers for water temperature (H:1), fault status (H:104), swing/oscillation control (H:224), actual fan speed (H:16), and a mode indicator register (H:233). These can be added to the TapHome template in a future update.
Troubleshooting
No Modbus communication
- Verify the RS-485 wiring between the gateway and the fan coil (A to A, B to B)
- Confirm the gateway is configured for 9600 baud, 7E1, Modbus ASCII
- Check the slave address — the default is 0, not 1
- Ensure TapHome Core and the gateway are on the same network/subnet
Touch controls and IR remote not working
This is expected when Modbus communication is active. The Bi2 series disables local controls once a Modbus master is connected. To restore local controls, disconnect Modbus communication.
Auto mode not regulating correctly
The fan coil requires the ambient temperature to be written periodically to register H:103. Verify that the Ambient Temperature device in TapHome has a valid room temperature value. If the value is stale or zero, auto mode cannot calculate the correct fan speed.
