From 60cd7f60be5006c8265aa59504d80235868c0174 Mon Sep 17 00:00:00 2001 From: Lennart Henke Date: Mon, 11 May 2026 14:19:00 +0200 Subject: [PATCH 1/4] feat: Add somfy rts documentation --- source/_integrations/somfy_rts.markdown | 89 +++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 source/_integrations/somfy_rts.markdown diff --git a/source/_integrations/somfy_rts.markdown b/source/_integrations/somfy_rts.markdown new file mode 100644 index 000000000000..3c4b24e82732 --- /dev/null +++ b/source/_integrations/somfy_rts.markdown @@ -0,0 +1,89 @@ +--- +title: Somfy RTS +description: Control Somfy RTS motorized covers via a 433.42 MHz radio frequency transmitter. +ha_release: "2026.6" +ha_iot_class: Assumed State +ha_codeowners: + - '@l-henke' +ha_domain: somfy_rts +ha_integration_type: device +ha_config_flow: true +ha_platforms: + - cover +ha_category: + - Cover +ha_quality_scale: bronze +related: + - docs: /integrations/radio_frequency/ + title: Radio frequency integration + - docs: /integrations/esphome/ + title: ESPHome integration +--- + +The **Somfy RTS** {% term integration %} lets you control Somfy RTS motorized covers — such as roller blinds and shutters — directly from Home Assistant. Commands are sent wirelessly over 433.42 MHz using a compatible radio frequency transmitter, with no cloud or internet connection required. + +## Supported devices + +Roller blinds and shutters with a Somfy RTS motor have been tested and are known to work. + +Other Somfy RTS motorized covers — such as awnings, garage doors, and pergolas — may also work, as they all use the same Somfy RTS protocol. However, these have not been tested. + +## Unsupported devices + +Somfy *io* and Somfy *TaHoma* devices use different protocols and are not supported by this integration. For those, use the [Somfy](/integrations/somfy/) integration instead. + +## Prerequisites + +This integration requires a radio frequency transmitter that supports 433.42 MHz OOK transmissions, made available to Home Assistant via the [radio frequency](/integrations/radio_frequency/) integration. + +A Texas Instruments CC1101-based module connected via [ESPHome](/integrations/esphome/) has been tested and confirmed to work. Other transmitters compatible with the radio frequency integration may work as well. + +{% include integrations/config_flow.md %} + +{% configuration_basic %} +Remote address: + description: "A unique 24-bit hexadecimal address for this virtual remote, between `000001` and `FFFFFF`. You can choose any value freely — just make sure no other remote already paired to the same Somfy motor uses the same address. Each remote maintains its own rolling code counter, so two remotes sharing an address would quickly fall out of sync with the rolling code the motor expects, causing commands to be ignored." +Radio frequency transmitter: + description: "The radio frequency transmitter to use for sending Somfy RTS commands. Only transmitters that support 433.42 MHz OOK transmissions appear in this list." +{% endconfiguration_basic %} + +### Pairing with your Somfy motor + +After entering the address and transmitter, the setup continues with a pairing step. This step is optional — you can skip it and pair later by reconfiguring the integration — but it is required before Home Assistant can control the motor. + +To pair the virtual remote with your Somfy motor: + +1. Using a physical remote that is already paired to the motor, hold the **PROG** button until the motor jogs (makes a short up-and-down movement). The motor is now in pairing mode. +2. In the Home Assistant setup dialog, check the **Send PROG** box and select **Submit**. +3. The motor should jog again to confirm that the pairing was successful. + +If you need to send PROG more than once, check the box and submit again — the step repeats until you leave **Send PROG** unchecked and submit to finish. + +{% important %} +Each Somfy motor can only store a limited number of paired remotes — typically around 12. Once a remote is registered, it occupies a slot even if you do not finish the setup in Home Assistant. The only way to clear slots for addresses you no longer know is to factory reset the motor, which removes *all* paired remotes at once. Only send PROG when you are ready to complete and save the setup. +{% endimportant %} + +## Supported functionality + +### Covers + +The integration provides a cover entity for each configured Somfy RTS remote address. The cover supports the following actions: + +- **Open** — sends the Up command to the motor. +- **Close** — sends the Down command to the motor. +- **Stop** — sends the My command to the motor. Depending on your motor's settings, this either stops movement mid-way or moves the cover to a preset favorite position. + +Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any feedback from the motor. The cover state shown in Home Assistant is therefore *assumed* — it reflects the last command sent, not the motor's actual position. + +## Known limitations + +- **No position feedback**: The cover does not report its actual position. The state is an optimistic assumption based on the last command sent. +- **Pairing after setup**: Once the integration is set up, there is currently no way to send a PROG command from Home Assistant to pair or unpair this virtual remote from a motor. If you need to pair the remote after setup, you can do so by reconfiguring the integration entry. Full support for sending PROG at any time will be added in a future update. + +## Removing the integration + +{% include integrations/remove_device_service.md %} + +{% caution %} +Removing the integration does not unpair the virtual remote from your Somfy motor. The remote slot on the motor remains occupied. If you want to free up that slot, you will need to factory reset the motor, which removes all paired remotes at once. +{% endcaution %} From 6b6599a2c6359a8b29d5cb5d0a1b1ccdf88033fe Mon Sep 17 00:00:00 2001 From: Lennart Henke Date: Tue, 12 May 2026 11:11:58 +0200 Subject: [PATCH 2/4] chore: Add troubleshooting section --- source/_integrations/somfy_rts.markdown | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/_integrations/somfy_rts.markdown b/source/_integrations/somfy_rts.markdown index 3c4b24e82732..a8552df87224 100644 --- a/source/_integrations/somfy_rts.markdown +++ b/source/_integrations/somfy_rts.markdown @@ -80,6 +80,22 @@ Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any - **No position feedback**: The cover does not report its actual position. The state is an optimistic assumption based on the last command sent. - **Pairing after setup**: Once the integration is set up, there is currently no way to send a PROG command from Home Assistant to pair or unpair this virtual remote from a motor. If you need to pair the remote after setup, you can do so by reconfiguring the integration entry. Full support for sending PROG at any time will be added in a future update. +## Troubleshooting + +### Commands are not received by the motor + +The motor does not respond to commands sent from Home Assistant. Because Somfy RTS is a one-way protocol, there is no error feedback — commands are either received or silently ignored. + +Things to check: + +- Make sure the transmitter is powered and reachable from Home Assistant. +- Verify that the virtual remote is paired with the motor. If you skipped the PROG step during setup, reconfigure the integration entry to send the PROG command. +- Check that the transmitter is within range of the motor. Walls and other obstructions can reduce the effective range significantly. + +### Broadlink RM4 Pro: commands may not reach the motor + +The Broadlink RM4 Pro does not support the 433.42 MHz frequency that Somfy RTS requires. Commands may still reach the motor if you place the Broadlink device within 30–50 cm of the motor, but reliable operation at normal distances is not expected. For best results, use a transmitter that fully supports 433.42 MHz OOK transmissions. + ## Removing the integration {% include integrations/remove_device_service.md %} @@ -87,3 +103,4 @@ Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any {% caution %} Removing the integration does not unpair the virtual remote from your Somfy motor. The remote slot on the motor remains occupied. If you want to free up that slot, you will need to factory reset the motor, which removes all paired remotes at once. {% endcaution %} + From fdf1c3194251b5e245b04c7aa01f532d8c393da4 Mon Sep 17 00:00:00 2001 From: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com> Date: Thu, 28 May 2026 08:50:05 +0200 Subject: [PATCH 3/4] tiny style tweaks Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com> --- source/_integrations/somfy_rts.markdown | 28 ++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/source/_integrations/somfy_rts.markdown b/source/_integrations/somfy_rts.markdown index a8552df87224..2c1611c0964b 100644 --- a/source/_integrations/somfy_rts.markdown +++ b/source/_integrations/somfy_rts.markdown @@ -1,7 +1,7 @@ --- title: Somfy RTS description: Control Somfy RTS motorized covers via a 433.42 MHz radio frequency transmitter. -ha_release: "2026.6" +ha_release: 2026.7 ha_iot_class: Assumed State ha_codeowners: - '@l-henke' @@ -20,13 +20,13 @@ related: title: ESPHome integration --- -The **Somfy RTS** {% term integration %} lets you control Somfy RTS motorized covers — such as roller blinds and shutters — directly from Home Assistant. Commands are sent wirelessly over 433.42 MHz using a compatible radio frequency transmitter, with no cloud or internet connection required. +The **Somfy RTS** {% term integration %} lets you control Somfy RTS motorized covers, such as roller blinds and shutters, directly from Home Assistant. Commands are sent wirelessly over 433.42 MHz via a compatible radio-frequency transmitter. No cloud or internet connection required. ## Supported devices Roller blinds and shutters with a Somfy RTS motor have been tested and are known to work. -Other Somfy RTS motorized covers — such as awnings, garage doors, and pergolas — may also work, as they all use the same Somfy RTS protocol. However, these have not been tested. +Other Somfy RTS motorized covers—such as awnings, garage doors, and pergolas—may also work, as they all use the same Somfy RTS protocol. However, these have not been tested. ## Unsupported devices @@ -42,14 +42,14 @@ A Texas Instruments CC1101-based module connected via [ESPHome](/integrations/es {% configuration_basic %} Remote address: - description: "A unique 24-bit hexadecimal address for this virtual remote, between `000001` and `FFFFFF`. You can choose any value freely — just make sure no other remote already paired to the same Somfy motor uses the same address. Each remote maintains its own rolling code counter, so two remotes sharing an address would quickly fall out of sync with the rolling code the motor expects, causing commands to be ignored." + description: "A unique 24-bit hexadecimal address for this virtual remote, between `000001` and `FFFFFF`. You can choose any value freely. Make sure no other remote already paired to the same Somfy motor uses the same address. Each remote maintains its own rolling code counter, so two remotes sharing an address would quickly fall out of sync with the rolling code the motor expects, causing commands to be ignored." Radio frequency transmitter: description: "The radio frequency transmitter to use for sending Somfy RTS commands. Only transmitters that support 433.42 MHz OOK transmissions appear in this list." {% endconfiguration_basic %} ### Pairing with your Somfy motor -After entering the address and transmitter, the setup continues with a pairing step. This step is optional — you can skip it and pair later by reconfiguring the integration — but it is required before Home Assistant can control the motor. +After entering the address and transmitter, the setup continues with a pairing step. This step is optional. You can skip it and pair later by reconfiguring the integration. However, it is required before Home Assistant can control the motor. To pair the virtual remote with your Somfy motor: @@ -57,10 +57,10 @@ To pair the virtual remote with your Somfy motor: 2. In the Home Assistant setup dialog, check the **Send PROG** box and select **Submit**. 3. The motor should jog again to confirm that the pairing was successful. -If you need to send PROG more than once, check the box and submit again — the step repeats until you leave **Send PROG** unchecked and submit to finish. +If you need to send PROG more than once, check the box and submit again. The step repeats until you leave **Send PROG** unchecked and submit to finish. {% important %} -Each Somfy motor can only store a limited number of paired remotes — typically around 12. Once a remote is registered, it occupies a slot even if you do not finish the setup in Home Assistant. The only way to clear slots for addresses you no longer know is to factory reset the motor, which removes *all* paired remotes at once. Only send PROG when you are ready to complete and save the setup. +Each Somfy motor can only store a limited number of paired remotes; typically around 12. Once a remote is registered, it occupies a slot even if you do not finish the setup in Home Assistant. The only way to clear slots for addresses you no longer know is to factory reset the motor, which removes *all* paired remotes at once. Only send PROG when you are ready to complete and save the setup. {% endimportant %} ## Supported functionality @@ -69,11 +69,11 @@ Each Somfy motor can only store a limited number of paired remotes — typically The integration provides a cover entity for each configured Somfy RTS remote address. The cover supports the following actions: -- **Open** — sends the Up command to the motor. -- **Close** — sends the Down command to the motor. -- **Stop** — sends the My command to the motor. Depending on your motor's settings, this either stops movement mid-way or moves the cover to a preset favorite position. +- **Open**: sends the Up command to the motor. +- **Close**: sends the Down command to the motor. +- **Stop**: sends the My command to the motor. Depending on your motor's settings, this either stops movement mid-way or moves the cover to a preset favorite position. -Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any feedback from the motor. The cover state shown in Home Assistant is therefore *assumed* — it reflects the last command sent, not the motor's actual position. +Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any feedback from the motor. The cover state shown in Home Assistant is therefore *assumed*. It reflects the last command sent, not the motor's actual position. ## Known limitations @@ -84,7 +84,7 @@ Because Somfy RTS is a one-way radio protocol, Home Assistant cannot receive any ### Commands are not received by the motor -The motor does not respond to commands sent from Home Assistant. Because Somfy RTS is a one-way protocol, there is no error feedback — commands are either received or silently ignored. +The motor does not respond to commands sent from Home Assistant. Because Somfy RTS is a one-way protocol, there is no error feedback. Commands are either received or silently ignored. Things to check: @@ -100,7 +100,7 @@ The Broadlink RM4 Pro does not support the 433.42 MHz frequency that Somfy RTS r {% include integrations/remove_device_service.md %} -{% caution %} +{% note %} Removing the integration does not unpair the virtual remote from your Somfy motor. The remote slot on the motor remains occupied. If you want to free up that slot, you will need to factory reset the motor, which removes all paired remotes at once. -{% endcaution %} +{% endnote %} From 24e157f18dd33831d4955d2dfdbe203b3808ed66 Mon Sep 17 00:00:00 2001 From: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com> Date: Thu, 28 May 2026 08:51:18 +0200 Subject: [PATCH 4/4] fix codeowner (case-sensitive) --- source/_integrations/somfy_rts.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/somfy_rts.markdown b/source/_integrations/somfy_rts.markdown index 2c1611c0964b..65123e62d513 100644 --- a/source/_integrations/somfy_rts.markdown +++ b/source/_integrations/somfy_rts.markdown @@ -4,7 +4,7 @@ description: Control Somfy RTS motorized covers via a 433.42 MHz radio frequency ha_release: 2026.7 ha_iot_class: Assumed State ha_codeowners: - - '@l-henke' + - '@L-henke' ha_domain: somfy_rts ha_integration_type: device ha_config_flow: true