Homey Community Forum

Shelly App


Control Shelly devices with Homey

App Store Page: https://homey.app/a/cloud.shelly/


This Homey app allows you to control a variety of Shelly devices. New Shelly devices are released to the market at a steady pace. Support for missing devices will be added in the future if requested based on my available time and ability to add support without actually owning the device.


Add your Shelly device in Homey just like you would add any other device. Enter the IP address and the polling frequency in the pairing wizard. If you have set a username and password to access your Shelly device you need to enter these during pairing as well. Connect the device and you are good to go.


I enjoy creating apps for Homey and try to support them as best as I can. But if you enjoy using my apps a donation in return for the time I put into this is much appreciated.



v1.15.0 - 2020-01-22

Added support for the Shelly Door Window Sensor.

v1.14.2 - 2019-12-12

Fixed issue with pairing introduced with previous version (1.14.1).

v1.14.1 - 2019-12-11

Skip the login credentials screen during pairing for devices that do not have authentication set up.

v1.14.0 - 2019-12-01

Added support for Shelly Dimmer/SL (thx to domotica-shop.nl for supplying the device)

v1.13.2 - 2019-11-15

Moved installation instructions from app store to community support topic.

v1.13.2 - 2019-10-14

  • Changes for Homey Energy Manager (firmware > 3.x)
  • Fix for pairing multiple Shelly 4 Pro devices

v1.13.1- 2019-10-01

  • IMPROVEMENT: added total power usage in KWh for Shelly 1 PM, Shelly2.5, Shelly Plug and Shelly Plug S (this requires the re-pairing of the device). The value from the Shelly device is in Wmin. The total power usage in KWh is calculated by doing Wmin * 0.000017.
  • FIX: fix for discovery of multiple Shelly Plugs due to deviating implementation of mDNS in Shelly Plugs

v1.13.0- 2019-09-29

NEW: added support for Shelly Humidity & Temperature sensor (thanx to Stefan Rehnberg for loaning the devices)

v1.12.0- 2019-09-19

  • NEW: added support for Shelly Bulb (thanx to Stefan Stanisic for PR)

v1.11.0- 2019-09-02

  • NEW: added support for Shelly EM
  • IMPROVEMENT: added total consumption for Shelly 1 PM, Shelly2.5, Shelly Plug and Shelly Plug S (this requires the re-pairing of the device)
  • IMPROVEMENT: added internal temperature for Shelly 1 PM, Shelly2.5 and Shelly Plug S (this requires the re-pairing of the device)

v1.10.0- 2019-08-11

  • IMPROVEMENT: added device discovery in pair wizard

v1.9.0- 2019-06-27

  • NEW: add support for RGBW2 in 2x CW/WW mode (which is not supported in the official Shelly app) - credits to Chris Brandhorst

v1.8.1- 2019-06-05

  • FIX: fix power usage for Shelly 2 and Shelly 2.5 in rollershutter mode

v1.8.0- 2019-05-25

  • NEW: add support for Shelly 1PM

v1.7.0- 2019-05-20

  • NEW: add full support for Shelly 2.5 Relay with seperate driver
  • FIX: add extra check for Shelly 2(.5) rollershutter since the Shelly API allows rollershutter percentages above 100

v1.6.0- 2019-02-27

  • NEW: add support for Shelly RGBW2 controller in both RGBW color and 4x white mode

v1.5.0- 2019-02-07

  • FIX: improvements to pairing templates for firmware 2.x
  • FIX: fix percentage for windowcoverings_set capability for rollershutter
  • FIX: code refactoring in drivers (replace callbacks with promises)

v1.4.2- 2019-01-19

NEW: add capability windowcoverings_set for Shelly 2 rollershutter. This requires you to re-pair your Shelly 2 Roller Shutter device!

v1.4.1- 2018-12-17

FIX: fix flow card issues for Shelly 4 Pro

v1.4.0 - 2018-12-16

NEW: add support for Shelly 4 Pro devices

v1.3.0 - 2018-11-23

  • NEW: add support for Shelly Plug and Shelly Plug S devices

v1.2.0 - 2018-11-14

  • NEW: add support for Shelly2 devices that are configured as roller shutter device
  • NEW: added an action card for controling roller shutters for a specified duration

v1.1.1 - 2018-09-13

FIX: solved a bug with Shelly 2 condition card when Shelly 2 was off

v1.1.0 - 2018-09-09

  • NEW: add support for the Shelly 2
  • REFACTORING: switched from request node module to node-fetch (reduced footprint from 7,5MB to 400 kB)

v1.0.0 - 2018-08-28

NEW: initial release

v1.1.0 - 2018-09-09

  • NEW: add support for the Shelly 2
  • REFACTORING: switched from request node module to node-fetch (reduced footprint from 7,5MB to 400 kB)

did order some units today, are you happy with the unit?

I only have one Shelly 1. I had some issue with connectivity at first but after fiddling around with it it’s now working very well. Only thing I really changed was disconnect the unit from the cloud. Not really needed anyway since I can control it using Homey. Other than that it all looks good hardware and software wise.

do i just need you app? no settings in unit?

You will need the Shelly smartphone app to setup the device (like configure the WiFi etc.). After that you should not really need it anymore. Controlling the device can be done through Homey.


I buy a pair of shelly 1 and 2. The 1 works perfectly with homey, but the shelly 2 don’t work as a roller shutter. I push the button of relay 1 and relay 2 and nothing happens. With shelly android app they work perfect. I do anything wrong?


No, currently only relay mode is supported. I’d have to find out how to dynamically change the capabilities when it’s switched to roller shutter mode.


Thanks for fast reply!

Are you working on this? Need some donation for buy shelly 2?

If shelly 2 works fine for roller shutter is an excellent option in price, 20€ and not 50€ of fibaro and qubino roller shutters.

I worked on it this morning. It’s a bit of guessing without the actual device but I just pushed a new release to Github. Do you know how to do a command line install so you can test this?

If so, please be specific in your findings so I can try improve the support.

1 Like

Hi @Phuturist

I install your new version 1.2.0 and nothing changes.

if helps, in homey (preview) android app, i get this error when i click on relay buttons:

Something went wrong adressing device (name of device) (invalid_capability)

Shelly 2 is more complex than shelly 1, it have several options to configure:

I appreciate your work a lot. If you need more information I will help you as much as I can. Thank you!

You will need to repair the device as a “Shelly 2 Roller Shutter” device.

1 Like


Re-paired as a roller shutter. Now shows 6 buttons, none of them works:

In theory shelly 2 only have 2 buttons, whit several options to work. If you need more info i give you some screenshots of the shelly app.

And every several seconds the device show as unreachable in homey, but really don’t loose comunication.


I have uploaded a new release. You will need to remove and repair your Shelly 2 Roller Shutter device. Could you use the athom app run command and post any errors in the output here when pairing and controlling the device.

1 Like

App updated and devide re-paired. Now show 3 buttons and no go to unreachable.

But nothing happens when i click the buttons.

in command athom app run no info is displayed when i add the device and click the buttons:

again I thank you for all your work and help!! it seems incredible to me that without having the device you can make it work!!

Well, as you can see it’s not working yet and getting it to work without the device is not the most efficient way. But it should be possible. Don’t have a clue why it’s not working yet though, I’ll see if I can add some extra debug logging that should give me more hints on what is going on.

I have added extra debug logging in the latest version on GitHub. Could you use the CLI command athom app run, try and change the roller shutter from the device card and post the output from the console here.

Here is the log I have in command prompt:

send command result is:
{ wifi_sta: { connected: true, ssid: ‘ubiquiti’, ip: ‘’ },
cloud: { enabled: true, connected: true },
mqtt: { connected: false },
time: ‘00:00’,
serial: 37,
has_update: false,
mac: ‘827D3A5B270D’,
[ { ison: false,
has_timer: false,
overpower: false,
is_valid: true },
{ ison: false,
has_timer: false,
overpower: false,
is_valid: true } ],
[ { state: ‘stop’,
power: 0,
is_valid: true,
safety_switch: false,
stop_reason: ‘normal’,
last_direction: ‘close’ } ],
[ { power: 0,
is_valid: true,
timestamp: 1542067208,
counters: [Array],
total: 0 } ],
{ status: ‘idle’,
has_update: false,
new_version: ‘20181031-101144/v1.3.5@62608979’,
old_version: ‘20181031-101144/v1.3.5@62608979’ },
ram_total: 50560,
ram_free: 36968,
fs_size: 233681,
fs_free: 161644,
uptime: 120782 }
[ { state: ‘stop’,
power: 0,
is_valid: true,
safety_switch: false,
stop_reason: ‘normal’,
last_direction: ‘close’ } ]
rollers[0].state is: stop

This all looks good, I fixed another bug that prevented controlling the roller shutter. Could you try downloading and running it again.