Shelly-homekit: Support for Button1

Created on 26 Jul 2020  路  14Comments  路  Source: mongoose-os-apps/shelly-homekit

could support for this be added easily ?, it would be nice have it acting like this https://github.com/mongoose-os-apps/shelly-homekit/issues/9

Most helpful comment

no news yet. i actually have one for testing, i've only had a brief look at it and it's one of those that have slave micro in them, so it won't be trivial.

All 14 comments

It would be really cool, but Button1 doesn't seem to be build on ESP8266.
Or at least they don't advertise it like that...

Hi, news for Button1 HomeKit firmware?

no news yet. i actually have one for testing, i've only had a brief look at it and it's one of those that have slave micro in them, so it won't be trivial.

In the meantime is there an alternative for physical switch/button to use alongside the Shellys? Preferably also with FOSS firmware?

In the meantime is there an alternative for physical switch/button to use alongside the Shellys? Preferably also with FOSS firmware?

not that i have come across, i tried using Homebridge Shelly plugin, but it does not work very well either, i could only get Long Press action to work.

only homekit button is Fibaro but dam those are expensive at 拢50 ea https://www.amazon.co.uk/Fibaro-Homekit-Ausf眉hrung-verschiedener-drahtlos/dp/B07CZQGV42/ref=sr_1_5?crid=5CSVTVLST78E&dchild=1&keywords=homekit+button&qid=1606833828&sprefix=homekit+butt%2Caps%2C147&sr=8-5

Or for "only" 70 quid you can get something like the AQARA hub and one mini switch but I kinda dislike anything that needs a hub as it feels like an even bigger vendor lock in plus the main reason why I choose these Shelly devices is that if I one day get bored with the Apple ecosystem (which as a long time Linux user I inevitably will) I can simply re-flash them.

All in all there probably aren't any nice buttons on the market, the Shelly Button1 isn't ESP8266 so it might take a while (if ever) to get supported. So I'll probably have to look into some DIY 3D printed solutions like (https://www.thingiverse.com/thing:2803769)

I have looked at this, and while I don't think the Button1 can be easily directly supported in HomeKit, I do see an opportunity to still use it to control the switches directly.
But we would need to change (or add to) the rcp calls:

  • The Shelly button can be configured to call a URL when pressed.
  • The current web interface has a "turn on/turn off" button, that does a POST /rpc/Shelly.SetSwitch with a json encoded body of {"id":1,"state":true} or {"id":1,"state":false}.
  • There currently is no real security implemented (not even CSRF), so my suggestion would be to allow a simple GET /rpc/Shelly.SetSwitch?id=1&state=true|false request?

Any thoughts on that?

ye, i plan on doing same with shelly motion sensors, but i need it to control other (none shelly) homekit devices.

my suggestion would be to allow a simple GET /rpc/Shelly.SetSwitch?id=1&state=true|false request

this is already possible

and once this https://github.com/mongoose-os-apps/shelly-homekit/issues/309 gets implemented, we could use shelly to controll other HomeKit devices by the API.

Oh interesting. Sorry, I missed that. Cool. So that's the workaround to use Button1 for the time being. Thanks! :)

you can now use deteched inputs to http://192.168.3.49/rpc/Shelly.InjectInputEvent?id=1&event=2 in 2.7.0 alpha 7

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Leo-W536 picture Leo-W536  路  11Comments

marcopeeters picture marcopeeters  路  3Comments

miamilabs picture miamilabs  路  8Comments

nightout80 picture nightout80  路  3Comments

rojer picture rojer  路  13Comments