Shelly App


#1

small

Control Shelly devices with Homey

App Store Page: work in progress, you can use Github for now: https://github.com/jghaanstra/cloud.shelly

Description

This Homey app allows you to control Shelly devices. The supported Shelly devices is limited at this time. Support for missing devices might be added in the future if requested and based on my available time and ability to add support without actually owning the device.

Supported devices

  • Shelly 1
  • Shelly 2

Instructions

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.


#2

Changelog

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


#3

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)

#4

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


#5

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.


#6

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


#7

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.


#8

Hello!

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?

Captura


#9

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.


#10

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.


#11

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.


#12

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!


#13

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


#14

OK!!

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.

roller


#15

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.


#16

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!!


#17

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.


#18

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.


#19

Here is the log I have in command prompt:

send command result is:
{ wifi_sta: { connected: true, ssid: ‘ubiquiti’, ip: ‘192.168.1.110’ },
cloud: { enabled: true, connected: true },
mqtt: { connected: false },
time: ‘00:00’,
serial: 37,
has_update: false,
mac: ‘827D3A5B270D’,
relays:
[ { ison: false,
has_timer: false,
overpower: false,
is_valid: true },
{ ison: false,
has_timer: false,
overpower: false,
is_valid: true } ],
rollers:
[ { state: ‘stop’,
power: 0,
is_valid: true,
safety_switch: false,
stop_reason: ‘normal’,
last_direction: ‘close’ } ],
meters:
[ { power: 0,
is_valid: true,
timestamp: 1542067208,
counters: [Array],
total: 0 } ],
update:
{ 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


#20

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