My Somfy window blinds are not operating from sun or temperature.
Somfy uses 2 protocols to control their products.
Somfy RTS which can be controlled from Homey directly with the Somfy app
Somfy io which can only be controlled with use of the Somfy TaHoma Box through a different app from Homey.
But I only wanted to control 1 window blind in my appartement which is Somfy io controlled by a remote control. The Somfy TaHoma Box is expensive if you only use it for 1 device.
Somfy has a remote to control io deices from a fixed switch: Izymo Transmitter io
What I did is connect this switch to a double relay switch which is controlled by Z-wave or Zigbee. This way you can use these Z-wave or Zigbee switches to control a Somfy io device. Make sure Homey is ether switching on the up OR the down switch and it works like a charm.
Made some flows to connect the blinds to the weather conditions and my apartment is not as hot anymore when I arrive in the afternoon.
This is only half true, the other option is Connexoon IO (approx 130 euro), for which there is a Homey app too. So for one IO motor this is true, but the ridiculous high price of Somfy remotes plus the additional cost of making them Homey operable will mean that adding more IO appliances will very soon topple towards Connexoon IO as the cheapest option.
IO is a two way communication so the screes will report back their position. RTS is one way so you send a command and hope for the best.
I would personally always go for IO over RTS but you do then need a Somfy Tahoma or Connexoon to control it.
In theory Homey will support direct connection via RTS but I found it was unreliable in my situation so I now control my RTS curtains and blinds via Tahoma.
Note, I have RTS because a) I didn’t know better at the time and b) IO is hard to find for curtains and blinds in the UK.
OK, I guess IO makes sense. I think I’ll make sure everything in my new house is “self sustained” but controllable by Homey. It makes sense IMHO so when Homey loses network etc, I won’t have a problem opening the blinds with a remote if I want to.
Personally I ended up with buying a TaHoma box to control my four exterior blinds with Homey. They work great, but I’m having problems with lack of commands.
For instance, I want to add a flow where: WHEN windowState changes to “Open” AND [somfy screen is moving] THEN [stop somfy screens].
Currently I am only able to control basic up/down movements and tie these with input from controllers. Anyone who has any experience with making more advanced flows with somfy over TaHoma who’d like to share?
Do you mean the blinds are moved outside of Homey?
If so then there are restrictions imposed by Somfy that make that requirement impossible. First is the polling rate of 30 seconds, which means the blinds have possible completed their travel before Homey even detects the movement. Second is the point at which “Open” is notified because that state is only reported when the blind is at a certain position, determined by Somfy.
I could possibly improve the second problem by triggering a flow when Homey detects that an “Open” command is sent by Tahoma, but that is still restricted by the 30 second polling.
Also you don’t mention if your blinds are RTS or IO. RTS only supports “Open”, “Close”, “Stop” and “My”, whereas IO also support a percentage position. Also with RTS, if you use a remote control to move the blind, even Tahoma is not aware of the command, as the remote is paired directly to the blind and there is no feedback.
So, I can add a WHEN card for “A command has started” that would be triggered whenever Homey detects a command from Tahoma, but as mentioned that could be up to 30 seconds after it has been sent to the blinds. I can also add a AND card for “Is Moving” with the same restrictions.
Both Athom and I have been requesting that Somfy provide a webhook interface instead of polling. This would reduce the load on both Homey and the Somfy servers, plus provide a more responsive system. Unfortunately, the requests have fallen on deaf ears.
Hi, thanks for the prompt reply and explanation! And sorry for being vague: I’m using IO, controlling via Homey (tahoma box only used fo connecting the blinds to homey).
Makes sense with respect to the 30 sec polling restriction that we cannot poll status immediately when, for instance, a window is opened (such as in my case where I want to stop the blinds immediately if someone opens the window while the blinds are moving).
Is there a way to add a stop command as an action? Ie: WHEN windowMotion is detected [AND blinds are moving] THEN stop blinds ?
Djeez, I’m embarrassed to say you’re right - it was that easy. I had simply thought that setting a “state” was like setting a value to a variable (state = up/idle/down) and not a command to execute movement (like setting a position). It works like a charm, thanks!