Skip to content

Configuring the Software

rstrouse edited this page Jul 27, 2024 · 53 revisions

From here on out we just need to get the shades talking to the ESPSomfy RTS device. You will first connect the device to your local network then add the shades, pair them, and link the remotes.

Initial Network Connection

When the software is first connected it will start its own ESPSomfy RTS wifi network in Access Point (AP) mode. You will need to connect to this network so you can configure ESPSomfy RTS to connect to your network. So open your WiFi networks and connect to the unsecured network named ESPSomfy RTS. Once connected navigate to http://192.168.4.1 and it will bring up the blank Home screen. Click on the gear icon at the upper right to open the configuration screen and select the Network section. Initially, the transceiver will not be initialized until you enable it in a later step. This is to ensure you have the pin mappings set correctly so do not worry about this message for now. First lets get you connected to your home network.

Set Initial System Options

When first setting up ESPSomfy RTS you should first name the device and provide the time zone you are located in. If you have your own NTP time server then you can also provide that information as well.

If you have computers that support Universal Plug and Play (uPnP) such as Microsoft Windows you can check the Broadcast uPnP over SSDP and your ESPSomfy RTS device will show up in your network list. If you uncheck this option ESPSomfy RTS will not broadcast uPnP over SSDP.

ESPSomfy RTS can check github for updates. If a new version is available it will alert you in the Web UI as well as trigger the update entity in Home Assistant if you installed the integration there.

image

Once you have entered your information press the Save button to persist your changes. Keep in mind you should provide a unique host name for each of your ESPSomfy RTS devices. You probably only need this if you have more than 32 shades to control, or the radio is encased in Kryptonite diminishing the signal, or it is located on another planet, or has a magic spell of protection on it. However, the range of the actual Somfy remotes are abysmal so multiple ESPSomfy RTS devices may be in order if the remotes cannot be heard from a centralized device.

Configure your Network Adapter

You must first indicate whether you are using a hardwired Ethernet adapter or WiFi. If you built your ESPSomfy RTS device from an ESP32 module that has a hardwired RJ45 Ethernet port and have not connected it to your local network, plug it in now. Either way choose the correct section below to get connected up to your network.

Using a WiFi Connection

Press the scan button to look for available WiFi networks. When the list returns, select your WiFi network or if you are stealing WiFi from one of your neighbors choose that one, enter the passphrase and hit save. If you are using a hidden SSID just stop it. It provided no security at any level and if I were a WiFi predator I would already have your hidden SSID. But if your SSID isn't listed you can type it in SSID field and provide the passphrase for it.

image

Once you have entered the information you can click the Save Adapter button. ESPSomfy RTS will not connect to your WiFi network until you have disconnected from the dedicated access point that you are currently connected to. So to allow ESPSomfy RTS to connect to your network disconnect your computer from the ESPSomfyRTS Wifi network.

Use Hidden SSID

Check this box if you are using a hidden SSID. Honestly, if your reason for using a hidden SSID is for security think harder. There is no security reason for hidden SSIDs in fact the broadcast of the SSID during connection from all the external devices make the SSID even more visible. It will inherently identify the devices connected to it as well. Either way if you must use a hidden SSID check the "Use Hidden SSID" checkbox and ESPSomfy RTS will not scan for the strongest access point to connect to.

There is a major downside to this connection method though. The ESP32 will connect to the first access point that responds to it. This means that if you have multiple APs on the same network, it will connect to the first AP it finds. Imagine the reboot process when you reboot your entire network. As the network comes back to life the host AP will always be first to come back online and if this is not the closest AP it will represent a weaker signal to the device. ESP32 also does not support seamless roaming when the SSID is hidden.

Roaming

ESPSomfy RTS supports roaming between access points in a mesh network as of v2.4.1. Although the ESP32 MCU does not contain a dual wan configuration so it can switch between access points without disabling the radio, ESPSomfy RTS will scan for access points and reconnect to a stronger one should it see a better connection on the network. ESPSomfy RTS performs a passive scan and does not shut down the Wifi radio during the detection phase. It will also not change the connection unless the access point provides at least 10dbm better connectivity or the existing connection is lost entirely.

By default roaming is enabled and should provide you with the most reliable Wifi connection on your mesh network but if you have a router setup that does not include mesh technologies or multiple access points or you are using AP binding on your router, simply uncheck the Enable Roaming checkbox and save the adapter. This will stop ESPSomfy RTS from even looking for a different AP to connect to.

Using Hardwired Ethernet

If you have one of the hardwired ethernet ESP32 devices select the Use Ethernet checkbox. This will change the screen to allow you to configure the Physical Hardware (PHY) for your Ethernet enabled ESP32 device. Use care to ensure you have properly configured the hardware as many of those boards have no protections on the connection between the ESP32 microcontroller and the Ethernet chip. You can damage the Ethernet chip with improper settings.

Select your board from the Board Type dropdown. Many of the Ethernet enabled boards are listed in this dropdown but if it is not listed break out the documentation for your board and enter them as a Custom Config. Again take care to get these settings correct. If your board is listed take a moment to ensure nothing has changed in the manufacturing since these settings were first obtained from the documentation. You will be presented with a confirmation screen when you save the adapter.

The Fallback to Wireless feature allows you to disconnect the Ethernet cable and ESPSomfy RTS will automatically connect to the WiFi network. To use this feature you need to first configure the WiFi adapter then configure the Ethernet adapter. While it might have been fun to have both active at the same time it puts too much load on the ESP32 to be practical. Only one adapter will be enabled at a time.

image

Once you press the Save Adapter button you will be presented with the prompt below. Take a second to read the prompt and ensure all of the settings are correct before pressing the Save Ethernet Settings button.

image

Connecting your local network

ESPSomfy RTS will not connect to your local network until you have disconnected from the dedicated access point that you are currently connected to. So to connect to your local network disconnect your computer from the ESPSomfyRTS WiFi network. When there are no connections to the dedicated access point set up by ESPSomfy RTS it will reboot and connect to your local network.

Once you disconnect ESPSomfy RTS will no longer be available on 192.168.4.1 and will be assigned an IP address from your local network. Your ESPSomfy RTS device has rebooted it should be available on the IP address assigned by your router or at the host name you provided in the previous step. On an Apple or Linux device you will find it at http://<host name>.local and if you enabled SSDP on Windows it will be at http://<host name>. DNS can be stupid sometimes so you may need to look in your router for the IP address.

Setting up a Fixed IP Address

By default ESPSomfy RTS uses the Domain Host Control Protocol (DHCP) settings in your router. I highly recommend allowing your router to do its job and assign the IP address. However, you should reserve the address in the DHCP settings for your router so no other device can be assigned the IP address. mDNS is the service that is used for allowing you to connect via the local name of the ESPSomfy-RTS device, while it does work it isn't really that reliable. Making a DHCP reservation complete with the host name of the device will help if you have occasional drop offs from your network.

If you are old school and don't have enough complexity in your life you can configure a static IP by navigating to Network -> DCHP/Static IP in the configuration pages. When you uncheck the Acquire IP Address automatically (DHCP) checkbox the settings for setting up a fixed IP address will appear. If you do not know what values you should use for this just don't do it and reserve an address in the DHCP server of your router. Then simply call it a day.

Set up the Transceiver

Initially, ESPSomfyRTS will start with the transceiver disabled. Now that you have the network connected, you will need to ensure the pin mappings match the wiring that you used when initially building your device. To set up and configure your transceiver navigate to the transceiver configuration screen. While in configuration mode click the Radio section. From here you can set up the transceiver. A detailed description of the Transceiver options can be found in this Wiki.

image

First you need to select the protocol and bit length used for your motors. If you do not know what type of motor radio you have it is likely an RTS protocol with a 56-BIT motor. ESPSomfy-RTS supports the RTW, RTV, and the RTS protocol. If your remote is a Telis RTS, Chronis RTS, Situo RTS, or a Smoove RTS then you for sure have an RTS motor.

However, if your documentation mentions RTW or you have an ASA motor then select the RTW protocol. The protocol and the radio type that you set here will be the values that are used as the default when you add a new shade. You will have the opportunity to set these for each individual motor later, but you should set this here so you do not have to select it with each new shade you have. If you have motors on different protocols you can set them up for each protocol so long as they are using the same base frequency.

There is one final way to verify the protocol settings. You can view the log while pressing a button on a working remote. This will tell you how many bits it is sending and which protocol dialect it is speaking. By viewing the Bits column you can see what the incoming signal from that remote is using. For instance, a 56-bit RTS signal will be 56-S and an 80-bit RTS signal will be 80-S. If the protocol is RTW then the -S will be replaced with -W and if the protocol is RTV then the -S will be replaced with -V.

Next review each of the pin selectors and set them to the proper pin assignment for your wiring. The screen will default to the default wiring from the hardware build but please double check to ensure these values match the way you wired the transceiver. If you used a wired Ethernet board these will most definitely not be correct.

After you have verified the pins, click the Enable Radio checkbox and then press the Save Radio button. ESPSomfy RTS will now enable the transceiver into receive mode so you can tune your radio. Once the radio has been enabled, the Radio not Initialized header will disappear from the screen. If the message does not disappear, then you likely have an issue with your pin selections.

You can view all incoming frames from your remotes on the Logs tab. This will display the frames with the most recently received frame at the topmost position. Pressing the Copy button will copy the current command list into your clipboard. If you are submitting an issue that ESPSomfy RTS doesn't recognize a particular command this will help with debugging and allow me to provide further assistance.

image

TROUBLESHOOTING TIP - I Cannot make the RADIO NOT INITIALIZED message go away

This message appears when ESPSomfy-RTS sends the configuration to the CC1101 but it cannot read it back. This can be caused by a couple of things but the most common reason is because of the way the CC1101 boards are marked. First check your wiring and keep in mind that the odd numbered pins (1,3,5,7) are on the bottom edge of the board and when you flip it over to hook it up they go from right to left instead of left to right.

TROUBLESHOOTING TIP - I Get signals from my remote but cannot pair ESPSomfy-RTS

Please take a moment to ensure the selections are correct for the RX and TX pins. If your transceiver is receiving but cannot transmit as indicated by being able to see the commands from the remote but your motor does not jog when trying pair the ESPSomfy-RTS device with your motor, then you likely have the RX and TX selections backwards. The CC1101 can only transmit (TX) using the pin marked GDO0 but it can receive on either GDO0 or GDO2.

TROUBLESHOOTING TIP - I still cannot get ESPSomfy-RTS to pair with my motor

If you have multiple motors and one of them will not pair then this can be one of a couple of things. First verify that you have the correct protocol selected. If you select the RTS protocol for an RTW motor or vice versa, ESPSomfy will send out commands in RTS protocol for which your RTW motor will simply ignore. Somfy motors also have a limited number of memory slots if you fill them up you will need to factory reset the motor to clear them out then pair your remotes again.

Tune your Transceiver

The default tuning parameters are most likely not the best settings for your transceiver. To start, first select the RX Bandwidth to 96.96kHz and the Frequency Deviation to 11.43kHz. You can use the arrows on your keyboard to fine tune the value. Then press the Save Radio button. Next, using a remote from about 3 feet away press one of the buttons. ESPSomfy RTS should pick up the signal and provide an RSSI (Received Signal Strength Indicator) value. This number is a measurement of how strong the signal is. The closer this value gets to 0 indicates a stronger received signal.

Each time you press a button it should increment the number next to the RSSI: label. Below is from a DSUN radio and this is the best I could get it to do at 3 feet. Bear in mind this has to do with many factors but if you are getting -60dBm consistently then it is still better than the reception on the motor. The range for Somfy remotes is not great. They use a PCB antenna and from my novice inspection, I could not find an amplifier circuit.

image

This same configuration it an E07-M1101D transceiver was registering -32dBm on average.

image

Tuning the RSSI value requires moving the sliders to the left (more narrow) or the right (wider) to get the best reception. ESPSomfy RTS tunes the radio center point based on the selection of the Base Frequency slider. This is supposed to be tuned to 433.42mHz for your remotes and motors. The ability to tune this center point is provided as a means to accommodate differences in manufacturing. If you decide to move this off 433.42Mhz do it in very small increments while saving after each change and test. If you happen to be blessed with some means of analyzing the signal the setting like an RTL-SDR your choice for this will be very apparent. Carrier differences have been measured so far between 433.38Mhz and 433.43Mhz.

The RX Bandwidth controls how much of the frequency is listened to so a narrower bandwidth filters out more noise but a wider bandwidth hears more. 97.96kHz gives me good range in my environment but your mileage can vary depending on what other interference is nearby.

If you place the receiver on the top of a microwave (don't put that or small animals in there) then you will likely need to narrow the bandwidth as much as possible. As a suggestion don't do that and find a place for the radio away from interference and small animals.

The Frequency Deviation setting determines how much signal difference from low to high or high to low is required to trigger a data bit. The wider the deviation is, the stronger the signal must be. Conversely, when you set this more narrow, there is a greater likelihood of picking up distant noise. Setting this value to 11.92kHz initially seemed to have a good trade-off for me for noise and range.

I would be remiss if I didn't mention folks with a frequency analyzer for which I am not one. Hence the basic settings on the configuration page. If you are a radio head, and not just some dude who has listened to their music, open an issue or discussion so we can benefit from your findings.

The TX Power determines how loud the transceiver shouts at the motors. You can leave this at 10dBm unless your transceiver is one of the ones that support up to 12dBm. Either way this range is much further than the typical Somfy remote and at 10dBm you should be able to control the shades from a great distance. If only the Somfy remotes had better range -- sigh.

Also, if you are fiddling with the base frequency and are having a hard time capturing remotes. Set it back to 433.42Mhz and start over. Remember that sometimes a frozen flagpole is simply a magnet for any moron with a tongue. I you don't know what I am talking about you didn't grow up neck deep in snow or haven't fiddled with anything until you are stuck.

Rooms

ESPSomfy RTS allows you to segregate your motors into rooms. If you have a large installation this is very handy to identify the motor so you don't find yourself repeating the location in the name of shade definition. You can assign up to 16 rooms. So for instance if you have 8 blinds in the kitchen you want to control, 4 in the master bathroom that you want to make sure are open when you exit the shower, and a smattering of others spread across the house you can define rooms and assign the shades and groups into those rooms. Shades that are not assigned to a room will show up in the Home room.

I also only gave you 20 characters to name your shades so placing them in rooms means you do not have to repeat the word kitchen for all the blinds in the kitchen. So you get another 20 characters to define each room. On the main screen, a selector will appear after you have created rooms that will allow you to select the only the motors in that room.

image

This is an example but Google Translate had its way with it.

image

Shade/Motor Setup

The ESPSomfy RTS device supports a maximum of 32 shades, blinds, or draperies. So if you live in a glass house don't throw rocks make another device. You can also modify the code to increase the SOMFY_MAX_SHADES value but you will eventually run out of memory on the ESP32. So stop being so cheap and build another $12 device.

ESPSomfy RTS needs a bit of information about each motor it is controlling as well as any other means of controlling said motors. This will ensure that the shade positions are always in sync. Up is up and down is down and any position in between is a percentage of down. So if you are used to the percentage of up translation from others, then get used to a percentage of down.

No matter if I am standing on my head or in any other position, I cannot square a percentage of open in my mind. It doesn't work, 100% is not open and 0% is not closed. I just can't convince myself of that backwards logic any better than I can convince myself that I look great in a turtleneck. So before you submit an issue that it is backwards just don't. Then ask yourself if you remove the shade completely... is that 100%. If it is you need help.

Ok so after all that I added a checkbox to the shade configuration that will allow you to live in your madness. Click the Invert Position checkbox and it will register as percentage of open.

At this point it is probably beneficial to provide a little bit of a glossary.

  • Blind - A window covering made up of slats with a single up/down motor and an optional tilt motor.
  • Shade - A window covering that is made up of fabric with a single motor that drives the shade covering up or down on a roller tube. This term is also used as a generic term referring to a defined Shade, Blind, or Drapery in the ESPSomfy RTS software.
  • Awning - A structured shade that extends and retracts horizontally from a fixed point.
  • Remote - A physical device such as a Telis or Situo channel that is used to control the said motor(s). Keep in mind a Telis 4 is actually 5 remotes but who's counting.
  • Linked Remote - A remote that is used to control a particular motor that the ESPSomfy RTS module should know about. ESPSomfy RTS needs to know about these so that if a button is pressed on an external remote it knows what the current position is of the shade should be.
  • Pairing - The process of linking the defined shade in this software so it can control the shade.

Adding a Shade

To add a shade click on the gears icon to open the configuration then click on the Somfy section. With the Shades tab selected, press the Add Shade button. This will open up a new shade window to allow you to enter the information about your shade. You can come back later and edit any of these values later but I caution editing the address after it has been paired. Once you pair the shade with the motor, the motor will store this address. If you change it later it will not know who it is.

Protocol

ESPSomfy RTS supports RTS, RTW, and RTV protocols. If your remote has the 3 letters RTS on it then you likely have an RTS motor. However, there are a number of motors out there that speak a slightly different version of this protocol. Look in your manual for the letters RTW to see if you have an RTW motor. ESPSomfy RTS can support motors speaking either dialect on the same ESPSomfy device. It just needs to know which one it is speaking.

Bit Length

Most Somfy motors, use a 56-bit length protocol. However, some use 80-bits to communicate and will require you to select the 80-bit setting for the Bit Length. The easiest way to tell if you have this scenario is to open the frame log described above then press a button on the remote that is currently being used to control the motor. When ESPSomfy RTS hears the commands from the remote it will indicate whether it was 56-bits or 80-bits. Additional options are provided when the 80-bit protocol is selected. Most remotes with a tilt wheel operate at 80-bits.

Type

Next select the type of motor you are adding. The type determines what extra capabilities are available on the motor and the icons that are used to represent its positions. The type also identifies what controls are available for the motor. For instance, only blinds process a tilt mechanism and single button garage doors only toggle between their current position. Below is a listing of these types and their functions. The available options in the configuration panel will change to indicate which functions are available.

ESPSomfy RTS will show all possible options for a motor type it cannot distinguish what type of motor it is actually communicating with. If your motor does not have a tilt mechanism, do not choose a tilt option for it. You will be disappointed when ESPSomfy RTS is not capable of swapping out your motor for a different model. These options simply change the control options that already exist.

Sun and wind sensors can be connected to any motor. However, not all motors process the commands. It really does not make sense to hook one of these sensors up to a garage door for instance. Thieves only need to wait until it is overcast to clean out your garage in that case. As a result, some motors simply ignore the sun commands.

Icon Name Description Features
image Roller Shade Solid fabric sheet that is raised or lowered using a roller at the top of the opening. Up, Down, My
image Shutter A semi-solid cover that is made up of interlinked slats that is raised or lowered using a roller at the top of the opening. Up, Down, My, Sun
image Blind Loosely connected slats that are raised or lowered using a pull mechanism. These motors also often contain some tilt mechanism to rotate the slats opened or closed Up, Down, My, Tilt, Sun
image Drapery (left) A sliding rod at the top of the opening that pulls from the left to the right when closing the drapery. Up, Down, My, Sun
image Drapery (right) A sliding rod at the top of the opening that pulls from the right to the left to close the drapery. Up, Down, My, Sun
image Drapery (center) A sliding rod at the top of the opening that uses two panels pulling from the left and right to close the drapery. Up, Down, My, Sun
image Awning A horizontal mechanism that extends and retracts from a fixed point to cover an area underneath. Up, Down, My, Sun
image Garage (1-button) A garage door motor that has only one toggle function. NOTE: You should first try using the 3-button version as this type provides the best experience and most garage door motors and actually use the up, down, and stop functions. Toggle, Light
image Garage (3-button) A garage door motor that uses up, down, and stop buttons. Up, Down, My, Light
image Dry Contact Dry contact RTS devices that toggle relays Toggle
image Dry Contact (2-button) Two button micro-receivers that use one button for on and the other for off. Up or down can be used for on or off. Up, Down
image Gate (left) 3 button gate controller where the up button opens the gate and the down closes it. The fixed position of the gate will be represented on the left. Up, Down, My
image Gate (right) 3 button gate controller where the up button opens the gate and the down button closes it. The fixed position of the gate will be represented on the right. Up, Down, My
image Gate (center) 3 button gate controller where the up button opens the gate from the middle and the down button closes it. The gate consists of two panels that open from the center. Up, Down, My

There are a number of tilt mechanisms supported by ESPSomfy RTS. If this is a blind with a tilt function you should select the appropriate type of tilt mechanism that is used on the motor. These are described below.

  • None - The slats of the blind are manually controlled or not controllable remotely.
  • Tilt Motor - The motor assembly is actually two motors in one where a long press on the remote moves the slats open or closed and a short press raises or lowers the blind.
  • Integrated - When the up button is pressed the slats fully open before the motor raises the blind. Conversely, the down button fully closes the slats before lowering the blind. This allows the slats to be tilted with the blind in any lift position.

All types except garage doors add support for Sun/Wind sensors that retract an awning or close the drapes whenever the sun goes away. The also often contain a wind function that can ensure your precious butterfly wing awning attached to the house does not become your neighbor's awning. Selecting Sun Sensor on the configuration panel adds controls for turning on or off the sun function. For the sensor to work properly you will need to link it to the motor using the link remote function. After all, this sensor operates as if it were a remote.

When a sensor is triggered for a windy condition ESPSomfy RTS will display an exclamation indicator on the shade display. This will remain until the sensor sends information that the windy condition has subsided. If a linked sensor sends a sunny condition a sun indicator will appear on the icon display. Below is an awning that has experienced a sunny and windy condition. Even though there is a sunny condition the awning has been retracted to protect it from the wind.

NOTE: If you have these indicators erroneously on your display and you do not have a sensor, then you likely triggered these on the virtual remote page. To clear them send a sensor command from the virtual remote without any of the checkboxes checked.

image

image

Name

You must provide up to 20 characters for the name of the shade. This can include any printable character.

Remote Address

The Remote Address is expected to be unique for all known addresses and the default is generated from the MAC address of your ESP32. This can be any 24 bit value so long as it is unique. Change it at will but did I mention that it must be unique and the algortithm to calculate a new address only makes sure the address is unique among all the addresses that the ESPSomfy RTS module already knows about.

Remote addresses are 24-bits long and are assigned at the factory for Telis remotes. So unless you have very old remotes you can probably safely assign these to some lower number if you want but only before pairing. Did I mention that these need to be unique for all controller channels and remotes within earshot of the ESPSomfy RTS module.

Motor Timing

The Up Time, Down Time, and optional Tilt Time fields are the number of milliseconds it takes for the shade to travel from the down position to the up position and vice versa. This value is provided in milliseconds so if you are counting the number of seconds and it takes 10 seconds to fully travel then this equals 10000 milliseconds. The maximum number of milliseconds is around 54 days so if you have a reaaaaaaaly slow motor you too are supported.

In another example, if it takes 9.5 seconds to go from full down to full up then that would be 9500 milliseconds. Keep in mind the up time and the down time can be different depending on the weight of the fabric and you can make adjustments these values at any time in the future. You will find this to be remarkably precise and always in sync if you set this up correctly. Burn a minute to time your shades and they will always be in sync.

Step Size (80-bit only)

If you have an 80-bit motor you can select the step size. This is a relative size used for the tilt wheel on your remote. After selecting the 80-bit setting an additional slider will appear on the screen. You will need to experiment with this as it is a ratio of the lift and tilt timing. This is used to keep the position in sync whenever the nudge wheel is engaged.

Has Sun Sensor

The Has Sun Sensor checkbox will add the ability to enable and disable the sun sensor functionality for motors that support sun sensors. If you check this box an additional control will appear on the shade on the home screen. You can use this control to enable and disable the sun function for the motor. Clicking on the sun will enable or disable the sensor.

image

Bear in mind in order for the sun detection functionality to work, you will need a sun sensor linked to the motor or some other external source to tell the motor when it is sunny.

Invert Commands

The Invert Commands checkbox is for instances where when you press the up button on the remote and the blind or shade moves down or your awning extends or your drapery closes. This means that the motor is not configured properly and you should reverse its direction. Honestly, up is not down no matter what you do. Depending on your motor the way, to change it is different so prescriptive instructions in this wiki are not possible. But here is a link to get you started Reverse Somfy Motor.

Really it is backwards. This checkbox will however allow you to live in an upside-down mirror and invert the commands while still having it all correct in the ESPSomfy-RTS application. If I were me and sometimes we are, I would seriously have a conversation with the man in the mirror to make this right.

Invert Position

This setting is really for folks that are using integrations other than the Home Assistant integration. While Home Assistant has the stupidity of expressing a blind, shade, or drapery in percentage of open, the integration fixes this behind the scenes to allow the buttons to operate appropriately. However, there are several integrations out there that have 100% as being open and 0% as being closed.

Think about that for a minute. How utterly stupid is that. However, if you mired in this stupidity and have no other choice you can check this box to miraculously have ESPSomfy-RTS talk in this gibberish. Honestly, you should flood the repos for this type of disaster with issues, call the complaint department, and picket outside their business. Just in case you were wondering what I think about this read this entire section backwards.

Repeat Commands

By default ESPSomfy RTS sends one command frame followed by one repeat of the command. In the RTx protocol this is identified by the number of hardware sync bits and a repeat of the command with the same rolling code. Ok so now that you have been geeked, the simple fact is that some of these motors are lazy. They go to sleep because they use battery power and can't seem to get themselves out of bed in time to respond to a command.

If you find that sometimes the motor does not respond after it has not been used in a while, then increase the number of repeats. Don't just do this indiscriminately though as making ESPSomfy RTS repeat itself is not only rude but it cannot hear anything when it is talking. So add one repeat at a time until the issue goes away. If you get to four and still are having a problem then it is likely that there is interference between the motor and ESPSomfy RTS.

Simulate Favorite Position

There are many motors out there that support the RTx protocols and some of them do not support storage of a favorite position. If your motor does not support storing a favorite position, checking this box will add that functionality. When the motor is at rest and you have stored a favorite position, you can press the my button and the motor will move to the position you set as a favorite. This should work from any linked remotes or external automation systems. For instructions on how to store or clear a favorite position see the home page for this repo.

Next Steps

Once you are satisfied with your settings press the Add Shade button. This will change the screen to include more button functions. You can either perform these processes now or come back later to perform these functions once you have added all your shades.

  • Save Shade - Saves the current settings for the shade
  • Pair Shade - Allows you to pair the shade with the somfy motor
  • Link Remote - Links the channel on your Somfy remote to the shade. This ensures the position of the shade can be known at all times. You can link up to 5 channels to each shade. Beyond that you probably need to simplify your life because you have remotes strewn everywhere. Honestly you should get checked.

After your shade has been added click the Done button to to dismiss the current shade.

Editing a Shade

You can edit any shade that you have previously added by navigating to the Somfy section -> Shades tab under the config gears in the upper right. From the list of added shades simply click on the pencil to bring up the shade editing screen.

image

Pairing a Shade/Motor

In order to control the motor you must first pair it. This is not unlike how a Telis remote is paired with the motor and in fact it follows this procedure exactly. The motor memory stores the address of each remote that it accepts commands from. So in the first step you open the memory by pressing the prog button on a remote long enough to get it to jog. Then press the prog button for the ESPSomfy RTS shade to get it to jog again.

On left side of each shade in the list there will be an edit pencil. You guessed it you should click on it to bring up the shade editor window. If you just added the shade and pressed the Add Shade button you should already be here.

Click the Pair Shade button to bring up the pairing screen. This will contain instructions on how to put the motor into pairing mode so you can proceed. After the motor jogs press the Prog button on the pairing screen and the motor should once again jog to tell you it was successful. There is no communication from the motor to the remotes so I am relying on you to verify that the motor jogged after pressing the Prog button. If it didn't then don't say it did. You will have to go through the unpairing process if you aren't honest about it and try again.

The pairing and unpairing process is essentially the same but in either instance Somfy does not provide any digital response that the pairing unpairing was successful. The only response is a visual one from the shade when it jogs. If the shade does not jog after pressing the prog button, simply press the prog button again until it jogs exactly one time. If it jogs more than once you have unpaired the shade as this amounts to a toggle operation.

If you followed the procedure correctly this will just work. The range for the Somfy Controller is really, really far... over the hill and through the dell. Did I mention that I am impressed with the range?

image

Linking Remotes

Once you have paired the shades it is time to link the other remotes you use to open and close the shades. This linking process makes sure we capture every movement of the shade so that its position is always accurately reported. So if you are also using handheld remotes it is critical that you link each remote channel that is used to command the shade.

This is also true for any channels on the remote that move a group of shades. Each motor in the group will need to be linked to the channel on the remote. So if you have a Telis remote where the any of the channels move more than one motor, you need to link that channel to each of the shades you defined in ESPSomfy RTS using the Link Remote function.

Now that you have been through the pairing process and saw how painless that was, click the Link Remote button to bring up the linking window. When this screen is open the controller is listening for any remote channel or sensor out there that is sending a command to the shade. Simply press any button on the remote you want to link. If you are having trouble deciding which button to press, press the up button. Once the remote is detected it will automatically close the link remote window as soon as it hears the remote.

image

To unlink an external remote from the shade simply click on the trash can icon from the linked remotes list.

Linking Sensors

If you happen to also have sensors like the Soliris sun/wind sensor or Eolis that protects your awning you need to also link this as if it were a remote. While these sensors do not actually send button commands to the shade, ESPSomfy RTS will translate the frames into what actions the motor will perform when it hears them.

Linking a sensor is identical to linking a remote channel so review the sensor above and use the Link Remote button to identify which sensor affects which motors. To perform the final linking step, you will need to make the sensor activate while the link remote screen is open by whatever means sends a frame to the motor. Some options are to short press the prog button, cover the sun sensor until it triggers, spin the whirlygig like you are in a hurricane (a leaf blower might do it), or wave a raw chicken bone in the air until the pairing screen goes away. The latter really doesn't do anything but it will get the neighbors talking. It might also help you decide what's for dinner.

Once ESPSomfy RTS hears a signal from the sensor it will close the linking screen and add it to the linked remote list.

Setting a Rolling Code

You may set the rolling code for a shade registered in ESPSomfy RTS. However, I caution you on using this feature and I hesitated to add it. If these get out of sync you will need to reset the memory on the motor. This is because each command sent to the motor increments the rolling code value stored on the motor by 1. If it does not match the expected value by a small window then the motor will not respond to the command and is part of the security features of the motor. Still if you are interested in what that number is you can click on the Set Rolling Code button just to see it but heed the warnings on the page. Really, I've got your back here.

image

Grouping Shades/Motors

Starting in firmware v2.0.0 you can group your shades. This grouping functionality takes advantage of the ability to store multiple remote addresses in each motor. This means that a single command is sent to all motors instead of sending commands one at a time to each motor. While that would have been the short route to take it would result in many commands being sent is succession. This would likely mean that it would start the movement for each shade one at a time. Given the speed at which the command interface operates, when a large number of them are grouped the delay in movement would be noticeable.

So because my type A tends to show we have a solution that works the pairing for each group so that a single command is sent for all shades in the group. Groups do not have a defined position and cannot be controlled by setting the position. This is because the timings of each member can and will likely be different.

Adding a Group

To add a group, click the gears to enter configuration mode. Then click on the Somfy section and select the Groups tab. From there press the Add Group button. If you haven't figured it out by now this operates in a consistent manner to the Shades tab.

image

The group must first be added before pairing the individual shades to it. So give your new group a name and press the Add Group button.

Editing a Group

All the groups that you have added will be listed on the Groups tab. So to edit an existing group press the gears icon at the top of the screen, then open the Somfy section and select the Groups tab. Next to each group there will be a pencil icon ripe for the clicking. Click the pencil next to the group you want to edit.

image

Linking a Motor to a Group

Each member motor of a group must be linked using the linking process. This is a two step procedure that closely follows the pairing procedure that you originally performed for pair the motor in the first place. This means that ESPSomfy RTS shade must be paired to the motor before performing this procedure.

To begin linking a new shade to the group click the Link Shade button to open the shade linking process. At each step in the wizard take a moment to read the instructions so you do not get lost. I spent the time to write them and I really want you to read it.

STEP 1 Review the operation

image

STEP 2 Select the shade to link

image

STEP 3 Open the motor memory

image

image

STEP 4 Pair Shade to Group

image

image

Removing a Motor from a Group

Because we are linking to the shade memory, removing a shade from a group requires unlinking the address. To do this click the trash can icon next to the linked shade in the Edit Group interface. This will begin the procedure for removing the shade reference from the memory.

STEP 1 Review the process

image

STEP 2 Open Motor Memory

image

image

STEP 3 Unpair the shade from the group

image

image

Ordering Shades and Groups

After you get done adding all your shades an groups you may find that the order in which they are shown in the web display is not to your liking. Initially, these are in the order in which they are added to the device. You can change this order by navigating to the Shades and/or Groups tab. Then simply drag each one into the order in which you would like them to appear.

Repeaters

ESPSomfy RTS has a repeater function which will listen for a remote and repeat its signal. This can be used to extend the range of a remote that doesn't quite get its signal all the way to the target motor. The way this works is that when a signal from a remote is heard, ESPSomfy RTS will scan its repeater list for the address of the remote. If it hears a frame from a remote on the repeater list, it will wait for a moment of radio silence and re-send that frame from its radio. Since the range of ESPSomfy RTS is typically better than the remote, this can bridge the gap for remotes in another room or those that are out of range.

Don't just willy nilly add repeaters though because you will be adding radio traffic and no two transmitters can transmit at the same time. If you have more than one ESPSomfy RTS device never repeat the same remote from more than one ESPSomfy RTS device. Each device will bounce frames off each other into perpetuity. One device will repeat the command to the other device and the other device will repeat the command back to the original then the original will repeat the command to the other device and the other device will repeat the command to the original then the other device will... and I think you get the point. Just don't do it.

To set up a repeater

In the Somfy section click the repeater tab. Any repeated remote addresses that are already assigned will appear in the list. At the bottom of this tab click the scan remote button.

image

After pressing the button a screen will appear indicating that it is listening for any button presses from a remote. Once a button press is heard, the window will close and all commands coming from that remote will be repeated.

image

Virtual Remote

So you are one of those poor souls that left your remote sitting on the trunk of your car and drove away. Or the remote has managed to have an illicit affair with one of the lost socks from the dryer and ran away to a far off land, then ESPSomfy RTS has your back. There have been a number of requests to be able to use ESPSomfy RTS without a remote for a variety of reasons.

Among other things this is where the Virtual Remote tab comes into play. You can use this tab just like a regular remote allowing you to use button combinations and different length presses. So if you have no remote, factory reset your motor then select the shade you set up for it from the dropdown and get it all paired up. Using the button combinations you can also set the motor limits as well as pair other remotes. You can even simulate the existence of a Sunis or Eolis device. If you need to long press on one of the button simply long click or long tap.

Extended 80-bit commands, like Step, Favorite, and Stop will only show for motors defined as 80 bits.

Just a reminder. Ensure you select the shade you want to control from the dropdown at the top!

image

Backup and Restore

You may back up the settings on your ESPSomfy RTS device at any time using the backup function. Originally, this function backed up only the Shades and Groups settings but starting with v2.1.6 this function also backs up the Radio Settings, System Options, and Network configuration. However, this function will not back up the following items:

  • WiFi connection (SSID or Passphrase)
  • MQTT Settings
  • Security Settings

The backup file is presented in clear text and including these items would expose secrets that should have been set up prior to restoring a backup file anyway. So keep these items in a secure place and feel good about the file not containing information that can be used to mess with your network.

To back up your shade settings, from the gears menu, select the System section then the Firmware tab. From this tab simply click on the backup button and a text file containing the current settings on the ESPSomfy RTS device will be downloaded to your browser. You may use this file should you need to replace your ESP32 or simply want to use another device. The layout of this file contains a header that allows for validation and consistency checks when restoring the data.

ESPSomfy RTS is capable of ensuring you do not restore a recipe for Hot Dish to your ESPSomfy RTS device. And you really should be eating more Hot Dish as it is a super food. Not making any claims here, but it improves mental acuity, stamina, and creates a handy shelf that keeps your feet dry in the rain.

To restore the settings you can simply upload a valid backup file to the device using the Restore button. You will be presented with options that allow you to restore portions of the information in the backup file. Check each option that you want to restore.

  • Restore Shades and Groups: All shades and groups will be restored to the configuration in the backup file. Any previous configurations will be lost. Because rolling codes are incremented sequentially, if there are any rolling codes stored on the ESPSomfy RTS these will be matched to the addresses for the shades or groups so they continue to operate without resetting them.
  • Restore System Settings: Restores the SSDP, Hostname, and Time server settings. Security options are not restored and no changes will be made to the security settings.
  • Restore Network Settings: All options from the Network section of the configuration will be restored with the exception of the MQTT settings, SSID and Passphrase. However, if you are restoring to an Ethernet enabled device, it will not restore the adapter settings. Many of the ESP32 ethernet boards do not contain any protection on the ethernet chip. Incorrect settings can destroy this chip so ESPSomfy RTS will only restore the adapter settings where the backup came from the target ESP32.
  • Restore Radio Settings: This will restore all the radio configuration settings for the device. This includes all the protocol and pin settings as well as any tuning you may have done for the transceiver.

image

After you have selected a backup file and reviewed the restore options click the upload file and the restore process will begin. The ESPSomfy RTS device will reboot and the new settings will be applied.