How to use Shelly devices with Apple HomeKit

Shelly comes with an alternative open-source firmware Moongoose OS that supports Apple HomeKit. It currently includes only the most basic features, but improvements are expected thanks to the open-source project, which you can also participate in! Let's simply show you how to implement Shelly devices into HomeKit and make your home even smarter.

Shelly and Apple HomeKit

So how do we do it? First of all, we need to take care of the electrical installation of the Shelly device (we chose Shelly 1 as an example). For electricians, this is practically child's play. You can watch an example of the electrical installation in the following video, but the final assembly should, of course, be left to a professional.

After turning the breakers back on, the Shelly device will automatically create its own WiFi hotspot within a few seconds. You connect to this Shelly 1 WiFi, and then you can easily find out your new IP address through your router's device list, after which you can access the user interface again. This is exactly where the Moongoose OS firmware for HomeKit comes in, which you can find here on GitHub (it contains all the necessary information and instructions, and also mentions the possibility of contributing to the development of this project). The firmware is compatible with the original factory firmware, and its update is done simply via OTA (Over the Air). The "path" of changing the firmware in this case is not one-way, and if you decide to go back to the original firmware in the future, it can be reverted. When updating the firmware, the following URLs are primarily important for supported devices:

  • Shelly 1: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1.zip
  • Shelly 1PM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1PM.zip
  • Shelly 2: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly2.zip
  • Shelly 2.5: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly25.zip
  • Shelly Plug S: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlugS.zip

In the URL (depending on your Shelly device), replace "A.B.C.D" with the IP address of the Shelly device, copy it entirely into your internet browser, and open the page. In the case of our example with Shelly 1, we entered:
http://192.168.178.129/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1.zip.
It will then take Shelly about 20-30 seconds to install the modified Moongoose OS firmware.

Afterwards, you can access the new Shelly user interface via its existing IP address. In the HomeKit settings area, you only need to set your own setup code, for example, 321-99-123.

Shelly software update

After this setup, continue in the Home app (Home-App). There, you add a new device using the classic method. But since we cannot scan the code, you will select the option "I don't have a code or can't scan". Your Shelly will then appear in the view, which you can add to HomeKit using your chosen setup code. You can safely ignore the warning that this is an uncertified HomeKit product.

This solution worked amazingly well for us in a small test setup. The electrical installation might be the biggest hurdle for most of you, but as we mentioned, it's no problem for an electrician. However, you can certainly handle the software setup yourself thanks to the simple HomeKit update mentioned. Shelly devices are thus a simple and cheap way to add lamps, sockets, or blinds to HomeKit and enjoy smart features.

With a tailored selection of products, information on installation options, and other questions, do not hesitate to contact us. We are already looking forward to working with you!

Shelly and Homekit