About
RAMSES RF is an integration for heating and ventilation systems that use the RAMSES-II RF protocol. It covers central heating and hot water systems such as evohome, and ventilation units from brands like Itho and Orcon. It talks to the system locally through a USB or MQTT radio transceiver, and the setup is done in the UI. It adds climate, water heater, sensor, select, number, button, event and remote entities, including a system mode selector and a polling interval setting. Actions cover binding devices, sending custom command packets, reading fan parameters, retrieving a controller fault log, and resetting a filter counter. A passive scan can find unknown RF devices, which can then be accepted into the system schema, and packet logging is configurable.
Automatic summary of the README and code of ramses-rf/ramses_cc. Something wrong, or are you the maintainer and want your own text here? Get in touch
Supports
Works locally Talks to your devices on your own network. No vendor cloud in between.
From the Marketplace Installed through the Marketplace, formerly HACS.
Actively maintained Its author released or pushed a change in the last six months.
Provides
- Climate
- Water heaters
- Remotes
- Sensors
Setting it up
Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.
Choose serial port
- Serial device path
MQTT Configuration
- Broker IP or Hostname
- Port
- Username (Optional)
- Password (Optional)
Serial port config
- Serial device pathExamples: '/dev/cu.modem2', 'COM6' (Windows) or 'mqtt://user:pwd@homeassistant.local:1883'
- Advanced serial port configNot required for typical use, except nanoCUL to set 'baudrate: 57600'
- Use legacy Zigbee acknowledgementsOverride automatic firmware detection and use text acknowledgements.
Gateway configuration
- Scan intervalHow often to poll for changes in state. Values below 60 or above 180 are not recommended.
- Gateway timeoutHow long (in minutes) to wait before considering the gateway inactive. Increase this for quiet networks (e.g., 10-15 minutes).
- Advanced ramses_rf gateway configurationNot required for typical use.
- Gateway Device ID (e.g. 18:000730)
- MQTT Topic Prefix
System schemas
- System schemaA mapping of system device IDs to their respective schemas. This should describe your complete system(s), including zones with sensors, as YAML.
- Log Tx + all MQTT trafficShow all subscribed topics from MQTT broker in system console.
Advanced features
- Enable send_packet service for broadcasting bespoke packets
- Emit event for messages matching this regular expressionEnter a regular expression against which to match messages. For example RP.* 10: will emit an event for every RP message sent by an OTB.
- Enable passive device scan to discover unknown RF devicesListens to RF traffic and identifies unknown devices. Discovered devices can be reviewed and added to the schema via service calls.
- Send persistent notifications when new devices are foundWhen enabled, a persistent notification appears when new unknown devices are discovered.
- Days without traffic before marking a device as lostNumber of days an accepted device can go without being seen before it is marked as lost.
- Notify when gateway is offlineWhen enabled, a persistent notification appears when the gateway has not received RF packets for the timeout period. Disable for very quiet networks (e.g. a single PIV fan).
- Activate 'Last message sent' sensorsAdds a diagnostic sensor to each device showing the last message it sent. Off by default: the sensor updates on every transmitted message, which doubles recorder writes and floods the device activity pane.
Packet log
- Packet log folder pathPath to the folder where logs will be stored (e.g., /config/ramses_rf_logs/).
- Packet log file prefixPrefix for the log files (e.g., 'packet_log' creates 'packet_log.log').
- Number of days to retain each logNumber of days to keep historical log backups before deleting them.
- Memory buffer capacity (lines)Number of packet log lines to buffer in RAM before writing to disk. Set to 0 to disable the flight recorder.
- Timer flush interval (seconds)Periodic interval in seconds to flush the memory buffer to disk. Set to 0 to disable timer flushing.
- Error trigger flush levelLogging severity level that will instantly trigger a buffer flush to disk (e.g., WARNING or ERROR).
After setup
- Serial device path
- Serial device pathExamples: '/dev/cu.modem2', 'COM6' (Windows) or 'mqtt://user:pwd@homeassistant.local:1883'
- Advanced serial port configNot required for typical use, except nanoCUL to set 'baudrate: 57600'.
- Use legacy Zigbee acknowledgementsOverride automatic firmware detection and use text acknowledgements.
- Scan intervalHow often to poll for changes in state. Values below 60 or above 180 are not recommended.
- Gateway timeoutHow long (in minutes) to wait before considering the gateway inactive. Increase this for quiet networks (e.g., 10-15 minutes).
- Advanced ramses_rf gateway configurationNot required for typical use.
- Gateway Device ID
- MQTT Topic Prefix
- System schemaA mapping of system device IDs to their respective schemas. This should describe your complete system(s), including zones with sensors, as YAML.
- Log Tx + all MQTT trafficShow all subscribed topics from MQTT broker in system console.
- Enable send_packet service for casting bespoke packets
- Regular expression to use as event filterEmit a ramses_cc event for each message matching the filter. For example RP.* 10: will emit an event for each message sent by an OTB. Leave empty to deactivate.
- Enable passive device scan to discover unknown RF devicesListens to RF traffic and identifies unknown devices. Discovered devices can be reviewed and added to the schema via service calls.
- Send persistent notifications when new devices are foundWhen enabled, a persistent notification appears when new unknown devices are discovered.
- Days without traffic before marking a device as lostNumber of days an accepted device can go without being seen before it is marked as lost.
- Notify when gateway is offlineWhen enabled, a persistent notification appears when the gateway has not received RF packets for the timeout period. Disable for very quiet networks (e.g. a single PIV fan).
- Activate 'Last message sent' sensorsAdds a diagnostic sensor to each device showing the last message it sent. Off by default: the sensor updates on every transmitted message, which doubles recorder writes and floods the device activity pane.
- Packet log folder pathPath to the folder where logs will be stored (e.g., /config/ramses_rf_logs/).
- Packet log file prefixPrefix for the log files (e.g., 'packet_log' creates 'packet_log.log').
- Number of days to retain each logNumber of days to keep historical log backups before deleting them.
- Memory buffer capacity (lines)Number of packet log lines to buffer in RAM before writing to disk. Set to 0 to disable the flight recorder.
- Timer flush interval (seconds)Periodic interval in seconds to flush the memory buffer to disk. Set to 0 to disable timer flushing.
- Error trigger flush levelLogging severity level that will instantly trigger a buffer flush to disk (e.g., WARNING or ERROR).
- Clear schema (cached + config entry — full fresh start)
- Clear system state (recent packets)
- Clear discovery state (found devices list)
- Pool members (uncheck to remove, primary can be removed — auto-promotes another)
- Discovery candidates (check to accept as pool members)
- Additional ports (USB, Zigbee, external MQTT)
- Add new HGI
- MQTT pool: seconds to wait for at least one HGI to come online
- Confirm: clear all HGIs and reset connection
Texts from the code of ramses-rf/ramses_cc.
Entities
- ButtonsForce Update, Sync Topology, Discover Known Devices, Reset Filter Counter
- EventsLearn, Regex Match
- NumbersPolling Interval
- SelectsSystem mode
Actions
- Bind a DeviceBind a device to a CH/DHW controller or a fan/ventilation unit. The device will be either a sensor (e.g. temperature, humidity, etc.) or a remote (e.g. a 4-way switch). It must be 'yours' in the System schema and correctly configured with an appropriate class and _faked: true.Fields: Supplicant device_id, Offer, Confirm, Device info
- Update the System stateImmediately update the system state, without waiting for the next scheduled update.
- Sync learned topologyImmediately sync the learned topology (zones, DHW, orphans) from ramses_rf back to the config entry, without waiting for the 5-minute interval.
- Discover Known DevicesSend RQ discovery messages from the HGI to devices in the 'System schema' that are not yet registered or not yet promoted to their expected class. Useful after cache clear or when setting up a new system.Fields: Device ID
- Get Discovered DevicesRetrieve the list of devices discovered by the passive scan, optionally filtered by status or enabled flag. Fires a ramses_cc_discovered_devices event with the results.Fields: Status, Enabled
- Accept Discovered DeviceAccept a discovered device and add it to the schema. The device will be created on the next discover_known_devices call.Fields: Device ID, Owner, Schema Entry
- Discard Discovered DeviceDiscard a discovered device. It stays in the list for spam prevention but won't be created.Fields: Device ID
- Remove Discovered DeviceMark a previously accepted device as removed (it no longer exists). Discovery info is kept to prevent re-notification.Fields: Device ID
- Enable Discovered DeviceEnable a disabled or discarded device without changing its status.Fields: Device ID
- Disable Discovered DeviceDisable an accepted device temporarily (e.g. for maintenance) without changing its status.Fields: Device ID
- Add Faked REMCreate a faked REM (virtual remote) for sending commands to a FAN. No RF traffic needed.Fields: Device ID, Bound To, Alias
- Remove DeviceRemove a device from the schema and HA device registry. Useful when a device has been replaced, is no longer present, or was added by mistake. The HGI gateway cannot be removed.Fields: Device ID
- Unbind DeviceDetach a REM/DIS (or HVAC sensor) from a FAN without removing either device. The device keeps its own schema entry and is listed as an HVAC orphan for review. This is a local (schema) detach only — no verified on-air unbind exists yet, so the FAN may keep reporting the device bound until a hardware unbind/gesture.Fields: Device ID, FAN ID, Confirm, On-air unbind
- Get Fan ParameterRequest a configuration parameter (2411) from a FAN. Select the FAN device or entity, or enter its RAMSES FAN ID.Fields: FAN device, RAMSES FAN ID, Parameter ID, Source Device ID
- Set Fan ParameterSet a configuration parameter (2411) on a FAN. Select the FAN device or entity, or enter its RAMSES FAN ID.Fields: FAN device, RAMSES FAN ID, Parameter ID, Value, Source Device ID
- Update Fan ParametersRequest all available configuration parameters (2411) from a FAN. Will update all parameter entities for the device. Select the FAN device or entity, or enter its RAMSES FAN ID.Fields: FAN device, RAMSES FAN ID, Source Device ID
- Reset filter counterReset the fan's filter_remaining counter using a bound remote (e.g. a 4-way switch). It must be 'yours' in the System schema and correctly configured with an appropriate class and _faked: true.
- Send a Command packetSend a completely bespoke RAMSES II command packet from the gateway.Fields: Destination ID, Source ID, Packet verb, Packet code, Payload as hex
- Get the Fault log of a TCS (Controller)Obtains the controller's latest fault log entries.Fields: Number of log entries
- Fully reset the Mode of a TCS (Controller)The system will be in auto mode and all zones will be in follow_schedule mode, including (if supported) those in permanent_override mode.
Troubleshooting
- DiagnosticsDownloads a diagnostics file to attach to a bug report.
Shows in Vulpo
Climate card, Button card, Select card, Chart card, Apple Watch, Climate Live Activity.Information
- Installs
- 229 sharing analytics
- GitHub stars
- 124
- Connection
- Works locally
- Upkeep
- Updated in the last 6 months
- Version
- 0.61.2,
- Category
- Hubs and protocols, Wireless protocols
- Kind
- Marketplace integration
- Needs
- Needs the Marketplace (HACS on 2026.10 and older)
- Domain
ramses_cc- Issues
- Report an issue











