Sonos Switch
homebridge-sonos · v0.4.0
Adds Sonos speakers to HomeKit as on/off switches.
What it says it supports
Brands
- Sonos
Devices it names
- Sonos speakers
Shows up in Apple Home as from its README
What people report
Sonos speakers work, including grouped, paired and multi-device rooms after merged PRs; older discovery issues with Wi-Fi setups and old Raspberry Pis.
- Works2
- Not working2
| Device | Status | What they said | Source |
|---|---|---|---|
| Sonos group coordinators / paired speakers | Works | Coordinator registration for paired and grouped setups mergedSaved copy@nfarina i'd like to propose this change which i believe does resolve the issue “Intermittent error on startup, with paired Play 1's #4” (https://github.com/nfarina/homebridge-sonos/issues/4). The code changes (based on code samples from node-sones) in index.js now identify the current “coordinator” sonos device for a respective zone (room) and register these as homekit accessories. Tested in my environment at home (playbar with sub and 2 play3 paired to a 5.1 surround setup in the living room, and several non-paired individual devices in other rooms). Excerpt saved from GitHub on 2026-10-22. | PR #8 · 2016-01 |
| Sonos soundbar with Sub and Play:1 in one room | Works | Multi-device rooms supported after merged fixSaved copyI've got a room, where a Soundbar, a Sub and two Play:1 players a connected to one 'device'. As the same room name is assigned to all these devices, the search loop hits several times and crashes, as the search.destroy method is called multiple times. Fixed this. Excerpt saved from GitHub on 2026-10-22. | PR #66 · 2020-01 |
| Sonos on Raspberry Pi 1/2 | Not working | Homebridge hit 98% CPU; worked in Ubuntu VMSaved copyI have tested on a Raspberry 1 B and on a Raspberry 2 B. After installing homebridge verything looks good, until i install the homebridge-sonos plugin and add any sonos-speoker to the config-json. Atter this change the homebridge does still start without error, but it becomes unresponsive. The new Speaker are also now showing in HomeKit. Looking into TOP i can see that homebridge is constantly using 98 % CPU Also as long as homebridge-sonos is running in homebridge, the whole Sonos System becomes unresponsive. I need to stop hiomebridge in order to be able to start/stop any Sonos player. Any … Excerpt saved from GitHub on 2026-10-22. | Issue #40 · 2016-10 |
| Sonos speakers connected over Wi-Fi | Not working | Plugin found router instead of speakers; user patch workedSaved copyHi I have my sonos speakers so they connect over wifi rather than over SonosNet. I think this is causing problems for the search code. The search runs and dumping out the responses shows the devices are found fine by the UDP ping in the sonos lib code (see below). In the main sonos code, it seems to be that the code sees my router (which is probably what is forwarding the UDP packets back). Should the code not read the IP of the devices from the location field rather than the rinfo field? TTP/1.1 200 OK CACHE-CONTROL: max-age = 1800 EXT: LOCATION: … Excerpt saved from GitHub on 2026-10-22. | Issue #9 · 2016-01 |
Gathered from the plugin’s GitHub issues, pull requests, discussions, wiki and docs, and from r/homebridge. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Local
Sonos speakers on LAN
Compatibility
| Verified by Homebridge | Yes |
|---|---|
| Homebridge versions | >=0.2.0 |
| Homebridge 2.0 | No |
| Node.js | >=0.12.0 |
| Settings in Homebridge UI | Yes |
| Matter | No |
| Platform name | Sonos |
| License | ISC |
Community signals
| Downloads a week | 12 |
|---|---|
| Downloads a month | 64 |
| GitHub stars | 162 |
| Open issues | 39 |
| Closed issues | 26 |
| Last code push | 2020-06-23 |
| Latest version | 0.4.0 (2020-06-23) |
| First published | 2015-11-09 |
| Releases | 15 |
In ReReHome
Whatever this plugin publishes reaches Apple Home as a normal HomeKit accessory behind your Homebridge bridge, so ReReHome shows and controls it like any other.
Bridges get their own settings page listing the accessories behind them.
HomeKit services in its code
Found by scanning the published npm package. A plugin can register a service only for some devices.
- Switch
Sources
- npm: https://www.npmjs.com/package/homebridge-sonos
- Source code: https://github.com/nfarina/homebridge-sonos
- Issues: https://github.com/nfarina/homebridge-sonos/issues
- Verified plugins list: https://github.com/homebridge/verified





