mongoose-os-apps/shelly-homekit

Apple HomeKit firmware for Shelly's

C++

2,048

878 commits

updated Aug 21, 2026

See the code

README

License Gitter

Open Source Apple HomeKit Firmware for Shelly Devices

This firmware exposes Shelly devices as Apple HomeKit accessories.

Firmware is compatible with stock and can be uploaded via OTA (Watch a 2 minute video), for more info take a look at the flashing wiki here.

Reverting to stock firmware is also possible see here.

Supported devices and features

Gen 3 Devices

1 G31PM G32PM G3I4 G3Mini1 G3Mini1PM G3PlugS G3
Switch & Co.1✓✓✓✗✓✓✓
Stateless Input2✓✓✓✓✓✓✗
Sensors3✓✓✓✓✓✓✗
Garage door opener✓✓✓✗✓✓✗
Roller shutter mode✗✗✓✗✗✗✗
Power measurement✗✓✓✗✗✓✓
Temperature/Humidity measurement4✓✓✓✓✗✗✗

Plus devices

+1+1Mini+1PMMini+1PM+2PM+i4 AC/DC+Plug S+Uni
Switch & Co.1✓✓✓✓✓✗✓✓
Stateless Input2✓✓✓✓✓✓✗✓
Sensors3✓✓✓✓✓✓✗✓
Garage door opener✓✓✓✓✓✗✗✓
Roller shutter mode✗✗✗✗✓✗✗✗
Power measurement✗✗-✓✓✗✓✗
Temperature/Humidity measurement4✓✗✗✓✓✓✗✓

Light Controllers

+RGBWPM
Brightness control✓
CCT✓
RGB(W)✓
Switch & Co 1✓
Power measurement-

Pro devices

Currently not supported.

Gen 1 switches

11PM1LPlugPlugS22.5i3UNI
Switch & Co.1✓✓✓✓✓✓✓✗✓
Stateless Input2✓✓✓✗✗✓✓✓✓
Sensors3✓✓✓✗✗✓✓✓✓
Temperature/Humidity measurement✓4✓4✗✗✗✗✗✗✓
Garage door opener✓✓✗✗✗✓✓✗✓
Roller shutter mode✗✗✗✗✗✗✓✗✗
Power measurement✗✓-✓✓✗✓✗✗

Gen 1 light bulbs / led strips

DuoDuo RGBWVintageRGBW2
Brightness control✓✓✓✓
CCT✓✗✗✓
RGB(W)✗✓✗✓
Power measurement----

Notes:
✓: supported
-: possible but not supported yet
✗: not possible
1: includes lock, outlet and valve
2: includes doorbell
3: includes motion, occupancy, contact, smoke, leak
4: with Sensor AddOn/Shelly Plus AddOn and DS18B20 sensor(s) (maximum 5 for Shelly Plus Addon, maximum 3 for Sensor AddOn) or 1 DHT sensor

Features that are not yet supported:

  • Cloud connections: no Shelly Cloud, no MQTT
  • Remote actions (web hooks)
  • Valve with timer support

Quick Start

Updating from stock firmware

  • Important: Please update to the latest stock firmware prior to converting to Shelly-HomeKit (2.0.0 on Plus/Gen3 Devices).

  • Watch a 2 minute video.

    • New: One link for all device types: http://A.B.C.D/ota?url=http://shelly.rojer.cloud/update
    If that doesn't work (did you remember to have the stock firmware at the correct version), try the link for a specific model
    • Gen 1 Devices:

      • Shelly 1: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1.zip

      • Shelly 1L: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1L.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
        Note: Not for Shelly Dimmer 2!

      • Shelly 2.5: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly25.zip

      • Shelly Duo: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyDuo.zip

      • Shelly Duo RGBW (ColorBulb): http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyColorBulb.zip

      • Shelly i3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyI3.zip

      • Shelly Plug: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlug.zip

      • Shelly Plug S: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlugS.zip

      • Shelly RGBW2: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyRGBW2.zip
        Note: The Shelly must be in color mode to flash, flashing in white mode is not supported!

      • Shelly UNI: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyUNI.zip

      • Shelly Vintage: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyVintage.zip

    • Gen 2 Devices

      • Shelly Plus 1: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1.zip

      • Shelly Plus 1 Mini: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1Mini.zip

      • Shelly Plus 1PM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1PM.zip

      • Shelly Plus 1PM Mini: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1PMMini.zip

      • Shelly Plus 2PM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus2PM.zip

      • Shelly Plus Plug S: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusPlugS.zip

      • Shelly Plus RGBWPM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusRGBWPM.zip

      • Shelly Plus I4 AC & DC: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusI4.zip

      • Shelly Plus UNI: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusUni.zip

    • Gen 3 Devices

      • Shelly 1 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1Gen3.zip

      • Shelly 1PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1PMGen3.zip

      • Shelly 2PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly2PMGen3.zip

      • Shelly I4 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyI4Gen3.zip

      • Shelly Mini 1 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyMini1Gen3.zip

      • Shelly Mini 1 PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyMini1PMGen3.zip

  • See here for detailed instructions.

  • Script here for an automated way to update your devices.

    • ./flash_shelly.py hostname (for single device)
    • ./flash_shelly.py -a (for all devices on the network)

Documentation

See our Wiki.

Getting Support

If you'd like to report a bug or a missing feature, please use GitHub issue tracker.

Some of us can be found in the Gitter chat room.

Contributions and Development

Code contributions are welcome! Check out open issues and feel free to pick one up.

See here for development environment setup.

Authors

See here.

Support

If you like to show support for the project and support further development, consider a Donation to the current maintainer markib via Paypal

License

This firmware is free software and is distributed under Apache 2.0 license.

firmware
homekit
shelly
smarthome

mongoose-os-apps/shelly-homekit

Apple HomeKit firmware for Shelly's

C++

2,048

878 commits

updated Aug 21, 2026

See the code

README

License Gitter

Open Source Apple HomeKit Firmware for Shelly Devices

This firmware exposes Shelly devices as Apple HomeKit accessories.

Firmware is compatible with stock and can be uploaded via OTA (Watch a 2 minute video), for more info take a look at the flashing wiki here.

Reverting to stock firmware is also possible see here.

Supported devices and features

Gen 3 Devices

1 G31PM G32PM G3I4 G3Mini1 G3Mini1PM G3PlugS G3
Switch & Co.1✓✓✓✗✓✓✓
Stateless Input2✓✓✓✓✓✓✗
Sensors3✓✓✓✓✓✓✗
Garage door opener✓✓✓✗✓✓✗
Roller shutter mode✗✗✓✗✗✗✗
Power measurement✗✓✓✗✗✓✓
Temperature/Humidity measurement4✓✓✓✓✗✗✗

Plus devices

+1+1Mini+1PMMini+1PM+2PM+i4 AC/DC+Plug S+Uni
Switch & Co.1✓✓✓✓✓✗✓✓
Stateless Input2✓✓✓✓✓✓✗✓
Sensors3✓✓✓✓✓✓✗✓
Garage door opener✓✓✓✓✓✗✗✓
Roller shutter mode✗✗✗✗✓✗✗✗
Power measurement✗✗-✓✓✗✓✗
Temperature/Humidity measurement4✓✗✗✓✓✓✗✓

Light Controllers

+RGBWPM
Brightness control✓
CCT✓
RGB(W)✓
Switch & Co 1✓
Power measurement-

Pro devices

Currently not supported.

Gen 1 switches

11PM1LPlugPlugS22.5i3UNI
Switch & Co.1✓✓✓✓✓✓✓✗✓
Stateless Input2✓✓✓✗✗✓✓✓✓
Sensors3✓✓✓✗✗✓✓✓✓
Temperature/Humidity measurement✓4✓4✗✗✗✗✗✗✓
Garage door opener✓✓✗✗✗✓✓✗✓
Roller shutter mode✗✗✗✗✗✗✓✗✗
Power measurement✗✓-✓✓✗✓✗✗

Gen 1 light bulbs / led strips

DuoDuo RGBWVintageRGBW2
Brightness control✓✓✓✓
CCT✓✗✗✓
RGB(W)✗✓✗✓
Power measurement----

Notes:
✓: supported
-: possible but not supported yet
✗: not possible
1: includes lock, outlet and valve
2: includes doorbell
3: includes motion, occupancy, contact, smoke, leak
4: with Sensor AddOn/Shelly Plus AddOn and DS18B20 sensor(s) (maximum 5 for Shelly Plus Addon, maximum 3 for Sensor AddOn) or 1 DHT sensor

Features that are not yet supported:

  • Cloud connections: no Shelly Cloud, no MQTT
  • Remote actions (web hooks)
  • Valve with timer support

Quick Start

Updating from stock firmware

  • Important: Please update to the latest stock firmware prior to converting to Shelly-HomeKit (2.0.0 on Plus/Gen3 Devices).

  • Watch a 2 minute video.

    • New: One link for all device types: http://A.B.C.D/ota?url=http://shelly.rojer.cloud/update
    If that doesn't work (did you remember to have the stock firmware at the correct version), try the link for a specific model
    • Gen 1 Devices:

      • Shelly 1: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1.zip

      • Shelly 1L: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1L.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
        Note: Not for Shelly Dimmer 2!

      • Shelly 2.5: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly25.zip

      • Shelly Duo: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyDuo.zip

      • Shelly Duo RGBW (ColorBulb): http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyColorBulb.zip

      • Shelly i3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyI3.zip

      • Shelly Plug: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlug.zip

      • Shelly Plug S: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlugS.zip

      • Shelly RGBW2: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyRGBW2.zip
        Note: The Shelly must be in color mode to flash, flashing in white mode is not supported!

      • Shelly UNI: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyUNI.zip

      • Shelly Vintage: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyVintage.zip

    • Gen 2 Devices

      • Shelly Plus 1: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1.zip

      • Shelly Plus 1 Mini: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1Mini.zip

      • Shelly Plus 1PM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1PM.zip

      • Shelly Plus 1PM Mini: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus1PMMini.zip

      • Shelly Plus 2PM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlus2PM.zip

      • Shelly Plus Plug S: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusPlugS.zip

      • Shelly Plus RGBWPM: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusRGBWPM.zip

      • Shelly Plus I4 AC & DC: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusI4.zip

      • Shelly Plus UNI: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlusUni.zip

    • Gen 3 Devices

      • Shelly 1 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1Gen3.zip

      • Shelly 1PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly1PMGen3.zip

      • Shelly 2PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-Shelly2PMGen3.zip

      • Shelly I4 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyI4Gen3.zip

      • Shelly Mini 1 Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyMini1Gen3.zip

      • Shelly Mini 1 PM Gen3: http://A.B.C.D/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyMini1PMGen3.zip

  • See here for detailed instructions.

  • Script here for an automated way to update your devices.

    • ./flash_shelly.py hostname (for single device)
    • ./flash_shelly.py -a (for all devices on the network)

Documentation

See our Wiki.

Getting Support

If you'd like to report a bug or a missing feature, please use GitHub issue tracker.

Some of us can be found in the Gitter chat room.

Contributions and Development

Code contributions are welcome! Check out open issues and feel free to pick one up.

See here for development environment setup.

Authors

See here.

Support

If you like to show support for the project and support further development, consider a Donation to the current maintainer markib via Paypal

License

This firmware is free software and is distributed under Apache 2.0 license.

firmware
homekit
shelly
smarthome

Project health

Overall

3.0/10

Maintained

6/10

Code review

0/10
OpenSSF Scorecard

Significant stargazers

Carlos Alexandro Becker

4,692 followers · starred Oct 2023

Stephen Edgar

277 followers · starred Apr 2022

Evgeny Mandrikov

236 followers · starred Sep 2021

Ruud Kamphuis

195 followers · starred Jul 2022