{"_id":"@anveshg/homebridge-atomberg-fan","name":"@anveshg/homebridge-atomberg-fan","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"private":false,"displayName":"Atomberg Fan","name":"@anveshg/homebridge-atomberg-fan","version":"1.0.0","description":"Homebridge plugin for Atomberg Smart Fans with LAN UDP control, LED control and Home Assistant coexistence.","license":"Apache-2.0","author":{"name":"anveshg","email":"anvesh.g90@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/anveshg/atomberg-homebridge-plugin.git"},"bugs":{"url":"https://github.com/anveshg/atomberg-homebridge-plugin/issues"},"homepage":"https://github.com/anveshg/atomberg-homebridge-plugin#readme","publishConfig":{"access":"public"},"engines":{"node":">=18.0.0","homebridge":">=1.6.0"},"main":"dist/index.js","scripts":{"clean":"rimraf ./dist","lint":"eslint src/**.ts --max-warnings=0","watch":"npm run build && npm link && nodemon","build":"npm run clean && tsc","build-watch":"npm run clean && tsc -w","prepublishOnly":"npm run lint && npm run build","postpublish":"npm run clean"},"keywords":["homebridge","homebridge-plugin","homebridge-atomberg-fan","homekit","atomberg","renesa","fan","smart fan"],"dependencies":{"axios":"^1.7.7"},"devDependencies":{"@types/node":"^20.12.7","@typescript-eslint/eslint-plugin":"^7.7.0","@typescript-eslint/parser":"^7.7.0","eslint":"^8.57.0","homebridge":"^1.8.0","nodemon":"^3.1.0","rimraf":"^5.0.5","ts-node":"^10.9.2","typescript":"^5.4.5"},"gitHead":"9b9bb15c50a4e1662ecd2b3a21d353b43d1aaf31","types":"./dist/index.d.ts","_id":"@anveshg/homebridge-atomberg-fan@1.0.0","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-BC8YrwdEm2k+Qh14LIknwmQupmHB7YId+VokevaOmua2wyCGRitnGFtrvsjFHIooOYaHE+CFUxr0sxfoUtDrHw==","shasum":"1b31fe9aa34d2ac45cc250435ff3fbe4aec20b70","tarball":"https://registry.npmjs.org/@anveshg/homebridge-atomberg-fan/-/homebridge-atomberg-fan-1.0.0.tgz","fileCount":32,"unpackedSize":101908,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDR4fC9/BeIIu7NJVfED4bztGJmUEvCGCtK63nQbB0mtQIhAOi+zAz88Hu3kMoiTIC1XEnBQqhkAffQRkUyBfYI28TR"}]},"_npmUser":{"name":"anveshg","email":"anvesh.g90@gmail.com"},"directories":{},"maintainers":[{"name":"anveshg","email":"anvesh.g90@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/homebridge-atomberg-fan_1.0.0_1778006820358_0.6125247009149413"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-05T18:47:00.274Z","1.0.0":"2026-05-05T18:47:00.511Z","modified":"2026-05-05T18:47:00.712Z"},"maintainers":[{"name":"anveshg","email":"anvesh.g90@gmail.com"}],"description":"Homebridge plugin for Atomberg Smart Fans with LAN UDP control, LED control and Home Assistant coexistence.","homepage":"https://github.com/anveshg/atomberg-homebridge-plugin#readme","keywords":["homebridge","homebridge-plugin","homebridge-atomberg-fan","homekit","atomberg","renesa","fan","smart fan"],"repository":{"type":"git","url":"git+https://github.com/anveshg/atomberg-homebridge-plugin.git"},"author":{"name":"anveshg","email":"anvesh.g90@gmail.com"},"bugs":{"url":"https://github.com/anveshg/atomberg-homebridge-plugin/issues"},"license":"Apache-2.0","readme":"<span align=\"center\">\n\n# Homebridge Atomberg Fan\n\n</span>\n\n[![verified-by-homebridge](https://badgen.net/badge/homebridge/verified/purple)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)\n[![GitHub version](https://img.shields.io/github/package-json/v/Sangwan5688/homebridge-atomberg-fan?label=GitHub)](https://github.com/Sangwan5688/homebridge-atomberg-fan)\n[![npm version](https://img.shields.io/npm/v/homebridge-atomberg-fan?color=%23cb3837&label=npm)](https://www.npmjs.com/package/homebridge-atomberg-fan)\n\nHomebridge Atomberg Fan is a plugin for [Homebridge](https://homebridge.io/) that provides Homekit support for [Atomberg Smart Fans](https://atomberg.com/).\n\n## How it works\n\nThe plugin uses the [Atomberg public APIs](https://developer.atomberg-iot.com/) for initial device discovery and as a fallback transport, and listens for the fan's UDP broadcasts on port 5625 for live state updates. When a fan's IP address is known from those broadcasts, **commands are sent directly to it on UDP/5600** instead of going through the cloud — this keeps the plugin well under Atomberg's 100 calls/day quota.\n\nSupported series (per the Atomberg developer docs and the upstream Home Assistant integration): R1, R2, K1, I1, I2, I3, M1, S1, S2. Brightness control is offered for I1/M1/S1/S2; color temperature for I1 (Aris Starlight). Speeds 1–6 are mapped onto HomeKit's 0–100 rotation slider.\n\n### Home Assistant coexistence\n\nThe UDP listener binds with `SO_REUSEADDR`, so the [`atomberg-integration`](https://github.com/dasshubham762/atomberg-integration) Home Assistant component can run on the same host and receive the same broadcasts. Both ecosystems can control the fans simultaneously without stepping on each other.\n\n## Homebridge Setup\n\n### Step 1: Generate API Key\n\nGo to Atomberg Home App and enable Developer Options to get your `API Key` and `Refresh Token`, as mentioned in Step 1 of Quickstart section on [Atomberg Developer Portal](https://developer.atomberg-iot.com/#overview).\n\n### Step 2: Install Plugin\n\nGo to your Homebrige UI and search for Atomberg Fan in the plugins section and select this plugin.\n\n### Step 3: Configure\n\nOnce Installed configure the plugin. Enter you API Key and Refresh Token which you got from Atomberg Home App.\nYou can even enter the details directly to config file incase you aren't using UI.\n\n```\n{\n  \"platforms\": [\n    {\n      \"platform\": \"Atomberg Fan\",\n      \"name\": \"Homebridge Atomberg Fan\",\n      \"apiKey\": \"tw******\",\n      \"refreshToken\": \"ey******\",\n      \"useCloudOnly\": false\n    }\n  ]\n}\n```\n\n`useCloudOnly` is optional (default `false`). Set it to `true` only if Homebridge can't reach your fans on the LAN (e.g. running in a Docker bridge network or on a different VLAN) — every command will then count against the cloud quota.\n\n### Step 4: Why not?\n\nThat's all, just restart Homebridge and your devices should show up in the Accessories tab of Homebridge. You can now add them to your Apple Home App using homebridge.\n\n## Disclaimer\n\nAll product and company names are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.\n","readmeFilename":"README.md","_rev":"1-96cad4c6f316ca1fc67b299d48800e48"}