{"id":15018206,"url":"https://github.com/alexryd/homebridge-shelly","last_synced_at":"2025-04-04T21:08:01.054Z","repository":{"id":33782906,"uuid":"161996688","full_name":"alexryd/homebridge-shelly","owner":"alexryd","description":"Homebridge plugin for Shelly devices","archived":false,"fork":false,"pushed_at":"2023-03-04T03:04:19.000Z","size":899,"stargazers_count":303,"open_issues_count":256,"forks_count":45,"subscribers_count":27,"default_branch":"master","last_synced_at":"2025-03-28T20:08:55.225Z","etag":null,"topics":["homebridge","homebridge-plugin","homekit","shelly"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexryd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"alexryd"}},"created_at":"2018-12-16T12:01:20.000Z","updated_at":"2025-03-07T10:34:36.000Z","dependencies_parsed_at":"2024-06-21T04:47:31.441Z","dependency_job_id":"37909207-beff-4ee9-84b1-a95bf598173c","html_url":"https://github.com/alexryd/homebridge-shelly","commit_stats":{"total_commits":356,"total_committers":5,"mean_commits":71.2,"dds":"0.011235955056179803","last_synced_commit":"a1f9a8c1cbe6c61c7e4efa255672fb7eae601492"},"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexryd%2Fhomebridge-shelly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexryd%2Fhomebridge-shelly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexryd%2Fhomebridge-shelly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexryd%2Fhomebridge-shelly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexryd","download_url":"https://codeload.github.com/alexryd/homebridge-shelly/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247249525,"owners_count":20908212,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["homebridge","homebridge-plugin","homekit","shelly"],"created_at":"2024-09-24T19:51:39.643Z","updated_at":"2025-04-04T21:08:01.025Z","avatar_url":"https://github.com/alexryd.png","language":"JavaScript","funding_links":["https://ko-fi.com/alexryd","https://ko-fi.com/S6S3ZKXP'"],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://github.com/alexryd/homebridge-shelly\"\u003e\u003cimg src=\"homebridge-shelly.png\" height=\"120\"\u003e\u003c/a\u003e\n\n# homebridge-shelly\n[![npm-version](https://badgen.net/npm/v/homebridge-shelly)](https://www.npmjs.com/package/homebridge-shelly)\n[![npm-total-downloads](https://badgen.net/npm/dt/homebridge-shelly)](https://www.npmjs.com/package/homebridge-shelly)\n[![verified-by-homebridge](https://badgen.net/badge/homebridge/verified/purple)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)\n[![certified-hoobs-plugin](https://badgen.net/badge/HOOBS/Certified/yellow)](https://plugins.hoobs.org)\n\n[Homebridge](https://homebridge.io) plugin for [Shelly](https://shelly.cloud),\nenabling HomeKit support for the first generation of Shelly devices.\n\nFor the next generation, see [homebridge-shelly-ng](https://github.com/alexryd/homebridge-shelly-ng).\n\n## Supported devices\n* [Shelly 1](https://shelly.cloud/shelly1-open-source/)\n* [Shelly 1L](https://shelly.cloud/products/shelly-1l-single-wire-smart-home-automation-relay/)\n* [Shelly 1PM](https://shelly.cloud/shelly-1pm-wifi-smart-relay-home-automation/)\n* Shelly 2 \u003csup\u003e1\u003c/sup\u003e\n* [Shelly 2.5](https://shelly.cloud/shelly-25-wifi-smart-relay-roller-shutter-home-automation/) \u003csup\u003e1\u003c/sup\u003e\n* [Shelly 3EM](https://shelly.cloud/shelly-3-phase-energy-meter-with-contactor-control-wifi-smart-home-automation/)\n* [Shelly 4Pro](https://shelly.cloud/shelly-4-pro/)\n* [Shelly Air](https://shelly.cloud/products/shelly-air-smart-home-air-purifier/)\n* [Shelly Bulb](https://shelly.cloud/shelly-bulb/) \u003csup\u003e2\u003c/sup\u003e\n* [Shelly Button 1](https://shelly.cloud/products/shelly-button-1-smart-home-automation-device/) \u003csup\u003e3\u003c/sup\u003e\n* Shelly Dimmer\n* [Shelly Dimmer 2](https://shelly.cloud/products/shelly-dimmer-2-smart-home-light-contoller/)\n* Shelly Door/Window\n* [Shelly Door/Window 2](https://shelly.cloud/products/shelly-door-window-2-smart-home-automation-sensor/) \u003csup\u003e3\u003c/sup\u003e\n* [Shelly Duo](https://shelly.cloud/wifi-smart-home-automation-shelly-duo/)\n* [Shelly EM](https://shelly.cloud/shelly-energy-meter-with-contactor-control-wifi-smart-home-automation/)\n* [Shelly Flood](https://shelly.cloud/shelly-flood-and-temperature-sensor-wifi-smart-home-automation/)\n* Shelly HD\n* [Shelly H\u0026T](https://shelly.cloud/shelly-humidity-and-temperature/)\n* [Shelly i3](https://shelly.cloud/products/shelly-i3-smart-home-automation-device/)\n* [Shelly Motion](https://shelly.cloud/shelly-motion-smart-home-automation-sensor/) \u003csup\u003e4\u003c/sup\u003e\n* [Shelly Plug](https://shelly.cloud/shelly-plug/)\n* [Shelly Plug S](https://shelly.cloud/shelly-plug-s/)\n* [Shelly Plug US](https://shelly.cloud/products/shelly-plug-us-smart-home-automation-device/)\n* [Shelly RGBW2](https://shelly.cloud/wifi-smart-shelly-rgbw-2/)\n* [Shelly Sense](https://shelly.cloud/shelly-sense/)\n* [Shelly Uni](https://shelly.cloud/products/shelly-uni-smart-home-automation-device/)\n* [Shelly Vintage](https://shelly.cloud/wifi-smart-home-automation-shelly-vintage/)\n\nIs your device not on the list? See the section about unsupported devices below.\n\n### Notes\n\u003csup\u003e1\u003c/sup\u003e To use Shelly 2 or Shelly 2.5 in roller shutter mode the device\nmust have been calibrated and be running firmware version 1.4.9 or later.\n\n\u003csup\u003e2\u003c/sup\u003e Requires firmware version 1.5.1 or later.\n\n\u003csup\u003e3\u003c/sup\u003e Requires firmware version 1.8.0 or later.\n\n\u003csup\u003e4\u003c/sup\u003e Requires setting the `Internet \u0026 Security -\u003e CoIoT -\u003e Remote\naddress` option on the Shelly device to the IP address of your device running\nhomebridge.\n\n## Installation\n1. Install Homebridge by following\n   [the instructions](https://github.com/homebridge/homebridge/wiki).\n2. Install this plugin using [Homebridge Config UI X](https://github.com/oznu/homebridge-config-ui-x), or by running `npm install -g homebridge-shelly`.\n3. Add the configuration to your homebridge config.json.\n\n## Configuration\nIn most cases, simply adding this plugin to the homebridge config.json will be\nenough:\n```json\n\"platforms\": [\n  {\n    \"platform\": \"Shelly\",\n    \"name\": \"Shelly\"\n  }\n]\n```\nYour Shelly devices should then be automatically discovered, as long as they use the stock firmware (no Tasmota etc.) and are\non the same network and subnet as the device running homebridge. See [this wiki page](https://github.com/alexryd/homebridge-shelly/wiki/Shelly,-CoAP-and-multicast) if that doesn't work.\n\nTo see a list of all discovered devices, visit the administration page by going\nto `http://\u003cIP-ADDRESS\u003e:8181/`, where IP-ADDRESS is the address of the\ndevice that you are running homebridge on.\n\n### Network interface\nSometimes setting the `\"networkInterface\"` option to the name of the network\ninterface or the local IP address of your device will help when your devices\naren't automatically discovered, or you see error messages like\n`addMembership EADDRNOTAVAIL` or `addMembership EADDRINUSE`.\n\n### Authentication\nSet the `\"username\"` and `\"password\"` options if you have restricted the web\ninterface with a username and password. Note that this configuration applies\nto all Shelly devices.\n\n### Request timeout\nThe `\"requestTimeout\"` option can be used to configure the timeout for HTTP\nrequests to the Shelly devices. Specify in milliseconds. Default is 10 seconds.\n\n### Stale timeout\nUse the `\"staleTimeout\"` option to configure how long a device can be offline\nbefore it is regarded as stale and unregistered from HomeKit. Specify in\nmilliseconds. Set to `0` or `false` to disable. Disabled by default.\n\n### Administration interface\nBy default, this plugin will launch an HTTP server on port 8181 to serve an\nadministration interface. You can disable this by setting `\"admin\".\"enabled\"`\nto `false`. You can also change the port number using `\"admin\".\"port\"`.\n\n### Device specific configurations\nConfigurations for specific Shelly devices can be set using the `\"devices\"`\narray. Each object in the array must contain an `\"id\"` property with the ID of\nthe Shelly device that you want to target. IDs are always made up of 6 or 12\nhexadecimal characters and can be found in the Shelly Cloud app or the web\ninterface of a device, under *Settings -\u003e Device info -\u003e Device ID*.\n\n#### General configurations\n* `\"exclude\"` - set to `true` to exclude the device from Homebridge.\n* `\"username\"` and `\"password\"` - set these if you have restricted the web\n  interface of the device with a username and password. This will override the\n  global `\"username\"` and `\"password\"` options.\n* `\"name\"` - sets a custom name for the device.\n\n#### Shelly switch configurations\n*Applies to Shelly 1, 1PM, 2 and 2.5 in relay mode, 4Pro, EM, Plug and Plug S.*\n* `\"type\"` - sets the type of accessory the device is identified as. Available\n  types are `\"contactSensor\"`, `\"motionSensor\"`, `\"occupancySensor\"`,\n  `\"outlet\"`, `\"switch\"` (default) and `\"valve\"`.\n\n#### Shelly 2.5 configurations\n* `\"type\"` - in roller mode, the device can be identified as either `\"door\"`,\n  `\"garageDoorOpener\"`, `\"window\"` or `\"windowCovering\"` (default).\n\n#### Shelly RGBW2 configurations\n* `\"colorMode\"` - set to `\"rgbw\"` (default) to have HomeKit control all four\n  channels of the device (R, G, B, and W), or to `\"rgb\"` to omit the W channel.\n\n### Example configuration\n```json\n\"platforms\": [\n  {\n    \"platform\": \"Shelly\",\n    \"name\": \"Shelly\",\n    \"username\": \"admin\",\n    \"password\": \"pa$$word\",\n    \"devices\": [\n      { \"id\": \"74B5A3\", \"exclude\": true },\n      { \"id\": \"A612F0\", \"username\": \"admin\", \"password\": \"pa$$word2\" },\n      { \"id\": \"6A78BB\", \"colorMode\": \"rgb\" },\n      { \"id\": \"AD2214\", \"name\": \"My Device\" },\n      { \"id\": \"1D56AF\", \"type\": \"outlet\" }\n    ],\n    \"admin\": {\n      \"enabled\": true,\n      \"port\": 8181\n    }\n  }\n]\n```\n\n## Unsupported devices\nIf you have a Shelly device that is not yet supported by this plugin you can\nhelp adding support for it by following these steps:\n\n1. Run `$ homebridge-shelly describe \u003cip-address\u003e` with the IP address of the\n   Shelly device.\n2. Create [a new issue](https://github.com/alexryd/homebridge-shelly/issues)\n   and post the output from the previous command.\n\n## Donations\nI develop this plugin in my spare time. If you like it and you find it useful,\nplease consider donating a small amount by clicking the button below. That will\nallow me to buy new Shelly devices so that I can add support for them.\n\n\u003ca href='https://ko-fi.com/S6S3ZKXP' target='_blank'\u003e\u003cimg height='36' style='border:0px;height:36px;' src='https://az743702.vo.msecnd.net/cdn/kofi1.png?v=2' border='0' alt='Buy Me a Coffee at ko-fi.com' /\u003e\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexryd%2Fhomebridge-shelly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexryd%2Fhomebridge-shelly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexryd%2Fhomebridge-shelly/lists"}