Homebridge V2 Readiness
Is your feature request related to a problem? Please describe. The plugin is great. Thank you. But its the only plugin my list that isn't green for Homebridge V2 readiness.
Describe the solution you'd like Mark it Homebridge V2 ready. Likely already just needs some changes to package.json.
Describe alternatives you've considered Forking it and turning claude loose on it.
Additional context Short answer: it probably works on Homebridge v2, but it’s not explicitly marked as “V2-ready” unless the engines.homebridge range in package.json includes v2. I couldn’t see the repo’s package.json directly via my browser sandbox, but here’s what I could confirm and exactly what to change.
What I can confirm
The plugin is actively maintained and Homebridge-Verified; latest on npm is 3.2.12 (published ~5 months ago). NPM
Homebridge’s own guidance for “V2 ready” is to update package.json to include the v2 range; users then see a green tick in the UI. The project also lists a few HAP v1 → v1.x breaking changes to watch for. GitHub
The repo is the correct, current one for “homebridge-bond” (Aaron Sapp / aarons22). GitHub
What counts as “Homebridge v2 ready”
Per Homebridge’s official migration note, a plugin is considered ready when engines.homebridge includes the v2 range. They give this example:
"engines": { "homebridge": "^1.6.0 || ^2.0.0-beta.0", "node": "^18.20.4 || ^20.15.1 || ^22" }
…and once v2 is stable, drop the -beta.0. This is what flips the green check in the UI. GitHub
What to do in this repo (if it doesn’t already have that)
Update package.json engines to explicitly include v2:
{ "name": "homebridge-bond", ...
- "engines": { "homebridge": "^1.6.0", "node": ">=18" }
- "engines": {
- "homebridge": "^1.6.0 || ^2.0.0",
- "node": "^18.20.4 || ^20.15.1 || ^22"
- } }
(Adjust the “before” line to whatever it currently is; the key part is adding || ^2.0.0.)
Scan for HAP v1 removals (only a handful of plugins need code changes). Grep these patterns:
Characteristic. enums used directly → replace with api.hap. equivalents (e.g., api.hap.Formats, api.hap.Units, api.hap.Perms).
BatteryService → Service.Battery.
getServiceByUUIDAndSubType → getServiceById.
Characteristic.getValue() → Characteristic.value.
Accessory.updateReachability() (removed).
init() (long-deprecated). These are the exact removals listed by Homebridge. If none appear, you’re almost certainly fine on v2. GitHub
Dev dependency bump (optional but nice): make sure the dev homebridge and types bring in current HAP types so your IDE flags anything old.
Sanity test:
Run the plugin in a Child Bridge on Homebridge v2; if anything is still using a removed API, only that child will crash/restart and you’ll get clear logs, while the main UI stays up. GitHub
Practical read on this plugin
Given its active maintenance and that most plugins don’t require code changes for v2, odds are the code already works on v2. The main missing step (if any) is likely just updating engines.homebridge so the UI shows “V2 Ready.” NPM GitHub
+1
Any chance this will see a v2 update?
V2 support has been added to this beta release - https://github.com/aarons22/homebridge-bond/releases/tag/v3.3.0-beta.1
Please test and report back!
V2 support has been added to this beta release - https://github.com/aarons22/homebridge-bond/releases/tag/v3.3.0-beta.1
Please test and report back!
Installed in my instance. No anomalies observed. Fan and fan lights working. Working with a discrete bond with the three fans and a fan integrated bond as well. Green check mark for V2. I will run it and let you know if anything happens but so far so good.
@aarons22 I updated to 3.3.0-beta.2 and see Homebridge v2 readiness, but this version doesn't support latest Node v24.x which v3.2.12 did. Can you update beta release to support latest Node? Thanks!
@yweiss fixed in beta.3