Open source Android app for Shelly devices

I own some Shelly devices: Hardware relays that connect to your WiFi network and are controllable with HTTP requests. All communication is strictly local because the cloud functionality is opt-in. The manufacturer officially allows flashing custom firmwares, and their API is publicly documented.

In my house they are used to remote control lights and power sockets, some outdoor lights, the christmas tree and the stereo.

Unfortunately the official Allterco Robotics Shelly Cloud app requires you to create a cloud account, which I won't do. The Google Play Store has some other inofficial apps that allow you to control the Shellies without a cloud account, but all of them are closed source.

HomeApp

There is a single smart home app in the F-Droid Android app store, so this was where I directed my focus to: HomeApp.

At first I opened a ticket offering the maintainer to send him some test devices if he implemented support for them. He declined but did a first implementation that I could test and give feedback on.

I contributed Shelly device discovery (so you don't have to type in IP addresses) and added unit tests, display of power meter, temperature and humidity readings.

Together with a friend we contributed support for ESP Easy based devices, which we did in ome ~4 hours by copying and adjusting the Shelly code.

Yesterday HomeApp version 1.8.0 was released on F-Droid, so you can use it yourself to control the Shelly devices in your home.

I tested it with Shelly v1, Shelly Plug S, Shelly Button 1, Shelly Plus 1 and Shelly 2.5 (in switch mode). Since it does not yet allow grouping of devices I think it's for small installations only.

Screenshots

HomeApp main screen Device discovery Tannenbaum (Shelly Plug S) Stereo (built-in Shelly 1) Terrace control (Shelly 2.5)

Written by Christian Weiske.

Comments? Please send an e-mail.